登录
D.1. 支持的功能#
标识符 | 核心? | 描述 | 注释 |
---|---|---|---|
B012 | 嵌入式 C | ||
B021 | 直接 SQL | ||
B128 | 例程语言 SQL | ||
E011 | 核心 | 数字数据类型 | |
E011-01 | 核心 | INTEGER 和 SMALLINT 数据类型 | |
E011-02 | 核心 | REAL、DOUBLE PRECISION 和 FLOAT 数据类型 | |
E011-03 | 核心 | DECIMAL 和 NUMERIC 数据类型 | |
E011-04 | 核心 | 算术运算符 | |
E011-05 | 核心 | 数字比较 | |
E011-06 | 核心 | 数字数据类型之间的隐式转换 | |
E021 | 核心 | 字符数据类型 | |
E021-01 | 核心 | CHARACTER 数据类型 | |
E021-02 | 核心 | CHARACTER VARYING 数据类型 | |
E021-03 | 核心 | 字符文本 | |
E021-04 | 核心 | CHARACTER_LENGTH 函数 | 在计数之前,从 CHARACTER 值中去除尾随空格 |
E021-05 | 核心 | OCTET_LENGTH 函数 | |
E021-06 | 核心 | SUBSTRING 函数 | |
E021-07 | 核心 | 字符连接 | |
E021-08 | 核心 | UPPER 和 LOWER 函数 | |
E021-09 | 核心 | TRIM 函数 | |
E021-10 | 核心 | 字符字符串类型之间的隐式转换 | |
E021-11 | 核心 | POSITION 函数 | |
E021-12 | 核心 | 字符比较 | |
E031 | 核心 | 标识符 | |
E031-01 | 核心 | 定界标识符 | |
E031-02 | 核心 | 小写标识符 | |
E031-03 | 核心 | 尾随下划线 | |
E051 | 核心 | 基本查询规范 | |
E051-01 | 核心 | SELECT DISTINCT | |
E051-02 | 核心 | GROUP BY 子句 | |
E051-04 | 核心 | GROUP BY 可以包含不在 <select list> 中的列 | |
E051-05 | 核心 | 选择列表项可以重命名 | |
E051-06 | 核心 | HAVING 子句 | |
E051-07 | 核心 | 选择列表中的限定 * | |
E051-08 | 核心 | FROM 子句中的相关名称 | |
E051-09 | 核心 | 在 FROM 子句中重命名列 | |
E061 | 核心 | 基本谓词和搜索条件 | |
E061-01 | 核心 | 比较谓词 | |
E061-02 | 核心 | BETWEEN 谓词 | |
E061-03 | 核心 | IN 谓词(带值列表) | |
E061-04 | 核心 | LIKE 谓词 | |
E061-05 | 核心 | LIKE 谓词 ESCAPE 子句 | |
E061-06 | 核心 | NULL 谓词 | |
E061-07 | 核心 | 量化比较谓词 | |
E061-08 | 核心 | EXISTS 谓词 | |
E061-09 | 核心 | 比较谓词中的子查询 | |
E061-11 | 核心 | IN 谓词中的子查询 | |
E061-12 | 核心 | 量化比较谓词中的子查询 | |
E061-13 | 核心 | 相关子查询 | |
E061-14 | 核心 | 搜索条件 | |
E071 | 核心 | 基本查询表达式 | |
E071-01 | 核心 | UNION DISTINCT 表运算符 | |
E071-02 | 核心 | UNION ALL 表运算符 | |
E071-03 | 核心 | EXCEPT DISTINCT 表运算符 | |
E071-05 | 核心 | 通过表运算符组合的列不必具有完全相同的数据类型 | |
E071-06 | 核心 | 子查询中的表运算符 | |
E081 | 核心 | 基本权限 | |
E081-01 | 核心 | SELECT 权限 | |
E081-02 | 核心 | DELETE 权限 | |
E081-03 | 核心 | 表级别的 INSERT 权限 | |
E081-04 | 核心 | 表级别的 UPDATE 权限 | |
E081-05 | 核心 | 列级别的 UPDATE 权限 | |
E081-06 | 核心 | 表级别的 REFERENCES 权限 | |
E081-07 | 核心 | 列级别的 REFERENCES 权限 | |
E081-08 | 核心 | WITH GRANT OPTION | |
E081-09 | 核心 | USAGE 权限 | |
E081-10 | 核心 | EXECUTE 权限 | |
E091 | 核心 | 集合函数 | |
E091-01 | 核心 | AVG | |
E091-02 | 核心 | COUNT | |
E091-03 | 核心 | MAX | |
E091-04 | 核心 | MIN | |
E091-05 | 核心 | SUM | |
E091-06 | 核心 | ALL 量词 | |
E091-07 | 核心 | DISTINCT 量词 | |
E101 | 核心 | 基本数据操作 | |
E101-01 | 核心 | INSERT 语句 | |
E101-03 | 核心 | 搜索的 UPDATE 语句 | |
E101-04 | 核心 | 搜索的 DELETE 语句 | |
E111 | 核心 | 单行 SELECT 语句 | |
E121 | 核心 | 基本游标支持 | |
E121-01 | 核心 | DECLARE CURSOR | |
E121-02 | 核心 | ORDER BY 列不必在选择列表中 | |
E121-03 | 核心 | ORDER BY 子句中的值表达式 | |
E121-04 | 核心 | OPEN 语句 | |
E121-06 | 核心 | 定位的 UPDATE 语句 | |
E121-07 | 核心 | 定位的 DELETE 语句 | |
E121-08 | 核心 | CLOSE 语句 | |
E121-10 | 核心 | FETCH 语句隐式 NEXT | |
E121-17 | 核心 | WITH HOLD 游标 | |
E131 | 核心 | 空值支持(空值代替值) | |
E141 | 核心 | 基本完整性约束 | |
E141-01 | 核心 | NOT NULL 约束 | |
E141-02 | 核心 | NOT NULL 列的 UNIQUE 约束 | |
E141-03 | 核心 | PRIMARY KEY 约束 | |
E141-04 | 核心 | 基本 FOREIGN KEY 约束,对于引用删除操作和引用更新操作,默认均为 NO ACTION | |
E141-06 | 核心 | CHECK 约束 | |
E141-07 | 核心 | 列默认值 | |
E141-08 | 核心 | 主键上推断出 NOT NULL | |
E141-10 | 核心 | 外键中的名称可以按任何顺序指定 | |
E151 | 核心 | 事务支持 | |
E151-01 | 核心 | COMMIT 语句 | |
E151-02 | 核心 | ROLLBACK 语句 | |
E152 | 核心 | 基本 SET TRANSACTION 语句 | |
E152-01 | 核心 | SET TRANSACTION 语句:ISOLATION LEVEL SERIALIZABLE 子句 | |
E152-02 | 核心 | SET TRANSACTION 语句:READ ONLY 和 READ WRITE 子句 | |
E153 | 核心 | 带子查询的可更新查询 | |
E161 | 核心 | 使用前导双减号的 SQL 注释 | |
E171 | 核心 | SQLSTATE 支持 | |
E182 | 核心 | 主机语言绑定 | |
F021 | 核心 | 基本信息架构 | |
F021-01 | 核心 | COLUMNS 视图 | |
F021-02 | 核心 | TABLES 视图 | |
F021-03 | 核心 | VIEWS 视图 | |
F021-04 | 核心 | TABLE_CONSTRAINTS 视图 | |
F021-05 | 核心 | REFERENTIAL_CONSTRAINTS 视图 | |
F021-06 | 核心 | CHECK_CONSTRAINTS 视图 | |
F031 | 核心 | 基本架构操作 | |
F031-01 | 核心 | CREATE TABLE 语句用于创建持久基本表 | |
F031-02 | 核心 | CREATE VIEW 语句 | |
F031-03 | 核心 | GRANT 语句 | |
F031-04 | 核心 | ALTER TABLE 语句:ADD COLUMN 子句 | |
F031-13 | 核心 | DROP TABLE 语句:RESTRICT 子句 | |
F031-16 | 核心 | DROP VIEW 语句:RESTRICT 子句 | |
F031-19 | 核心 | REVOKE 语句:RESTRICT 子句 | |
F032 | CASCADE 删除行为 | ||
F033 | ALTER TABLE 语句:DROP COLUMN 子句 | ||
F034 | 扩展 REVOKE 语句 | ||
F035 | 带 CASCADE 的 REVOKE | ||
F036 | 非所有者执行的 REVOKE 语句 | ||
F037 | REVOKE 语句:GRANT OPTION FOR 子句 | ||
F038 | 撤销 WITH GRANT OPTION 权限 | ||
F041 | 核心 | 基本联接表 | |
F041-01 | 核心 | 内联接(但不一定是 INNER 关键字) | |
F041-02 | 核心 | INNER 关键字 | |
F041-03 | 核心 | 左外联接 | |
F041-04 | 核心 | 右外联接 | |
F041-05 | 核心 | 外联接可以嵌套 | |
F041-07 | 核心 | 左或右外联接中的内表也可以用于内联接 | |
F041-08 | 核心 | 支持所有比较运算符(而不仅仅是 =) | |
F051 | 核心 | 基本日期和时间 | |
F051-01 | 核心 | DATE 数据类型(包括对 DATE 字面量的支持) | |
F051-02 | 核心 | TIME 数据类型(包括支持 TIME 字面量)的小数秒精度至少为 0 | |
F051-03 | 核心 | TIMESTAMP 数据类型(包括支持 TIMESTAMP 字面量)的小数秒精度至少为 0 和 6 | |
F051-04 | 核心 | 对 DATE、TIME 和 TIMESTAMP 数据类型的比较谓词 | |
F051-05 | 核心 | 在日期时间类型和字符字符串类型之间显式转换 | |
F051-06 | 核心 | CURRENT_DATE | |
F051-07 | 核心 | LOCALTIME | |
F051-08 | 核心 | LOCALTIMESTAMP | |
F052 | 区间和日期时间算术 | ||
F053 | OVERLAPS 谓词 | ||
F081 | 核心 | 视图中的 UNION 和 EXCEPT | |
F111 | 除 SERIALIZABLE 之外的隔离级别 | ||
F112 | 隔离级别 READ UNCOMMITTED | ||
F113 | 隔离级别 READ COMMITTED | ||
F114 | 隔离级别 REPEATABLE READ | ||
F131 | 核心 | 分组操作 | |
F131-01 | 核心 | 在具有分组视图的查询中支持 WHERE、GROUP BY 和 HAVING 子句 | |
F131-02 | 核心 | 在具有分组视图的查询中支持多表 | |
F131-03 | 核心 | 在具有分组视图的查询中支持集合函数 | |
F131-04 | 核心 | 具有 GROUP BY 和 HAVING 子句和分组视图的子查询 | |
F131-05 | 核心 | 具有 GROUP BY 和 HAVING 子句和分组视图的单行 SELECT | |
F171 | 每个用户多个模式 | ||
F181 | 核心 | 多模块支持 | |
F191 | 引用删除操作 | ||
F200 | TRUNCATE TABLE 语句 | ||
F201 | 核心 | CAST 函数 | |
F202 | TRUNCATE TABLE:标识列重新启动选项 | ||
F221 | 核心 | 显式默认值 | |
F222 | INSERT 语句:DEFAULT VALUES 子句 | ||
F231 | 权限表 | ||
F251 | 域支持 | ||
F261 | 核心 | CASE 表达式 | |
F261-01 | 核心 | 简单 CASE | |
F261-02 | 核心 | 搜索 CASE | |
F261-03 | 核心 | NULLIF | |
F261-04 | 核心 | COALESCE | |
F262 | 扩展 CASE 表达式 | ||
F271 | 复合字符字面量 | ||
F281 | LIKE 增强功能 | ||
F292 | UNIQUE null 处理 | ||
F302 | INTERSECT 表运算符 | ||
F303 | INTERSECT DISTINCT 表运算符 | ||
F302-02 | INTERSECT ALL 表运算符 | ||
F304 | EXCEPT ALL 表运算符 | ||
F305 | INTERSECT ALL 表运算符 | ||
F311 | 核心 | 模式定义语句 | |
F311-01 | 核心 | CREATE SCHEMA | |
F311-02 | 核心 | 为持久基本表创建表 | |
F311-03 | 核心 | 创建视图 | |
F311-04 | 核心 | 创建视图:带检查选项 | |
F311-05 | 核心 | GRANT 语句 | |
F312 | MERGE 语句 | ||
F313 | 增强型 MERGE 语句 | ||
F314 | 带 DELETE 分支的 MERGE 语句 | ||
F321 | 用户授权 | ||
F341 | 使用表 | ||
F361 | 子程序支持 | ||
F381 | 扩展模式操作 | ||
F382 | 更改列数据类型 | ||
F383 | 设置列非空子句 | ||
F384 | 删除标识属性子句 | ||
F385 | 删除列生成表达式子句 | ||
F386 | 设置标识列生成子句 | ||
F387 | ALTER TABLE 语句:ALTER COLUMN 子句 | ||
F388 | ALTER TABLE 语句:ADD/DROP CONSTRAINT 子句 | ||
F391 | 长标识符 | ||
F392 | 标识符中的 Unicode 转义符 | ||
F393 | 字面值中的 Unicode 转义符 | ||
F394 | 可选范式规范 | ||
F401 | 扩展连接表 | ||
F402 | LOB、数组和多重集的命名列连接 | ||
F404 | 通用列名的范围变量 | ||
F405 | NATURAL JOIN | ||
F406 | FULL OUTER JOIN | ||
F407 | CROSS JOIN | ||
F411 | 时区规范 | 字面值解释方面的差异 | |
F421 | 国家字符 | ||
F431 | 只读可滚动游标 | ||
F432 | 带显式 NEXT 的 FETCH | ||
F433 | FETCH FIRST | ||
F434 | FETCH LAST | ||
F435 | FETCH PRIOR | ||
F436 | FETCH ABSOLUTE | ||
F437 | FETCH RELATIVE | ||
F438 | 可滚动游标 | ||
F441 | 扩展集合函数支持 | ||
F442 | 集合函数中混合的列引用 | ||
F471 | 核心 | 标量子查询值 | |
F481 | 核心 | 扩展 NULL 谓词 | |
F491 | 约束管理 | ||
F501 | 核心 | 特性和一致性视图 | |
F501-01 | 核心 | SQL_FEATURES 视图 | |
F501-02 | 核心 | SQL_SIZING 视图 | |
F502 | 增强型文档表 | ||
F531 | 临时表 | ||
F555 | 增强型秒精度 | ||
F561 | 完整值表达式 | ||
F571 | 真值测试 | ||
F591 | 派生表 | ||
F611 | 指示器数据类型 | ||
F641 | 行和表构造函数 | ||
F651 | 目录名称限定符 | ||
F661 | 简单表 | ||
F672 | 回顾性 CHECK 约束 | ||
F690 | 排序规则支持 | ||
F692 | 扩展排序规则支持 | ||
F701 | 引用更新操作 | ||
F711 | ALTER 域 | ||
F731 | INSERT 列权限 | ||
F751 | 视图 CHECK 增强 | ||
F761 | 会话管理 | ||
F762 | CURRENT_CATALOG | ||
F763 | CURRENT_SCHEMA | ||
F771 | 连接管理 | ||
F781 | 自引用操作 | ||
F791 | 不敏感游标 | ||
F801 | 全集合函数 | ||
F850 | 查询表达式中的顶级 ORDER BY | ||
F851 | 子查询中的 ORDER BY | ||
F852 | 视图中的顶级 ORDER BY | ||
F855 | 查询表达式中的嵌套 ORDER BY | ||
F856 | 查询表达式中的嵌套 FETCH FIRST | ||
F857 | 查询表达式中的顶级 FETCH FIRST | ||
F858 | 子查询中的 FETCH FIRST | ||
F859 | 视图中的顶级 FETCH FIRST | ||
F860 | 动态 FETCH FIRST 行计数 | ||
F861 | 查询表达式中的顶级 OFFSET | ||
F862 | 子查询中的 OFFSET | ||
F863 | 查询表达式中的嵌套 OFFSET | ||
F864 | 视图中的顶级 OFFSET | ||
F865 | OFFSET 中的动态偏移行计数 | ||
F867 | FETCH FIRST 子句:WITH TIES 选项 | ||
F868 | 分组表中的 ORDER BY | ||
F869 | SQL 实现信息填充 | ||
S071 | 函数和类型名称解析中的 SQL 路径 | ||
S090 | 最小数组支持 | ||
S092 | 用户定义类型的数组 | ||
S095 | 通过查询的数组构造函数 | ||
S096 | 可选数组边界 | ||
S098 | ARRAY_AGG | ||
S099 | 数组表达式 | ||
S111 | 查询表达式中的 ONLY | ||
S201 | 数组上的 SQL 调用例程 | ||
S203 | 数组参数 | ||
S204 | 数组作为函数的结果类型 | ||
S211 | 用户定义的转换函数 | ||
S301 | 增强的 UNNEST | ||
S404 | TRIM_ARRAY | ||
T031 | BOOLEAN 数据类型 | ||
T054 | GREATEST 和 LEAST | 不同的 null 处理 | |
T055 | 字符串填充函数 | ||
T056 | 多字符 TRIM 函数 | ||
T061 | UCS 支持 | ||
T071 | BIGINT 数据类型 | ||
T081 | 可选字符串类型最大长度 | ||
T121 | 查询表达式中的 WITH(不包括 RECURSIVE) | ||
T122 | 子查询中的 WITH(不包括 RECURSIVE) | ||
T131 | 递归查询 | ||
T132 | 子查询中的递归查询 | ||
T133 | 增强的循环标记值 | ||
T141 | SIMILAR 谓词 | ||
T151 | DISTINCT 谓词 | ||
T152 | 带否定条件的 DISTINCT 谓词 | ||
T171 | 表定义中的 LIKE 子句 | ||
T172 | 表定义中的 AS 子查询子句 | ||
T173 | 表定义中的扩展 LIKE 子句 | ||
T174 | 标识列 | ||
T177 | 序列生成器支持:简单的重新启动选项 | ||
T178 | 标识列:简单的重新启动选项 | ||
T191 | 引用操作 RESTRICT | ||
T201 | 引用约束的可比较数据类型 | ||
T212 | 增强的触发器功能 | ||
T213 | INSTEAD OF 触发器 | ||
T214 | BEFORE 触发器 | ||
T215 | AFTER 触发器 | ||
T216 | 在调用触发器之前需要真正的搜索条件的能力 | ||
T217 | TRIGGER 权限 | ||
T241 | START TRANSACTION 语句 | ||
T261 | 链式事务 | ||
T271 | 保存点 | ||
T281 | 具有列粒度的 SELECT 权限 | ||
T285 | 增强的派生列名称 | ||
T312 | OVERLAY 函数 | ||
T321-01 | 核心 | 没有重载的用户定义函数 | |
T321-02 | 核心 | 没有重载的用户定义存储过程 | |
T321-03 | 核心 | 函数调用 | |
T321-04 | 核心 | CALL 语句 | |
T321-05 | 核心 | RETURN 语句 | |
T321-06 | 核心 | ROUTINES 视图 | |
T321-07 | 核心 | PARAMETERS 视图 | |
T323 | 外部例程的显式安全性 | ||
T325 | 限定的 SQL 参数引用 | ||
T331 | 基本角色 | ||
T332 | 扩展角色 | ||
T341 | SQL 调用的函数和 SQL 调用的过程的重载 | ||
T351 | 带括号的注释 | ||
T431 | 扩展的分组功能 | ||
T432 | 嵌套和连接的 GROUPING SETS | ||
T433 | 多参数 GROUPING 函数 | ||
T434 | GROUP BY DISTINCT | ||
T441 | ABS 和 MOD 函数 | ||
T461 | 对称 BETWEEN 谓词 | ||
T491 | LATERAL 派生表 | ||
T501 | 增强 EXISTS 谓词 | ||
T521 | CALL 语句中的命名参数 | ||
T523 | SQL 调用过程的 INOUT 参数的默认值 | ||
T524 | CALL 语句以外的例程调用中的命名参数 | ||
T525 | SQL 调用函数的参数的默认值 | ||
T551 | 默认语法可选关键字 | ||
T581 | 正则表达式子字符串函数 | ||
T591 | 可能为 null 的列的 UNIQUE 约束 | ||
T611 | 基本 OLAP 操作 | ||
T612 | 高级 OLAP 操作 | ||
T613 | 采样 | ||
T614 | NTILE 函数 | ||
T615 | LEAD 和 LAG 函数 | ||
T617 | FIRST_VALUE 和 LAST_VALUE 函数 | ||
T620 | WINDOW 子句:GROUPS 选项 | ||
T621 | 增强数字函数 | ||
T622 | 三角函数 | ||
T623 | 一般对数函数 | ||
T624 | 常用对数函数 | ||
T626 | ANY_VALUE | ||
T627 | 窗口框架 COUNT DISTINCT | ||
T631 | 核心 | 包含一个列表元素的 IN 谓词 | |
T651 | SQL 例程中的 SQL 模式语句 | ||
T653 | 外部例程中的 SQL 模式语句 | ||
T655 | 循环依赖例程 | ||
T661 | 非十进制整数字面量 | ||
T662 | 数字字面量中的下划线 | ||
T670 | 模式和数据语句混合 | ||
T803 | 基于字符串的 JSON | ||
T811 | 基本 SQL/JSON 构造函数 | ||
T812 | SQL/JSON:JSON_OBJECTAGG | ||
T813 | SQL/JSON:带 ORDER BY 的 JSON_ARRAYAGG | ||
T814 | JSON_OBJECT 或 JSON_OBJECTAGG 中的冒号 | ||
T822 | SQL/JSON:IS JSON WITH UNIQUE KEYS 谓词 | ||
T830 | 在 SQL/JSON 构造函数中强制唯一键 | ||
T831 | SQL/JSON 路径语言:严格模式 | ||
T832 | SQL/JSON 路径语言:item 方法 | ||
T833 | SQL/JSON 路径语言:多个下标 | ||
T834 | SQL/JSON 路径语言:通配符成员访问器 | ||
T835 | SQL/JSON 路径语言:筛选表达式 | ||
T836 | SQL/JSON 路径语言:starts with 谓词 | ||
T837 | SQL/JSON 路径语言:regex_like 谓词 | ||
T840 | SQL/JSON 路径语言中的十六进制整数文本 | ||
T851 | SQL/JSON:默认语法可选关键字 | ||
T879 | 相等操作中的 JSON | with jsonb | |
T880 | 分组操作中的 JSON | with jsonb | |
X010 | XML 类型 | ||
X011 | XML 类型的数组 | ||
X014 | XML 类型的属性 | ||
X016 | 持久性 XML 值 | ||
X020 | XMLConcat | ||
X031 | XMLElement | ||
X032 | XMLForest | ||
X034 | XMLAgg | ||
X035 | XMLAgg:ORDER BY 选项 | ||
X036 | XMLComment | ||
X037 | XMLPI | ||
X040 | 基本表映射 | ||
X041 | 基本表映射:null 不存在 | ||
X042 | 基本表映射:null 为 nil | ||
X043 | 基本表映射:表为 forest | ||
X044 | 基本表映射:表为 element | ||
X045 | 基本表映射:带目标命名空间 | ||
X046 | 基本表映射:数据映射 | ||
X047 | 基本表映射:元数据映射 | ||
X048 | 基本表映射:二进制字符串的 base64 编码 | ||
X049 | 基本表映射:二进制字符串的 hex 编码 | ||
X050 | 高级表映射 | ||
X051 | 高级表映射:null 不存在 | ||
X052 | 高级表映射:null 为 nil | ||
X053 | 高级表映射:表为 forest | ||
X054 | 高级表映射:表为 element | ||
X055 | 高级表映射:带目标命名空间 | ||
X056 | 高级表映射:数据映射 | ||
X057 | 高级表映射:元数据映射 | ||
X058 | 高级表映射:二进制字符串的 base64 编码 | ||
X059 | 高级表映射:二进制字符串的 hex 编码 | ||
X060 | XMLParse:字符字符串输入和 CONTENT 选项 | ||
X061 | XMLParse:字符字符串输入和 DOCUMENT 选项 | ||
X069 | XMLSerialize:INDENT | ||
X070 | XMLSerialize:字符字符串序列化和 CONTENT 选项 | ||
X071 | XMLSerialize:字符字符串序列化和 DOCUMENT 选项 | ||
X072 | XMLSerialize:字符字符串序列化 | ||
X090 | XML 文档谓词 | ||
X120 | SQL 例程中的 XML 参数 | ||
X121 | 外部例程中的 XML 参数 | ||
X221 | XML 传递机制 BY VALUE | ||
X301 | XMLTable:派生列列表选项 | ||
X302 | XMLTable:序数列选项 | ||
X303 | XMLTable:列默认选项 | ||
X304 | XMLTable:传递上下文项 | 必须是 XML 文档 | |
X400 | 名称和标识符映射 | ||
X410 | 更改列数据类型:XML 类型 |