(57)【要約】【課題】画像形成装置のコントローラにおいて組込ＯＳおよびＧＵＩシステムが固定ロケールでキーボード入力を処理してしまうため、アプリケーション実行環境がアプリケーションに想定するキーボード配列とキーボード入力が整合しない。【解決手段】組込ＯＳおよびＧＵＩシステムから得られたキーボード入力イベントを当該アプリケーション実行環境が本来受け付けるキーボード入力イベントの形式に変換する際に、ＧＵＩシステムから得られた情報を埋め込んだイベントを生成し、それを本来のキーボード入力イベントを受け付ける系へ配信する。アプリケーション実行環境の側で、当該配信されたキーボード入力イベントをさらにアプリケーション実行環境に設定されたロケールに基づいて変換する。【選択図】図２
2018180744.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続可能な画像形成装置のコントローラの上でアプリケーションをインストールし実行することを可能にするアプリケーション実行環境であって、
着脱可能なキーボードが接続されキーボード入力が行われた時に、当該画像形成装置のコントローラを経由して得られた当該キーボードからの入力を第一のキーボード入力イベントとして取得する第一のキーボード入力イベント取得モジュールと、
当該第一のキーボード入力イベント取得モジュールにて取得された当該キーボードからの入力を、当該アプリケーション実行環境が受け付けることができるイベント形式に基づいた第二のキーボード入力イベントに変換する、第一のイベント形式変換モジュールと、
当該第二のキーボード入力イベントを、当該アプリケーション実行環境が備えるキーボード入力イベントを配信するための第一のイベント配信機構に対して再配信する第一のキーボード入力イベント再配信モジュールと、
当該アプリケーション実行環境がアプリケーションに対して提供しているロケール設定を取得するロケール設定取得モジュールと、
当該第一のイベント配信機構を通じて再配信された第二のキーボード入力イベントを取得する第二のキーボードイベント取得モジュールと、
当該第二のキーボードイベント取得モジュールにより取得された第二のキーボード入力イベントを、当該ロケール設定取得モジュールにより取得されたロケールに基づいて、当該アプリケーション実行環境において動作しているアプリケーションが受け付けることができる形の第三のキーボード入力イベントへ変換する、第二のイベント形式変換モジュールと、
当該第三のキーボード入力イベントを、当該アプリケーション実行環境上で動作しているアプリケーションに対してイベントを配信するための第二のイベント配信機構に対して再配信する第二のキーボード入力イベント再配信モジュールと、
を備えていることを特徴とするアプリケーション実行環境。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置のコントローラ上でアプリケーションをインストールし実行するためのアプリケーション実行環境に関する。
【背景技術】
【０００２】
従来、画像形成装置のコントローラ上でアプリケーションをインストールし実行することを可能にするようなアプリケーション実行環境において、着脱可能なキーボードからの入力を受け付けることが可能であるようなものは存在していた。
【０００３】
そのようなアプリケーション実行環境の中には、そのような着脱可能なキーボードが接続された時のロケール設定の処理として、当該キーボードからロケール情報を取得するものがある（特許文献１）。当該技術においては、接続時点における当該画像形成装置のロケール設定と当該キーボードから取得したロケール情報を比較する。その上で、当該画像形成装置の現在のロケール設定を一旦保存した後に、それをキーボードのロケール情報に合わせて変更するとともに、分離時には当該保存されたロケール設定に戻すことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２１３２８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、現在の画像形成装置のコントローラおよびアプリケーション実行環境では、当該実行環境から当該コントローラ全体のロケール設定を簡単に変更することはできない。このためアプリケーション実行環境が当該環境で動作するアプリケーションに対して提供しているロケール設定はコントローラのロケール設定とは一致しないことがあり得る。その一方で着脱可能なキーボードからの入力は当該コントローラが処理する。
【０００６】
この際、現在の一般的な着脱可能なキーボードにおいては、当該キーボードのロケール情報は取得することができないため当該コントローラは当該キーボードからの入力を、当該コントローラのロケール設定に基づいて処理してしまう。この結果として、アプリケーション実行環境のロケール設定と、実際にキーボードの入力が処理されたロケールの間に不一致が生じるという課題がある。
【０００７】
本発明の目的は、当該アプリケーション実行環境のロケール設定と、当該キーボードからの入力のロケールを一致させることが可能となるアプリケーション実行環境を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明に係るアプリケーション実行環境は、
ネットワークに接続可能な画像形成装置のコントローラの上でアプリケーションをインストールし実行することを可能にするアプリケーション実行環境であって、着脱可能なキーボードが接続されキーボード入力が行われた時に、当該画像形成装置のコントローラを経由して得られた当該キーボードからの入力を第一のキーボード入力イベントとして取得する第一のキーボード入力イベント取得モジュールと、当該第一のキーボード入力イベント取得モジュールにて取得された当該キーボードからの入力を、当該アプリケーション実行環境が受け付けることができるイベント形式に基づいた第二のキーボード入力イベントに変換する、第一のイベント形式変換モジュールと、当該第二のキーボード入力イベントを、当該アプリケーション実行環境が備えるキーボード入力イベントを配信するための第一のイベント配信機構に対して再配信する第一のキーボード入力イベント再配信モジュールと、当該アプリケーション実行環境がアプリケーションに対して提供しているロケール設定を取得するロケール設定取得モジュールと、当該第一のイベント配信機構を通じて再配信された第二のキーボード入力イベントを取得する第二のキーボードイベント取得モジュールと、当該第二のキーボードイベント取得モジュールにより取得された第二のキーボード入力イベントを、当該ロケール設定取得モジュールにより取得されたロケールに基づいて、当該アプリケーション実行環境において動作しているアプリケーションが受け付けることができる形の第三のキーボード入力イベントへ変換する、第二のイベント形式変換モジュールと、当該第三のキーボード入力イベントを、当該アプリケーション実行環境上で動作しているアプリケーションに対してイベントを配信するための第二のイベント配信機構に対して再配信する第二のキーボード入力イベント再配信モジュールと、を備えていることを特徴とする。
【発明の効果】
【０００９】
本発明に係るアプリケーション実行環境によれば、当該画像形成装置のコントローラにおいて一旦処理されたキーボード入力は、アプリケーション実行環境がその上で動作しているアプリケーションに対して提供しているロケール設定に沿ったキーボード入力に変換される。この結果として、当該アプリケーション実行環境のロケール設定と、当該キーボードからの入力のロケールを一致させることが可能となる。
【図面の簡単な説明】
【００１０】
【図１】画像形成装置とその接続されるネットワークの構成を示す図である。
【図２】画像形成装置のコントローラのソフトウェア構成を示す図である。
【図３】本発明の各モジュールの配置を示す図である。
【図４】本発明の第一のキーボード入力イベント取得モジュール・第一のキーボード入力イベント変換モジュール・第一のキーボード入力イベント再配信モジュールの動作を表すフローチャートである。
【図５】本発明の第二のキーボード入力イベント取得モジュール・第二のキーボード入力イベント変換モジュール・第二のキーボード入力イベント再配信モジュールの動作を表すフローチャートである。
【発明を実施するための形態】
【００１１】
《第１の実施形態》
以下、本発明を実施するための形態について図面を用いて説明する。図１は本発明の画像形成装置および接続されるネットワークを表した図である。
【００１２】
１０１は、ネットワークである。１０３は、本実施形態に係る画像形成装置である。１１１はコントローラである。１１２はエンジンである。コントローラ１１１およびエンジン１１２は画像形成装置１０３を構成している。コントローラ１１１は情報処理機能を備えている。エンジン１１２は画像のスキャンおよびプリントを行う機能を備えている。１２１は中央処理装置（以下ＣＰＵ）である。１２２はデータバスである。１２３は読み出し専用メモリ（以下ＲＯＭ）である。１２４は読み書き可能メモリ（以下ＲＡＭ）である。１２５は二次記憶インターフェースである。１２６は二次記憶装置である。
【００１３】
１２７はネットワークインターフェース（以下ＮＩＣ）である。コントローラ１１１はＮＩＣ１２７を通じてネットワーク１０１と接続され通信を行う。１２８は外部入力インターフェース（以下ＨＩＤ  Ｉ／Ｆ）である。１２９は外部入力装置（以下ＨＩＤ）である。ＨＩＤ  Ｉ／Ｆ１２８としては、例えばＨＩＤ１２９を接続するための汎用デジタルバスのようなものが考えられる。ＨＩＤ１２９としては例えば文字を入力するための装置であるキーボードのようなものが考えられる。ＨＩＤ１２９は複数接続されることがあり得る。１３２は、エンジンインターフェースである。
【００１４】
コントローラ１１１はＣＰＵ１２１によりＲＯＭ１２３またはＲＡＭ１２４に保持されているプログラムを実行することができる。またコントローラ１１１はプログラムを実行することで、エンジンインターフェース（１３２）を通じてエンジン１１２の状態を取得したり、制御したりすることができる。
【００１５】
図２は本発明の画像形成装置のコントローラ１１１上で動作するソフトウェアの構成を表した図である。これらのソフトウェアは、全体として、例えばＲＯＭ（２３に予め配置されるか、または二次記憶装置１２６から読みこまれてＲＡＭ１２４上に配置されＣＰＵ１２１によって実行されることで動作する。
【００１６】
２０１は当該コントローラ１１１の全体のソフトウェアを動作させるための基盤となる組込オペレーティングシステム（以下組込ＯＳ）である。２１１は当該組込ＯＳにおいてキーボードのようなＨＩＤ１２９を駆動するためのＨＩＤドライバーである。２１２は当該組込オペレーティングシステムにおいてＨＩＤを接続するために用意されているＨＩＤ  Ｉ／Ｆ１２８を駆動するためのＨＩＤ  Ｉ／Fドライバーである。
【００１７】
２０２は当該コントローラ１１１のグラフィカルユーザーインターフェース（以下ＧＵＩ）の動作を司るグラフィカルユーザーインターフェースシステム（以下ＧＵＩシステム）である。２０３は、当該組込ＯＳ２０２および当該ＧＵＩシステム２０２の上で動作する当該画像形成装置１０３の機能を実現するための画像形成装置制御ソフトウェアである。当該画像形成装置ソフトウェア２０３はさらに内部に機能部品を備えていることがある。２３１、２３２、２３３、２３４、および２３５は、そのような機能部品の例である。２３１は、当該画像形成装置１０３がコピー動作を実行するためのコピー機能部である。
【００１８】
また、２３２は当該画像形成装置１０３が印刷動作を実行するための印刷機能部である。２３３は当該画像形成装置１０３がスキャン動作を実行するためのスキャン機能部である。２３４は、当該画像形成装置１０３が文書をネットワーク１０１に送信する機能を実行するための文書送信機能部である。２３５は、当該画像形成装置がアプリケーションを実行するための環境を提供する機能部品であるアプリケーション実行環境である。
【００１９】
２５１、２５２、２５３および２５４は、当該アプリケーション実行環境２３５の上で動作するアプリケーションの例である。２５１はアプリ１、２５２はアプリ２、２５３はアプリ３、２５４はアプリ４である。これらアプリとしては、最初から当該画像形成装置１０３が搭載しているものもある。一方で、当該画像形成装置１０３を管理するユーザーにより当該アプリケーション実行環境２３５に対してパッケージを追加するような形で追加搭載され動作するようになるものもある。当該アプリケーション実行環境２３５は、そのようなアプリケーション２５１〜２５４を追加、または削除することを可能とすると共に、それらを実行することを可能にする機能を備えたものである。
【００２０】
なお、ここで、このようなアプリケーションは当該コントローラ１１１の計算機資源が許す範囲またはその他の制限の範囲の中で動作することができるものであり、本発明はその数を四つに限定するものではない。実際にはアプリケーションの数はそれより多いことも少ないこともあり得る。なお、当該画像形成装置制御ソフトウェア２０３は、ここに挙げた機能部品２３１〜２３５以外にも多種多様な機能部品を備えていることがあり、当該画像形成装置１０３が搭載する機能部品の種類を特定または限定するものではない。
【００２１】
図３は、画像形成装置１０３のコントローラ１１１において、本実施形態の動作を実現するためのモジュールの配置を表した図である。
【００２２】
３０１は当該ＧＵＩシステム２０２の中に備わっている第一のイベント配信機構である。３１１は当該画像形成装置制御ソフトウェア２０３が備える第一のキーボード入力イベント取得モジュールであある。３１２は当該画像形成装置制御ソフトウェア２０３が備える第一のイベント形式変換モジュールである。
【００２３】
３１３は、当該画像形成装置制御ソフトウェア２０３が当該第一のイベント配信機構３０１に対してイベントを再配信するための第一のキーボード入力イベント再配信モジュールである。３１４は、当該アプリケーション実行環境２３５の保持しているアプリ向けロケール設定を取得するためのロケール設定取得モジュールである。３１５は、当該アプリケーション実行環境２３５が当該第一のイベント配信機構３０１からイベントを取得するための第二のキーボード入力イベント取得モジュールである。３１６は、当該第二のキーボード入力イベント取得モジュール３１５が取得したキーボード入力イベントを変換するための第二のキーボード入力イベント変換モジュールである。
【００２４】
３２１は、当該アプリケーション実行環境２３５がアプリケーション２５１〜２５４に対してイベントを配信するための第二のイベント配信機構である。３１７は、当該第二のキーボード入力イベント変換モジュール３１６が変換したキーボード入力イベントを当該第二のイベント配信機構３２１へ再配信するための第二のキーボード入力イベント再配信モジュールである。図３中の矢印は、キーボード入力イベントの流れを示している。
【００２５】
次に図４を用いて、第一のキーボード入力イベント取得モジュール３１１）、第一のイベント形式変換モジュール３１２および第一のキーボード入力イベント再配信モジュール３１３の一連の処理の流れについて簡単に説明する。
【００２６】
コントローラ１１１に対して、ＨＩＤ１２９としてキーボードが接続されているものとする。当該キーボードを利用者が操作しキーを押下した状態を考える。この時、一連の処理はステップＳ４０１から開始する。
【００２７】
ステップＳ４０２にて、第一のキーボード入力イベント取得モジュール３１１はＧＵＩシステム２０２から画像形成装置制御ソフトウェア２０３へ配信されてきたイベントを取得する。
【００２８】
続くステップＳ４０３にて、当該第一のキーボード入力イベント取得モジュール３１１は当該取得されたイベントが外部接続されたキーボード装置からのキーボード入力イベントであるかどうかを判定する。もしそうでなければ処理はステップＳ４０４へ進む。もしそうであれば処理はステップＳ４０５へ進む。
【００２９】
ステップＳ４０４では、当該第一のキーボード入力イベント取得モジュール３１１は当該取得されたイベントをその他のイベントを処理するモジュールへ引き渡しそちらの処理に任せる。そしてこの一連の処理としてはステップＳ４０８へ進む。
【００３０】
ステップＳ４０５では、当該第一のキーボード入力イベント変換モジュール３１２が当該取得されたイベントからキー入力内容を表すパラメタを取り出す。ここで、当該取得されたイベントはすでに当該ＧＵＩシステム２０２にて当該ＧＵＩシステム２０２が組込ＯＳ２０１の設定を参照してキーシンボル情報を埋め込んでいる。
【００３１】
しかしながら、当該第一のイベント配信機構３０１が配信するイベント形式のキーボード入力イベントは当該ＧＵＩシステム２０２が当該キーシンボル情報を埋め込む前の形式である。この形式をそのまま使用するためには、当該ＧＵＩシステム２０２が一度埋め込んだ情報を捨てることになる。そのような無駄を回避し、第二のキーボード入力イベント変換モジュール３１６が変換処理を容易に行うことができるようにするため、本実施形態では、当該キーシンボル情報を別のデータに偽装して、当該イベント形式に埋め込む。そのような処理が、ステップＳ４０６である。
【００３２】
ステップＳ４０６では当該第一のキーボード入力イベント変換モジュール３１２は当該イベント形式のデータオブジェクトを作成した上で、それに対して当該キーシンボル情報を埋め込む処理を実行する。
【００３３】
そして、続くステップＳ４０７にて当該第一のキーボード入力イベント変換モジュールが当該キーシンボル情報を埋め込んだ当該データオブジェクトを、当該第一のキーボードイベント再配信モジュール３１３が当該第一のイベント配信機構に対して再配信する。それが終了したら一連の処理はステップＳ４０８へ進む。ステップＳ４０８へ進むとこれら一連の処理は完了する。
【００３４】
表１は、これらのキーボード入力イベントの構成を表したものである。表１００１はここで当該第一のキーボード入力イベント取得モジュール３１１がＧＵＩシステム２０２から取得するイベントの形式であるＧ型イベントの構成を表したものである。表１００２は、当該第一のキーボード入力イベント変換モジュール３１２が変換した後のイベントの形式であるＸ型イベントの構成を表したものである。
【００３５】
【表１】
2018180744.tif 000003
表１００１に示すのは、Ｇ型イベントである。１０１１は、イベントタイプである。１０１２は、ウィンドウポインタである。１０１３は、イベント送信メソッドにより送られたイベントであるかどうかを識別するための送信イベントフラグである。１０１４はイベントの発生時刻を示すタイムスタンプである。１０１５は修飾キーの状態を示すキーマスク値である。１０１６は入力されたキーのキーシンボル値である。１０１７は文字表現値の長さを表す文字長である。１０１８は文字表現値である。１０１９はハードウェアキー値である。１０２０はキーボードグループＩＤである。１０２１は修飾キーフラグである。
【００３６】
表１００２に示すのは、Ｘ型イベントである。１０５１はイベントタイプである。１０５２はイベントのシリアル番号である。１０５３はイベント送信メソッドにより送られたイベントであるかどうかを識別するための送信イベントフラグである。１０５４はディスプレイ値である。１０５５はルートウィンドウのＩＤである。１０５６はサブウィンドウのＩＤである。１０５７はイベントの発生時刻を示すタイムスタンプである。１０５８は座標である。１０５９はルートウィンドウから相対的に見たルートウィンドウ座標である。１０６０はキーマスク値である。
【００３７】
１０６１はこのキー入力イベントが生成されるきっかけとなったキーボード入力において押されたキーのキーコード値である。１０６２は同一スクリーンであるかどうかを示す同一スクリーンフラグである。
【００３８】
当該第一のキーボード入力イベント変換モジュール３１２は、Ｇ型イベント１００１を等価なＸ型イベント１００２に変換する機能を備えている。Ｘ型イベント１００２は本来、ＧＵＩシステム２０２がキーコード値などを処理して生成したキーシンボル値１０１６を含まない。しかし、既に述べたとおり第二のキーボード入力イベント変換モジュール３１６はキーシンボル値１０１６を必要とするため、ここではＸ型イベント１００２の変換時にサブウィンドウＩＤ１０５６の項に、キーシンボル値１０１６をセットする。
【００３９】
次に、図５を用いて、第二のキーボード入力イベント取得モジュール３１５、第二のイベント形式変換モジュール３１６および第二のキーボード入力イベント再配信モジュール３１７の一連の処理の流れについて簡単に説明する。またこの処理にはロケール値取得モジュール３１４も関わっている。
【００４０】
ステップＳ５０１から処理を開始する。
【００４１】
ステップＳ５０２にてまず、第二のキーボード入力イベント取得モジュール３１５は第一のイベント配信機構３０１から第二のキーボード入力イベントを取得する。
【００４２】
続くステップＳ５０３にて、ロケール設定取得モジュール３１４がアプリケーション実行環境２３５のロケール設定を取得する。
【００４３】
ステップＳ５０４にて第二のキーボード入力イベント変換モジュール３１６は当該第二のキーボード入力イベントから、まず当該第一のイベント形式変換モジュール３１２によりセットされたキーシンボル情報を取り出す。
【００４４】
続くステップ６０５にて、第二のキーボード入力イベント変換モジュール３１６は当該キーシンボル情報と当該ロケール設定を参照し当該入力が本来の現在のロケール設定に基づいたキーボード配列ではどのキーに相当するかをテーブルから取り出す。
【００４５】
ステップＳ５０６では、第二のキーボード入力イベント変換モジュール３１６は当該相当するキーの情報に基づいてキープレスイベントをまず生成する。
【００４６】
そして、ステップＳ５０７にて、第二のキーボード入力イベント再配信モジュール３１７が当該生成されたキープレスイベントを第二のイベント配信機構３２１へ再配信する。
【００４７】
次にステップＳ５０８では、第二のキーボード入力イベント変換モジュール３１６は、現在のデッドキー状態から、次のデッドキー状態を算出する。
【００４８】
続くステップＳ５０９にて第二のキーボード入力イベント変換モジュール３１６は、算出結果に基づき、元のデッドキー状態がキャンセルされたかを判定する。キャンセルされたのであれば処理はステップＳ５１０へ進む。そうでなければステップＳ５１７へ進む。
【００４９】
ステップＳ５１０では、第二のキーボード入力イベント変換モジュール３１６は当該元のデッドキー状態にプールされていたキー入力の情報から、送出すべきキー入力を再算出する。
【００５０】
そして続くステップＳ５１１にて、第二のキーボード入力イベント変換モジュール３１６は当該再算出されたキー入力に基づいてキータイプイベントを生成する。
【００５１】
そして続くステップＳ５１２にて第二のキーボードイベント再配信モジュール３１７が当該生成されたキータイプイベントを第二のイベント配信機構３２１へ再配信する。
【００５２】
そしてステップＳ５１３にて、デッドキー状態がキャンセルされた後の最後に入力されたキーの状態は、新たなデッドキー状態に算入されるべきかどうかを判定する。算入されるべきであればステップＳ５１４へ進む。そうでなければステップＳ５１５へ進む。
【００５３】
ステップＳ５１４では当該第二のキーボード入力イベント変換モジュール３１６は新たなデッドキー状態を算出し、ステップＳ５２１へ進む。
【００５４】
ステップＳ５１５へ進んだ場合には、最後のキー入力は新たなデッドキー状態を算出しないため、このままキータイプイベントを生成することになる。第二のキーボード入力イベント変換モジュール３１６がそのようなキータイプイベントを生成する。
【００５５】
そして続くステップＳ５１６にて当該キータイプイベントを第二のキーボード入力イベント再配信モジュール３１７が当該第二のイベント配信機構３２１へ再配信する。その後、処理はステップＳ５２１へ進む。
【００５６】
ステップＳ５１７へ進むと、第二のキーボード入力イベント変換モジュール３１６は当該キー入力がキータイプイベントを生成するものであるかどうかを判定する。そうでなければ処理はステップＳ５２１へと進む。そうであれば処理はステップＳ５１８へ進む。
【００５７】
ステップＳ５１８では、第二のキーボード入力イベント変換モジュール３１６はキータイプイベントに引き渡すべきキーシンボル情報を算出する。
【００５８】
そして、ステップＳ５１９にて第二のキーボード入力イベント変換モジュール３１６は当該キーシンボル情報に基づいてキータイプイベントを生成する。
【００５９】
そして、続くステップＳ５２０で第二のキーボード入力イベント再配信モジュール３１７は当該キータイプイベントを第二のイベント配信機構３２１へ再配信する。
【００６０】
ステップＳ５２１へ到達すると、第二のキーボード入力イベント変換モジュール３１６はキープレスイベントで用いたのと同じキーシンボル情報を用いてキーリリースイベントを生成する。
【００６１】
そして、ステップＳ５２２にて第二のキーボード入力イベント再配信モジュール３１６は当該キーリリースイベントを第二のイベント配信機構３２１に対して再配信する。ステップＳ５２３へ進むと処理を終了する。
【００６２】
ここまで見てきたように本実施形態によれば、アプリケーション実行環境２３５はアプリケーション２５１〜２５４へ提供するロケールに整合するようなキーボード入力イベントを生成し配信することができる。その際、組込ＯＳ２０１およびＧＵＩシステム２０２が固定された当該アプリケーション実行環境２３５がアプリケーション２５１〜２５４へ提供するロケールとは異なるロケールでキーボード入力を処理している場合でも可能である。これにより、当該アプリケーション実行環境２３５では、ユーザーがキーボード入力を行うとそのキーボード入力が意図したとおりに解釈されるようになり、アプリケーション２５１〜２５４を使用する際の利便性が向上する。
【符号の説明】
【００６３】
１０１  ネットワーク、１０３  画像形成装置、
１１１  画像形成装置のコントローラ、２０１  組込オペレーティングシステム、
２０２  グラフィカルユーザーインターフェースシステム、
２０３  画像形成装置制御ソフトウェア、２３５  アプリケーション実行環境
【図１】
2018180744.tif 000004
【図２】
2018180744.tif 000005
【図３】
2018180744.tif 000006
【図４】
2018180744.tif 000007
【図５】
2018180744.tif 000008