"コンピュータに、格納部に格納された第1のソースコードと、該第1のソースコードよりも前のバージョンの第2のソースコードに基づいて、前記第1のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義と、前記第2のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義との差分を示す差分情報を生成し、生成した前記差分情報を外部装置に送信する処理を実行させるプログラム。前記差分情報は、前記差分の種別を示す種別情報と、インターフェース名と、前記入出力パラメータのデータ型と、を含むことを特徴とする請求項1に記載のプログラム。前記差分の種別は、追加、削除、または変更である、ことを特徴とする請求項2に記載のプログラム。前記コンピュータに、さらに、前記差分情報を前記外部装置に送信させる送信コードを前記第1のソースコードに追加し、前記送信コードを追加した前記第1のソースコードをコンパイルする、ことを特徴とする請求項1又は2に記載のプログラム。第1のソースコードが格納されている格納部と、該第1のソースコードよりも前のバージョンの第2のソースコードに基づいて、前記第1のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義と、前記第2のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義との差分を示す差分情報を生成する生成部と、生成した前記差分情報を外部装置に送信する送信部と、を備えることを特徴とする情報処理装置。前記差分情報は、前記差分の種別を示す種別情報と、インターフェース名と、前記入出力パラメータのデータ型と、を含むことを特徴とする請求項5に記載の差分情報生成装置。前記差分の種別は、追加、削除、または変更である、ことを特徴とする請求項6に記載の情報処理装置。前記情報処理装置は、さらに、前記差分情報を前記外部装置に送信させる送信コードを前記第1のソースコードに追加する追加部と、前記送信コードを追加した前記第1のソースコードをコンパイルするコンパイル部と、を備えることを特徴とする請求項5又は6に記載の情報処理装置。ソースコードの変更に応じて、入出力パラメータを管理する入出力パラメータ管理方法であって、第1のコンピュータは、格納部に格納された第1のソースコードと、該第1のソースコードよりも前のバージョンの第2のソースコードに基づいて、前記第1のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義と、前記第2のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義との差分を示す差分情報を生成し、生成した前記差分情報を第2のコンピュータに送信し、前記第2のコンピュータは、前記差分情報を収集し、前記収集した差分情報を格納部に格納する処理を行う入出力パラメータ管理方法。サービスの変更のためサービスIFに変更があった場合、その変更による影響は、サービスIF間の不整合のため他のサービスにも及ぶ。そのため、サービスの情報管理においては、サービスの名前や稼動場所などの基本情報に加え、サービスIFにどのような変化があったか検出し、利用者に知らせることが求められている。しかしながら、上記モニタシステムの技術は、サービス稼動時の動作状況を、サービス自身に埋め込まれたプログラムロジックが取得して、情報通知を行う技術である。そのため、上記モニタシステムの技術では、サービスの変更があった場合に、インターフェースの不整合を検知し管理することはできなかった。1つの側面では、本発明は、サービスモジュールの変更に応じて、インターフェースを管理する技術を提供する。サービスモジュールプログラムは、コンピュータに、次の処理を実行させる。コンピュータは、格納部に格納された第1のソースコードと、該第1のソースコードよりも前のバージョンの第2のソースコードに基づいて、差分情報を生成する。差分情報は、第1のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義と、第2のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義との差分を示す。コンピュータは、生成した前記差分情報を外部装置に送信する。1実施態様によれば、サービスモジュールの変更に応じて、インターフェースを管理することができる。上記モニタシステムの技術では、サービスのモジュール作成時に、そのモジュールに自身の動作状況の情報を送信/受信するライブラリルーチンが埋め込まれる。モジュール稼動時には、その動作状況の情報がモニタ用の別ソフトウェア以降、モニタサーバと呼ぶに対して送信される。仮に、個々のサービスモジュールごとに、サービスIFの情報又は過去のサービスIFとの相違点に関する情報を送信するようなロジックを埋め込むこととする。これにより、個々のサービスモジュールごとに、サービスIFの情報又は過去のサービスIFとの相違点に関する情報を送信することができる。このとき、個々のサービスごとにIF情報が異なり、さらに、そのIF情報はサービスの実装方法が変更されたときに変更となる可能性がある。しかしながら、どのサービスについても、自動でサービスIFの情報又は過去のサービスIFとの相違点に関する情報を送信することを可能とする技術はなかった。そこで、本実施形態では、上記モニタシステムの技術に対し、モニタサーバからサービス情報管理用のデータベースに情報を書き込むロジックを加えることにより、サービスの情報を、データベースに自動的に反映する技術について説明する。図1は、本実施形態におけるサービスモジュール生成装置を示す。サービスモジュール生成装置1は、格納部2、コード取得部3、インターフェース定義作成部4、差分取得部5、送信コード埋め込み部6、コンパイル処理部7を含む。格納部2には、サービスモジュールのソースコードが格納されている。格納部2の一例は、格納部17である。コード取得部3は、格納部2から、第1のソースコードと、第1のソースコードの以前のバージョンの第2のソースコードを取得する。コード取得部3の一例は、プレコンパイラ12である。インターフェース定義作成部4は、第1のソースコードから第1のインターフェース関数を抽出し、第1のインターフェース関数の入出力パラメータを用いて第1のインターフェース定義を作成する。インターフェース定義作成部4は、第2のソースコードから第2のインターフェース関数を抽出し、第2のインターフェース関数の入出力パラメータを用いて第2のインターフェース定義を作成する。インターフェース定義作成部4の一例は、解析部14である。差分取得部5は、第1のインターフェース定義と第2のインターフェース定義との差分を差分情報として取得する。差分取得部5の一例は、解析部14である。送信コード埋め込み部6は、差分情報を含むサービス情報を外部装置に送信する送信コードを、第1のソースコードに埋め込む。送信コード埋め込み部6の一例は、埋込み部15である。外部装置の一例は、モニタサーバ22である。コンパイル処理部7は、送信コードを書き込んだ第1のソースコードをコンパイルする。コンパイル処理部7の一例は、コンパイラ16である。差分情報は、新たに追加され、削除され、または変更されたインターフェースかを示す種別情報と、インターフェース名と、入出力パラメータのデータ型を含む。このように構成することにより、変更後と変更前のソースコードのIF定義の差分をモニタモジュールに送信する送信コードを、変更後のソースコードに埋め込んだサービスモジュールを生成することができる。なお、本実施形態では、送信コード埋め込み部6を用いて、差分情報を含むサービス情報を外部装置に送信する送信コードを、第1のソースコードに埋め込んだが、これに限定されない。例えば、差分取得部5により取得した差分情報を外部装置に送信するようにしてもよい。すなわち、サービスモジュール生成装置1は、格納部に格納された第1のソースコードと、第1のソースコードよりも前のバージョンの第2のソースコードに基づいて、差分情報を生成する。ここで、差分情報は、第1のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義と、第2のソースコードに含まれるインターフェース関数に用いられる入出力パラメータの定義との差分を示す。そして、サービスモジュール生成装置1は、生成した差分情報を外部装置に送信するようにしてもよい。この場合、差分情報は、差分の種別を示す種別情報と、インターフェース名と、前記入出力パラメータのデータ型と、を含む。差分の種別は、追加、削除、または変更である。サービスモジュール生成装置1は、さらに、差分情報を外部装置に送信させる送信コードを前記第1のソースコードに追加する。サービスモジュール生成装置1は、送信コードを追加した第1のソースコードをコンパイルする。以下では、本実施形態の詳細を説明する。図2は、本実施形態におけるサービスモジュール生成装置の構成の一例を示す。サービスモジュール生成装置11は、プレコンパイラ12、コンパイラ16、格納部17を含む。格納部17には、サービスモジュールのソースコード18が格納されている。コンパイラ16は、サービスモジュールのソースコード18をコンパイルしてオブジェクトコードを生成するプログラムである。プレコンパイラ12は、サービスモジュールのソースコード18のコンパイル前に、動作するプログラムである。プレコンパイラ12は、ID生成部13、解析部14、埋め込み部15を含む。ID生成部13、解析部14、埋め込み部15の機能については、図3を用いて説明する。図3は、本実施形態におけるサービスモジュール生成装置によるコンパイル処理のフローを示す。以下では、図2を参照しながら、図3について説明する。プレコンパイラ12は、コンパイラ16の前処理として、格納部17に格納されたサービスモジュールのソースコード18を読み出すS1。すると、ID生成部13は、格納部17から読み出したサービスモジュールのソースコード18に、サービスモジュールを識別するための識別情報モジュールIDが割り当てられていない場合、モジュールIDを生成する。ID生成部13は、その読み出したソースコード18に対して、その生成したモジュールIDを割り当てるS2。解析部14は、そのソースコード18を解析し、サービスIF定義を取得する。サービスIF定義とは、そのソースコード18をコンパイルして得られるサービスモジュールで用いられているインターフェース関数に入力されるパラメータ及びそのインターフェース関数が出力するパラメータに関して定義された情報である。また、解析部14は、その取得したサービスIF定義と、以前のバージョンのソースコード18aのサービスIF定義と比較し、サービスIF定義の差分を抽出するS3。埋め込み部15は、サービスIF定義の差分情報を含むサービス情報を自動送信するコードを、その解析したソースコード18に埋め込むS4。コンパイラ16は、S4においてサービスIF定義の差分情報を含むサービス情報を自動送信するコードを埋め込まれたソースコード18をコンパイルし、サービスモジュールを生成するS5。このように、サービスモジュールのソースコードのコンパイル前にサービスIF情報を解析し、その結果の情報と、その情報を送信するコードを、そのソースコード18に埋め込む。これにより、稼動されたサービスモジュールのサービスIFの変更情報の自動送信が可能となる。なお、サービスモジュール変更前のサービスIF定義を取得する方法については、例えば、次のいずれかの方法を用いることができる。第1の方法としては、サービスモジュールのソースコード18のバージョンの管理がされた格納部17から変更前のバージョンのソースコードを取り出し、サービスモジュール変更前のサービスIF定義を生成する方法がある。第2の方法としては、最初にプレコンパイラ12を実行したときに、サービスIF定義をテキストデータとしてコメント行として埋め込んでおき、次回のプレコンパイル時からはそのコメント行からサービス変更前のサービスIF定義を取り出す方法がある。コンパイル後、サービスモジュールのソースコードがコンパイルされて得られたサービスモジュールは、所定のサーバにインストールされる。そのサーバ上でサービスモジュールが稼動した場合、そのサービスモジュールは、どのサービスのどのインターフェースが変更されたかという情報を送信することができる。これについて、図4を用いて説明する。図4は、本実施形態におけるサービス実行時のネットワークの構成例を示す。サーバ21には、サービスモジュール20がインストールされている。サービスモジュール20は、サービスIF定義の差分情報を含むサービス情報を自動送信するコードが埋め込められたソースコードがコンパイルされて得られたサービスモジュールである。モニタサーバ22は、モニタモジュール23とサービス情報管理データベースDB24を含む。モニタモジュール23は、サーバ21のサービスモジュール20から送信される差分情報を含むサービス情報を収集する。モニタモジュール23は、収集したサービス情報をサービス情報管理DB24に格納する。これにより、オペレータは、サービス情報管理DB24を参照することにより、サービスモジュールのサービスIFの変更を確認することができる。また、モニタサーバ22は、サービス情報管理DB24に格納したサービス情報を、予め登録された関係者例えば、情報システムの管理者、メンテナンス担当者、システムエンジニア等の端末にemailなどの手段を用いて通知するようにしてもよい。図5は、サービスモジュールが稼動しているサーバから、モニタサーバへ送信されるサービス情報の構成の一例を示す。サービス情報30は、モジュールID31、バージョン番号32、サービス名33、差分情報134-1、差分情報234-2、差分情報334-3を含む。以下では、差分情報134-1、差分情報234-2、差分情報334-3を総称して、差分情報34と称する。モジュールID31には、サービスモジュールを識別するIDが設定される。バージョン情報32には、サービスモジュールのバージョン番号が設定される。サービス名33には、サービスモジュールの名称が設定される。差分情報34には、変更前のサービスモジュールのソースコード18aのサービスIF定義と変更後のサービスモジュールのソースコード18のサービスIF定義の差分が設定される。差分情報34は、変更種別35、インターフェース名36、パラメータ型37-1、パラメータ型37-2、パラメータ形37-3、を含む。変更種別には、追加、削除、変更などの種別が設定される。追加は、新たに追加されたインターフェースであることを示す種別情報である。削除は、削除されたインターフェースであることを示す種別情報である。変更は、パラメータ等が変更されたインターフェース情報であることを示す種別情報である。インターフェース名36には、サービスIFの名称が設定される。パラメータ型3737-1,37-2,37-3,には、サービスIFで用いられるパラメータのデータ型が設定される。上記では、サービスモジュールの生成、及び利用について説明した。以下では、サービスモジュールの生成について、さらに詳述する。図6は、変更前後のサービスモジュールのサービスIF定義の一例を示す。図6Aは、変更前のサービスモジュールのサービスIF定義40aである。図6Bは、変更後のサービスモジュールのサービスIF定義40bの一例である。サービスIF定義40a,40bは、モジュールID41、バージョン42、サービス名43、IF名44、パラメータリスト45を含む。モジュールID41には、サービスモジュールを識別するIDが設定される。バージョン42には、サービスモジュールのバージョン番号が設定される。サービス名43には、サービスモジュールの名称が設定される。IF名44には、サービスIFの名称が設定される。パラメータリスト45には、サービスIFで用いられるパラメータのデータ型が設定される。次に、サービスモジュールの作成について、さらに詳述する。図7は、図3の処理の詳細を示すフローである。以下では、図2を用いて、図7を説明する。プレコンパイラ12は、格納部17よりサービスモジュールのソースコード18を取得するS11。ID生成部13は、取得したソースコード18のコメント行にモジュールIDと、バージョン番号とが埋め込まれているか検索するS12。S12での検索の結果、取得したソースコードのコメント行にモジュールIDと、バージョン番号が埋め込まれていなかった場合S13でNo、ID生成部13は、一意のモジュールIDと、バージョン番号を生成するS18。S18の処理では、例えば、UUIDUniversalUniqueIDentifier等の技術を用いてもよい。バージョン番号の初期値は、例えば、1.0であるとする。ID生成部13は、その取得したソースコード18中のコメント行に、生成したモジュールIDと、バージョン番号を埋め込むS19。解析部14は、ソースコード18を解析し、サービスIF定義を抽出するS20。その後、S21の処理が実行される。S12での検索の結果、取得したソースコード18のコメント行にモジュールIDと、バージョン番号が埋め込まれていた場合S13でYes、解析部14は、バージョン番号をカウントアップするS14。それから、解析部14は、その埋め込められたモジュールIDをキーとして、格納部17よりその埋め込められたバージョン番号の直近のバージョン番号を含むソースコード18aを取得するS15。例えば、取得したソースコード18のモジュールIDが0000010300000010800000AA006D2EA4、バージョン番号が2の場合、解析部14は、次の処理を実行する。すなわち、解析部14は、そのモジュールIDをキーとして、格納部17よりバージョン番号2の直近のバージョン番号1のソースコード18aを取得する。解析部14は、ソースコード18を解析して、ソースコード18のサービスモジュールのIF関数を抽出する。解析部14は、そのIF関数の入出力パラメータに基づいて、サービスIF定義を作成する。ソースコード18を解析して抽出されたサービスIF定義が、例えば、図6Bであるとする。また、解析部14は、ソースコード18aを解析して、ソースコード18aのサービスモジュールのIF関数を抽出する。解析部14は、そのIF関数の入出力パラメータに基づいて、サービスIF定義を作成するS16。ソースコード18aを解析して抽出されたサービスIF定義が、例えば、図6Aであるとする。解析部14は、ソースコード18のサービスIF定義と、ソースコード18aのサービスIF定義を比較して、その差分情報を抽出するS17。図6Aに示すように、変更前のサービスモジュールService1は、IFMultiplyを含む。また、図6Bに示すように、変更後のサービスモジュールService1は、IFMultiply及びIFDivideを含む。図6Aと図6Bを比較すると、図6BのサービスIF定義は、IFDivideが追加されている点が図6AのサービスIF定義と異なる。そこで、解析部14は、差分情報として、図6BのIFDivideを含むレコードを抽出する。その後、S21の処理が実行される。S17またはS20の処理終了後、埋め込み部15は、情報をモニタモジュール23に送信するための情報送信コードをソースコード18に埋め込む。その際、埋め込み部15は、図5に示すフォーマットを用いて、サービスモジュールのモジュールID31、新バージョン番号32、サービス名33、サービスIF定義の差分情報34を含むサービス情報30を生成する。埋め込み部15は、そのサービス情報30を送信用データとして、情報送信コードに加えるS21。このとき、図6の例では、変更後のソースコードに、IFDivideが追加されているので、変更種別35には、追加が設定される。埋め込み部15は、S21において変更を加えたソースコード18を格納部17にコピーするS22。コンパイラ16は、S21において変更を加えたソースコード18をコンパイルし、サービスモジュール20を生成するS23。このようにして、変更前のサービスIF定義と変更後のサービスIF定義との差分を取得し、その差分を含むサービス情報を送信する情報送信コードを変更後のソースコードに埋め込むことができる。次に、S21において変更を加えたソースコード18をコンパイルして得られたサービスモジュール20の利用について、図8を用いて、説明する。図8は、サービス実行時における、サービスモジュール、モニタモジュール、及びサービス情報管理DBの処理フローを示す。図8は、図4のサービスモジュール20、モニタモジュール23、及びサービス情報管理DB24の処理フローを示す。モニタモジュール23、及びサービス情報管理DB24は、モニタサーバ22に格納されている。まず、サーバ21は、サービスモジュール20を実行し、サービスの実行を開始させるS31。すると、サービスモジュール20は、自身に埋め込められた情報送信コードに基づいて、サービス情報30を送信するサービス情報登録処理S32。その後、サービスモジュール20は、本来のサービス処理を実行しS33、サービス処理が終了するS34。モニタサーバ22において、モニタモジュール23は、サービスモジュール20より送信されたサービス情報30を受信するS35。モニタモジュール23は、サービス情報30に含まれる変更種別35に基づいて、受信したサービス情報30の内容をサービス情報管理DB24に反映するS36。仮に、変更種別35が追加である場合、モニタモジュール23は、サービス情報30に含まれる差分情報34の内容をサービス情報管理DB24に追加する。仮に、変更種別35が削除である場合、モニタモジュール23は、サービス情報30に含まれる差分情報34の内容に対応する情報をサービス情報管理DB24から削除する。仮に、変更種別35が変更である場合、モニタモジュール23は、サービス情報管理DB24において、サービス情報30に含まれる差分情報34のインターフェース名に対応する内容を更新する。このように、サービスモジュール20の実行により、変更前後のサービスIFの差分情報を含むサービス情報30をモニタモジュール23に送信し、サービス情報管理DB24に登録することができる。ここで、サーバ21からモニタサーバ22へはネットワーク通信により必要なデータを送信する。データの送信ロジックについては、HTTPHyperTextTransferProtocolプロトコルや、FTPFileTransferProtocol等のプロトコルによる汎用の通信方法を使ってよい。送信先のネットワークアドレス、ポート番号についてはいくつかの方法で送信前に特定できるようなロジックを、プレコンパイラがサービスモジュールのソースコードに埋め込んでおくこができる。第1の例としては、サービスモジュールのコンパイル時に、プレコンパイラが送信先のネットワークアドレス、ポート番号のデータをソース中に自動的に埋め込むようにしてもよい。また、第2の例としては、社内のLDAPLightweightDirectoryAccessProtocolサーバに、サービス情報管理DBのモニタモジュールのネットワークアドレス、ポート番号の情報を管理者が予め入力しておく。そして、サービスモジュールのソースコードにはプレコンパイラがLDAPサーバへ情報問い合わせをするロジックを埋め込む。図9は、本実施形態におけるサービスモジュールの起動時に送付するサービス情報の一例を示す。図9のサービス情報30aは、図5のサービス情報30の一例である。サービス情報30aは、モジュールID31a、バージョン32a、サービス名33a、差分情報34aを含む。差分情報34aは、種別35a、インターフェース名36a、パラメータ型37aを含む。図10は、本実施形態におけるサービス情報管理DBのデータ構造の一例を示す。サービス情報管理DB24には、サービス基本テーブル24-1、インターフェース管理テーブル24-2、パラメータ管理テーブル24-3がある。サービスモジュール20より受信したサービス情報は、これらのテーブルに格納される。サービス基本テーブル24-1には、サービス名とそのサービスの補足情報が格納される。インターフェース管理テーブル24-2には、各サービスモジュールに含まれるインターフェース名と、そのインターフェースの補足情報が格納される。パラメータ管理テーブル24-3は、各サービスモジュールに含まれるインターフェース名のパラメータを管理するテーブルである。図11は、コンピュータのハードウェア環境の構成ブロック図である。コンピュータ50は、サービスモジュール生成装置11、サーバ21、またはモニタサーバ22である。コンピュータ50は、CPU52、ROM53、RAM56、通信I/F54、記憶装置57、出力I/F51、入力I/F55、読み取り装置58、バス59、出力機器61、入力機器62によって構成されている。ここで、CPUは、中央演算装置を示す。ROMは、リードオンリメモリを示す。RAMは、ランダムアクセスメモリを示す。I/Fは、インターフェースを示す。バス59には、CPU52、ROM53、RAM56、通信I/F54、記憶装置57、出力I/F51、入力I/F55、及び読み取り装置58が接続されている。読み取り装置58は、可搬型記録媒体を読み出す装置である。出力機器61は、出力I/F51に接続されている。入力機器62は、入力I/F55に接続にされている。記憶装置57としては、ハードディスク、フラッシュメモリ、磁気ディスクなど様々な形式の記憶装置を使用することができる。コンピュータ50がサービスモジュール生成装置11の場合、記憶装置57またはROM53には、CPU52をプレコンパイラ12、コンパイラ16として機能させるプログラム及びサービスモジュールのソースコード18,18aが格納されている。また、コンピュータ50がサーバ21の場合、記憶装置57またはROM53には、CPU52により実行されるサービスモジュール20が格納されている。また、コンピュータ50がモニタサーバ22の場合、記憶装置57またはROM53には、CPU52により実行されるモニタモジュール23、サービス情報管理DB24が格納されている。CPU52は、記憶装置57等に格納した上記実施形態で説明した処理を実現するプログラムを読み出し、当該プログラムを実行する。上記実施形態で説明した処理を実現するプログラムは、プログラム提供者側から通信ネットワーク60、および通信I/F54を介して、例えば記憶装置57に格納されてもよい。また、上記実施形態で説明した処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は読み取り装置58にセットされて、CPU52によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはCD-ROM、フレキシブルディスク、光ディスク、光磁気ディスク、ICカード、USBメモリ装置など様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読み取り装置58によって読み取られる。また、入力機器62には、キーボード、マウス、電子カメラ、ウェブカメラ、マイク、スキャナ、センサ、タブレットなどを用いることが可能である。また、出力機器61には、ディスプレイ、プリンタ、スピーカなどを用いることが可能である。また、ネットワーク60は、インターネット、LAN、WAN、専用線、有線、無線等の通信網であってよい。本実施形態によれば、サービスモジュールにどのような変化があったかを自動的に収集することができる。これにより、例えば、サービスモジュールの入出力インターフェースが変更されたことを検知できる。その結果、サービスの情報管理システムから、その変更内容を、予め登録された関係者にemailなどの手段により通知することが可能となる。また、サービスの既存インターフェースが削除された場合には、ソースコードに情報送信コードを埋め込むだけではなく、そのインターフェースを実装したダミー用のコードを挿入しておく。そして、サービス実行時に削除されたインターフェースを外部から呼び出された場合に、呼び出し不整合があったことを自動的に知らせることができる。このように、サービスモジュールの変更があったことと、その内容を自動的に検知することができ、サービスモジュールの変更の影響を通知したり、インターフェースの不整合検知をしたりすることが可能となる。なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。"