JP3237554B2 - 会話型デバッグ装置 - Google Patents

会話型デバッグ装置

Info

Publication number
JP3237554B2
JP3237554B2 JP34928796A JP34928796A JP3237554B2 JP 3237554 B2 JP3237554 B2 JP 3237554B2 JP 34928796 A JP34928796 A JP 34928796A JP 34928796 A JP34928796 A JP 34928796A JP 3237554 B2 JP3237554 B2 JP 3237554B2
Authority
JP
Japan
Prior art keywords
program
line
executed
source program
information
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.)
Expired - Fee Related
Application number
JP34928796A
Other languages
English (en)
Other versions
JPH10187489A (ja
Inventor
茂 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP34928796A priority Critical patent/JP3237554B2/ja
Publication of JPH10187489A publication Critical patent/JPH10187489A/ja
Application granted granted Critical
Publication of JP3237554B2 publication Critical patent/JP3237554B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は対話的にコンピュー
タプログラムのデバッグを行なう会話型デバッグ装置に
関する。
【0002】
【従来の技術】計算機システムは、CPU、メモリ、外
部記憶装置、端末装置などから構成される。外部記憶装
置に格納された実行形式のプログラムはオペレーティン
グシステム(OS)の制御の下で実行される。
【0003】実行形式のプログラムは、通常はプログラ
マーによって記述されたソースプログラムをコンパイラ
によってコンパイルしてオブジェクトプログラムを生成
し、複数のオブジェクトプログラムをリンカによって結
合することで生成される。コンピュータプログラムを開
発する上で、プログラム中に含まれる障害(通常バグと
呼ばれる)を取り除く作業が必要となる。この作業を通
常デバッグと呼び、デバッグ作業を支援するプログラム
をデバッガと呼ぶ。
【0004】デバッグを行なう場合は、ソースプログラ
ムをコンパイルする際に、コンパイラに対してデバッグ
オプションを指定してコンパイルを行なう。デバッグオ
プションが指定されると、コンパイラは、デバッグの際
に必要となる情報を含んだオブジェクトプログラムを生
成する。デバッグの際に必要となる情報としては、ソー
スプログラムの各行に対応するオブジェクトコードのア
ドレス、変数が格納されるメモリ上の番地などである。
【0005】プログラムの開発者は、デバッグオプショ
ンを指定して生成された実行形式のプログラムをデバッ
ガの配下で実行することでプログラム中のバグを発見
し、それを元にソースプログラムを修正し、再度デバッ
グを繰り返すことで、プログラム中のバグを取り除く。
デバッガは、変数の内容を変更する機能と、デバッグ対
応のソースプログラムを表示する機能と、ソースプログ
ラムの任意の行を指定してその行に対応する番地から実
行形式のプログラムの実行を開始する機能と、ソースプ
ログラムの行を指定してその行に対応する番地で実行形
式のプログラムの実行を停止する機能(ブレークポイン
トの設定)を有する。
【0006】デバッグの作業はこれらの機能を利用し
て、実行条件を変更しながら、実行形式のプログラムを
部分的な実行を繰り返し、プログラムが正常に動作して
いるか否かを確認することで進められる。また、ソース
プログラム画面上に表示されるとともに、一度実行した
行に対して実行済みの表示を行なうことで、その行が既
に実行済みであるか否かの管理を作業者に行なわせる手
間を省いていた。また、ソースプログラムは画面上には
表示しきれないので、スクロールさせることで全てのソ
ースプログラムを確認可能にしている。
【0007】
【発明が解決しようとする課題】ソースプログラムの各
行毎に実行済みであるか否かの表示がされることは、全
ての行を確実に実行させるという点では非常に有効であ
る。しかし、ある一部分のテストを行なった後、次にど
の部分のテストを行なうかを決定すること、及びテスト
の対象となった部分を画面上に表示することについては
全く考慮されておらず、必ずしもテストの効率は良いも
のではなっかった。この問題はデバッグ対象のプログラ
ムの規模が大きくなるほど顕著になる。
【0008】そこで、本発明では、テストの対象となる
部分を簡単に検索する機能を備えたデバッグ装置を提供
することにある。
【0009】
【課題を解決するための手段】上記課題を解決するため
に、本発明では、次の二点に着目した。第1点として、
連続する未実行の行が複数箇所にある場合は、連続する
未実行の行数の少ない部分よりも、多い部分の方が優先
してテストされる。第2点として、ネストレベルの浅い
部分よりもネストレベルの深い部分の方が優先してテス
トされる。
【0010】そこて、本発明では、指定された行数条件
を満足する連続する未実行の部分を検索して、その部分
を表示することで、連続する未実行の行数が多い部分を
容易に発見可能とする。さらに、ネストレベルの指定も
可能にすることで、テスト対象の発見がより容易に行な
うことを可能にする。
【0011】
【発明の実施形態】図を用いて本発明の実施形態を説明
する。図1は本発明の一実施形態の構成を示す図であ
る。図中、1は計算機、2は外部記憶装置、3はディス
プレイ、4はキーボード、5はマウスである。計算機1
は、CPU6及びメモリ7で構成される。メモリ7には
OS(オペレーティングシステム)8、デバッガプログ
ラム9、オブジェクトプログラム10、変数管理テーブ
ル11、プログラム管理テーブル12、表示開始行13
等が格納される。
【0012】外部記憶装置2には、OS(オペレーティ
ングシステム)14、デバッガプログラム15、オブジ
ェクトプログラム16等が格納される。ディスプレイ3
には、図2に示すように、マウスカーソル17やプログ
ラム管理テーブル表示ウィンドゥ18や変数表示ウィン
ドゥ21が表示される。また、計算機システムの操作に
はキーボード4やマウス5を用いる。
【0013】デバッグ対象のオブジェクトプログラム1
6をデバッグするには、まず、デバッガプログラムを起
動し、メモリ9上に配置し、デバッガ9とする。次にデ
バッガよりオブジェクトプログラム16を起動し、メモ
リ9上に配置し、オブジェクトプログラム10とする。
それと同時にデバッガプログラム16中に格納されてい
るデバッグ情報より、変数管理テーブル11及びプログ
ラム管理テーブル12を初期化する。
【0014】変数管理テーブル11はオブジェクトプロ
グラム10の中で使用する変数を管理するテーブルで、
図3に示すとおり、各々の変数毎に変数名及びその変数
が格納される領域のアドレスを対応付けて格納する。変
数名及びそれに対応する変数の値は、変数表示ウィンド
ゥ21内の変数表示領域22に表示される。管理する変
数の数が多くてウィンドゥ内に全てを表示することが出
来ない場合は、ウィンドゥ内には一部を表示し、スクロ
ールバー23の操作により表示対象の変数を変更しなが
ら表示する。また、変数の値は、マウス5及びキーボー
ド4の操作により変更可能である。
【0015】プログラム管理テーブルは、オブジェクト
プログラムの元となったソースプログラムの各行に対応
して、図4に示すとおり、状態、ネストレベル、ソース
コード、開始アドレス、終了アドレス、ブレークポイン
ト等の情報を格納する。状態は、テスト完、実行済み、
未実行、のいずれか一つの状態を取り、テスト完はその
行に関するテストが完了した状態を示し、実行済みはそ
の行を少なくとも一度実行したがテストは完了していな
いことを示し、未実行はその行を一度も実行していない
ことを示す。
【0016】ネストレベルは、ソースプログラム中の構
造の入れ子の深さを示すものであり、プログラムのトッ
プレベルのネストレベルは1である。例えば、プログラ
ム中に一つのループがあった場合、ループの内側と外側
とを比較すると、ループの内側のネストレベルは、ルー
プの外側のネストレベルよりも1だけ大きくなる。ソー
スコードはオブジェクトプログラム10の元となったソ
ースプログラムのある1行のコードである。
【0017】開始アドレス及び終了アドレスは、ソース
コードに対応するオブジェクトコードの開始アドレスお
よび終了アドレスである。ブレークポイントは、その行
にブレークポイントが設定されているか否かを示す。よ
り厳密にはその行の終了アドレスにブレークポイントが
設定されているか否かを示す。デバッガ9の配下でオブ
ジェクトプログラム10を実行すると、ブレークポイン
トが設定されているアドレスに格納されている命令を実
行した場合は、オブジェクトプログラムの実行を中断
し、プログラムの制御をデバッガ9に移す。そうでない
場合は、オブジェクトプログラムを連続して実行する。
【0018】プログラム管理テーブルの内容は、プログ
ラム管理テーブル表示ウィンドゥ18内のプログラム管
理テーブル表示領域19内に表示する。オブジェクトプ
ログラムの元となったソースプログラムの行数が多くて
全てを表示できない場合は、その一部のみを表示し、ス
クロールバー20の操作により表示対象を変更する。テ
ーブルの初期化が完了した段階で、実際のデバッグ作業
を開始することが出来る。
【0019】デバッグ作業を行なう場合は、マウス5や
キーボード4を操作することで、変数の値を変更した
り、ブレークポイントの設定や解除を行なうなどして、
プログラムの実行条件を整え、プログラムの実行を開始
する行を指定して、プログラムを実行する。プログラム
を実行すると、実行された行の状態が未実行であった行
については、状態が実行済みに変化する。
【0020】この作業を繰り返し行ない、オブジェクト
プログラム10のデバッグを進める。デバッグ作業が進
み、次にデバッグすべき箇所を探すために検索を行な
う。検索を指示すると、図5に示す検索条件入力ウィン
ドゥがディスプレィ3上に表示される。
【0021】ここで、検索条件入力ウィンドゥについて
詳細に説明する。31および32および33はチェック
ボタンである。マウス5を操作して、マウスカーソル1
7をチェックボタンにあわせて、マウス5のボタンを押
下すると、空白またはX印のいずれかとなる。X印はそ
の項目が選択されている(チェックされている)ことを
示し、空白は選択されていないことを示す。
【0022】チェックボタン31及び32は検索の対象
とする行が未実行の行なのかテスト未完の行なのかを選
択するボタンで、いずれか一方だけがチェック可能であ
る。未実行の行とは、プログラム管理テーブル12の状
態が未実行の行のことであり、テスト未完の行とは、プ
ログラム管理テーブル12の状態が未実行であるか実行
済みであるかのいずれかである(テスト完でない)行の
ことである。
【0023】入力領域34は、連続行数入力域であっ
て、検索対象の未実行の行あるいはテスト未完の行が何
行以上連続している箇所を検索するかを入力する領域で
ある。チェックボタン33は、ネストレベルを検索条件
に含ませるか外すかを指定するものである。チェックボ
タン33がチェックされると、入力領域35に入力され
た値に一致するネストレベルの行が検索対象となる。
【0024】OKボタン36は、上で指定された検索条
件での検索を開始することを指示するボタンで、キャン
セルボタン37は、検索の取り止めを指示するボタンで
ある。図5に示した検索条件入力ウィンドゥで指示した
検索条件での検索を行なう検索処理について、図6を用
いて説明する。
【0025】ステップS41は、検索条件の指定であっ
て、図5に示した検索条件入力ウィンドゥを用いた検索
条件の指定を示している。ステップS42において、連
続行数の初期化を行なう。連続行数は、検索処理での作
業用の変数であって、メモリ7上に格納されるものであ
る。ここでは、連続行数の値は0に設定される。
【0026】ステップS43で、着目行数の初期化を行
なう。着目行数は検索処理において、何行目のソースコ
ードに着目しているかを管理する作業用の変数であっ
て、メモリ7上に格納され、初期値は1をとる。ステッ
プS44において、着目行について、個別条件を満足し
ているか否かの判定を行なう。個別条件とは、ステップ
S41で指定した検索条件のうち、検索対象及びネスト
レベルに関する条件のことをいう。
【0027】より詳細には、図7に示すフローに従って
判定を行なう。ステップS51で検索条件で指示されて
いる検索対象を判定し、検索対象が未実行の行である場
合には、ステップS52において、着目行の状態が未実
行であるか否かを判定する。未実行でなければ、この時
点で個別条件を満足しないことが判明する。指示されて
いる検索対象がテスト未完の場合は、ステップS53に
おいて、着目行の状態がテスト完であるか否かを判定す
る。テスト完であれば、この時点で個別条件を満足しな
いことが判明する。
【0028】ステップS52またはステップS53にお
ける判定で個別条件を満足しないと判定されなかった場
合にのみ、ステップS54の判定を行なう。ステップS
54では、ネストレベルのチェックが指示されているか
否かを判例する。ネストレベルのチェックが指示されて
いる場合には、ステップS55に進み、ネストレベルの
チェックが指示されていない場合には、ステップS55
の判定をスキップする。
【0029】ステップS55においては、着目行のネス
トレベルが検索条件で指示されているネストレベルに一
致するか否かの判定を行なう。ネストレベルが一致しな
かった場合には、個別条件を満足しなかったことにな
る。ネストレベルのチェックが指示されていなかった場
合および、ネストレベルの判定が指示されていて、かつ
ネストレベルが一致した場合には、個別条件が満足した
ことになる。
【0030】個別条件を満足した場合にはステップS4
5に進み、満足しなかった場合にはステップS49に進
む。個別条件を満足した場合は、ステップS45におい
て、連続行数の値を1増やす。連続行数の更新後に、連
続行数が検索条件で指示された連続行数を満足するか否
かをステップS46で判定し、満足していれば、ステッ
プS47に進み、満足していない場合はステップS50
に進む。
【0031】連続行数が検索条件で指示されている値を
満足する場合には、ステップS47において、表示開始
行の値を連続行の先頭の行の値に変更し、ステップS4
8において表示開始行の変更をプログラム管理テーブル
表示プログラムに通知する。なお、連続行の先頭の行
は、着目行数と連続行数の差より求める。また、ステッ
プS44において、個別条件を満足していないと判定さ
れた場合には、ステップS49において、連続行数を初
期し、ステップS50に進む。
【0032】ステップS50では着目行の値を1増や
し、ステップS44以降の処理を繰り返す。すでに述べ
た通り、ソースコードはプログラム管理テーブルに格納
されている他の情報とともに、プログラム管理テーブル
表示ウィンドゥに表示される。プログラム管理テーブル
表示ウィンドゥは、デバッガ9の一部であるプログラム
管理テーブル表示ウィンドゥ制御プログラムによって制
御される。
【0033】図8を用いてプログラム管理テーブル表示
ウィンドゥ制御プログラムの処理を説明する。ステップ
S61において、制御プログラムに対してイベントが通
知されたか否かを判定する。イベントが通知されていな
い場合は、されるまで待つ。次にステップS62におい
て、通知されたイベントがスクロールに関するイベント
であるか否かを判定する。
【0034】スクロールに関するイベントである場合
は、ステップS66に進み、表示開始行を変更し、ステ
ップS67において、表示開始行の変更をイベントとし
て自分自身に通知する。スクロールに関するイベントで
はなかった場合は、ステップS63において、表示開始
行の変更の通知であるか否かを判定する。表示開始行の
変更の通知の場合は、ステップS68において、変更後
の表示開始行がプログラム管理テーブル表示ウィンドゥ
の最上行に位置付けられるように、プログラム管理テー
ブル表示ウィンドゥを再表示する。
【0035】スクロールに関するイベントでもなく、表
示開始行の変更の通知でもなかった場合には、ステップ
S64において、イベントがマウスボタンのダブルクリ
ックであるか否かを判定する。ダブルクリックの場合
は、ステップS69に進みメニュー処理を行なう。ステ
ップS69のメニュー処理では、図9に示すポップアッ
プメニューをディスプレイ3上に表示し、マウス5の操
作によりいずれかの項目を選択させ、選択された項目に
対応する処理を行なう。
【0036】実行開始を指示された場合には、ダブルク
リックされた行の開始アドレスからオブジェクトプログ
ラム10の実行を開始する。ブレークポイント設定が選
択された場合は、ダブルクリックされた行に対してブレ
ークポイントを設定する。また、ブレークポイント解除
が選択された場合にはダブルクリックされた行に設定さ
れているブレークポイントを解除する。
【0037】また、テスト完了が選択された場合には、
ダブルクリックされた行の状態をテスト完に変更する。
テスト完了(一括)が選択された場合には、プログラム
管理テーブル中で状態が実行済みとなっている全ての行
の状態を一括してテスト完に変更する。イベントが処理
の終了指示であるか否かをステップS65で判定し、そ
うであれば処理を終了し、そうでない場合や、ステップ
S67やステップS68やステップS69の処理を終了
した後はステップS61以降の処理を繰り返す。
【0038】
【発明の効果】以上示した様に、本発明によれば、テス
トの完了していない行、あるいは未実行の行が連続して
いる箇所を容易に検索できるため、オブジェクトプログ
ラムのテストが部分的に完了した状態で、次にどの部分
のテストを行なえば良いかを容易に特定することが可能
となり、デバッグ作業の効率が、特にプログラムの規模
が大きい場合に飛躍的に向上する。
【0039】また、検索の際の条件の一項目として、ネ
ストレベルの指定が可能であるため、構造化されたプロ
グラムにおいて、ネストレベルの深い部分からテストを
進めることが可能になる。また、検索条件として、未実
行またはテスト未完の連続する行数を指定するようにし
ているが、これを連続する、しないに係わらず、未実行
または、テスト未完の行を無条件にまたはネストレベル
を指定して検索するようにしてもよい。
【図面の簡単な説明】
【図1】本発明の実施形態の構成を示す図。
【図2】ディスプレイの表示例を示す図。
【図3】変数管理テーブルの構成を示す図。
【図4】プログラム管理テーブルの構成を示す図。
【図5】検索条件入力ウィンドゥを示す図。
【図6】検索処理のフローを示す図。
【図7】個別条件判定の詳細なフローを示す図。
【図8】ソース表示処理のフローを示す図。
【図9】ポップアップメニューを示す図。
【符合の説明】
1...計算機 2...外部記憶装置 3...ディスプレイ 4...キーボード 5...マウス 6...CPU 7...メモリ 8...OS(オペレーティングシステム) 9...デバッガ 10...オブジェクトプログラム 11...変数管理テーブル 12...プログラム管理テーブル 13...表示開始行 14...OS(オペレーティングシステム) 15...デバッガ 16...オブジェクトプログラム
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 11/28

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 ソースプログラムを画面に表示しながら
    プログラムを実行させ、プログラムのデバッグを行なう
    ための会話型デバッグ装置であって、 ソースプログラムの各行に対応して、その行を実行した
    か否かを示す情報を保持するソースプログラム情報格納
    手段と、 プログラムを実行させるとともに、実行された行の実行
    に対して実行済みの情報を設定するプログラム実行手段
    と、 ソースプログラム情報に格納されている情報の一部を画
    面上に表示するソースプログラム情報表示手段と、 指定された行数条件を満足する連続する未実行の行を検
    索し、表示する連続未実行行検索表示手段とを備えた会
    話型デバッグ装置。
  2. 【請求項2】 ソースプログラムを画面に表示しながら
    プログラムを実行させ、プログラムのデバッグを行なう
    ための会話型デバッグ装置であって、 ソースプログラムの各行に対応して、ソースプログラム
    中でのその行のネストレベルと、その行を実行したか否
    かを示す情報を保持するソースプログラム情報格納手段
    と、 プログラムを実行させるとともに、実行された行の実行
    に対して実行済みの情報を設定するプログラム実行手段
    と、 ソースプログラム情報に格納されている情報の一部を画
    面上に表示するソースプログラム情報表示手段と、 指定された行数条件を満足する連続する未実行の行を検
    索し、表示する連続未実行行検索表示手段とを備えた会
    話型デバッグ装置。
  3. 【請求項3】 ソースプログラムを画面に表示しながら
    プログラムを実行させ、プログラムのデバッグ機能をコ
    ンピュータに機能させるための会話型デバッグプログラ
    ムを格納したコンピュータ可読型記憶媒体であって、 ソースプログラムの各行に対応して、その行を実行した
    か否かを示す情報をソースプログラム情報格納手段に記
    憶する機能と、 プログラムを実行させるとともに、実行された行の実行
    に対して実行済みの情報を設定するプログラム実行機能
    と、 ソースプログラム情報に格納されている情報の一部を画
    面上に表示するソースプログラム情報表示機能と、 指定された行数条件を満足する連続する未実行の行を検
    索し、表示する連続未実行行検索表示機能とを備えた会
    話型デバッグプログラムを格納したコンピュータ可読型
    記憶媒体。
JP34928796A 1996-12-27 1996-12-27 会話型デバッグ装置 Expired - Fee Related JP3237554B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34928796A JP3237554B2 (ja) 1996-12-27 1996-12-27 会話型デバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34928796A JP3237554B2 (ja) 1996-12-27 1996-12-27 会話型デバッグ装置

Publications (2)

Publication Number Publication Date
JPH10187489A JPH10187489A (ja) 1998-07-21
JP3237554B2 true JP3237554B2 (ja) 2001-12-10

Family

ID=18402743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34928796A Expired - Fee Related JP3237554B2 (ja) 1996-12-27 1996-12-27 会話型デバッグ装置

Country Status (1)

Country Link
JP (1) JP3237554B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127138B2 (en) 2013-06-06 2018-11-13 Microsoft Technology Licensing, Llc. Debugging native code by transitioning from execution in native mode to execution in interpreted mode

Also Published As

Publication number Publication date
JPH10187489A (ja) 1998-07-21

Similar Documents

Publication Publication Date Title
US8032868B2 (en) Storing and restoring snapshots of a computer process
US5961610A (en) Systems, methods and apparatus for generating and controlling display of medical images
USRE36422E (en) Debugging system wherein multiple code views are simultaneously managed
JP4454198B2 (ja) プログラムの容易な自動テスト機器
US8423969B2 (en) Inheritance breakpoints for use in debugging object-oriented computer programs
US6026362A (en) Tool and method for diagnosing and correcting errors in a computer program
US8336032B2 (en) Implementing enhanced template debug
US5754760A (en) Automatic software testing tool
US8261240B2 (en) Debugging lazily evaluated program components
JP3407809B2 (ja) コンピュータ・アプリケーション・ソフトウェアの自動化試験システム
US6658649B1 (en) Method, apparatus and article of manufacture for debugging a user defined region of code
US5950002A (en) Learn mode script generation in a medical imaging system
EP0690378A1 (en) Tool and method for diagnosing and correcting errors in a computer programm
US20070074168A1 (en) Automated step type determination
US6707469B1 (en) Synchronous execution in a medical imaging system
CN1890632B (zh) 确定由代码改变引起的不利影响的可能性的方法和系统
JPH04337843A (ja) プログラム動作表示方法
US20070168986A1 (en) Flexible horizontal stack display and editor
JP2005310116A (ja) コンピュータシステムおよびそのアンドゥおよびリドゥ方法
CA2211369C (en) Cell overlap detection and correction in a medical imaging system
US20060085783A1 (en) Multi-process display method in debugger system
US20070006157A1 (en) Software development tool program
KR20000018932A (ko) 게임 개발 시스템 및 그 방법
JP3237554B2 (ja) 会話型デバッグ装置
US6131109A (en) Multitask processor, a multitask processing method, a multitask processing display method and a storage medium for processing by correlating task and object

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010904

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071005

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081005

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091005

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091005

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101005

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101005

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111005

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111005

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111005

Year of fee payment: 10

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111005

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131005

Year of fee payment: 12

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350