JP5777186B2 - 言語変換装置、言語変換方法、及び言語変換プログラム - Google Patents
言語変換装置、言語変換方法、及び言語変換プログラム Download PDFInfo
- Publication number
- JP5777186B2 JP5777186B2 JP2014104875A JP2014104875A JP5777186B2 JP 5777186 B2 JP5777186 B2 JP 5777186B2 JP 2014104875 A JP2014104875 A JP 2014104875A JP 2014104875 A JP2014104875 A JP 2014104875A JP 5777186 B2 JP5777186 B2 JP 5777186B2
- Authority
- JP
- Japan
- Prior art keywords
- syntax
- sentence
- business rule
- language
- drl
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000006243 chemical reaction Methods 0.000 title claims description 111
- 238000000034 method Methods 0.000 title claims description 84
- 238000004458 analytical method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 18
- 230000014509 gene expression Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/55—Rule-based translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/226—Validation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Description
図1は本実施形態に係る言語変換装置10の構成を示すブロック図である。言語変換装置10は、自然言語で記述されたビジネスルール文をDRL言語文に変換するためのコンピュータである。本明細書では、自然言語で記述されたビジネスルール文を「BRMS自然言語文」と称する。言語変換装置10は、CPU11、RAM12、ROM13、入力インタフェース14、出力インタフェース15、及び記憶装置16を備えている。記憶装置16は、コンピュータ読み取り可能な記録媒体(例えば、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD等の可搬媒体、ハードディスクドライブ又はソリッドステートドライブ等の記憶資源)である。記憶装置16には、言語変換プログラム20、構文定義情報30、及び変換情報40が格納されている。言語変換プログラム20は、BRMS自然言語文をDRL言語文に変換するためのコンピュータプログラムである。CPU11と言語変換プログラム20との協働により実現される言語変換機能は、言語変換ツール又は言語変換エンジンと呼ばれる。
構文定義情報30は、BRMS自然言語文からDRL言語文へのあらゆる変換パターンを構文単位で定義する。一つの構文は、複数の構文要素から成る文であり、構文要素には、要素変数が含まれる。要素変数には、クラス変数、グローバル変数、メソッド、文字列、数値、日付、配列、及び数式が含まれる。構文要素と要素変数は、どちらも、構文を構成する要素として共通する側面を有するが、構文要素は、構文解析の指標となるのに対し、要素変数は、構文解析の指標とならない点で両者は異なる側面を有している。構文定義情報30は、キーワード、キー構文を示すフラグ、BRMS自然言語の構文、構文の文字数、構文を適用する制御構造の範囲、制御構造の指定、構文に対する特殊処理(例えば、図14に示す変換処理等)、オブジェクト用のDRL言語文、変数用のDRL言語文、構文要素の数、及び構文要素の内容の情報を含む。「キーワード」は、構文解析の指標となる構文要素の文字列を意味し、具体的には、論理演算子(例えば、図7に示す「および」、「または」、「(否定)」、及び「()」)並びに制御構造(例えば、図8に示す「定義部」、「条件部」、及び「処理部」)を含む。「文字列」は、構文要素を構成する単位であり、社会通念上文字として認識されているもの(例えば、漢字、平仮名、片仮名、アルファベット、ローマ字、ギリシャ文字等)に限らず、数字や記号等を含む。「キー構文を示すフラグ」は、キーワードの使用が定義された構文を識別するための識別情報である。「構文要素の内容の情報」は、BRMS自然言語文を構成する構文要素及び要素変数の情報である。構文を構成する構文要素及び要素変数のそれぞれの配列順やその文字列は、構文定義情報30において予め定められているものとする。従って、構文定義情報30で定義されていない構文は、DRL言語文への変換が不能となるため、変換エラーとなる。図2は、構文定義情報30により定義される言語変換の一例を示しており、BRMS自然言語の構文「$A$は$B$と同一である」は、DRL言語の構文「$A$==$B$」に変換される。ここで、$A$及び$B$は、それぞれ要素変数である。説明の便宜上、自然言語の一例として、日本語を例示しているが、人間が理解できる言語であれば、特に限定されるものではなく、例えば、英語、中国語、ドイツ語、フランス語等でもよい。
図9に示すように、構文定義情報30は、BRMS自然言語文の要素変数の中で「この」が付いた要素変数を“this”に変換するように定義してもよい。例えば、BRMS自然言語文「設定:あるAを回線情報とする。ここで、Bはこの回線情報と同一である」は、DRL言語文「$回線情報:A(B==this)」に変換される。
ステップ101では、BRMS自然言語文からDRL言語文への言語変換の指示がオペレータにより入力される。
ステップ102では、CPU11は、各クラス定義について記憶装置16からクラス定義情報41を読み込む処理102Aを再帰的に繰り返す。
ステップ103では、CPU11は、各ルール定数について記憶装置16からルール定数情報42を読み込む処理103Aを再帰的に繰り返す。
ステップ104では、CPU11は、各ルールメソッドについて記憶装置16からルールメソッド情報43を読み込む処理104Aを再帰的に繰り返す。
ステップ105では、CPU11は、入力フォルダに格納されている各設計書について言語変換処理(ステップ106〜ステップ110)を行う。ここで、設計書とは、言語変換対象となるBRMS自然言語文を意味する。ステップ105の初期設定として、CPU11は、エラー件数をカウントするパラメータの値をゼロにリセットし、パッケージを管理するパラメータの値をゼロにリセットし、数値条件を管理するパラメータの値をゼロにリセットし、数値条件の状態を管理するパラメータを“false“にリセットし(数値条件を処理しているきは、“true“になる)、定義部で宣言した変数の数を管理するパラメータの値をゼロにリセットする。
エラーがあるときは、CPU11は、エラー情報を出力する(ステップ109)。エラーがないときは、CPU11は、DRL言語文作成処理を行う(ステップ110)。
ステップ110では、CPU11は、出力ファイルをオープンし(ステップ111)、ヘッダ部を出力し(ステップ112)、DRL言語構文出力処理(ステップ113)を行い、出力ファイルをクローズする(ステップ114)。ステップ112では、CPU11は、固定のimport文と、パッケージ情報と、Rule Functionのimport文と、Rule文とをヘッダ部に出力し、Rule Functionをglobal宣言する。ステップ113では、CPU11は、数値条件の条件定義を出力する処理113Aを各数値条件について再帰的に繰り返し、更にDRL言語構文を出力する処理113Bを構文分割情報について再帰的に繰り返す。なお、処理113A,113Bは、BRMS自然言語情報について再帰的に繰り返し実行される。
ステップ201では、CPU11は、BRMS自然言語文の先頭からキーワードマッチングを行う。キーワードマッチングでは、BRMS自然言語文を構成する文字列とキーワードとを比較し、キーワードの文字列に一致する文字列がBRMS自然言語文に存在するか否かが解析される。「キーワード」は、構文解析の指標となる構文要素の文字列を意味し、具体的には、論理演算子及び制御構造を含む。BRMS自然言語文にキーワードが存在する場合は、構文定義情報30を用いて構文分割情報を作成する(ステップ202)。構文分割情報は、構文定義の番号、解析対象のBRMS自然言語文がキー構文であるか否かを示す情報、構文定義情報30に定義されているBRMS自然言語文、BRMS自然言語文に対応するDRL言語構文(オブジェクト用の構文)の情報を含む。なお、「構文定義の番号」は、各構文を識別するために割り当てられた番号であり、この番号は、構文定義情報30に規定されている。「キー構文」とは、「キーワード」の使用が定義された構文を意味する。CPU11は、BRMS自然言語文の特定の構文に、制御構文を定義する文字列が記述されているか否かを判定し、その判定結果が肯定の場合に、特定の構文を制御構文の種類に応じて異なるDRL言語文に変換してもよい。一方、BRMS自然言語文にキーワードが存在しない場合は、CPU11は、キーワード以外の構文要素とBRMS自然言語文とを比較してBRMS自然言語文を解析するステップ204と、要素変数を変換してDRL言語構文を作成するステップ205とを行う。ステップ204,205の詳細については、後述する。
ステップ202又はステップ205が終了すると、CPU11は、数値条件の構文であれば、数値条件情報を設定する(ステップ203)。数値条件情報は、数値条件、数値条件内の構文数、及びBRMS自然言語文の管理番号の情報を含む。
ステップ205Cが終了すると、CPU11は、構文要素が配列の場合に、配列要素を分解して“or”で連結する処理205Dと、構文要素が配列以外の場合に、DRL言語文の要素変数を変換内容で置換する処理205Eとを各構文要素について再帰的に繰り返す。
ステップ205D及びステップ205Eが終了すると、CPU11は、BRMS自然言語文が否定である場合に、DRL言語文を“!(”と“)”とで括る(ステップ206F)。
ステップ206Fが終了すると、CPU11は、数値条件情報の数値条件に構文定義情報のオブジェクト用構文を定義し、構文定義情報のDRL言語構文に構文定義情報の変数用構文を定義する(ステップ205G)。
Claims (6)
- 自然言語で記述された一つ以上の構文要素から成るビジネスルール文と、DRL言語文との対応関係を構文単位で定義する構文定義情報と、前記ビジネスルール文の構文要素に含まれるが、構文解析の指標とならない要素変数と、前記DRL言語文の要素変数との対応関係を定義する変換情報とを記憶する記憶手段と、
前記ビジネスルール文の文字列と、前記構文定義情報に定義されている各構文を構成する構文要素の文字列とを比較することにより、前記ビジネスルール文の構文が、前記構文定義情報に定義されている複数の構文のうちどの構文に一致するかを判定する構文解析手段と、
前記変換情報を参照して、前記ビジネスルール文の要素変数を前記DRL言語文の要素変数に変換するとともに、前記ビジネスルール文の要素変数以外の構文要素を、前記ビジネスルール文の構文に一致するとの判定がなされた構文を有する前記DRL言語文の構文要素に変換することにより、前記ビジネスルール文を前記DRL言語文に変換する変換手段と、
を備える言語変換装置。 - 請求項1に記載の言語変換装置であって、
前記構文定義情報は、複数種類の基本的な構文の組み合わせにより前記ビジネスルールを前記DRL言語文に変換できるように類型化されている、言語変換装置。 - 請求項1又は請求項2に記載の言語変換装置であって、
前記構文定義情報は、制御構文をその種類に応じて区別して定義する文字列の情報を含むとともに、前記ビジネスルール文に記述されている特定の構文をそれが記述されている制御構文の種類に応じて異なるDRL言語文に変換することを定義しており、
前記構文解析手段は、前記ビジネスルール文の特定の構文に、前記制御構文を定義する文字列が記述されているか否かを判定し、その判定結果が肯定の場合に、前記変換手段は、前記特定の構文を前記制御構文の種類に応じて異なるDRL言語文に変換する、言語変換装置 - 請求項1乃至請求項3のうち何れか1項に記載の言語変換装置であって、
前記ビジネスルール文は、複数の構文がネストされた入れ子構造を含み、
前記構文解析手段は、前記入れ子構造の全体の構文を解析し、
前記変換手段は、前記入れ子の内側の構文から優先的に前記DRL言語文への変換を行う、言語変換装置。 - コンピュータにより実行される言語変換方法であって、
自然言語で記述された一つ以上の構文要素から成るビジネスルール文と、DRL言語文との対応関係を構文単位で定義する構文定義情報に定義されている各構文を構成する構文要素の文字列と、前記ビジネスルール文の文字列とを比較することにより、前記ビジネスルール文の構文が、前記構文定義情報に定義されている複数の構文のうちどの構文に一致するかを判定するステップと、
前記ビジネスルール文の構文要素に含まれるが、構文解析の指標とならない要素変数と、前記DRL言語文の要素変数との対応関係を定義する変換情報を参照して前記ビジネスルール文の要素変数を前記DRL言語文の要素変数に変換するとともに、前記ビジネスルール文の要素変数以外の構文要素を、前記ビジネスルール文の構文に一致するとの判定がなされた構文を有する前記DRL言語文の構文要素に変換することにより、前記ビジネスルール文を前記DRL言語文に変換するステップと、
を備える言語変換方法。 - コンピュータに、
自然言語で記述された一つ以上の構文要素から成るビジネスルール文と、DRL言語文との対応関係を構文単位で定義する構文定義情報に定義されている各構文を構成する構文要素の文字列と、前記ビジネスルール文の文字列とを比較することにより、前記ビジネスルール文の構文が、前記構文定義情報に定義されている複数の構文のうちどの構文に一致するかを判定するステップと、
前記ビジネスルール文の構文要素に含まれるが、構文解析の指標とならない要素変数と、前記DRL言語文の要素変数との対応関係を定義する変換情報を参照して前記ビジネスルール文の要素変数を前記DRL言語文の要素変数に変換するとともに、前記ビジネスルール文の要素変数以外の構文要素を、前記ビジネスルール文の構文に一致するとの判定がなされた構文を有する前記DRL言語文の構文要素に変換することにより、前記ビジネスルール文を前記DRL言語文に変換するステップと、
を実行させるための言語変換プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014104875A JP5777186B2 (ja) | 2013-07-04 | 2014-05-21 | 言語変換装置、言語変換方法、及び言語変換プログラム |
US15/312,443 US9946710B2 (en) | 2013-07-04 | 2015-01-08 | Language conversion apparatus, language conversion method, and language conversion program |
PCT/JP2015/050385 WO2015178042A1 (ja) | 2013-07-04 | 2015-01-08 | 言語変換装置、言語変換方法、及び言語変換プログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013140791 | 2013-07-04 | ||
JP2013140791 | 2013-07-04 | ||
JP2014104875A JP5777186B2 (ja) | 2013-07-04 | 2014-05-21 | 言語変換装置、言語変換方法、及び言語変換プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015028763A JP2015028763A (ja) | 2015-02-12 |
JP5777186B2 true JP5777186B2 (ja) | 2015-09-09 |
Family
ID=52492415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014104875A Active JP5777186B2 (ja) | 2013-07-04 | 2014-05-21 | 言語変換装置、言語変換方法、及び言語変換プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9946710B2 (ja) |
JP (1) | JP5777186B2 (ja) |
WO (1) | WO2015178042A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10809986B2 (en) * | 2018-04-16 | 2020-10-20 | Walmart Apollo, Llc | System and method for dynamic translation code optimization |
CN109460395A (zh) * | 2018-09-11 | 2019-03-12 | 浙江众合科技股份有限公司 | 一种信号维护系统数据库多语言信息存储系统及方法 |
US11200378B2 (en) * | 2018-10-11 | 2021-12-14 | International Business Machines Corporation | Methods and systems for processing language with standardization of source data |
CN110196719B (zh) * | 2019-05-20 | 2023-08-15 | 中国工商银行股份有限公司 | 一种基于自然语言处理的业务规则生成方法与系统 |
US20230325156A1 (en) * | 2022-04-08 | 2023-10-12 | Red Hat, Inc. | Cross-validating files to facilitate code generation |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000322245A (ja) | 1999-05-13 | 2000-11-24 | Murata Mach Ltd | プログラミング装置および記憶媒体 |
JP2002207548A (ja) * | 2000-11-09 | 2002-07-26 | Tokyo Electric Power Co Inc:The | 計算機操作方法及びシステム並びにそのプログラムを記憶した記憶媒体 |
WO2002088886A2 (en) * | 2001-05-01 | 2002-11-07 | Business Layers Inc. | System and method for automatically allocating and de-allocating resources and services |
US7610575B2 (en) * | 2003-01-08 | 2009-10-27 | Consona Crm Inc. | System and method for the composition, generation, integration and execution of business processes over a network |
US7581255B2 (en) * | 2003-01-21 | 2009-08-25 | Microsoft Corporation | Systems and methods for licensing one or more data streams from an encoded digital media file |
US8209660B2 (en) * | 2004-03-15 | 2012-06-26 | Ramco Systems Limited | Model driven software |
US8615731B2 (en) * | 2004-08-25 | 2013-12-24 | Mohit Doshi | System and method for automating the development of web services that incorporate business rules |
US7562340B2 (en) * | 2006-03-23 | 2009-07-14 | International Business Machines Corporation | Method for graphically building business rule conditions |
US20100131399A1 (en) * | 2008-11-27 | 2010-05-27 | Oracle International Corporation | Parser for generating financial manager application rules |
JP2012008947A (ja) * | 2010-06-28 | 2012-01-12 | Hitachi Ltd | 営業活動分析方法及び営業支援システム |
ES2408054B1 (es) * | 2010-11-10 | 2014-02-28 | Telefónica, S.A. | Método y sistema para la gestión de máquinas virtuales en entornos de almacenamiento en nube con conexión en red |
US20140257935A1 (en) * | 2011-09-12 | 2014-09-11 | Mediaspectrum, Inc. | System and method for media and commerce management |
US9830135B2 (en) * | 2014-01-29 | 2017-11-28 | Dell Products L.P. | Declarative and pluggable business logic for systems management |
US10114861B2 (en) * | 2014-01-31 | 2018-10-30 | Dell Products L.P. | Expandable ad hoc domain specific query for system management |
-
2014
- 2014-05-21 JP JP2014104875A patent/JP5777186B2/ja active Active
-
2015
- 2015-01-08 WO PCT/JP2015/050385 patent/WO2015178042A1/ja active Application Filing
- 2015-01-08 US US15/312,443 patent/US9946710B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2015178042A1 (ja) | 2015-11-26 |
JP2015028763A (ja) | 2015-02-12 |
US9946710B2 (en) | 2018-04-17 |
US20170091180A1 (en) | 2017-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110069252B (zh) | 一种源代码文件多业务标签自动化分类方法 | |
JP5777186B2 (ja) | 言語変換装置、言語変換方法、及び言語変換プログラム | |
US7251777B1 (en) | Method and system for automated structuring of textual documents | |
US20170192758A1 (en) | Method and apparatus for migration of application source code | |
Semura et al. | Ccfindersw: Clone detection tool with flexible multilingual tokenization | |
US7779049B1 (en) | Source level optimization of regular expressions | |
JPS6375835A (ja) | 目的コ−ド、プログラム・リスト及び設計文書を生成する装置 | |
JPH1049530A (ja) | データ処理方法 | |
US20210232630A1 (en) | Methods and systems for creating networks | |
KR102565455B1 (ko) | 신속한 스크리닝을 위한 도메인-특정 언어 해석기 및 대화형 시각적 인터페이스 | |
CN108595171B (zh) | 对象的模型生成方法、装置、设备及存储介质 | |
WO2022226716A1 (zh) | 基于深度学习的Java程序内部注释的生成方法及系统 | |
Tateosian | Python For ArcGIS | |
JP4951416B2 (ja) | プログラム検証方法、プログラム検証装置 | |
Valenzuela-Escarcega et al. | Description of the Odin event extraction framework and rule language | |
CN113419721B (zh) | 基于web的表达式编辑方法、装置、设备和存储介质 | |
WO2016093839A1 (en) | Structuring of semi-structured log messages | |
US7788246B2 (en) | Linguistic structure for data flow diagrams | |
CN113553055A (zh) | 一种基于机器学习的可视化图表代码自动生成方法 | |
EP4179421A1 (en) | Feedback-driven semi-supervised synthesis of program transformations | |
Grønmo et al. | A collection operator for graph transformation | |
Moser et al. | Automated amortised resource analysis for term rewrite systems | |
Rajbhoj et al. | DocToModel: automated authoring of models from diverse requirements specification documents | |
Jain et al. | Cascaded finite-state chunk parsing for Hindi language | |
Schroeder et al. | Flexible automatic converting of NC programs. A cross-compiler for structured text |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150428 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150612 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150630 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150702 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5777186 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |