(57)【特許請求の範囲】
【請求項１】
コンピュータネットワークにおいて遠隔動作するプログラムをインプリメントする方法は、以下の工程を有する：
エージェントクラス及びプレイスクラスを含む複数のオブジェクト指向クラスを定義し、
コンピュータプロセスのために、前記オブジェクト指向クラス、前記オブジェクト指向クラスのサブクラス及びgoオペレーションを含むインストラクションを形成し、
前記コンピュータネットワーク内のプロセッサにおいて前記インストラクションをインタープリートし、前記goオペレーションに応答して、エージェントプロセスが、プレイスプロセスに転送される。
ここで、前記エージェントプロセスは、前記エージェントクラスのメンバであり、前記プレイスプロセスは、前記プレイスクラスのメンバである。
【請求項２】
請求の範囲第１項に記載の方法は、さらに、
前記goオペレーションを前記エージェントプロセス内において形成する。
【請求項３】
請求の範囲第１項に記載の方法は、さらに、
前記プレイスのサブプレイスを形成する。
ここで、前記サブプレイスは、前記プレイスクラスのメンバであり、前記プレイスは、前記サブプレイスのスーパープレイスである。
【請求項４】
請求の範囲第１項に記載の方法は、さらに、
前記エージェントプロセスをオブジェクトのオーナーとして指定する。
【請求項５】
請求の範囲第４項に記載の方法は、さらに、
前記オブジェクト内にダイジェストを形成する。
【請求項６】
請求の範囲第５項に記載の方法は、さらに、
前記ダイジェストを形成したオブジェクトは、そのオブジェクトのオーナーとして指定された前記エージェントプロセスとともに前記プレイスプロセスに転送されず、代わりに前記ダイジェストが前記エージェントプロセスとともに転送され、前記エージェントプロセスの転送先の前記プレイスプロセスにおいて、前記ダイジェストと同等の第２のダイジェストを有している第２のオブジェクトに置き換えられる。
【請求項７】
請求の範囲第１項に記載の方法は、さらに、
前記プレイスプロセスをチケット手段によって特定する。
【請求項８】
請求の範囲第７項に記載の方法は、さらに、
前記チケット手段を前記エージェントプロセス内に形成する。
【請求項９】
請求の範囲第７項に記載の方法は、さらに、
前記プレイスプロセスのアドレスを前記チケット手段内に形成する。
【請求項１０】
請求の範囲第９項に記載の方法において、
前記アドレスは、テレアドレスである。
【請求項１１】
請求の範囲第７項に記載の方法は、さらに、
前記プレイスプロセスのネームを前記チケット手段内に形成する。
【請求項１２】
請求の範囲第１１項に記載の方法において、
前記ネームは、テレネームである。
【請求項１３】
請求の範囲第１項に記載の方法は、さらに、
クラスオブジェクトのクラスを定義し、
クラスオブジェクトを形成し、
ここで、前記クラスオブジェクトは、（ｉ）それ自身が定義された前記クラスのメンバであるとともに、（ｉｉ）前記クラスのサブクラスのなかの選択された１つである第１のクラスを定義する。
前記第１のクラスのメンバであるオブジェクトを形成する。
ここで、前記エージェントプロセスは、前記オブジェクトを所有し、前記エージェントプロセスの前記プレイスプロセスへの転送は、前記オブジェクト及び前記クラスオブジェクトの前記プレイスプロセスへの転送である。
【請求項１４】
コンピュータネットワークにおいて遠隔動作するプログラムをインプリメントする方法は、以下の工程を有する：
エージェントクラス及びプレイスクラスを含む複数のオブジェクト指向クラスを定義し、
コンピュータプロセスのために、前記オブジェクト指向クラス、前記オブジェクト指向クラスのサブクラス及びsendオペレーションを含むインストラクションを形成し、
前記コンピュータのネットワーク内のプロセッサにおいて前記インストラクションをインタープリートし、前記sendオペレーションに応答して、エージェントプロセスの１つのクローンが、プレイスプロセスに転送される。
ここで、前記クローン及び前記エージェントプロセスは、それぞれ前記エージェントクラスのメンバであり、前記プレイスプロセスは、前記プレイスクラスのメンバである。
【請求項１５】
請求の範囲第１４項に記載の方法は、さらに、
前記sendオペレーションを前記エージェントプロセス内において形成する。
【請求項１６】
請求の範囲第１４項に記載の方法は、さらに、
前記プレイスのサブプレイスを形成する。
ここで、前記サブプレイスは、前記プレイスクラスのメンバであり、前記プレイスは、前記サブプレイスのスーパープレイスである。
【請求項１７】
請求の範囲第１４項に記載の方法は、さらに、
前記エージェントプロセスをオブジェクトのオーナーとして指定する。
【請求項１８】
請求の範囲第１７項に記載の方法において、
前記クローンの転送は、前記プロセスのコピーの前記プレイスプロセスへの転送である。
【請求項１９】
請求の範囲第１８項に記載の方法は、さらに、
前記オブジェクト内にダイジェストを形成する。
【請求項２０】
請求の範囲第１９項に記載の方法は、さらに、
前記ダイジェストを形成したオブジェクトは、そのオブジェクトのオーナーとして指定された前記エージェントプロセスとともに前記プレイスプロセスに転送されず、代わりに前記ダイジェストが前記エージェントプロセスとともに転送され、前記エージェントプロセスの転送先の前記プレイスプロセスにおいて、前記ダイジェストと同等の第２のダイジェストを有している第２のオブジェクトに置き換えられる。
【請求項２１】
請求の範囲第１４項に記載の方法は、さらに、
前記プレイスプロセスをチケット手段によって特定する。
【請求項２２】
請求の範囲第２１項に記載の方法は、さらに、
前記チケット手段を前記エージェントプロセス内に形成する。
【請求項２３】
請求の範囲第２１項に記載の方法は、さらに、
前記プレイスプロセスのアドレスを前記チケット手段内に形成する。
【請求項２４】
請求の範囲第２３項に記載のコンピュータネットワークにおけるリモートプログラミングの実施方法において、
前記アドレスは、テレアドレスである。
【請求項２５】
請求の範囲第２１項に記載の方法は、さらに、
前記プレイスプロセスのネームを前記チケット手段内に形成する。
【請求項２６】
請求の範囲第２５項に記載のコンピュータネットワークにおけるリモートプログラミングの実施方法において、
前記ネームは、テレネームである。
【請求項２７】
請求の範囲第１４項に記載の方法において、さらに、
前記sendオペレーションに応答して、前記エージェントプロセスの第２のクローンは第２のプレイスプロセスに転送される。
ここで、前記第２のクローンは、前記クローンとは異なり、前記エージェントクラスのメンバであり、前記第２のプレイスプロセスは、前記プレイスプロセスのメンバである。
【請求項２８】
請求の範囲第２７項に記載の方法は、さらに、
前記第１のクローンを前記第１のプレイスプロセスに、前記第２のクローンを前記第２のプレイスプロセスに転送するために、前記コンピュータネットワークの複数のコンピュータのうちの、前記第１のクローンと前記第２のクローンの転送時の共通の経路の末端である１つのコンピュータを決定し、
前記第１のクローンを前記１つのコンピュータに転送し、
前記１つのコンピュータにおいて前記第１のクローンから前記第２のクローンを形成する。
【請求項２９】
請求の範囲第２８項に記載の方法は、さらに、
前記１つのコンピュータから前記第１のプレイスプロセスに前記第１のクローンを転送し、
前記１つのコンピュータから前記第２のプレイスプロセスに前記第２のクローンを転送する。
【請求項３０】
コンピュータにおけるプロセス開通信方法は、以下の工程を有する：
エージェントクラスを含む複数のオブジェクト指向クラスを定義し、
コンピュータプロセスのために、前記オブジェクト指向クラス、前記オブジェクト指向クラスのサブクラス及びmeetオペレーションを含むインストラクションを形成し、
前記コンピュータのネットワーク内のプロセッサにおいて前記インストラクションをインタープリートし、前記meetオペレーションに応答して、ミーティングプレイスプロセスが、第２のエージェントプロセスへの第１のエージェントプロセスのアクセスを供与し、前記第１のエージェントプロセスへの前記第２のエージェントプロセスのアクセスを供与する。
ここで、前記第１及び第２のエージェントプロセスは、前記エージェントクラスのメンバである。
【請求項３１】
請求の範囲第３０項に記載のコンピュータにおけるプロセス間通信方法において、
前記ミーティングプレイスプロセスは、前記複数のオブジェクト指向クラス中のプレイスクラスのメンバであり、前記第１及び第２のエージェントプロセスは、前記ミーティングプレイスプロセスを占有する。
【請求項３２】
請求の範囲第３１項に記載のコンピュータにおけるプロセス間通信方法は、さらに、
第２のプレイスプロセスを形成する。
ここで、第２のプレイスプロセスは、前記プレイスクラスのメンバであり、前記第２のプレイスプロセスは、前記ミーティングプレイスプロセスのサブプレイスであり、前記ミーティングプレイスは、前記第２のプレイスのスーパープレイスである。
【請求項３３】
コンピュータネットワークにおけるプロセスの移動の制御方法は、以下の工程を有する：
エージェントクラス、プレイスクラス及びチケットクラスを含む複数のオブジェクト指向クラスを定義し、
前記プレイスクラスのメンバである複数のプレイスプロセスを前記コンピュータネットワーク内に形成し、
前記エージェントクラスのメンバであって、前記複数のプレイスプロセス中の第１のプレイスプロセスを占有するエージェントプロセスを形成し、
前記チケットクラスのメンバであって、前記複数のプレイスプロセス中の前記第１のプレイスプロセスから第２のプレイスプロセスへの前記エージェントプロセスの移動を含むトリップを定義するチケットを形成する。
【請求項３４】
コンピュータネットワークにおけるプロセスの能力の制限方法は、
プレイスプロセス及びパーミットクラスを含む複数のオブジェクト指向クラスを定義し、
前記プレイスクラスのメンバであるプロセスを形成し、
前記パーミットクラスのメンバであって、前記プロセスの１以上の能力を特定するパーミットを形成する。
【請求項３５】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスクラス内にgoオペレーションを定義し、
前記プロセスが前記goオペレーションを遂行しうるか否かを、前記パーミットにおいて特定する。
【請求項３６】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスクラス内にsendオペレーションを定義し、
前記プロセスが前記sendオペレーションを遂行しうるか否かを、前記パーミットにおいて特定する。
【請求項３７】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスクラス内にchargeオペレーションを定義し、
前記プロセスが前記chargeオペレーションを遂行しうるか否かを、前記パーミットにおいて特定する。
【請求項３８】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスクラス内にterminateオペレーションを定義し、
前記プロセスが前記terminateオペレーションを遂行しうるか否かを、前記パーミットにおいて特定する。
【請求項３９】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスが前記プロセスと異なった第２のプロセスを作り出すことができるか否かを、前記パーミット中において特定する。
ここで、前記第２のプロセスは、前記プロセスクラスのメンバである。
【請求項４０】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
オブジェクト指向プレイスクラスを定義し、
前記プロセスが前記プレイスプロセスの複数のメンバを作り出すことができるか否かを、前記パーミットにおいて特定する
【請求項４１】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスが失敗したときに前記プロセスが再スタートされるか否かを、前記パーミットにおいて特定する。
【請求項４２】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスに割り当てられた処理量を、前記パーミットにおいて特定する。
【請求項４３】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスが終了する時間を前記パーミットにおいて特定する。
【請求項４４】
請求の範囲第３４項に記載のプロセスの能力の制限方法は、さらに、
前記プロセスクラス内にrestrictオペレーションを定義し、
コンピュータプロセスのために、前記クラス、前記クラスのサブクラス及び前記restrictオペレーションを含むインストラクションを形成し、
前記コンピュータネットワーク内のプロセッサにおいて前記インストラクションをインタープリートし、前記restrictオペレーションに応答して、前記パーミットと異なる第２のパーミットが形成され、
ここで、前記第２のパーミットは、前記パーミットクラスのメンバであり、前記プロセスの前記１以上の能力の１つのグループを特定する。
前記第２のパーミットによって特定された１以上の能力の前記グループに前記プロセスを制限する。
【請求項４５】
コンピュータにおけるインストラクションセットの種々のバージョンのプロセスをインタープリートする方法は、
複数のクラスからなるクラス及びサイテションのクラスを含む複数のオブジェクト指向クラスを定義し、
前記複数のクラスからなるクラスのメンバである１以上のクラスオブジェクトを形成し、
前記１以上のクラスオブジェクトのうちの第１のクラスオブジェクトを特定するとともに、前記クラスオブジェクトのうちのいずれかが前記第１のオブジェクトに対して後方向に互換であるかを特定するサイテションを、前記第１のクラスオブジェクトにおいて形成する。
【請求項４６】
複数のコンピュータを有するコンピュータネットワークにおいて、１以上のコンピュータに配置された通信プロセスは、
それぞれが、０以上のエージェントプロセスのための１つの前記コンピュータ内の場所である複数のプレイスプロセスを、前記コンピュータネットワーク内に設け、
前記複数のプレイスプロセスのうちの目的地プレイスプロセスへのエージェントプロセスのトリップをチケット手段によって特定し、
前記エージェントプロセス内のsendオペレーションに応答して、前記エージェントプロセスのクローンを前記目的地プレイスプロセスに転送する。
【請求項４７】
請求の範囲第４６項に記載の通信プロセスは、さらに、
第２のチケット手段により、前記複数のプレイスプロセスのうちの第２の目的地プレイスプロセスへの前記エージェントプロセスの前記トリップと異なる第２のトリップを特定する。
【請求項４８】
請求の範囲第４７項に記載の通信プロセスは、さらに、
前記第１のクローンを第１のトリップにより第１の目的地プレイスプロセスに転送し、第２のクローンを第２のトリップにより前記第１の目的地プレイスプロセスとは別のコンピュータ上にある第２の目的地プレイスプロセスに転送するために、前記第１のクローンと前記第２のクローンの転送時の共通の経路の末端である、前記複数のコンピュータのうちの１つのコンピュータを決定し、
前記第１のクローンを前記１つのコンピュータに移動し、
前記１つのコンピュータにおいて、前記第１のクローンから前記第２のクローンを形成する。
【請求項４９】
請求の範囲第４８項に記載の通信プロセスは、さらに、
前記第１のクローンを前記第１の目的地プレイスプロセスに転送する。
【請求項５０】
請求の範囲第４８項に記載の通信プロセスは、さらに、
前記第２のクローンを前記第２の目的地プレイスプロセスに転送する。
【請求項５１】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記エージェントプロセス内のgoオペレーションに応答して、前記エージェントプロセスを、前記チケット手段によって特定された前記目的地プレイスプロセスに転送する。
【請求項５２】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記目的地プレイスプロセスを前記チケット手段のネームによって特定する。
【請求項５３】
請求の範囲第５２項に記載の通信プロセスは、さらに、
前記ネームは、テレネームである。
【請求項５４】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記目的地プレイスプロセスを前記チケット手段のアドレスによって特定する。
【請求項５５】
請求の範囲第５４項に記載の通信プロセスにおいて、
前記アドレスは、テレアドレスである。
【請求項５６】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段中において、前記目的地プレイスプロセスがメンバであるクラスのサイテションによって前記目的地プレイスプロセスを特定する。
【請求項５７】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段中において、前記目的地プレイスプロセスのアドレスと、前記目的地プレイスプロセスのネームと、前記目的地プレイスプロセスがその１つのメンバであるクラスのサイテションとの任意の組み合わせによって前記目的地プレイスプロセスを特定する。
【請求項５８】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段中において、前記トリップの最長期間を特定する。
【請求項５９】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段中において、前記トリップの望ましい期間を特定する。
【請求項６０】
請求の範囲第４６項項に記載の通信プロセス通信プロセスは、さらに、
前記チケット手段中において、転送手段を特定する。
ここで、前記転送手段は、前記クローンを転送するためのコンピュータ間通信方法の形式を特定する。
【請求項６１】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段中に含まれる目的地パーミットにより、前記目的地プレイスプロセスにおける前記エージェントプロセスのデッドラインを制御する。
【請求項６２】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段に含まれる目的地パーミットにより、前記目的地プレイスプロセスにおける前記エージェントプロセスが遂行することを許可されるオペレーションを制御する。
【請求項６３】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段に含まれる目的地パーミットにより、前記目的地プレイスプロセスにおける前記エージェントプロセスが使用することを許可されるリソースを制御する。
【請求項６４】
請求の範囲第４６項に記載の通信プロセスは、さらに、
前記チケット手段に含まれる目的地パーミットにより、前記目的地プレイスプロセスの他のプロセスに対する前記目的地プレイスプロセスにおける前記エージェントプロセスの相対的な優先度を特定する。
【請求項６５】
請求の範囲第４６項に記載の通信プロセスは、さらに、
プロセスが許容される能力をパーミット手段によって制御する。
【請求項６６】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記パーミット手段は、固有のパーミットである。
【請求項６７】
請求の範囲第６６項に記載の通信プロセスにおいて、
前記パーミット手段は、ローカルパーミットである。
【請求項６８】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記パーミット手段は、一時的なパーミットである。
【請求項６９】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記能力は、前記プロセスが使用できるリソース有する。
【請求項７０】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記能力は、その後ではプロセスが続行することができないデッドラインを有する。
【請求項７１】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記能力は、他のプロセスに対する前記プロセスの相対的な優先度を有する。
【請求項７２】
請求の範囲第６５項に記載の通信プロセスにおいて、
前記能力は、前記プロセスが選択されたオペレーションを遂行する許可を有する。
【請求項７３】
請求の範囲第４６項に記載の通信プロセスにおいて、
前記エージェントプロセスは、オブジェクトを所有する。
【請求項７４】
請求の範囲第７３項に記載の通信プロセスにおいて、
前記オブジェクトは、ダイジェストを有する。
【請求項７５】
請求の範囲第７４項に記載の通信プロセスにおいて、
前記エージェントプロセスのクローンを転送する前記工程は、前記オブジェクトのコピーの転送を有する。
【請求項７６】
請求の範囲第７５項に記載の通信プロセスは、さらに、
前記目的地プレイスプロセスにおいて、第２のオブジェクトを前記コピーと相互変換し、前記コピーは前記目的地プレイスプロセスには転送されない。
ここで、前記第２のオブジェクトは、前記ダイジェストと同等のダイジェストを有する。
【請求項７７】
請求の範囲第７３項に記載の通信プロセスは、さらに、
前記目的地プレイスプロセスにおいて、前記オブジェクトの代わりに相互変換されたオブジェクトを使用して、前記オブジェクトを前記目的地プレイスプロセスに転送することを不要とする。
【請求項７８】
請求の範囲第４６項に記載の通信プロセスにおいて、
前記転送工程は、前記目的地プレイスプロセスに進入する工程を有する。
【請求項７９】
請求の範囲第４６項に記載の通信プロセスにおいて、
前記転送工程は、前記転送元のプレイスプロセスを退出する工程を有する。
【請求項８０】
請求の範囲第４６項に記載の通信プロセスにおいて、
前記目的地プレイスプロセスは、ミーティングプレイスプロセスであり、前記ミーティングプレイスは、リクエスタエージェントプロセスとペティションドエージェントプロセス間のミーティングを取り計らう。
【請求項８１】
複数のコンピュータを有するコンピュータネットワークにおいて、１以上のコンピュータに配置された通信プロセスは、
第１のエージェントプロセス及び第２のエージェントプロセスを設け、
ペティション手段により、前記第１のエージェントプロセスと第２のエージェントプロセス間のミーティングを特定し、
前記ペティション手段によって定義された前記第１のエージェントプロセスと第２のエージェントプロセス間の前記ミーティングを取り計らう。
【請求項８２】
請求の範囲第８１項に記載の通信プロセスは、さらに、
前記第１のエージェントプロセス内に前記ペティション手段を形成する。
【請求項８３】
請求の範囲第８１項に記載の通信プロセスにおいて、
ミーティングを特定する前記工程は、前記ペティション手段内に前記第２のエージェントプロセスを特定する。
【請求項８４】
請求の範囲第８３項に記載の通信プロセスにおいて、
前記第２のエージェントプロセスを特定する前記工程は、前記ペティション手段中において、前記第２のエージェントをネームによって特定する。
【請求項８５】
請求の範囲第８４項に記載の通信プロセスにおいて、
前記ネームは、テレネームである。
【請求項８６】
請求の範囲第８３項に記載の通信プロセスにおいて、
前記第２のエージェントプロセスを特定する前記工程は、前記ペティション手段中において、前記第２のエージェントプロセスがメンバであるクラスを特定する。
【請求項８７】
請求の範囲第８３項に記載の通信プロセスにおいて、
前記第２のエージェントプロセスを特定する前記工程は、前記ペティション手段中において、前記第２のエージェントプロセスがメンバであるクラスのサイテションを特定する。
【請求項８８】
請求の範囲第８１項に記載の通信プロセスにおいて、
ミーティングを特定する前記工程は、前記ペティション手段中において、前記ミーティングを取り計らうための最長期間を特定する。
【請求項８９】
請求の範囲第８１項に記載の通信プロセスにおいて、
前記ミーティングを取り計らう前記工程は、前記第２のエージェントプロセスへのリファレンスを前記第１のエージェントプロセスに供与する。
【請求項９０】
請求の範囲第８９項に記載の通信プロセスにおいて、
前記ミーティングを取り計らう前記工程は、前記第１のエージェントプロセスへのリファレンスを前記第２のエージェントプロセスに供与する。
【請求項９１】
請求の範囲第８１項に記載の通信プロセスは、さらに、
前記第１のエージェントプロセス中におけるインストラクションに応答して、前記第２のエージェントプロセス中のオペレーションの遂行を生じさせる。
【請求項９２】
請求の範囲第９１項に記載の通信プロセスにおいて、
前記第１のエージェントプロセスは、オブジェクトを所有する。
【請求項９３】
請求の範囲第９２項に記載の通信プロセスは、さらに、
前記オブジェクトへのリファレンスを前記第２のエージェントプロセスに供与する。
【請求項９４】
請求の範囲第９３項に記載の通信プロセスにおいて、
前記リファレンスは、保護されたリファレンスである。
【請求項９５】
請求の範囲第９２項に記載の通信プロセスは、さらに、
前記オブジェクトのコピーへのリファレンスを前記第２のエージェントプロセスに供与する。
【請求項９６】
請求の範囲第９１項に記載の通信プロセスにおいて、
前記第２のエージェントプロセスは、オブジェクトを所有する。
【請求項９７】
請求の範囲第９６項に記載の通信プロセスは、さらに、
前記オブジェクトへのリファレンスを前記第１のエージェントプロセスに供与する。
【請求項９８】
請求の範囲第９７項に記載の通信プロセスにおいて、
前記リファレンスは、保護されたリファレンスである。
【請求項９９】
請求の範囲第９６項に記載の通信プロセスは、さらに、
前記オブジェクトのコピーへのリファレンスを前記第１のエージェントプロセスに対して供与する。
【請求項１００】
複数のコンピュータを有するコンピュータネットワークにおいて、１以上のコンピュータのそれぞれに配置された通信システムは、
チケット手段及びsendオペレーションを有するエージェント手段と、
前記複数のコンピュータの１つにおいてそれぞれが動作する複数のプレイス手段とを有する。
ここで、前記エージェント手段は、前記複数のプレイス手段のうちの第１のプレイス手段であり、
前記チケット手段は、前記複数のプレイス手段のうちの目的地プレイス手段への前記エージェント手段のトリップを特定し、
前記sendオペレーションは、前記エージェント手段のクローンを前記目的地プレイス手段に転送する。
【請求項１０１】
請求の範囲第１００項に記載の通信システムにおいて、
前記エージェント手段は、前記第１のチケット手段と異なり、第２の目的地プレイス手段への前記エージェント手段の第２のトリップを特定する第２のチケット手段を有する。
【請求項１０２】
請求の範囲第１０１項に記載の通信システムにおいて、
前記sendオペレーションの遂行によって前記エージェント手段の第２のクローンが前記第２の目的地プレイス手段に転送される。
【請求項１０３】
請求の範囲第１０２項に記載の通信システムにおいて、
前記第１のトリップ及び前記第２のトリップは、前記複数のコンピュータうちの１つのコンピュータへの転送を含み、
前記第１のクローンを前記第１の目的地プレイス手段に転送し、前記第２のクローンを前記第２の目的地手段に転送する際に、前記sendオペレーションの遂行により、
（ａ）前記第１のクローンを前記１つのコンピュータに転送し、
（ｂ）前記１つのコンピュータにおいて、前記第１のクローンから前記第２のクローンを形成する。
【請求項１０４】
請求の範囲第１００項に記載の通信システムにおいて、
前記エージェント手段は、goオペレーションを有する。
ここで、前記goオペレーションは、第３のチケット手段によって特定された第３の目的地プレイス手段に前記エージェント手段を転送する。
【請求項１０５】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段を特定するネームを有する。
【請求項１０６】
請求の範囲第１０５項に記載の通信システムにおいて、
前記ネームは、テレネームである。
【請求項１０７】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段のアドレスを有する。
【請求項１０８】
請求の範囲第１０７項に記載の通信システムにおいて、
前記アドレスは、テレアドレスである。
【請求項１０９】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段をメンバとするクラスを特定するサイテション手段を有する。
【請求項１１０】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段のアドレスと、前記目的地プレイス手段のネームと、前記目的地プレイス手段をメンバとするクラスを特定するサイテション手段とからなる群から選択された任意の組合せを有する。
【請求項１１１】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記トリップの最長期間を特定する手段を有する。
【請求項１１２】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記トリップの望ましい期間を特定する手段を有する。
【請求項１１３】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記トリップ手段を完成させるコンピュータ間通信手段の形式を特定するウェイ手段を有する。
【請求項１１４】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段における前記エージェント手段のデッドラインを制御するパーミット手段を有する。
【請求項１１５】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段における前記エージェント手段が遂行することを許可されるオペレーションを制御するパーミット手段を有する。
【請求項１１６】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段における前記エージェント手段が使用することを許可されるリソースを制御するパーミット手段を有する。
【請求項１１７】
請求の範囲第１００項に記載の通信システムにおいて、
前記チケット手段は、前記目的地プレイス手段の他のエージェント手段に対する前記目的地プレイス手段における前記エージェント手段の相対的な優先度を特定するパーミット手段を有する。
【請求項１１８】
請求の範囲第１００項に記載の通信システムは、さらに、
エージェント手段が許容される能力を制御するパーミット手段を有する。
【請求項１１９】
請求の範囲第１１８項に記載の複数のコンピュータを有するコンピュータネットワークにおいて、
前記パーミット手段は、固有のパーミットである。
【請求項１２０】
請求の範囲第１１８項に記載の通信システムにおいて、
前記パーミット手段は、ローカルパーミットである。
【請求項１２１】
請求の範囲第１１８項に記載の通信システムにおいて、
前記パーミット手段は、一時的なパーミットである。
【請求項１２２】
請求の範囲第１１８項に記載の通信システムにおいて、
前記能力は、前記エージェント手段が使用できるリソースを有する。
【請求項１２３】
請求の範囲第１１８項に記載の通信システムにおいて、
前記能力は、その後では前記エージェント手段が続行することのできないデッドラインを有する。
【請求項１２４】
請求の範囲第１１８項に記載の通信システムは、さらに、
他のエージェント手段を有する。
ここで、前記能力は、前記他のエージェント手段に対する前記エージェント手段の相対的な優先度を有する。
【請求項１２５】
請求の範囲第１１８項に記載の通信システムにおいて、
前記能力は、前記エージェント手段が選択されたオペレーションを遂行する許可を有する。
【請求項１２６】
請求の範囲第１００項に記載の通信システムにおいて、
前記エージェント手段は、オブジェクトを所有する。
【請求項１２７】
請求の範囲第１２６項に記載の通信システムにおいて、
前記オブジェクトは、ダイジェストを有する。
【請求項１２８】
請求の範囲第１２７項に記載の通信システムにおいて、
前記sendオペレーションの遂行により、前記オブジェクトのコピーが前記クローンとともに転送される。
【請求項１２９】
請求の範囲第１２８項に記載の通信システムにおいて、
前記目的地プレイス手段において、第２のオブジェクトは前記コピーと相互変換され、
前記第２のオブジェクトは、前記第１のダイジェストと同等のダイジェストを有することにより、前記コピーを前記目的地プレイス手段に転送することを不要とする。
【請求項１３０】
請求の範囲第１２８項に記載の通信システムにおいて、
前記目的地プレイス手段において、前記sendオペレーションが前記コピーの代わりに相互変換されたオブジェクトを使用することにより、前記オブジェクトの前記コピーを前記目的地プレイス手段に転送することを不要にする。
【請求項１３１】
請求の範囲第１００項に記載の通信システムにおいて、
前記プレイス手段は、前記プレイス手段に進入するための手段を有する。
【請求項１３２】
請求の範囲第１００項に記載の通信システムにおいて、
前記プレイス手段は、前記プレイス手段を退出する手段を有する。
【請求項１３３】
請求の範囲第１００項に記載の通信システムにおいて、
前記プレイス手段は、リクエスタエージェント手段とレスポンダエージェント手段間のミーティングを取り計らうミーティングプレイス手段を有する。
【請求項１３４】
複数のコンピュータを有するコンピュータネットワークにおいて、１以上のコンピュータのそれぞれに配置された通信システムは、
エージェント手段のための場所であり、meetオペレーションを有する複数のミーティングプレイス手段と、
ペティション手段と、
前記複数のエージェント手段のうちの第１のエージェント手段と、
前記複数のエージェント手段のうちの第２のエージェント手段とを有する。
ここで、前記第１及び第２のエージェント手段は、前記複数のエージェント手段のうちのいずれともミートでき、
前記ペティション手段は、前記第１のエージェント手段と第２のエージェント手段間のミーティングを特定し、
前記ミーティング手段は、前記meetオペレーションに応答して、前記ミーティングを取り計らう。
【請求項１３５】
請求の範囲第１３４項に記載の通信システムにおいて、
前記第１のエージェント手段は、前記ペティション手段を含む。
【請求項１３６】
請求の範囲第１３５項に記載の通信システムにおいて、
前記ペティション手段は、前記第２のエージェント手段を特定することにより、前記ミーティングを特定する。
【請求項１３７】
請求の範囲第１３６項に記載の通信システムにおいて、
前記ペティション手段は、前記第２のエージェント手段を特定するネームを有する。
【請求項１３８】
請求の範囲第１３７項に記載の通信システムにおいて、
前記ネームは、テレネームである。
【請求項１３９】
請求の範囲第１３６項に記載の通信システムにおいて、
前記ペティション手段は、前記第２のエージェント手段がメンバであるクラスを特定することにより、前記第２のエージェントを特定する。
【請求項１４０】
請求の範囲第１３６項に記載の通信システムにおいて、
前記ペティション手段は、前記第２のエージェント手段がメンバであるクラスを特定するサイテションを有する。
【請求項１４１】
請求の範囲第１３４項に記載の通信システムにおいて、
前記ペティション手段は、前記ミーティングを取り計らうための最長期間を規定する。
【請求項１４２】
請求の範囲第１３４項に記載の通信システムにおいて、さらに、
前記meetオペレーションは、前記第２のエージェント手段へのリファレンスを前記第１のエージェント手段に供与する。
【請求項１４３】
請求の範囲第１４２項に記載の通信システムにおいて、さらに、
前記meetオペレーションは、前記第１のエージェント手段へのリファレンスを前記第２のエージェント手段に供与する。
【請求項１４４】
請求の範囲第１３４項に記載の通信システムにおいて、さらに、
前記第１のエージェント手段は、前記第２のエージェント手段中のオペレーションの遂行を生じさせる。
【請求項１４５】
請求の範囲第１４４項に記載の通信システムにおいて、
前記第１のエージェント手段は、オブジェクトを所有する。
【請求項１４６】
請求の範囲第１４５項に記載の通信システムにおいて、さらに、
前記第１のエージェント手段は、前記オブジェクトへのリファレンスを前記第２のエージェント手段に供与する。
【請求項１４７】
請求の範囲第１４６項に記載の通信システムにおいて、
前記リファレンスは、保護されたリファレンスである。
【請求項１４８】
請求の範囲第１４５項に記載の通信システムにおいて、さらに、
前記第１のエージェント手段は、前記オブジェクトのコピーへのリファレンスを前記第２のエージェント手段に供与することができる。
【請求項１４９】
請求の範囲第１４４項に記載の通信システムにおいて、
前記第２のエージェント手段は、オブジェクトを所有する。
【請求項１５０】
請求の範囲第１４９項に記載の通信システムにおいて、さらに、
前記第２のエージェント手段は、前記オブジェクトへのリファレンスを前記第１のエージェント手段に供与することができる。
【請求項１５１】
請求の範囲第１５０項に記載の通信システムにおいて、
前記リファレンスは、保護されたリファレンスである。
【請求項１５２】
請求の範囲第１４９項に記載の通信システムにおいて、
前記第２のエージェント手段は、前記オブジェクトのコピーへのリファレンスを前記第１のエージェント手段に供与する。
【請求項１５３】
複数のコンピュータを有するコンピュータネットワークのなかの１以上のコンピュータのそれぞれに配置された通信システムにおいて、第１のエンジンプロセスにおける第１のプレイスプロセスから第２のエンジンプロセスにおける第２のプレイスプロセスにデータを転送するデータ転送方法は、以下の工程を有する：
（ａ）１以上のエージェントプロセスを実行する実行手段を設け、
ここで、前記実行手段は、第１のエンジンプロセス及び第２のエンジンプロセス及び第１のプレイスプロセス及び第２のプレイスプロセスを有し、各前記エージェントプロセスは、コンピュータインストラクションセットの複数のインストラクションを有し、実行状態を有する。
（ｂ）前記コンピュータインストラクションセットにgoインストラクションを設け、
ここで、前記goインストラクションは、前記第１のエンジンプロセスにおける第１のプレイスプロセスにおいて実行される第１のエージェントプロセスに含まれ、前記goインストラクションの遂行により、
（ｉ）前記第１のエンジンプロセスによる前記第１のエージェントプロセスの実行の中断と、
（ｉｉ）前記第１のエージェントプロセスの前記実行状態が保存される前記第１のエージェントプロセスの表現と、
（ｉｉｉ）前記第１のエンジンプロセスにおける第１のプレイスプロセスから第２のエンジンプロセスにおける第２のプレイスプロセスへの前記第１のエージェントプロセスの前記表現の転送と、
（ｉｖ）前記第２のエンジンプロセスによる前記第１のエージェントプロセスの実行の再開とを生じさせる。
（ｃ）前記第１のエージェントプロセスによる前記エージェントプロセスの実行を生じさせることにより、前記goインストラクションの遂行を生じさせる。
【請求項１５４】
請求の範囲第１５３項に記載のデータ転送方法において、
前記コンピュータインストラクションセットは、オブジェクト指向である。
【請求項１５５】
請求の範囲第１５４項に記載のデータ転送方法において、
前記複数のエージェントプロセスは、前記オブジェクト指向コンピュータインストラクションセットのオブジェクトである。
【請求項１５６】
請求の範囲第１５３項に記載のデータ転送方法は、さらに、
前記goインストラクションの遂行を生じさせる前に前記第１のエージェントプロセスにデータを付加する工程を有する。
ここで、前記第１のエージェントプロセスの前記表現は、前記データを含み、
前記第２のエンジンプロセスにおける第２のプレイスプロセスへの前記第１のエージェントプロセスの前記表現の転送は、前記データの転送を含む。
【請求項１５７】
請求の範囲第１５３項に記載のデータ転送方法において、
前記第１のエージェントプロセスは、前記第１のエンジンプロセスにおける第１のプレイスプロセスから前記第２のエンジンプロセスにおける第２のプレイスプロセスに転送されるメッセージを表すデータを有する。
ここで、前記goインストラクションの実行によって生ずる前記第１のエージェントプロセスの転送は、前記第１のエンジンプロセスにおける第１のプレイスプロセスから前記第２のエンジンプロセスにおける第２のプレイスプロセスへの前記データの転送を生じさせる。
【請求項１５８】
請求の範囲第１５３項に記載のデータ転送方法において、
前記第１のエンジンプロセスは、第１のコンピュータにおいて実行され、前記第２のエンジンプロセスは、第２のコンピュータによって実行される。
ここで、前記第１及び第２のコンピュータは、前記コンピュータネットワークの一部分である。
【請求項１５９】
第１のエンジンプロセスにおける第１のプレイスプロセスから１以上の別のエンジンプロセスにおける１以上の別のプレイスプロセスにデータを転送するデータ転送方法は、以下の工程を有する：
（ａ）コンピュータインストラクションセットのインストラクションを有する複数のエージェントプロセスを実行する手段を設け、
ここで、前記エージェントプロセス実行手段は、前記第１のエンジンプロセス及び１以上のエンジンプロセス及び第１のプレイスプロセス及び１以上の別のプレイスプロセスを有し、各前記エージェントプロセスは、実行状態を有する。
（ｂ）前記コンピュータインストラクションセットにsendインストラクションを設け、
ここで、前記sendインストラクションは、前記複数のエージェントプロセス中の第１のエージェントプロセスに含まれ、前記sendインストラクションの実行は、以下の工程を含む。
（ｉ）前記第１のエージェントプロセスの１以上のコピーを形成し、これらのコピーは、前記第１のエージェントプロセスの前記実行状態を保存するとともに含み、
（ｉｉ）前記第１のエージェントプロセスの各コピーを、前記第１のエンジンプロセスにおける第１のプレイスプロセスから前記１以上のエンジンプロセスにおける１以上の別のプレイスプロセスにそれぞれ転送し、
（ｉｉｉ）前記第１のエージェントプロセスの前記各コピーを、前記１以上のエンジンプロセスによってそれぞれ実行して、前記第１のエージェントプロセスの再開された実行をシミュレートする。
【請求項１６０】
請求の範囲第１５９項に記載のデータ転送方法において、
前記第１のエージェントプロセスの２以上の前記コピーが前記第１のエンジンプロセスから１つの第２のエンジンプロセスに転送される条件のもとに、前記第１のエージェントプロセスの前記２以上のコピーの転送は、以下の工程を有する：
前記第１のエージェントプロセスの１つのコピーを前記第２のエンジンプロセスに転送し、
前記第２のエンジンプロセスにおいて、前記１つのコピーから前記第１のエージェントプロセスの前記２以上のコピーを形成する。
【請求項１６１】
あるコンピュータシステムにおいて実行されている第１のエージェントプロセスから、前記コンピュータシステムによって実行されている第２のエージェントプロセスにデータを転送するデータ転送方法であって、前記第１及び第２のエージェントプロセスがあるエンジンプロセスにおけるプレイスプロセスの占有者である、該データ転送方法は、以下の工程を有する：
前記第１のエージェントプロセスが送出するmeetインストラクションに応答して、前記第２のエージェントプロセスによるプロシージャの実行を生じさせ、
ここで、前記プロシージャは、前記第２のエージェントプロセスの一部であり、前記第２のエージェントコンピュータプロセスに含まれるコンピュータインストラクションのコレクションを有する。
前記第２のエージェントプロセスによって送出され、前記プロジージャの一部である第２のインストラクションに応答して、前記第２のエージェントプロセスへのアクセス手段を前記第１のエージェントプロセスに供与する。
【請求項１６２】
請求の範囲第１６１項に記載のデータ転送方法において、
前記第２のエージェントプロセスによるプロシージャの実行を生じさせる前記工程は、以下の工程を有する：
前記第１のエージェントプロセスによって送出される前記meetインストラクションに応答して、前記プレイスプロセスによる第２のプロシージャの実行を生じさせる。
ここで、前記プレイスプロセスによる前記第２のプロシージャの実行は、前記第１のプロシージャを前記第２のエージェントプロセスによって実行させるインストラクションを送出する。
【請求項１６３】
請求の範囲第１６１項に記載のデータ転送方法において、
前記第２のエージェントプロセスへのアクセス手段は、前記プレイスプロセスによって前記第１のエージェントプロセスに供与される。
【請求項１６４】
請求の範囲第１６３項に記載のデータ転送方法において、
前記プレイスプロセスが、前記第２のエージェントプロセスへの前記アクセス手段を前記第１のエージェントプロセスに供与すると略同時に、前記プレイスプロセスが、前記第１のエージェントプロセスへのアクセス手段を前記第２のエージェントプロセスに供与する。
【請求項１６５】
第１のＣＰＵ及び第１のメモリを有する第１のコンピュータシステムから、第２のＣＰＵ及び第２のメモリを有する第２のコンピュータシステムへ第１のコンピュータプロセスを転送する方法は、以下の工程を有する：
前記第１のＣＰＵにおいて、実行状態を有する前記第１のコンピュータプロセスの実行を開始し、
前記第１のＣＰＵ内において前記第１のコンピュータプロセスの実行を中断し、
前記第１のコンピュータプロセスをデータとして前記第１のメモリに表現し、
ここで、前記データは、前記第１のコンピュータプロセスの実行が中断された時点における前記第１のコンピュータプロセスの前記実行状態を含む。
前記データを前記第１のメモリから前記第２のメモリに転送し、
前記データで表現された前記実行状態を有する第２のコンピュータプロセスを、前記データから前記第２のコンピュータシステム上に形成し、
前記第２のコンピュータプロセスを実行することにより、前記第２のＣＰＵにおいて前記第１のコンピュータシステムの実行の再開を実効的にシミュレートする。
【発明の詳細な説明】
ホワイト，ジェイムス  イー．
ヘルゲッサン，クリストファー  エス．
ステードマン，ダグラス  エイ．
この特許出願書類に開示されている内容には、著作権で保護される事項も含まれている。本著作権者は、特許庁のファイルやレコードにある特許出願書類や特許開示の内容を複製することに対して異議はない。しかしながら、本著作権者が、本特許出願書類に関して著作権を有していることに変わりはない。
技術分野
本発明は、分散型コンピュータシステム環境の分野に関し、特にプロセスがオブジェクト指向環境において作り出され、このプロセスがコンピュータネットワーク内におけるプロセス自身の動きを指示するような、新しい分散型コンピュータシステム環境に関する。
背景技術
今日多くの異なった種類のコンピュータシステムが利用されているが、これらのシステムの多くは、図１に示すように、基本的なコンポーネントから構成されている。典型的には、コンピュータシステム２０は中央処理装置（以下、ＣＰＵという）を備え、このＣＰＵ１０は、入力バス１１を介して入力モジュール１２に接続されるとともに、出力バス１３を介して出力モジュール１４に接続されている。また、ＣＰＵ１０は、データバス１５、１６を介してメモリユニット１７にも接続されている。
ＣＰＵ１０は、制御及び計算機能を有する。入力モジュール１２及び出力モジュール１４は、コンピュータのユーザとＣＰＵ１０間の通信のために用いられる。入力モジュール１２は、情報をＣＰＵ１０に供給するためのものである。典型的な入力モジュールとしては、キーボード及びマウスがある。出力モジュール１４は、ＣＰＵ１０からの情報を表示するためのものである。典型的な出力モジュールとしては、ビデオディスプレイモニタ、プリンタ、プロッタ及びその他の視覚表示手段がある。入力モジュール１２及び出力モジュール１４は、ときには、インプット／アウトプット（Ｉ／Ｏ）ユニットとも呼ばれる。
メモリユニット１７は、典型的には、２種類の一般的な形式の情報、すなわちインストラクション（命令）とデータを収容する。コンピュータプログラムは、ある特定の機能を実現するためにコンピュータによって実行される一連のインストラクションから成る。メモリユニット１７のデータは、ＣＰＵ１０において実行されているコンピュータプログラムのインストラクションに応答して、ＣＰＵ１０によって処理される。そして、実行中のコンピュータプログラムは、コンピュータプロセス（computer process）と呼ばれる。
メモリユニット１７は、典型的には、マスメモリ１７Ａ（ときには２次メモリとも呼ばれる）と、メインメモリ１７Ｂとを備えている。メインメモリ１７Ｂは、通常、ＣＰＵ１０によって現に実行されているプログラムの少なくとも一部分と、そのプログラムで必要とされるデータを記憶するために用いられる。一方、例えば磁気ディスクや磁気テープから成るマスメモリ１７Ａは、プログラム、データ、ＣＰＵ１０によって直ちには必要とされないプログラムやデータ又はメインメモリ１７Ｂの大きさの制限のためにメインメモリ１７Ｂ中に収容することのできないプログラムやデータの一部を記憶するために用いられる。
コンピュータのオペレーティングシステムは、ＣＰＵ１０、入力モジュール１２、出力モジュール１４、マスメモリ１７Ａ及びメインメモリ１７Ｂを連動させ、後述するユーザアプリケーションとコンピュータハードウェア間のインターフェイスを行なうコンピュータプロセスである。ここで使用されているコンピュータハードウェアという用語は、コンピュータシステムの物理的なコンポーネントを意味する。コンピュータシステムを正しく動作させるためにはオペレーティングシステムが必要である。したがって、オペレーティングシステムは、コンピュータシステムを立ち上げた時に、ブーティングと呼ばれるプロセスにより、メインメモリ１７Ｂにロードされ、コンピュータシステムが最終的に終了するまでメインメモリ１７Ｂに留められて実行される。
ユーザアプリケーションは、一般に、オペレーティングシステムとは別のコンピュータプロセスであり、オペレーティングシステムとは別に実行される。ユーザアプリケーションは、ソースコード、すなわち人にわかりやすい形のコンピュータインストラクションによって作成されており、ある時点に置いて実行される。そのソースコードは、コンピュータシステム２０、特にＣＰＵ１０によって理解される形のオブジェクトコードに翻訳、すなわちコンパイルされる。そして、いくつかのオブジェクトコードモジュールは、１つの実行イメージの形式となるようにリンクされる。ここで、実行イメージとは、コンピュータシステム２０のＣＰＵ１０によって実行可能な形式のことである。そして、このような実行イメージをメインメモリ１７Ｂにコピーし、このメインメモリ１７Ｂにコピーされた実行イメージのインストラクションを１つずつ実行するようにＣＰＵ１０に指示することにより、プログラムは、実行される。前述したように、このような実行状態にあるコンピュータプログラムは、プロセス（process）と呼ばれる。
コンピュータシステム２０で実行されているプロセスのインストラクションは、一般に、コンピュータシステムのリソース（資源）を操作（マニュピュレート）する。例えば、これらのインストラクションは、マスメモリ１７Ａに記憶されているデータを操作したり、入力モジュール１２からデータを受け入れたり、又は出力モジュール１４にデータを表示したりすることができる。さらに、あるコンピュータシステムにおいて実行されるように作られたプロセスは、他のコンピュータシステムのリソースを操作するコンピュータインストラクションを発生させるように構成されることもある。
ところで、コンピュータ通信技術において、２以上のコンピュータシステム間でデータを転送することができるように、２以上のコンピュータシステムを接続することは、周知のことである。このように接続された２以上のコンピュータシステムはネットワーク（network）と呼ばれる。このようなネットワークにおいて、各々のコンピュータシステムは、他のコンピュータシステムを、データの送受信を行なう入力／出力装置として取り扱う。
第１のコンピュータシステムにおいて実行されている第１のプロセスは、第２のコンピュータシステムにおいて実行されている第２のプロセスにインストラクションを送出することができる。このとき、第２のプロセスは、第１のプロセスから受け取ったインストラクションに従って、第２のコンピュータシステムのリソースを操作する。第２のプロセスは、クライアント（client）プロセスと呼ばれる第１のプロセスにサービスを提供するものであり、サーバー（server）プロセスと呼ばれる。このように、第２のコンピュータシステムのリソースを操作するサービスが提供される。
多くのコンピュータ通信システムでは、リモートプロシージャコーリング（remote procedure calling）を実行する。リモートプロシージャコーリングにおいては、第１のコンピュータシステムにおいて実行されており、第２のコンピュータシステム内のデータの操作を必要とするクライアントプロセスは、第２のコンピュータシステムにおいて実行され、クライアントプロセスからの要求に応答してデータを操作するサーバープロセスに動作（action）を要求する。そして、サーバープロセスは、クライアントプロセスのために、有限なオペレーションリスト（operations list）のうちのどれかを遂行する。
しかし、クライアントプロセスによって要求された機能と正確に合致する機能が、サーバープロセスによって実行される特定の処理機能の中にないことがよくある。このようなサーバープロセスで定義されていない機能の実行には、サーバープロセスへの要求とサーバープロセスからの応答を繰り返すことが必要となる。そして、これは通信メディアの多大な使用を必要とするため、コスト及び時間が非常に増大する。
図２Ａに示すフローチャート（ロジックフローダイアグラム）２００は、リモートプロシージャコーリングの具体例を示している。このフローチャート２００は、ネットワーク２５６を介して相互接続されたコンピュータシステム２０Ａ（図２Ｂ）とコンピュータシステム２０Ｂとのやり取りで説明される。ファイル名がある与えられたパターン、例えばファイル名が”．ＴＭＰ”で終わるようなパターンに一致し、少なくても３０日の間変更されなかったコンピュータシステム２０Ｂ内の全てのファイルを、コンピュータシステム２０Ａ内のクライアントプロセス２５２が削除するものと想定する。このとき、先ず、図２Ａに示すステップ２１において、クライアントプロセス２５２は、コンピュータシステム２０Ｂにおいて実行されているサーバープロセス２５４に、全てのファイルリストを要求するインストラクションを送出する。矢印２６０（図２Ｂ）はこの要求を表わしている。次に、処理はステップ２１（図２Ａ）からステップ２２に進み、このステップ２２において、クライアントプロセス２５２（図２Ｂ）は、矢印２６２で示すように、サーバープロセス２５４からファイルリストを受け取る。このように、ステップ２１、２２（図２Ａ）での処理は、ネットワークの通信メディアを介しての２回の情報転送（トランスファ）を含んでいる。
ここで、図２Ａにおいて、２重線で囲まれたステップは、ネットワーク２５６（図２Ｂ）を介しての情報転送を表している。コンピュータ２０Ａ又はコンピュータ２０Ｂ内におけるインストラクションの実行は数ナノ秒から数マイクロ秒であるのに対し、ネットワーク２５６を介しての情報転送には、ネットワーク２５６の形態及び情報量に依存するが、一般に数秒から数分を必要とする。さらに、ネットワークによっては、大量のデータの転送に１時間以上もかかることがある。
次に、処理は、ステップ２２（図２Ａ）からステップ（FOR EACH FILENAME）２３に移行する。ステップ２３とステップ（NEXT）２３ａ、２３ｂ、２３ｃは、クライアントプロセスによって、ファイルリストが各ファイル名毎に処理されるようにループを形成している。すなわち、ファイルリストの各ファイル名に対する処理は、ステップ２３からテストステップ２４に移行し、このテストステップ２４において、クライアントプロセス２５２（図２Ｂ）は、ファイル名をパターンと比較する。そして、もしファイル名がパターンと一致しない場合には、処理は、テストステップ２４（図２Ａ）からステップ２３ａを介してステップ２３に戻り、その次のファイル名が処理される。
逆に、ファイル名がパターンに一致している場合には、処理は、テストステップ２４からステップ２５に進む。このステップ２５において、クライアントプロセス２５２（図２Ｂ）は、矢印２６４で示すように、ファイル名が一致したファイルが最後に変更された日付を要求するインストラクションをサーバープロセス２５４に送出する。次に、処理は、ステップ２５（図２Ａ）からステップ２６に移行し、このステップ２６において、クライアントプロセス２５２（図２Ｂ）は、矢印２６６で示すように、要求した日付をサーバープロセス２４から受取る。このように、ステップ２５、２６（図２Ａ）で、ファイル名が一致する毎に、ネットワークの通信メディアを介する転送がさらに２回行われる。
次に、処理は、ステップ２６からテストステップ２７に進み、このテストステップ２７において、クライアントプロセス２５２（図２Ｂ）は、受信した日付と現在の日付から３０日を引いた日付とを比較する。そして、ファイルが３０日以内に変更されていたときは、処理は、テストステップ２７（図２Ａ）からステップ２３ｂを介してステップ２３に戻る。そして、ステップ２３において、次のファイル名が処理される。逆に、ファイルが３０日以内に変更されていなかったときは、処理は、テストステップ２７からステップ２８に進む。
次に、ステップ２８において、クライアントプロセス２５２（図２Ｂ）は、矢印２６８で示すように、コンピュータシステム２０Ｂ内からファイルを削除するインストラクションをサーバープロセス２５４に送出する。そして、処理は、ステップ２８（図２Ａ）からステップ２９に進み、このステップ２９において、クライアントプロセス２５２（図２Ｂ）は、矢印２７０で示すように、その削除処理に対する確認、すなわちアクノレジメント（acknowledgement）をサーバープロセス２５４から受ける。このように、ステップ２８、２９（図２Ａ）で、削除されるファイル毎に、ネットワークの通信メディアを介する転送がさらに２回行われる。
そして、処理は、ステップ２９からステップ２３ｃを介してステップ２３に戻る。このようにしてリスト中の全てのファイル名に対する処理が完了したら、処理は、ステップ２３からステップ２０ｂに進み、このステップ２０ｂにおいて処理が終了する。このように、図２のフローチャートに示すような処理には、ネットワーク２５６を介しての多数の情報転送が必要とされる。そして、このようにネットワークの通信メディアを過度に使用することは、時間及びコストの浪費になる。
リモートプロシージャコーリングとは別のアプローチとして、リモートプログラミング（remote programming）がある。リモートプログラミングにおいて、クライアントプロセスと呼ばれる第１のコンピュータシステムにおいて実行されているプロセスは、第２のコンピュータシステムにおいて実行されているサーバープロセスに、インストラクションのリストを送出する。そして、これらのインストラクションが、サーバープロセスによって実行されて、クライアントプロセスの目的が達せられる。このような、サーバープロセスが実行するインストラクションは、ある程度の普遍性を持たねばならない。すなわち、これらのインストラクションは、ある程度の判断能力を備えていなければならない。
図３Ａに示すフローチャートは、リモートプログラミングの具体例を示している。図２Ａ及び図２Ｂにおいて説明した具体例をリモートプログラミング環境において実現するには、クライアントプロセス３５２（図３Ｂ）は、ステップ３１（図３Ａ）において、ステップ３１の詳細なフローチャートに示すようなインストラクションから構成されるプログラムを作成する。このステップ３１の詳細については後述する。
次に、処理は、ステップ３１からステップ３２に進み、このステップ３２において、プログラムは、矢印３５８（図３Ｂ）で示すように、ネットワーク３５６を介しコンピュータ３０Ｂに転送される。そして、処理は、ステップ３２（図３Ａ）からステップ３３に進み、このステップ３３において、プログラムはコンピュータ３０Ｂ（図３Ｂ）によって実行される。このプログラムの実行中は、プログラムはコンピュータ３０Ｂ上のプロセス３５２Ａとなっている。そして、プロセス３５２Ａにおいて、プログラムのインストラクションは、以下のようなステップ３１の詳細なフローチャートに従って実行される。
ステップ３１−Ｂ（図３Ａ）において、ファイル名のリストが作成される。そして、処理は、ステップ３１−Ｂからステップ（FOR EACH FILENAME STEP）３１−Ｃに進む。ここで、ステップ３１−Ｃとステップ（NEXT）３１−Ｈ、３１−Ｉ、３１−Ｊは、ファイルリスト中の各ファイル名毎に処理を行うように、ループを形成している。そして、各ファイル名について、ステップ３１−Ｃからテストステップ３１−Ｄに進み、このテストステップ３１−Ｄにおいて、ファイル名がパターンと比較される。そして、ファイル名がパターンと一致しないときは、処理は、テストステップ３１−Ｄからステップ３１−Ｈを介してステップ３１−Ｃに戻る。逆に、ファイル名がパターンに一致するときは、処理は、テストステップ３１−Ｄからステップ３１−Ｅに移行する。
ステップ３１−Ｅにおいて、プロセス３５２Ａは、検索パターンと一致したファイル名を有するファイルの最後の変更日付けを検索する。そして、処理は、ステップ３１−Ｅからテストステップ３１−Ｆに移行する。このテストステップ３１−Ｆにおいて、ファイルの最後の変更日付けと、現在の日付けから３０日を引いた日付けとが比較される。ここで、ファイルの最後の変更日付けは、サーバープロセス３５４（図３Ｂ）から検索される。そして、最後の変更日付けが３０日以前の日付けよりも新しいときには、処理は、テストステップ３１−Ｆ（図３Ａ）からステップ３１−Ｉを介してステップ３１−Ｃに戻る。逆に、最後の変更日付けが３０日以前の日付であったときには、処理は、テストステップ３１−Ｆからステップ３１−Ｇに移行する。そして、ステップ３１−Ｇにおいて、サーバープロセス３５４（図３Ｂ）に適切なインストラクションが送出されて、ファイルが削除される。そして、処理は、ステップ３１−Ｇ（図３Ａ）からステップ３１−Ｊを介してステップ３１−Ｃに戻る。こうして、リスト中の全てのファイル名に対する処理が完了したら、処理は、ステップ３１−Ｃからステップ３１−Ｋに移行し、プロセス３５２Ａが完了する。このように、プロセス３５２Ａとサーバープロセス３５４間の相互作用は、矢印３６０（図３Ｂ）に示すように、ネットワーク３５６を使用することなく、全てコンピュータ３０Ｂ中において生じる。
こうして、プログラムが成功のうちに終了した後、処理は、ステップ３３（図３Ａ）からステップ３４に移行する。そして、このステップ３４において、サーバープロセス３５４（図３Ｂ）は、矢印３６２で示すように、プログラムが成功のうちに終了したことをクライアントプロセス３５２に報告する。このリモートプログラミングプロシージャでは、ネットワークの通信メディアは２回しか使用されていないことに注意されたい。すなわち、第１回目の使用は、矢印３５８で示すようにインストラクションリスト又はプログラムをサーバープロセス３５４に送出するための使用であり、第２回目の使用は、矢印３６２で示すように、プログラムが成功のうちに終了した報告をサーバープロセス３５４から受け取るための使用である。このようなリモートプログラミングプロシージャでは、サーバープロセス３５４の開発者によって明白に提供されていなかったり、おそらくは予想さえもされていなかったオペレーションを、クライアントプロセス３５２がサーバープロセス３５４に要求できることにも注意されたい。
しかし、リモートプログラミングでは、２以上のコンピュータシステム上のデータの操作を連係化することをコンピュータプロセスが求める場合に、リモートプロシージャコーリングの場合と同様に、非効率となることがある。例えば、あるコンピュータＸのプロセスは、他のコンピュータシステムＹやコンピュータシステムＺ上の、コンピュータＸのファイルと同一の名前、最後の変更日付け及びサイズを有する全てのファイルを削除するように要求するかもしれない。そして、図３Ａ、図３Ｂにおける前述したサーバープロセス３５４は、サーバープロセスを実行しているコンピュータシステムであるコンピュータシステムＹ上のリソースを、直接操作することができるが、サーバープロセスは、リモートプロシージャコーリングにおいて前述したような非効率を生じることなしには、１以上のコンピュータシステムにわたるデータの管理を連係化することができない。
このようなリモートプログラムに対する改良は、C. Daniel Wolfson, et al., "Intelligent Routers", 9th International Conference on Distributed Computing Systems at pp. 371-375（1989）に記載されている。ウォルソン（Wolfson）等は、ネットワーク内において、あるプロセスが１つのコンピュータシステムから別のコンピュータシステムに移動することができるシステムを開示している。このプロセスは、実行されたときにプロセスを移動させるインストラクションを生成することによって、ネットワークを介してプロセス自身の移動を指示する。ここで、インストラクションは、そのプロセスが移動するコンピュータシステムを指定する。
しかし、ウォルソン等によって開示された方式による解決では、機能性が制限される。また、プロセスは、それぞれのプロセスが移動するコンピュータシステムの固有の要求に適合するように構成されることが必要である。また、プロセス間で相互に通信することができないので、プロセス間通信の代わりに、それぞれのプロセスは、それぞれのプロセスが実行されているコンピュータシステムのマスメモリにデータを直接に記憶させたり、このマスメモリからデータを直接検索したりする必要がある。そして、あるプロセスが別のプロセスと相互作用をし得るのは、両方のプロセスが、メッセージを記憶させたり、検索したりするマスメモリ中の位置（ロケーション）を正確に知っている場合に限られる。
また、ウォルソン等によって開示されたシステムは、いかなる安全性（セキュリティ）も与えない。すなわち、ウォルソン等のシステムでは、ある１つのプロセスに別のプロセスと相互作用することを許容した場合、悪意のあるプロセスが第２のプロセスの実行を妨げるかもしれない。さらに、ウォルソン等によって開示されたシステムのプロセスに供給されるインストラクションセットは、非常に限られており、単に文字列データと実数を現す数値データが供給されるに過ぎない。
ウォルソン等によって開示されたシステムと同様の別のシステムが、C. Tsichritzis et al., "KNOs:KNowledge Acquisition, Dissemination, and Maniqulation Objects", ACM Trans. on office Information Systems, vol.5, no. 1, pp. 96-112（1987）に開示されている。チィクリティス（Tsichritzis）等によって開示されたこのシステムは、オブジェクト指向プログラミング（object-oriented programming）の一般性を、ウォルソン等によって開示されたシステムに付加したものである。
オブジェクト指向プログラミングは、データ及びインストラクションをオブジェクト（objects）にまとめる。ここでデータは、オブジェクトの状態を表し、インストラクションは、そのオブジェクトが遂行（perform）できるタスク（tasks）やオペレーション（operations）である。このようなオブジェクト指向プログラミングは、非常に有用な基本的な概念であり、オブジェクト指向プログラミングによれば、コンピュータによって処理される課題が、より簡単な一連のコンピュータインストラクションにまとめられる。
オブジェクト指向環境において作り出されたオブジェクトは、クラスに分類される。ある１つのクラスのオブジェクトは、同一の構造の状態を持ち、同一のオペレーションを遂行する。チィクリティス等によって開示されたシステムは、クラスの定義を動的に規定していないので、チィクリティス等によって開示された環境内において作り出されたある特定のクラスのオブジェクトは、その特定のクラスが定義されたコンピュータシステムに移動できるにすぎない。さらに、チィクリティス等によって開示された環境内のオブジェクトは、それらのオブジェクトが移動するネットワーク内のコンピュータシステムが同質であることが必要であるように記述されている。
チィクリティス等によって開示されたシステムは、さらに、プロセスをコピーするインストラクションを有する。すなわち、例えばヘッドプロセスと呼ばれる第１のプロセスは、このインストラクションによって、それ自身のコピーを作り出すことができる。このようなコピーはリム（limbs）と呼ばれる。そして、チィクリティス等によって開示されたシステムでは、ヘッドプロセスの指示によって、リムが遠隔のコンピュータシステムに送られる。しかし、これらのリムは動的ではなく、リムのコンピュータインストラクションは、ヘッドプロセスの指示によってのみ実行される。したがって、遠隔のコンピュータシステム上に位置するリムプロセスを動作させるには、ネットワークの通信メディアを介して、ヘッドプロセスがリムに指示を送る必要がある。かくして、大きなネットワークの場合、時間及びコストの浪費が大きくなってしまう。
チィクリティス等によって開示されたシステムの効率の悪さは、例えばパーソナルコンピュータのような小型のコンピュータが、例えばメインフレームコンピュータのような大型のコンピュータを介して、大きなネットワークに接続されている場合にも見られる。例えば、ネットワーク上の多くのコンピュータに多くのリムを送出する場合、小型のコンピュータは、小型のコンピュータと大型のコンピュータとの間で多くの同一のリムを送ることが要求される。このとき、ヘッドプロセスのコピーであるリムは、非常に大きくなることがあり、このようなシステムでは効率が非常に悪くなることがある。
チィクリティス等は、第２のプロセスに第１のプロセスへのリファレンス（参照：reference）を与えることによって、第１のプロセスと第２のプロセスとが通信するシステムを開示している。ここで、リファレンスとは、オブジェクトを識別するためのデータであり、このように識別されたオブジェクトに対してアクセスが許可される。そして、第２のプロセスは、第１のプロセスに対するリファレンスを有しているので、第２のプロセスは、第１のプロセス内の特定のコンピュータインストラクションを第１のプロセスが実行するように要求することができる。しかし、第１のプロセスは、第２のプロセスに対するリファレンスを取得することなく、第１のプロセスに対するリファレンスを第２のプロセスに与えるので、第２のプロセスは第１のプロセスへのリファレンスを持つが、第１のプロセスは第２のプロセスに対してアクセスする権限を持たない。このようなシステムでは、相互のアクセスの許可なく第２のプロセスへのアクセスを行うような問題のあるプロセス、すなわち、悪意のあるプログラマによって設計されたプロセスや、他のプロセスを損傷させてしまうように不注意に設計されたプロセス等の存在が許されてしまう。
このように、ウォルソン等やチィクリティス等による業績にかかわらず、新たなオブジェクトやプロセスのクラスを作り出し、この新たなオブジェクトやプロセスのクラスを、このような新しいクラスのためのクラス定義を含んでいないネットワーク内のコンピュータシステムで転送や処理を行うことができるシステムは、開示されていない。さらに、ウォルソン等やチィクリティス等は、複雑で階層的なセキュリティシステムを実現するメカニズムを開示していない。さらに、ウォルソン等やチィクリティス等は、互いに相互作用は行うことができるコンピュータプロセスを開示しているが、相互のアクセス許可なしには他のプロセスにアクセスできないようなコンピュータプロセスについては開示していない。
また、ウォルソン等やチィクリティス等は、あるプロセスに対して複数の独立したクローン（clones）を作り出して、それらのクローンをそれぞれのコンピュータシステムに転送することにより、複数のコンピュータシステムに同時に転送することができるコンピュータプロセスについては開示していない。また、チィクリティス等によって開示されたリムは、コンピュータプロセスが遠隔のコンピュータシステムにおけるリムの動作を制御するので独立的ではない。さらに、ウォルソン等やチィクリティス等は、コンピュータネットワークの通信メディアを介して転送される情報の冗長を最小にして、各コンピュータシステムへのクローンの転送を効率的に行う方法について開示していない。
発明の概要
本発明では、インタープリート（解釈・実行：interprete）されるオブジェクト指向のコンピュータインストラクションセットが、分散型コンピュータシステムにおいて実行される新規なコンピュータプロセスを作りだすために用いられる。このようなコンピュータインストラクションセットを利用する特別なプロセスは、分散型コンピュータシステム内で動作するエンジンによって実行される。このエンジンは、分散型コンピュータシステム内において、上述のような特別なプロセスのインストラクションを、インタープリート、すなわちインストラクション毎に逐次解読して実行する。
分散型コンピュータシステム内の各エンジンは、プロセスを定義するインストラクションを一様にインタープリートする。換言すれば、あるプロセスを含み、第１のエンジンによってインタープリートされるインストラクションは、第１のエンジンが動作しているコンピュータシステムの固有の形態に依存しない。したがって、例えば、第１のエンジンと第２のエンジンが別々のコンピュータシステムにおいて動作しており、これらのコンピュータシステムのオペレーティングシステム及びハードウェアが一般的に互換性がないとしても、これらのインストラクションは、第２のエンジンに移動され、インタープリートされることができる。そして、インタープリートされるインストラクションは、エンジンが動作しているコンピュータシステムの通信、格納（ストレージ）、計算及びその他のサブシステムへのインターフェースを用いて実装（インプリメント：implement）される。これらのインターフェースは、全体として本発明の実施例の一部を構成するものである。そして、これらのインターフェースは、本発明の開示の一部であり、引用することにより本明細書に組み込まれるアペンディックスＣに記載されている。
２以上のエンジンが、１つのネットワークを構成するように相互接続され、このようなネットワーク内を、本発明のコンピュータプロセスが移動する。本発明の実施例では、ネットワークは、通常は他のネットワークのクライアントと考えられ、ネットワークの一部ではないとされるようなコンピュータシステムも含んでいる。例えば、本発明のネットワークの実施例では、ネットワークによって接続されたワークステーションを含んでいる。なお、本明細書においてワークステーションは、他のコンピュータシステムへ情報を転送する以外の目的のために使用されるコンピュータシステムを表している。そして、本発明のエンジンは、コンピュータプロセスが、各エンジン間を移動できるように相互接続されている。
ある１つのコンピュータプロセスを転送するときは、そのコンピュータシステムが中断され、そのコンピュータシステムの実行状態が保存される。そして、コンピュータプロセスのインストラクション、保存された実行状態、及びコンピュータプロセスによって所有されるオブジェクトは、パッケージされ、すなわちエンコードされて、データのストリングが生成される。このデータのストリングは、ネットワークを形成するために用いられるあらゆる標準的な通信手段で転送することができる。実施例において、このデータのストリングは、アペンディックスＤに記載されたプロトコルに従って、エンジン間で転送される。なお、アペンディックスＤは、本発明の開示の一部であり、引用することにより本明細書に組み込まれる。
データストリングは、ネットワーク内の目的とするコンピュータシステムに転送されると、デコードされて、目的とするコンピュータシステム内において、コンピュータプロセスを生じさせる。このデコードされたコンピュータプロセスは、前述したようにエンコードされたオブジェクトを含み、保存された実行状態を有している。そして、目的とするコンピュータシステムは、このコンピュータプロセスの実行を再開する。
コンピュータプロセスのインストラクションは、目的とするコンピュータシステムにおいて実行され、データオブジェクトの定義、生成及び操作や、目的とするコンピュータシステムで実行される他のコンピュータプロセスとの相互作用のような複雑なオペレーションを遂行する。このように、コンピュータプロセスは、ネットワーク全体を通じて一様にインタープリートされるとともに、コンピュータシステム間を移動できるようにエンコードやデコードがされる。したがって、本発明のコンピュータプロセスは、コンピュータ間の通信において新しいレベルの機能及び多様性を提供する。
実施例において、本発明のコンピュータインストラクションセットには、エージェントクラスとプレイスクラスの２つのクラスが組み込まれる。エージェントクラスを用いて形成されたインストラクションは、エンジンによって、エージェントプロセスを形成するようにインタープリートされる。なお、このエージェントプロセスは、単にエージェントと呼ばれることもある。エージェントは、エージェントが生成され、エンジンが実行を開始したとき、活性化されたオブジェクトとなる。エージェントクラスは、（ｉ）エージェントが、エージェント自身を検査して修正すること、（ｉｉ）エージェントが、後述するように、ネットワーク内の第１のプレイスプロセスから同じネットワーク内の第２のプレイスプロセスへエージェント自身を転送すること、及び（ｉｉｉ）エージェントが、その第２のプレイスプロセスにある他のエージェントと相互作用すること、を可能にするインストラクションを提供する。第１のプレイスプロセス及び第２のプレイスプロセスは、ネットワーク内の２つの別々のコンピュータシステム内において実行されていてもよい。すなわち、エージェントは、第１のコンピュータシステムから第２のコンピュータシステムに移動することができる。
エージェントは、第１のプレイスプロセスから第２のプレイスプロセスまで、エージェントと共に運ばれる情報を持つことができる。その他に、後述するようなコンピュータインストラクションセットは、拡張性、汎用性及び機能によって、エージェントを含むインストラクションに従って、そのエージェント及びそれによって運ばれる情報がどのように、そしてどの目的点に移動しているのかを定める上での多くの融通性及び制御可能性を提供する。
エージェントの機能はパーミット（permit）によって制御される。パーミットは、特定の場合に特定のエージェントの特定の機能を制限する。エージェントのパーミットは、エージェントクラスについて定義されたいくつかのオペレーションのうち、どのオペレーションがエージェントによって実行され得るかを指定する。さらにパーミットは、エージェントが使用できるリソース（資源）の量と、エージェントが消滅するまで時間とを制限する。さらに、パーミットは、他のエージェントに対するエージェントの相対的な実行の優先度（プライオリティ：priority）も指定する。
プレイスクラスを用いて形成されたインストラクションは、エンジンによってインタープリートされ、本明細書において単にプレイスとも呼ばれるプレイスプロセスを形成する。プレイスもまた活性なオブジェクトである。そして、プレイスクラスは、プレイスがプレイス自身を検査して修正したり、プレイスが、エージェントのための場所や、エージェントが相互作用する際のコンテキスト（context）として役立ち得るようにするインストラクションを提供する。各エージェントは、それぞれ単一のプレイスを占有する。また、各プレイスは、他の単一のプレイスを占有することができる。
プレイスは、ある程度、エージェントのプライバシー及びセキュリティを供与する。例えば、他のエージェントとのコンタクトを避けるように形成されたエージェントは、一般に他のエージェントには知られてないプレイスや、他のエージェントの立ち入りを拒絶するプレイスを占有することができる。逆に、多数のエージェントに対して公にサービスを供与するように形成されたエージェントは、他のエージェントに広く知られていて、他のエージェントの立ち入りを許容するプレイスを占有することができる。
それぞれのエージェントは、離れている場合には、相互に作用することはできない。すなわち、いかなる２つのエージェントも、それらが同一のプレイスを占有していない限り、相互に作用することはできない。第１のプレイスを占有している第１のエージェントが、第２のプレイスを占有している第２のエージェントと相互作用するために、オペレーション”go”に関連して後述するように、第１のエージェントを第２のプレイスに転送させるインストラクションを、第１のプレイスを占有している第１のエージェントは、生成する。第１及び第２のエージェントの両者が第２のプレイスを占有していると、第１のエージェントは第２のエージェントと相互作用することができる。
このように、本発明のプロセスは、リモートプログラミングの新規なインプリメンテーションであり、よく知られているリモートプロシージャコーリングのインプリメンテーションではない。リモートプログラミングは、（ｉ）ネットワークの通信メディアを介する通信を必要とせずにプロセスが相互作用することを可能とし、（ｉｉ）長い待ち時間、すなわちハイレイテンシィ（high-latency）となることが多いネットワークの通信メディアを介する通信を除いて、プロセス間の相互作用の性能を改善することによって、リモートプロシージャコーリングを改良する。
第１のコンピュータシステム内の第１のプレイスプロセスから、第１のコンピュータシステム又は第２のコンピュータシステム内の第２のプレイスプロセスへのエージェントプロセスの移動は、トリップと呼ばれる。エージェントは、エージェントクラス中において定義されたオペレーション”go”を用いることによってトリップを開始する。エージェントは、トリップを定義するチケットを作り出し、それに従うことによって、ネットワーク内の移動又はコンピュータシステム内の移動を制御する。ここで、チケットとは、オペレーション”go”に対するアーギュメント（引数）である。実施例では、チケットは、エージェントの移動先のプレイスと、エージェントが移動する道筋、すなわち”way”と、トリップを完了しなければならない時間と、トリップの緊急性の表示、すなわち同時にスケジュールされている他のエージェントによる他のトリップに対するトリップの相対的な優先度とを特定している。
チケットは、エージェントの移動先のプレイスのアドレス、ネーム及びクラス、又は、アドレス、ネーム及びクラスの任意の組合せを指定することによって、目的とするプレイスを特定することができる。トリップの目的となるプレイスは、チケットによって許容された時間内に、エージェントの立ち入りを許可する特定のアドレス、ネーム及び／又はクラスのプレイスである。
オペレーション”go”において、エージェントの第１のプレイスから第２のプレイスへの移動は次のように行われる。（ｉ）エージェントは中断され、第１のエージェントの実行状態が保存される。（ｉｉ）エージェントは標準形式、すなわちオクテットストリーム（エージェントの保存された実行状態の情報を含む）によって表される（ｉｉｉ）標準形式は第１のプレイスから第２のプレイスに転送される。ただし、このとき、第１のコンピュータから第２のコンピュータに転送されることもある。（ｉｖ）第２のプレイスのエージェントが、この転送された標準形式から、標準形式で表される実行状態も含めて形成される。（ｖ）標準形式に実行状態が保存されていたエージェントの処理が再開される。
前述したように、本発明のコンピュータインストラクションセットは、オブジェクト指向である。したがって、本発明によって形成された全てのオブジェクトはクラスに編成される。本発明の全てのクラスは、エージェントと共に移動することのできるデータオブジェクトによって表される。したがって、あるプレイス内において定義されていないクラスも、単に、エージェントがクラスを定義し、対応するクラスオブジェクトをそのプレイスに転送することによって、そのプレイスに移動してきたエージェントで使用することができる。
本発明の実施例における各オブジェクトは、プロセス、すなわちエージェント又はプレイスに所有される。そして、エージェントが第１のプレイスから第２のプレイスに移動する時に、そのエージェントによって所有される全てのオブジェクトはエージェントと共に第２のプレイスに移動する。ただし、後述するように、本発明の実施例では、第２のプレイスに既に存在しているオブジェクトと同等のオブジェクトは、移動しない。エージェントが所有しているオブジェクトの他に、これらのオブジェクトがメンバであるクラスを定義する全てのクラスオブジェクトも、エージェントとともに第２のプレイスに移動する。ここで、クラスオブジェクトは、オブジェクトのクラスを表すオブジェクトであり、以下及びアペンディックスＡに説明されるコンピュータインストラクションセットに従って構成されたオブジェクトである。
したがって、第２のプレイスに移動するエージェントによって所有されるオブジェクトが、第２のプレイスにおいて定義されていないクラスのメンバであった場合、エージェントがそのオブジェクトをメンバとするクラスを定義するクラスオブジェクトを第２のプレイスに運ぶことにより、そのオブジェクトは、エージェントとともに移動することができる。従来の技術によれば、第１のコンピュータから第２のコンピュータに移動するプロセスは、第２のコンピュータ上において定義されたクラスに所属するデータオブジェクトしか処理することができなかった。従来技術において、通常は、クラスの定義は、移動するプロセスと共に転送されることはなかった。本発明では、第１のプレイスにおいて新しいクラスを形成することができ、これらの新しいクラスのメンバは、これらの新しいクラスが定義されていない他のプレイスに自由に移動する。したがって、本発明は、従来技術にはみられない高レベルの拡張性、可動性及び汎用性をエージェントに与える。
本発明によれば、多くのオブジェクトのクラスは、多数のプレイスにおいて定義されるので、これらのプレイスに移動させる必要はない。本発明の一実施例において、多くのプレイスにおいて見出されることができるクラスオブジェクトやその他のオブジェクトは、相互変換可能とされている。
相互変換可能（インターチェンジアブル）なオブジェクトは、それぞれ、ダイジェストを有している。第１のプレイスから第２のプレイスに移動するエージェントによって所有される相互変換可能なオブジェクトはエージェントと共に移動せず、相互変換可能なオブジェクトのダイジェストがエージェントと共に第２のプレイスに移動する。エージェントが第２のプレイスに到達すると、第２のプレイスを含むコンピュータシステム内にある相互変換可能なオブジェクトは、これらの相互変換可能なオブジェクトのどれかが、エージェントと共に転送されてきたダイジェストと等しいダイジェストを有しているかを検査される。第２のプレイスを含むコンピュータシステムにおいてそのような相互変換可能なオブジェクトが見出された場合、その相互変換可能なオブジェクトは、第１のプレイスに残されてきた相互変換可能なオブジェクトに置き換えられる。しかし、第２のプレイスにそのような相互変換可能なオブジェクトが見出されなかった場合、第１のプレイスに残されてきた相互変換可能なオブジェクトが、第２のプレイスに移動する。これにより、同等なオブジェクトが目的地のプレイスに存在する場合に、ネットワークの通信メディアを介してのオブジェクトの移動が避けられる。特に、クラスオブジェクトは相互変換可能なため、第２のプレイスに移動するエージェントは、第２のプレイスにおいて定義されていないクラスを定義するクラスオブジェクトのみの第２のプレイスへの移動を生じさせる。ネットワークを通るクラスオブジェクトの不要な移動を避けることによって、エージェントによって所有されたオブジェクトが所属するクラスの定義を含んでいないプレイスへの、オブジェクトの移動が実用的のものとされる。
本発明の一実施例において、クラスはサイテション（citation）によって特定される。異なるベンダ（製造者）によって供給される多くのコンピュータシステムを有するコンピュータネットワークにおいて、エージェントプロセスが、それに向かって又はそれから移動することができる色々なコンピュータシステム上で、ここに開示された色々なバージョンのインストラクションセットをインプリメントすることができる。サイテションは、相互に前方向（forward）又は後方向（backward）に互換性のあるクラス又はオブジェクトを特定するために用いられるオブジェクトである。したがって、第１のクラスのオブジェクト又は第１のクラス自身の使用を必要とするインストラクションは、第２のクラスが第１のクラスに対して後方向に互換性がある場合、インストラクションの特別の要求に依存して、第２のクラスのオブジェクト又は第２のクラス自身を使用することができる。
第１のプレイスを占有しているエージェントは、そのエージェントの１以上のクローン（clone）を作りだし、各クローンをそれぞれのプレイスに移動させることもできる。クローンは、現存のエージェントプロセスの複写の結果として生成されるエージェントプロセスである。エージェントは、１以上のクローンの生成を開始し、制御し、さらに、オペレーション”send”の遂行によって各クローンのそれぞれのプレイスプロセスへの移動を開始し制御する。エージェントは、オペレーション”send”のアーギュメントとして供給される１以上のチケットをつくり出すことによって、生成させるべきクローンの数を指定し、対応するトリップを定義する。各チケットは、エージェントの各クローンによって行われるトリップを定義する。エージェントによって供給されるチケットの数は、生成されるクローンの数を規定する。
エージェントのあるクローンが第２のプレイスに移動されたとき、そのクローンは、最初、そのクローンが生成された時点におけるエージェントの実行状態を備えている。したがって、そのクローンが第２のプレイスに到達した時、そのクローンは、オペレーション”go”について前述したように、第２のプレイスへのエージェントの移動をシミュレートするように実行を継続する。
従来技術においては、第１のプロセス、すなわちヘッドプロセスは、ヘッドプロセスと同一のインターフェースを持つプロセス、すなわちヘッドプロセスと同一のオペレーションを一般に遂行することができるリムプロセスを生成した。リムプロセスは、ヘッドプロセスによって指示された以外の働きはせず、単にヘッドプロセスの指示にしたがって、遠隔のコンピュータシステムに移動することができる。
しかし、本発明においては、クローンは自立的であり、そのクローンを生成したエージェントによって制御されることはない。例えば、クローンは後述するミーティングを取り計らうためのエージェントによる全ての試みを無視するように設計することができ、これにより、エージェントとクローンは相互に作用することができるようになる。エージェントは、後述するように他のエージェントと相互作用を試みるのと同じように、エージェントのクローンと相互作用を試みなければならない。クローンは自立的であるから、第２のプレイスを占有するクローンは、エージェントによって指示されることなく、更にはエージェントの同意を得ることもなく、オペレーション”go”の遂行によって第３のプレイスに移動することができる。
従来技術のリムプロセスは、能動的ではなく、ヘッドプロセスの指示によってのみ作業をするので、必然的に、ヘッドプロセスと遠隔のリムプロセスはネットワークの通信メディアを介して相互に作用していた。したがって、このような従来技術のシステムのパラダイムは、リモートプロシージャコーリングに非常に近いものである。対照的に、本発明に従って形成されたエージェントのクローンは、能動的であり、自立的であり、エージェントを形成する全てのインストラクションを有している。したがって、ネットワークの通信メディアを介した相互作用は一切必要ない（実際にはいかなる相互作用も許容されない）。したがって、本発明のパラダイムは、リモートプログラミングにより近いものである。したがって、本発明は、従来技術に比べて汎用性が大幅に向上している。
本発明の一実施例による効率の向上は、オペレーション”send”の遂行において、あるエージェントのクローンの生成をできるだけ遅らせることによって、実現される。例えば、第１のクローンと第２のクローンが、それぞれ第１のプレイスと第２のプレイスとに送られるものとする。そして、エージェントが第１のコンピュータシステムにおいて実行され、第１のプレイスが第２のコンピュータシステムにおいて実行され、第２のプレイスが第３のコンピュータシステムにおいて実行されているものと想定する。さらに、第１のプレイス及び第２のプレイスに移動する際に、第１及び第２のクローンが、第４のコンピュータシステムにおいて動作しているエンジンを通って移動しなければならないものと想定する。このような場合、単一のクローンが形成され、第４のコンピュータシステム内において実行しているエンジンに転送される。したがって、元のエージェントをインタープリートしているエンジン内では単一のクローンがつくり出されるにすぎないので、そのエンジン内においてスペースが節減される。そして、ただ１つのクローンがネットワークの通信メディアを介して第４のコンピュータシステムに転送されるので、クローンを第４のコンピュータシステムに転送する時間が節減される。第４のコンピュータシステム内において実行しているエンジンは、第１及び第２のクローンを、前記単一のクローンから形成し、これらの第１及び第２のクローンをそれぞれ第１及び第２のプレイスに転送する。
エージェントは、エージェントの大きさの大部分を占めるようなオブジェクト（例えば、デジタル化された音や、ファクシミリ伝送のようなラクター化されたグラフィックスイメージ）を所有することができる。そして、各クローンが所有しているこのように非常に大きなオブジェクトのコピーのいくつかを、単一のエンジンへ送ることを避けることにより、実質的な時間及び費用が節減される。
あるプレイスを占有している第１のエージェントは、そのプレイスを占有している第２のエージェントとの間でミーティングを開始することができる。このミーティングの間、第１のエージェントは、オブジェクトの形式のデータを第２のエージェントに対して転送したり受け取ったりすることができる。そして、第２のエージェントプロセスは、オブジェクトの形式のデータを第１のエージェントに対して転送したり受け取ったりすることができる。
本発明は、第１のプロセスによって仮想的な電子掲示板上のメッセージを郵送することを教示した従来技術のシステムに対する大幅な改良を示している。このメッセージは、次に予定された受領プロセスによって読まれる。従来技術のシステムにおいて、第１のプロセスは、仮想的な電子掲示板上においてリファレンスを郵送することによって、第１のプロセスへのリファレンスを第２のプロセスに与える。しかし、リファレンスを同時に交換するメカニズムは存在しないため、第２のプロセスは、第２のプロセスへのリファレンスを第１のプロセスに与える前に第１のプロセスにアクセスする。したがって、従来技術のシステムには、悪意のあるプロセスがそれ自身に対するアクセスを他のプロセスに与えることなしに他のプロセスへのアクセスを取得してしまうのを、防止するメカニズムは存在しない。
本発明は、第１のプロセスへのアクセスを第２のプロセスに同時に与えること無しには第１のプロセスが第２のプロセスにアクセスすることができないように、２つのプロセスの間のコンタクトを確立する改良された方法を提供している。
本発明の一実施例によれば、２つのエージェントは、両方のエージェントが同一のプレイスを占有し、そのプレイスがミーティングプレイスである場合にのみ相互作用することができる。ミーティングプレイスは、プレイスクラスのサブクラスであるミーティングプレイスクラスのメンバであるプレイスである。第１のエージェントは、ミーティングプレイスがミーティングを取り計らうように指示するインストラクションを送出することによって、第１のエージェントと第２のエージェントとの間のミーティングを取り計らうように指示する。送出されたインストラクションは、オペレーション”meet”と呼ばれ、第１のエージェントがこのインストラクションを送出することは、”ミーティングの要求”と呼ばれる。
第１のエージェントは、インストラクションに対するアーギュメントとして、ミーティングを定義するペティション（petition）を供給する。ペティションは、ペティションされるエージェントとして第２のエージェントを特定することによってミーティングを定義する。第２のエージェントは、第２のエージェントのネーム及び／又はクラスを特定することによって、特定される。ペティションは、さらに、ミーティングが取り計られたり放棄されたりするのに要する最長時間を指定することによってミーティングを定義する。
ミーティングを取り計らう際に、ミーティングプレイスは、第２のエージェントに、第１のエージェントのネーム及びクラスを供給するとともに、第２のエージェントとのミーティングを要求するインストラクションを第１のエージェントが送出したことを示す。第２のエージェントは、第１のエージェントのネーム及びクラスを検査し、第１のエージェントとのミーティングを受け入れるか拒絶するかをミーティングプレイスに回答する。
ミーティングが拒絶された場合、第１のエージェントは、第２のエージェントが利用可能でないことを示す通知を受ける。ミーティングが受け入れられた場合、ミーティングプレイスは、第１のエージェントへのリファレンスを第２のエージェントに与えるとともに、第２のエージェントへのリファレンスを第１のエージェントに与える。第１のエージェントは、第２のエージェントへのリファレンスによって、（ｉ）オペレーションを遂行するように第２のエージェントに指示したり、（ｉｉ）アーギュメントとしてオブジェクトを第２のエージェントに供給したり、（ｉｉｉ）第２のエージェントからリザルト（結果：result）としてオブジェクトを受け取ったりすることができる。第２のエージェントは、第１のエージェントへのリファレンスを有するので、第１のエージェントについて同様の能力を有する。
第１のエージェント又は第２のエージェントは、適切な命令を送出することによって、両者のミーティングを終了させることができる。ミーティングプレイスは、送出された命令に応答してオペレーション”part”を実行することによって、第１のエージェントに含まれる第２のエージェントへのリファレンスをボイドし、さらに第２のエージェントに含まれる第１のエージェントへのリファレンスもボイドし、これにより２つのエージェントの間の相互作用を終了させる。
本発明では、第２のエージェントが同意することなしには、又は第２のエージェントに第１のエージェントへのアクセスを許容することなしには、第１のエージェントは第２のエージェントにアクセスすることができなくなっており、従来技術に比べて著しい進歩が見られる。さらに、２つのエージェントは両者が同一のミーティングプレイスを占有しない限り相互作用できないので、エージェントに対して中間レベルのセキュリティを与えることができる。例えば、あるエージェントは、他のエージェントによってその位置が知られていないミーティングプレイスを占有することによって、他のエージェントからそれ自身を保護（プロテクト：protect）することができる。逆に、容易に見ることができるように設計されるエージェントは、周知のミーティングプレイスを占有するようにすればよい。このようなメカニズムは従来技術には、見られないものである。
【図面の簡単な説明】
図１は、従来技術によるコンピュータシステムの構造を示す図である。
図２Ａは、リモートプロシージャコーリングを使用した従来技術による方法のフローチャートである。
図２Ｂは、リモートプロシージャコーリングを具体化する従来技術によるネットワークを示す図である。
図３Ａは、リモートプログラミングを使用する従来技術による方法のフローチャートである。
図３Ｂは、リモートプログラミングを具体化する従来技術によるネットワークを示す図である。
図４Ａ及び４Ｂは、本発明に従って構成されたネットワークを通るエージェントプロセスの運動を示す図である。
図５Ａ及び５Ｂは、本発明の原理に従って形成されたコンピュータシステムにおいて実行されるプロセスを示す図である。
図５Ｃは、本発明の一実施例におけるクラス階層の一部を示す図である。
図６Ａ〜６Ｃは、本発明に従って形成されたネットワークを通るエージェントプロセスの運動を示す図である。
図７Ａ〜７Ｅは、本発明に従って形成されたネットワークを通るエージェントプロセスのクローンの運動を示す図である。
図８Ａ〜８Ｆは、オペレーション”meet”を使用することによる２つのエージェントプロセスの間の相互作用を示す図である。
図９Ａ〜９Ｅは、本発明に従って形成されたプレイスプロセスの相互作用を示す図である。
図１０は、本発明に従って構成されたコンピュータネットワークの構成を示す図である。
図１１Ａ及び１１Ｂは、図１０に示したネットワークの別の表現形態を現す図である。
図１２は、本発明の一実施例によるエージェントプロセスのクラス関係を示す線図である。
図１３Ａ及び１３Ｂは、オペレーション”go”の遂行による本発明のコンピュータネットワーク内のエージェントプロセスの運動の直前及び直後における、本発明に従って形成されたエージェントプロセスの状態を示す図である。
図１４Ａ〜１４Ｇは、オペレーション”go”の遂行による、本発明に従うネットワークを通るエージェントプロセスの運動を示すフローチャートである。
図１５Ａ〜１５Ｅは、本発明に従って形成されたネットワークの構造を示すと共に、ネットワークを通るあるエージェントプロセスの運動を示す図である。
図１６は、パーミットを含むエージェントプロセスの構造を示す図である。
図１７は、図１６のパーミットの構造を示す図である。
図１８Ａは、テレアドレス、サイテション、テレネーム及びウェイを含む図３５のチケットの構造を示す図である。
図１８Ｂは、図１８Ａのウェイの構造を示す図である。
図１９は、図１８Ａのテレネームの構造を示す図である。
図２０Ａは、本発明の一実施例によって形成されたディクショナリを示す図である。
図２０Ｂは、本発明の一実施例によって形成されたファインダの構造を示す図である。
図２１は、本発明の一実施例によるコード化エージェントの構造を示す図である。
図２２Ａ及び２２Ｂは、オペレーション”entering”の直前及び直後のエージェントプロセスの状態を示す図である。
図２２Ｃは、本発明の一実施例によるオペレーション”entering”の動作の遂行における各ステップを示すフローチャートである。
図２３Ａ及び２３Ｂは、オペレーション”exiting”の遂行の直前及び直後のプロセスの状態の一部を示す図である。
図２４Ａ〜２４Ｃは、本発明に従って構成されるネットワークを通るエージェントプロセスが移動するときの各ステップを示すフローチャートである。
図２４Ｄは、図２４Ａ〜２４Ｃに示したステップにおいて使用される、相互変換（インターチェンジ）されたオブジェクトのレポジトリの構造を示す。
図２５は、本発明の原理によって形成されたコンピュータネットワークを示す図である。
図２６Ａ及び２６Ｂは、オペレーション”send”の遂行の直前及び直後のエージェントプロセスの状態の一部を示す図である。
図２６Ｃは、オペレーション”send”の直後のエージェントプロセスのクローンの状態を示す図である。
図２７Ａ及び２７Ｂは、オペレーション”send”の遂行において、エージェントプロセスのクローンの形成の前及び後のエンジンプロセスの状態を示す図である。
図２８は、オペレーション”send”の遂行によって、エージェントプロセスの各クローンが、コンピュータネットワークのそれぞれのコンピュータシステムに移行した、図２５のコンピュータネットワークを示す図である。
図２９Ａ〜２９Ｅは、デイファードクローニングと称される本発明の他の例に従って構成される、あるエージェントプロセスのクローンが通過して移動するコンピュータネットワークを示す図である。
図３０Ａは、ニル（０）及びチケットリストを含むフレームの構造を示す図である。
図３０Ｂは、本発明に従って形成されたエージェントプロセスのコード化クローンの構造を示す図である。
図３１Ａ及び３１Ｂは、オペレーション”meet”の遂行の直前及び直後におけるプロセスの状態を示す図である。
図３２は、オペレーション”meet”の遂行における各ステップを示すフローチャートである。
図３３は、コンタクトのセットを含むエージェントプロセスの状態の一部を示す図である。
図３４Ａ及び３４Ｂは、オペレーション”meeting”の遂行の直前及び直後におけるプロセスの状態を示す図である。
図３５は、本発明の一実施例に従うオペレーション”meeting”の遂行における各ステップを示すフローチャートである。
図３６は、本発明における相互作用する２つのエージェントプロセスの状態を示す図である。
図３７Ａ及び３７Ｂは、オペレーション”part”の遂行の直前及び直後におけるエージェントプロセスの状態の一部を示す図である。
図３８は、オペレーション”part”の遂行の直後における図３６に示したエージェントプロセスの状態を示す図である。
図３９Ａ〜３９Ｆは、本発明において、第１のエージェントプロセスが第２のエージェントプロセスと相互作用している間の、第１のエージェントプロセスの状態の一部を示す図である。
図４０は、本発明の一実施例において、図３９Ａ〜３９Ｆに示す相互作用している間の、第２のエージェントプロセスの各ステップを示すフローチャートである。
図４１Ａは、本発明に従って形成されたクラス定義の構造を示す図である。
図４１Ｂは、本発明の一実施例に従って形成されたクラスオブジェクトの構造を示す図である。
図４１Ｃは、本発明の第２の実施例に従って形成されたクラスオブジェクトの構造を示す図である。
図４２は、本発明に従って形成されたインターフェースオブジェクトの構造を示す図である。
図４３は、セット、識別子及びブーリアンを含むフィーチャ定義の構造を示す図である。
図４４は、コンストレイント及びブーリアンを含む属性定義の構造を示す図である。
図４５は、コンストレイント及びリスト（コンストレイントを含む）を含むオペレーション定義の構造を示す図である。
図４６は、コンストレイントの構造を示す図である。
図４７は、２つのリストと６つのレキシコンを含むインプリメンテーションオブジェクトの構造を示す図である。
図４８は、プロシージャ及びリスト（識別子を含む）を含むメソッドの構造を示す図である。
図４９は、図４８のプロシージャの構造を示す図である。
図５０は、サイテション（テレネーム、２つのインテジャ（整数）及び識別子を含む）の構造を示す図である。
図５１は、サイテションをそれぞれ含む２つの引用（サイト）されたオブジェクトの構造を示す図である。
図５２Ａは、オペレーション”do”の遂行における各ステップを示すフローチャートである。
図５２Ｂは、インテジャ及びプロシージャを含む定義済みフレームの構造を示す図である。
図５３は、スタック（ユーザフレームを含む）を含むプロセスの実行状態を示す図である。
図５４は、図５３のユーザフレームの状態を示す図である。
図５５Ａ及び５５Ｂは、図５５Ｃに示すように結合されるフローチャートであり、ユーザ定義オペレーションの遂行における各ステップを示すフローチャートである。
図５６Ａは、スタック（フレームを含む）を含むプロセスの実行状態を示す図である。
図５６Ｂは、第２のフレーム及び図５６Ａのプロセスの実行状態を示す図である。
図５６Ｃは、最初に述べたフレームと第２のフレームとを含むスタックを含む図５６Ａ及び５６Ｂのプロセスの実行状態を示す図である。
図５７は、本発明に従って、クラス階層からフィーチャ定義とメソッドを選択する際の各ステップを示すフローチャートである。
図５８Ａは、リストがメンバであるクラスの階層を示す図である。
図５８Ｂは、クラスリストがメンバであるクラスの階層を示す図である。
図５９は、オブジェクトのイニシアリゼイションをするときの各ステップを示すフローチャートである。
図６０は、オペレーション”if”の遂行における各ステップを示すフローチャートである。
図６１は、オペレーション”either”の遂行における各ステップを示すフローチャートである。
図６２Ａ及び６２Ｂは、オペレーション”select”の遂行の直前及び直後におけるプロセスの実行状態を示す図である。
図６３は、オペレーション”select”の遂行における各ステップを示すフローチャートである。
図６４は、オペレーション”select”の遂行の動的状態を示す、定義済みフレームの状態を示す図である。
図６５は、オペレーション”while”の遂行における各ステップを示すフロチャートである。
図６６Ａ及び６６Ｂは、オペレーション”catch”の直前及び直後におけるプロセスの実行状態の一部を示す図である。
図６７は、オペレーション”catch”の遂行における各ステップを示すフロチャートである
図６８は、オペレーション”loon”の遂行における各ステップを示すフロチャートである。
図６９は、実行されたオブジェクトと２つのインテジャとを含むレピートフレームの構造を示す図である。
図７０は、オペレーション”repeat”の遂行における各ステップを示すフロチャートである。
図７１は、スタック（ユーザ定義フレーム、定義済みフレーム、レピートフレーム及び第２のユーザ定義フレームを上部から下部にかけて含む。）を含むプロセスの実行状態を示す図である。
用語の解説
アブストラクトクラス（Abstract Class）：アブストラクトクラスは、インスタンス（例）を持たない。アブストラクトクラスは、サブクラスを持つことができ、アブストラクトクラスは、アブストラクトクラスのサブクラスによって引き継がれたフィーチャ（feature）、メソッド（method）及びプロパティ（property）を定義することができる。
エージェント（Agent）：エージェントは、あるプレイスに存在し、移動できるプロセス、すなわち第１のプレイスから第２のプレイスに移動することのできるプロセスである。
アーギュメント（Arguments）：アーギュメントは、入力データとしてオペレーションの遂行によって使用（consumed）されるオブジェクトである。換言すれば、アーギュメントは、リクエスタ（requester）の要求により、レスポンダ（responder）によってオペレーションが遂行される直前に、リクエスタからレスポンダに転送されるオブジェクトである。
アトリビュート（Attribute）：アトリビュート（属性）は、あるオブジェクトの内部状態に関する情報を検索し又はセットするフィーチャである。通常、この情報は、オブジェクト自身に属するが、時には、アトリビュートを呼び出す際にオブジェクトを特定化するためのリファレンスに属する。アトリビュートは、一対のオペレーションであり、一方のオペレーションはレスポンダの内部状態に関する情報をセットし、他方のオペレーションはレスポンダの内部状態に関する情報を検索する。
オーソリティ（Authority）：オーソリティは、ネットワーク内の種々のリソースを所有して管理するエンティティ（entity）である。オーソリティの一例はネットワークのユーザである。オーソリティの作成は管理されており、プログラム的に作り出されることはない。すなわちオーソリティは、プロセスの要求によって作り出されることはない。
クラス（Class）：クラスは、（ｉ）クラスのメンバの内部状態を規定する０以上のプロパティ（property）と、（ｉｉ）クラスのメンバの内部挙動を規定する０以上のメソッド（method）と、（ｉｉｉ）クラスのメンバの外部的な挙動を規定する０以上のフィーチャ（feature）とを定義する。
コンクリートクラス（Concrete Class）：コンクリートクラスは、インスタンス（例）を有するクラスである。
エンジンプレイス（Engine Place）：各エンジンは、エンジン自身を表わす１つのエンジンプレイスを必ず有する。
エンジン（Engine）：エンジンは、オブジェクトや基本的なプロセスを管理するとともに、インストラクションを実行するコンピュータシステム内のプロセスである。エンジンは、通常、オペレーティングシステムや種々のユーザアプリケーションと共にコンピュータシステムに加えられて、コンピュータシステム内において実行されるコンピュータプロセスである。１以上のエンジンは、ネットワークの各コンピュータシステム内において実行される。そして、各エンジンは少なくとも１つのプレイスを処理する。
エクセプション（Exception）：エクセプション（例外）は、フィーチャの遂行が完全に成功しながったときに、そのフィーチャの遂行によって”送出（throw）”されるオブジェクトである。なお、エクセプションは、このように送出されるオブジェクトの状態を指す用語として使用されることもある。エクセプションは、あるオペレーションの失敗によって生じるものであり、成功したオペレーションによって生じるリザルトとは異なっている。そのため、レスポンダは、エクセプションを”生成（produce）”するのではなく、エクセプションを”送出”すると言われる。リザルトの生成と、エクセプションの送出との区別は、この明細書の一部であるアペンディックスＡにおいて、より一層詳細に説明されている。
フィーチャ（Feature）：フィーチャは、オブジェクトが遂行を指示されるタスクである。タスクは、コンピュータインストラクションセットを含むメソッドによって遂行される。フィーチャの遂行は、そのフィーチャのメソッドについてのコンピュータインストラクションの実行によって行われる。あるフィーチャは、あるオブジェクトの特定のクラスと関係があり、あるフィーチャの遂行は、そのフィーチャを遂行するオブジェクトの特定の内部状態によって異なったものとなる。フィーチャは、概念的には２つのカテゴリ、すなわち（ｉ）アトリビュート及び（ｉｉ）オペレーションに分類される。
フレーム（Frame）：フレームは、フィーチャの遂行の間、そのフィーチャを遂行するメソッドの動的状態を記録するオブジェクトである。フレームは、エンジンが実行しているメソッドに関する情報（現に実行されているインストラクションやメソッドに基づくフィーチャを遂行するオブジェクトを特定化する情報を含む）を保持するために、エンジンによって使用される。
識別子（Identifier）：識別子（アイデンティファイ）は、オブジェクトである。そして、このオブジェクトは、他のオブジェクトを参照することができるオブジェクトである。識別子の”テキスト（text）”は、ある特定の範囲内において、他の識別子から識別子を区別するストリング（文字列）である。識別子の範囲については、アペンディックスＡに詳細に説明されている。
インプリメンテーション（Implementation）：インプリメンテーションは、ある特定のフィーチャの遂行の際に実行されるコンピュータステップのセットである。インプリメンテーションオブジェクト（implementation object）は、あるクラスのいろいろのフィーチャのいろいろのインプリメンテーションを定義するオブジェクトである。
インスタンス（Instance）：オブジェクトが、あるクラスのメンバであり、そのクラスのいかなるサブクラスのメンバでもない場合に、そのオブジェクトは、そのクラスのインスタンスである。
インターフェイス（Interface）：インターフェイスは、特定のアトリビュート又は使用された特定のアーギュメントと、ある特定のオペレーションの遂行によって生じる結果であるリザルトとを定義する。インターフェイスオブジェクト（interface object）は、あるクラスの種々のフィーチャの種々のインターフェイスを定義するオブジェクトである。
メンバ（Member）：オブジェクトは、そのオブジェクトがインスタンスとなっているクラスのメンバである。また、オブジェクトは、そのクラスのいかなるスーパークラスのメンバでもある。
メソッド（Method）：メソッドは、コンピュータインストラクションセットであり、これらのインストラクションの実行は、ある特定のフィーチャの遂行を構成する。メソッドオブジェクト（method object）は、メソッドを規定するオブジェクトである。メソッドは、そのメソッドの実行の間、すなわちそのメソッドのインストラクションの実行の間、動的状態となる。このようなメソッドの動的状態はフレームによって表わされる。
ネットワーク（Network）：全てのエンジンプレイス、これらのエンジンプレイスが実行されるコンピュータシステム及びこれらのコンピュータシステムを接続する通信装置は、全体として集合的に１つのネットワークを形成する。
オブジェクト（Object）：オブジェクトは、コンピュータシステムにおける演算処理環境内のエレメントである。オブジェクトは、０以上のプロパティによって規定される内部状態と、０以上のメソッドによって規定される内部挙動と、０以上のフィーチャによって規定される外部挙動とを有する。
オペレーション（Operation）：オペレーションは、インターフェイス及びインプリメンテーションを規定するためのフィーチャである。
プレイス（Place）：プレイスは、プロセスであり、０以上のプロセスのための場所である。第１のプレイスは第２のプレイス内に存在することができる。このとき、第１のプレイスは、第２のプレイスのサブプレイスであり、第２のプレイスは、第１のプレイスのスーパープレイスである。
プリミティブ（Primitive）：プリミティブは、プロシージャ又はメソッドの形成に使用されるオブジェクト、すなわちインストラクションとして用いられるオブジェクトである。
プロセス（Process）：プロセスは、自律的な演算処理を構成するオブジェクトである。プロセスは、別のオブジェクトからの要求なしにメソッドを遂行するので、自律的である。プロセスは、そのプロセスの起動と共に中央メソッドの遂行を開始し、中央メソッドの完了と共に破棄される。各オブジェクトは、必ず１つのプロセスに属し、各プロセスはそれ自身に属する。この明細書で使用する”コンピュータプロセス”と言う用語は、より一般的な周知の定義である、コンピュータシステムによって実行される一連のインストラクションを意味する。
プロパティ（Property）：プロパティは、第２のオブジェクトの内部状態の一部を表わすオブジェクトである。
リファレンス（Reference）：リファレンス（参照）は、特別のオブジェクトを識別するためのデータ構造である。あるフィーチャを遂行するように指示されたオブジェクトは、フィーチャのリクエスタによって供給されるオブジェクトへのリファレンスによって識別される。リファレンスは、プロテクト（保護）されていることもあり、プロテクトされていないこともある。オブジェクトは、そのオブジェクトを識別するプロテクトされたリファレンスを用いて、変更や修正がされることはない。
リージョン（Region）：リージョン（領域）は、単一のオーソリティによって制御されるネットワーク内の１以上のエンジンプレイスである。リージョンは、一般に、そのリージョンのエンジンプレイスが稼働しているコンピュータシステムの正確な連係と管理によって識別される。リージョン内のエージェントの転送は、一般に、リージョン間のエージェントの転送に比べて速くて低コストである。リージョンは、例えば、広域ネットワークに接続されたローカルエリアネットワーク内に存在することもできる。
リクエスタ（Requester）：リクエスタは、他のオブジェクト、すなわちレスポンダに対して、フィーチャを遂行するように指示するオブジェクトである。リクエスタは、対象となるフィーチャのレスポンダに入力データとして、０以上のオブジェクトを供給し、そのフィーチャのレスポンダから出力データとして、０又は１つのオブジェクトを受け取る。なお、フィーチャを遂行するようにオブジェクトに指示することを、そのフィーチャを遂行するようにオブジェクトに”要求する”という。
レスポンダ（Responder）：レスポンダは、他のオブジェクト、すなわちリクエスタの指示に従って、フィーチャを実行するオブジェクトである。レスポンダは、入力データとして０又は１つのオブジェクトを受け取り、そのフィーチャの遂行によって０又は１つのオブジェクトを出力データとして供給する。なお、レスポンダは、”応答オブジェクト（レスポンディングオブジェクト：responding object）”とも呼ばれる。
リザルト（Result）：リザルト（結果）は、オペレーションの遂行によって、出力データとして”生成”されるオブジェクトである。換言すれば、リザルトは、リクエスタの要求によってレスポンダがオペレーションを遂行した直後に、レスポンダからリクエスタに転送されるオブジェクトである。
サブクラス（Subclass）：サブクラスは、１以上の他のクラスから、メソッド、プロパティ及び／又はフィーチャの定義を受け継ぐ。サブクラスは、他のクラスから受け継がなかった１以上のプロパティ、メソッド及び／又はフィーチャを定義することができ、そのフィーチャの新しいインプリメーテンションの定義によって、他のクラスから受け継がなかったフィーチャを新たに遂行することができる。
スーパークラス（Superclass）：サブクラスがプロパティ、メソッド及び／又はフィーチャを受け継いだクラスは、そのサブクラスのスーパークラスである。
バーチャルプレイス（Virtual place）：エンジンプレイスでないプレイスは、全てバーチャルプレイスである。
実施例の詳細な説明
本発明の原理によれば、新規のコンピュータプロセスのセットは、複数の相互接続されたコンピュータシステムの中から選択されたコンピュータシステムにある特別なコンピュータプロセスをルーティングするとともに、その選択されたコンピュータシステムにおいて、特別なコンピュータプロセスを実行するために用いられる。具体的には、本発明のコンピュータプロセスは、オブジェクト指向型のコンピュータプロセスとして定義される。本発明のコンピュータプロセスは、（ｉ）プロセス中に、様々なオペレーションを定義するインストラクションセットと、（ｉｉ）コンピュータプロセスの遂行の際に、インストラクションセットをインタープリートし、中央処理装置（ＣＰＵ）の動作を制御するエンジンとを含む。
後述するように、特別なコンピュータプロセスは、それ自身の移動を指示する。すなわち、特別なコンピュータプロセスは、ネットワーク内の移動先コンピュータシステムを識別し、そこに移動されることを指示するインストラクションを実行することにより、コンピュータネットワークを通るそれ自身の転送を指示する。特別なコンピュータプロセスは、移動先のコンピュータシステムにおいて実行されている間に、ネットワークの他の箇所からでは使用できないような情報にアクセスすることができる。特別なコンピュータプロセスは、他のコンピュータシステムに移動すべきかを判断するために、このような情報にアクセスして使用することができる。後述するように、本発明は、従来技術には見られなかったようなレベルの移動性、拡張性及び普遍性を有するコンピュータプロセスを提供する。
従来技術に典型的に見られるリモートプログラミングパラダイム（remote programming paradigms）においては、コンピュータプロセスは、それ自身の移動を指示することはなく、単に送信先のコンピュータシステムにおいて実行されるように、送信元のコンピュータシステムから送られる。コンピュータプロセスが、ネットワークを介してのそれ自身の移動を指示しない場合には、コンピュータプロセスは、送信先のコンピュータシステムにおいて得られる情報に基づいて、移動するべき他のコンピュータシステムを選択することができない。すなわち、このようなコンピュータプロセスは、新たなコンピュータシステムに送られる前に、最初に送られたコンピュータシステムで得た情報を持って、送信元のコンピュータシステムに戻らなければならない。これに対して、本発明のコンピュータプロセスは、ネットワークを介してそれ自身の移動を指示することができる。すなわち、本発明のコンピュータプロセスによれば、従来のリモートプログラミングパラダイムを実質的に拡張することとなる。
コンピュータネットワークを介してそれ自身の移動を指示するプロセスを提供する従来のリモートプログラミングシステムは、普遍性や拡張性に欠けている。すなわち、従来のシステムは、（ｉ）同種のコンピュータネットワークに限定されるか、又は（ｉｉ）異種のネットワークにおいて移動するプロセスが、プロセスを実行するどんなコンピュータシステムにも、すなわち移動中のプロセスが向かっているコンピュータシステムにも適応するインストラクションを有することを要求しており、普遍性に欠けている。これに対して、本発明では、プロセスは、異種のコンピュータネットワークを介して移動し、プロセスのインストラクションの実行は、そのプロセスが実行されている特定のコンピュータシステム、すなわちプロセスの移動先のコンピュータシステムには依存しない。後述するように、以下に開示されるコンピュータインストラクションは、異種のネットワークのどのコンピュータシステムによっても一様に実行される。すなわち、本発明に従って形成されるプロセスは、異種のコンピュータネットワークのどのコンピュータシステムにも移動でき、そのコンピュータシステムの性質に関する特別な情報なしに、そのコンピュータシステム内で実行できる。
従来の典型的なリモートプログラミングシステムは、プロセスがデータオブジェクトのクラスを作り出すことができないう点において、さらには、プロセスがそのクラスのデータオブジェクトを次に移動するコンピュータシステムでは利用できないという点において、拡張性に欠けている。今日の多くのコンピュータシステムはオブジェクト指向型である。既に用語の解説で説明したように、オブジェクトは、（ｉ）０以上のプロパティによって定義される内部状態と、（ｉｉ）０以上のメソッドによって定義される内部挙動と、（ｉｉｉ）０以上のフィーチャによって定義される外部挙動とを有する。同様なプロパティ、メソッド及びフィーチャを有するオブジェクトのグループのプロパティ、メソッド及びフィーチャは、１つのクラスによって規定される。従来技術のシステムでは、クラスを定義するプロセスは、そのプロセスが移動したコンピュータシステム内で実行されている間には、そのクラスのオブジェクトを使用することはできない。クラス定義が標準化されていない、一般にクラス定義が非常に大きく複雑である、及び一般に単一のプロセスが多くのクラスのオブジェクトを使用するというような理由により、従来技術のシステムでは、移動するプロセスと共にクラス定義を移動させることは、ほぼ不可能であり、現実的ではない。
従来の典型的なシステムは、プロセスの移動を考慮せずに設計された従来のプログラミング言語に基づいているため、クラス定義は標準化されていない。したがって、このように、従来のプログラミング言語を用いて形成されたプロセス中のクラス定義は、通常は、プロセスが生成されたコンピュータシステム固有の情報に依存している。このような固有の情報とは、例えば、クラス定義の一部の特別なメモリアドレスである。従来のシステムでは、このようにコンピュータシステム固有の情報に依存するため、クラス定義をリモートコンピュータシステムに転送することは非常に困難である。
本発明において、クラスは、開示されたコンピュータインストラクションセットの一部であるクラスオブジェクトによって表される。本発明に従って形成されたプロセスは、あるコンピュータシステムから他のコンピュータシステムに移動するとき、クラスオブジェクトを含んでいる。したがって、プロセスは、第１のコンピュータシステムにおいて、オブジェクトクラスを定義したり、第１のコンピュータシステムから第２のコンピュータシステムへ移動したり、第２のコンピュータシステムにおいて、そのクラスのオブジェクトを利用したりすることができる。なお、移動するプロセスによって利用されるクラスを全て転送する必要はなく、移動先のコンピュータシステムにおいて定義されていないクラスのみを転送すればよく、これにより無駄な転送時間やコストが削減される。
また、本発明は、複数のコンピュータシステムに、プロセスの複数のクローンを同時に転送する際に、従来技術には見られなかったような、優れた効率性が得られる。後述するように、プロセスの１つのクローンの移動経路が、他のクローンの移動経路と一致している間は、プロセスの１つ以上のクローンの生成を遅らせることにより、実質的な効率が向上する。クローン及び発明のこの点については、後で詳細に説明する。
リモートプグラミングシステムにおいて、２つのプロセスは、第１のプロセスが第２のプロセスに第１のプロセスへのアクセスを与えることによって、情報を共有する。第１のプロセスは、第２のプロセスへのアクセスを得ることなく、第２のプロセスに第１のプロセスへのアクセスを与える。この状況において、第２のプロセスは、第２のプロセスのセキュリティ（安全性）を犠牲にすることなく、第１のプロセスの実行に自由に干渉することができる。本発明によれば、第１のプロセスは、第２のプロセスへのアクセスを得ると同時に、第３のプロセスの協力と連係により、第１のプロセスへのアクセスを第２のプロセスに与える。さらに、第２のプロセスの構成に従って第２のプロセスが第１のプロセスとのこのようなアクセス権の交換を受け入れたり拒絶したりするような、新たなセキュリティが提供される。第３のプロセスは、（ｉ）第２のプロセスにこのようなアクセス権の交換を同意させることや、（ｉｉ）各プロセスに他のプロセスへのアクセス権を得させることを保証する。そして、どのようなプロセスであっても、このようなアクセス権の付与の機会がプロセスに与えられない限り、プロセスは他のプロセスの実行に、干渉することはできない。
本発明の新規なコンピュータプロセスは、エージェントプロセスである。エージェントプロセスは、アペンディクスＡ（本発明の一部であり、引用として本明細書の一部を構成している。）に開示さているコンピュータインストラクションによって形成されたコンピュータプロセスである。エージェントプロセスは、本発明の他の新規のコンピュータプロセスであるエンジンによって、それぞれインタープリートされる。そして、このエンジンによって、以下及びアペンディクスＡに開示されるコンピュータインストラクションが実行される。本明細書において、”インタープリートする”と言う言葉の意味は、この分野で普通に理解されている通りに用いられてる。すなわち、”インタープリートする”と、一連のコンピュータインストラクションの中の１つのコンピュータインストラクションがエンジンによって解読されて実行された後に、次のコンピュータインストラクションが解読される。
ここに開示されるように、インストラクションセットのインストラクションをインタープリートすることは、コンパイル（compiling）に比べて、より大きな普遍性を提供する。第１のエージェントは、第１のコンピュターシステムから第２のコンピュターシステムに移動し、そこで第１のエージェントにプロシージャを与える第２のエージェントとミート（meet）、すなわち通信を行うことができる。そして、第１のエージェントは、第１のエージェントが本来実行するように設計されていなかったプロシージャを実行することができる。
さらに、本発明の他の新規なコンピュータプロセスは、プレイスプロセスである。プレイスプロセスは、コンピュータネットワークを介して分散している。各エージェントプロセスは、それぞれのプレイスプロセスを”占有”している。すなわち、プレイスプロセスは、エージェントプロセスの内部状態の一部であり、エージェントプロセスの実行におけるコンテキストを提供する。各エージェントプロセスは、第１のプレイスプロセスから第２のプレイスプロセスへのエージェントプロセスの移動を開始し、制御することができる。なお、本明細書において、”エージェントプロセス”及び”プレイスプロセス”は、それぞれ”エージェント”及び”プレイス”と略して記述する。
図４Ａは、通信リンク１０２ＡＢによって接続されたコンピュータシステム１２０Ａ、１２０Ｂを有するコンピュータネットワーク１００を示している。コンピュータシステム１２０Ａは、プレイス２２０Ａ及びエージェント１５０Ａを実行する。エージェント１５０Ａは、図４Ａに示すように、プレイス２２０Ａを占有している。コンピュータシステム１２０Ｂは、プレイス２２０Ｂを実行する。以下において、エージェント又はプレイスが特定のプレイスを占有しているという表現は、そのエージェント又はプレイスがその特定のプレイスを含むコンピュータシステム内において実行されているということも含むように解釈するものとする。
エージェント１５０Ａは、コンピュータシステム１２０Ａにインストラクションを送出する。エージェント１５０Ａは、このインストラクションに応答して、インストラクションによって指定されているプレイス、例えばプレイス２２０Ｂに転送される。このインストラクションは、オペレーション”go”と呼ばれ、エージェント１５０Ａによるインストラクションの送出は、エージェント１５０Ａによるオペレーション”go”の遂行と呼ばれる。
エージェント１５０Ａによってオペレーション”go”が遂行されると、（ｉ）エージェント１５０Ａの実行は中断され、（ｉｉ）エージェント１５０Ａは、その実行状態を含む標準形式にエンコードされ、（ｉｉｉ）エージェント１５０Ａの標準形式はコンピュータシステム１２０Ｂに転送され、（ｉｖ）エージェント１５０Ａは、保存された実行状態を含む標準形式からデコードされ、（ｖ）コンピュータシステム１２０Ｂ内において、エージェント１５０Ａの実行が再開される。エージェント１５０Ａによってオペレーション”go”が遂行された後は、エージェント１５０Ａは、もはやプレイス２２０Ａには存在せず、コンピュータシステム１２０Ａでは実行されていない。その代りに、エージェント１５０Ａは、プレイス２２０Ｂに存在し、コンピュータシステム１２０Ｂ（図４Ｂ）内において実行されている。このように、エージェントは、エージェントの実行の最中に他のコンピュータシステムに移動できるので、アクセスすべきデータに向かって自由に移動することができる。
標準形式とは、あるコンピュータシステムから他のコンピュータシステムへのエージェントの転送のために、エージェントがエンコードされた形式である。標準形式は、エンコードされたエージェントの実行状態を保存しているので、転送先のコンピュータシステムにおいて、この標準形式をデコードして、オペレーション”go”の次にこのデコードされたエージェントのインストラクションを実行することにより、エージェントの実行を再開することができる。本発明のネットワーク内の各コンピュータシステムは、エージェントに含まれるコンピュータインストラクションの実行に適したどのような形式においても、エージェントを保有することができる。しかし、二人の人が会話するためには、共通の言語の文法や語彙を互いに了解していなければならないのと同じように、あるコンピュータシステムから他のコンピュータシステムにエージェントを転送するときには、ネットワークのこれらのコンピュータシステムは、エージェントの標準形式を使用しなければならない。標準形式については、本明細書の一部であるアペンディックスＢ、Ｃ、Ｄに詳細に説明されている。
エージェントは、ネットワークを介してそれ自身の移動、すなわち転送を指示することができる。ここで、第１のコンピュータシステムから第２のコンピュータシステムへのトリップに必要なパラメータを指定するための手段が提供されなければならない。
このトリップの第１のパラメータは、エージェントが転送されるプレイス、すなわちトリップの目的地である。実施例において、トリップの目的地は、ネーム、クラス又はアドレスによって指定することができる。アドレスは、例えば、ローカルエリアネットワーク内の特定の位置を指示する。
２以上のパスウェイ（通路）が第１のコンピュータシステムと第２のコンピュータシステムの間に存在していることがしばしばある。例えば、あるパスウエイは迅速だが高価で、別のパスウエイは時間はかかるが安価であるようなことがある。このようなとき、エージェントの転送に常に好ましいパスウェイというものは存在しない。したがって、トリップの第２のパラメータは、エージェントが移動するときの”way”と”means”である。
また、近くのコンピュータシステムへトリップするように作られたエージェントのエラーが、エージェントの作成者にとって非常に高くつくような、遠隔のコンピュータシステムへのエージェントの移動の原因となることがある。そのため、トリップの重要なパラメータの１つは、トリップがアボート（異常終了）されるまでに、エージェントの転送に使用できる時間又はリソースの量である。
また、ネットワークを介したエージェントの転送を制御する際に考慮しなけらばならない重要な事項として、上述の他に、セキュリティがある。例えば、ある特定のコンピュータシステムに転送されている全てのエージェントが、そのコンピュータシステムに入ることを許可されると、そのコンピュータシステムは、実質的な処理を必要とする多くのプロセスによって過負荷となって、スループットが低下してしまうことがある。
したがって、トリップの別のパラメータは、目的地のプレイスにおいて必要とされるエージェントのリソースの量である。そして、エージェントが要求するリソースの量が、プレイスが提供することができるリソースの量、又はプレイスが提供しようとしているリソースの量を越える場合には、そのエージェントは、そのプレイスへの進入を拒絶されることがある。
実施例において、チケット１３０６（図４Ａ）は、エージェント１５０Ａの転送を制御し、目的地のプレイスとして、プレイス２２０Ｂを特定する。図４Ａに示すように、エージェント１５０Ａは、チケット１３０６を有している。チケット１３０６は、プレイス２２０Ａからプレイス２２０Ｂへのエージェント１５０Ａのトリップを規定する。実施例において、チケット１３０６は、（ｉ）そのトリップの目的地のプレイスと、（ｉｉ）目的地のプレイスに転送されるときにエージェント１５０Ａが取るべき”way”又はパスウェイ”means”と、（ｉｉｉ）トリップがアボードするまでの時間、すなわちトリップが完了しなけばならない時間と、（ｉｖ）目的地のプレイスにおいて、エージェント１５０Ａが使用をするリソースの量とを規定する。プレイス２２０Ｂにおいてエージェント１５０Ａが使用することができるリソースの量を規定することによって、プレイス２２０Ｂは、プレイス２２０Ｂが提供するリソースよりも多くのリソースを、エージェント１５０Ａが必要としているかを判断できる。そして、エージェント１５０Ａがプレイス２２０Ｂが提供するリソースよりも多くのリソースを必要としている場合、プレイス２２０Ｂは、エージェント１５０Ａの進入を拒絶することができる。そして、後述するチケットを使用することによって、エージェントは、第１のプレイスと第２のプレイスとの間の継続中のトリップを完全に規定することができる。
前述したように、従来技術によるプロセスは、もともと存在しているコンピュータシステムにおいて規定されたクラスのオブジェクトしか操作することができない。換言すれば、従来技術によるプロセスが、オブジェクトクラスを規定した後に、他の目的地のコンピュータシステムに移動した場合には、そのプロセスは、目的地のコンピュータシステムが、同一のクラスの定義を含むか、又はそのプロセスが目的地のコンピュータシステム内の同一クラスを規定している場合を除いて、そのクラスのオブジェクトを操作することができない。後述するように、あるプレイスから他のプレイスに移動する本発明のエージェントは、目的地のプレイスにおいては規定されていないクラスの定義を転送する。すなわち、本発明によるエージェントは、第１のコンピュータシステム内においてクラスを定義できるとともに、第２のコンピュータシステムに移動でき、第２のコンピュータシステムで実行されている間、そのクラスのオブジェクトを操作することができる。したがって、本発明のエージェントには、従来技術のプロセスに比べて著しい進歩が見られる。
その他に、コンピュータプロセスが移動するコンピュータネットワークにおいて、複雑でマルチレベルのセキュリティシステムを実現する方法が、従来技術では一般に欠如している。従来技術においては示唆されておらず、本発明によって提供されるセキュリティ形式は、プレイスによって提供される。後述するように、プレイスは、エージェントに対して進入を許可したり拒絶したりすることによって、様々なレベルのセキュリティを提供する。そして、多くのプレイスによって、マルチレベルの階層的なセキュリティを提供するように構成することができる。
本発明の色々な局面や実施例についての理解と視覚化を助けるために、色々な状態を表現したり、相互の関係を表したりする際に、一定の表現方法に基づいて図面が描かれている。本説明中に用いられている表現方法は、図５Ａ、図５Ｂ及び図５Ｃに示すようなものである。コンピュータシステム１２０Ａ（図５Ａ）は、プレイス２２０Ａ、プレイス２２０Ｘ、プレイス２２０Ｙ、エージェント１５０Ａ、エージェント１５０Ｘ及びエージェント１５０Ｙを実行する。また、コンピュータシステム１２０Ａは、オブジェクト１４０Ａ、１４０Ｂ、１４０Ｘを、例えばコンピュータシステムのマスメモリやメインメモリ（どちらも図示しない）等のメモリ内に備えている。エージェント１５０Ａ、１５０Ｘはプレイス２２０Ａを占有し、プレイス２２０Ｙはプレイス２２０Ｘを占有し、エージェント１５０Ｙはプレイス２２０Ｙを占有している。エージェント１５０Ａはオブジェクト１４０Ａ、１４０Ｂを所有し、エージェント１５０Ｘはオブジェクト１４０Ｘを所有している。占有と所有の相互の関係については、後で詳細に説明するが、簡単に説明すると、プレイスの占有によって、様々なレベルやタイプのセキュリティが規定され、所有によって、オペレーション”go”を実行するエージェントと共にどのオブジェクトが移動するかが決定される。
図５Ｂは、図５Ａに示された相互関係、すなわち上述した相互関係についての、他の表現である。図５Ａは、それぞれの関係、例えば、エージェント１５０Ｘがプレイス２２０Ａを占有しオブジェクト１４０Ｘを収容していること等を正確に表しているが、より複雑な相互関係を表すには適してはいない。そこで、図５Ｂのようなツリー構造は、本発明の種々な実施例の様々なコンピュータインストラクションを表す際に、より複雑な相互関係を表すために用いられている。
図５Ｂのツリー構造は、図５Ｃに部分的に示されたようなクラス階層ツリーと混同されるべきではない。図５Ｃは、図５Ａ、図５Ｂに示した様々なアイテムのクラス関係を表している。オブジェクト１４０Ａ、１４０Ｂ、１４０Ｘは、クラスオブジェクト５２０によって表されるクラス”Object”のメンバである。クラス内の帰属関係は、前述の用語の解説に詳細に説明されており、この帰属関係は、クラスと、そのクラスのメンバであるオブジェクトとの間の点線によって表されている。クラスオブジェクト５２２は、クラス”Object”のサブクラスであるクラス”Process”を表している。プレイス２２０Ｘ、２２０Ｙ、２２０Ａは、クラス”place”のメンバであり、このクラス”place”は、クラス”Process”のサブクラスであり、クラスオブジェクト５２４によって表されている。エージェント１５０Ａ、１５０Ｘ、１５０Ｙは、クラス”Agent”のメンバであり、このクラス”Agent”は、クラス”Process”のサブクラスであり、クラスオブジェクト５２６によって表されている。したがって、プレイス２２０Ｘ、２２０Ｙ、２０Ａ及びエージェント１５０Ａ、１５０Ｘ、１５０Ｙは、全て、クラス”Process”のメンバであり、コンピュータプロセスである。一方、オブジェクト１４０Ａ、１４０Ｂ、１４０Ｘは、クラス”Process”のメンバではなく、コンピュータプロセスではない。
あるエージェントがあるプレイスから別のプレイスに転送されるとき、エージェントによって所有されているオブジェクトは、エージェントと共に、プレイスからプレイスへと転送される。しかし、オブジェクトが大きい場合には、オブジェクトの転送には、非常に多くのリソースが消費される。一般に、第１のコンピュータシステムにおいて実行されている第１のプレイスから、第２のコンピュータシステムにおいて実行されている第２のプレイスに、オブジェクトを含むエージェントの転送に要する時間は、既に第２のプレイスに存在しているオブジェクトについては転送しないようにすることによって、実質的に減少する。これは単純な例を考察することによって、容易に示される。エージェント１５０Ａ（図１６Ａ）は、コンピュータシステム１２０Ａにおいて実行されており、やはりコンピュータシステム１２０Ａにおいて実行されているプレイス２２０Ａを占有している。このエージェント１５０Ａは、オブジェクト１４０Ａ、１４０Ｂ、１４０Ｃを所有している。この実施例では、オブジェクト１４０Ｂはダイジェスト６２２を有する。ダイジェスト６２２は、オブジェクト１４０Ｂが相互変換可能であり、ダイジェスト６２２と同じダイジェストを持つオブジェクトであれば、どのようなオブジェクトであってもオブジェクト１４０Ｂに代わることができることを示している。
プレイス２２０Ｂは、オブジェクト６２４、６２６を所有している。したがって、プレイス２２０Ｂには、オブジェクト６２４，６２６が存在している。オブジェクト６２４は、ダイジェスト６２８を有している。プロセスは、そのプロセスによって所有される全てのオブジェクトと、そのプロセスをメンバとするクラスと、そのプロセスによって所有されるオブジェクトをメンバとするクラスとを有している。前述したように、オペレーション”go”を遂行するときに、エージェント１５０Ａ及びエージェント１５０Ａが持っている全てのオブジェクトは、標準形式で表わされる。しかし、オブジェクト１４０Ｂは、エージェント１５０Ａの標準形式には含まれない。その代わりに、ダイジェスト６２２のコピーであるダイジェスト６２２−Ｃ（図６Ｂ）が、エージェント１５０Ａの標準形式に含まる。エージェント１５０Ａ、オブジェクト１４０Ａ、１４０Ｃ、ダイジェスト６２２−Ｃは、矢印Ａの方向に通信リンク１０２ＡＢを介して、コンピュータシステム１２０Ｂに転送される。オブジェクト１４０Ｂは、少なくともコンピュータシステム１２０Ｂ内で相互変換可能な同等のオブジェクトが見出されたことが確認されるまで、コンピュータシステム１２０Ａ内に保持される。
コンピュータシステム１２０Ｂ（図６Ｃ）において、エージェント１５０Ａ、オブジェクト１４０Ａ、１４０Ｃ及びダイジェスト６２２−Ｃは、デコードされる。エージェント１５０Ａをデコードする際に、コンピュータシステム１２０Ｂは、ダイジェスト６２２−Ｃを認識し、同等のダイジェストを持ったオブジェクトがプレイス２２０Ｂを占有しているかを判断する。ここで、プレイス２２０Ｂを占有するオブジェクト６２４は、ダイジェスト６２８を有している。このダイジェスト６２８はダイジェスト６２２に等しく、したがって、このダイジェスト６２８はダイジェスト６２２−Ｃに等しい。ダイジェスト６２８はダイジェスト６２２に等しいので、オブジェクト１４０Ｂとオブジェクト６２４は相互に変換可能である。したがって、エージェント１５０Ａをデコードする際に、オブジェクト６２４のコピー、すなわちオブジェクト６２４−Ｃが生成され、このオブジェクト６２４−Ｃが、エージェント１５０Ａの相互変換可能なオブジェクト１４０Ｂに置き換えられる。したがって、エージェント１５０Ａは、オブジェクト１４０Ｂの代わりに、オブジェクト６２４のコピーであるオブジェクト６２４−Ｃを所有する。したがって、プレイス２２０Ｂへのオブジェクト１４０Ｂの転送は行われない。そして、コンピュータシステム１２０Ｂにおいて、相互に変換可能な同等のオブジェクトが見つかったので、コンピュータシステム１２０Ａからオブジェクト１４０Ｂが削除される。もちろん、コンピュータシステム１２０Ｂにおいて、相互に変換可能な同等のオブジェクトが見つからない場合もある。このような場合には、後述するように、オブジェクト１４０Ｂ（図６Ｂ）は、コンピュータ１２０Ａから検索される。
第１のプレイスを占有するエージェントは、エージェントの１以上のクローンプロセスを作成して、各クローンプロセスをそれぞれのプレイスに転送することができる。したがって、実際には、あるエージェントは、幾つかのプレイスに移動して、それらのプレイスを同時に占有することができる。もちろん、同時に移動するのは、単一のエージェントではなく、そのエージェントの複数のクローンである。
エージェントは、同時に、幾つかのプレイスに移動してこれらのプレイスを占有するために、あるインストラクションを送出する。このインストラクションは、エージェントの複数のクローンを生成し、各クローンをそれぞれのプレイスに移動させる。各クローンは１つのエージェントであり、クローンが生成されたとき、クローンは元のエージェントと同一である。したがって、クローンは元のエージェントと同じ実行状態を備えている。
例えば、コンピュータ１２０Ａ（図７Ａ）のプレイス２２０Ａを占有しているエージェント１５０Ａは、１以上のプレイスを占有するために、エージェント１５０Ａのクローンを生成して転送するインストラクションを、コンピュータシステム１２０Ａに送出する。ここで、クローンが転送されるプレイスは、送出されたインストラクションに指定されており、例えば、コンピュータシステム１２０Ｂのプレイス２２０Ｂやコンピュータシステム１２０Ｃのプレイス２２０Ｃである。
このインストラクションは、オペレーション”send”と呼ばれる。ここで、エージェント１５０Ａによるこのインストラクションの送出は、エージェント１５０Ａによるオペレーション”send”の遂行と呼ばれる。図７Ａ、７Ｂ、７Ｃ、７Ｄに示したエージェント１５０Ａによるオペレーション”send”の遂行は、本実施例では、エージェント１５０Ａ内の２つのチケット（図示してない）によって制御される。これらの２つのチケットは、それぞれのクローンの転送を制御するとともに、エージェント１５０Ａのそれぞれのクローンが転送されるプレイスであるプレイス２２０Ｂとプレイス２２０Ｃを特定する。
エージェント１５０Ａ−１、１５０Ａ−２（図７Ｂ）は、エージェント１５０Ａから生成されたクローンであり、プレイス２２０Ａを占有していないという点を除いて、エージェント１５０Ａと同一である。前述したように、エージェント１５０Ａ−１、１５０Ａ−２の実行状態も、最初は、エージェント１５０Ａの実行状態と同一である。エージェント１５０Ａ−１、１５０Ａ−２は、後述するように、コンピュータ間通信リンク１０２ＡＢＣ（図７Ｃ）を通って、それぞれ、プレイス２２０Ｂ、２２０Ｃに移動する。エージェント１５０Ａによるオペレーション”send”の実行後（図７Ｄ）も、エージェント１５０Ａは、プレイス２２０Ａを占有し続ける。一方、エージェント１５０Ａ−１は、プレイス２２０Ｂを占有し、エージェント１５０Ａ−２は、プレイス２２０Ｃを占有する。
あるクローンの移動経路と他のクローンの移動経路が同じであるときは、すなわち、少なくとも２つのクローンについて移動経路の最初の一部分が同じであるときは、エージェント１５０Ａのクローンの生成の一部を遅らせることによって、コンピュータシステム１２０Ａ内の領域や、エージェント１５０Ａのクローンの転送に要する時間を節減することができる。例えば、図７Ｅにおいて、エージェント１５０Ａの２つのクローンは、それぞれの目的地のプレイス２２０Ｂ、２２０Ｃに到達するためにコンピュータシステム１２０Ｄを通過しなければならない。このとき、エージェント１５０Ａの１つのクローン、すなわちエージェント１５０Ａ−１のみが、コンピュータシステム１２０Ｄに転送される。そして、エージェント１５０Ａの第２のクローン、すなわちエージェント１５０Ａ−２は、エージェント１５０Ａ−１からコンピュータシステム１２０Ｄで生成される。次に、エージェント１５０Ａ−１、１５０−Ａ２は、それぞれの目的地のプレイス２２０Ｂ、２２０Ｃに転送される。したがって、エージェント１５０Ａから１つのクローンのみがコンピュータシステム１２０Ａによって生成され、このクローンだけがコンピュータシステム１２０Ｄに転送される。かくして、コンピュータシステム１２０Ａの領域が節約されるとともに、エージェント１５０Ａ−１、１５０Ａ−２をそれぞれの目的地に転送するための時間も節約される。
２つのエージェントは、これらの２つのエージェントの間のミーティングにより、情報を交換する。このようなミーティングにおいて、各エージェントには、相手のエージェントに対するリファレンスが与えられる。後述するように、第２のエージェントへのリファレンスを有する第１のエージェントは、（ｉ）第２のエージェントに含まれている指示に従って、特定の動作を行うように第２のエージェントに指示したり、（ｉｉ）第２のエージェントに対してデータを送受信したりすることができる。どのようなエージェントであっても、そのエージェントへのリファレンスを第２のエージェントに与えない限り、第２のエージェントへのリファレンスは与えられない。これにより、エージェントに対する他のエージェントからの干渉が防止される。このように、相互アクセスを承認することなしには、エージェントは第２のエージェントにアクセスすることができない。
あるプレイスを占有する第１のエージェントは、そのプレイスを占有する第２のエージェントとのミーティングを開始することができる。このミーティングにおいて、第１のエージェントは、第２のエージェントにオブジェクトを転送したり、第２のエージェントからオブジェクトを受け取ったりすることができ、また第２のエージェントは、第１のエージェントにオブジェクトを転送したり、第１のエージェントからオブジェクトを受取ったりすることができる。
クラス”place”（図５Ｃ）のサブクラスは、クラス”Meeting Place”（図示しない）である。例えば図８Ａ〜８Ｆに示すように、プレイス２２０Ｂは、クラス”Meeting Place”のメンバであり、ミーティングプレイスである。したがって、プレイス２２０Ｂは、本明細書において時にミーティングプレイス２２０Ｂと称される。コンピュータシステム１２０Ｂにおいて実行されているミーティングプレイス２２０Ｂ（図８Ａ）は、ミーティングプレイス２２０Ｂを占有しているエージェント１５０Ａ、１５０Ｂに、矢印Ａ、Ｂによって示すように、ミーティングにおいて情報を交換するための手段を提供する。エージェント１５０Ａ中のペティション３１０６は、エージェント１５０Ａとエージェント１５０Ｂの間のミーティングを規定し、管理する。
エージェント１５０Ａとエージェント１５０Ｂの間のミーティングは、図８Ｂ〜８Ｆに示すように構成される。エージェント１５０Ａ（図８Ｂ）は、エージェント１５０Ａとエージェント１５０Ｂの間のミーティングを準備するようにミーティングプレイス２２０Ｂに指示するための、矢印８５１によって表された第１のコンピュータインストラクションを送出する。第１のインストラクションは、ペティション３１０６を含んでいる。ここで、ミーティングの制御を行うペティション３１０６は、エージェント１５０Ａがエージェント１５０Ｂとミーティングしようとしていることを規定している。エンジンは、矢印８５２に示すように、第２のコンピュータインストラクションを、ミーティングプレイス２２０Ｂ（図８Ｃ）のために発生する。このインストラクションは、エージェント１５０Ａが第１のコンピュータインストラクションを送出したことをエージェント１５０Ｂに通知する。また、このインストラクションは、エージェント１５０Ａとエージェント１５０Ｂの間のミーティングが可能であるかを判断するために、コンピュータインストラクションをエージェント１５０Ｂ内で実行させる。
エージェント１５０Ａとエージェント１５０Ｂの間のミーティングが、承認可能であると判断されたら（図８Ｄ）、エージェント１５０Ｂは、矢印８５３に示すように、エージェント１５０Ａとエージェント１５０Ｂの間のミーティングを準備するようにエンジンに指示する回答を、ミーティングプレイス２２０Ｂのために、第２のコンピュータインストラクションに対して送出する。そして、エンジンは、ミーティングプレイス２２０Ｂ（図８Ｅ）のために、エージェント１５０Ｂへのリファレンスを、矢印８５４Ａに示すように、エージェント１５０Ａに送出するとともに、エージェント１５０Ａへのリファレンスを、矢印８５４Ｂに示すように、１５０Ｂに送出する。こうして、エージェント１５０Ａ（図８Ｆ）は、エージェント１５０Ｂへのリファレンスを用いて、矢印８５５Ａに示すように、エージェント１５０Ｂと相互作用し、エージェント１５０Ｂは、エージェント１５０Ａへのリファレンスを用いて、矢印８５５Ｂに示すように、エージェント１５０Ａと相互作用する。
２つのエージェントは、これら２つのエージェントが同一のプレイスを占有していない限り、ミーティングすることはできない。プレイスの階層構造は、さまざまなエージェントに、いろいろなレベルとタイプのアクセス及びセキュリティを与えるためのメカニズムを、本発明のユーザに提供する。アクセス及びセキュリティに、いろいろなレベル及びタイプがあることによる利点は、例えば図９Ａ〜図９Ｅに示すような実施例によって示される。
図９Ａは、フロア９０２−１、９０２−２、９０２−３、９０２−４、９０２−５を有する建物９０２を示している。フロア９０２−３は建物９０２のプレイス内の１つのプレイスであり、したがって建物９０２のサブプレイスである。図９Ｂは、ルーム９０２−３−１、９０２−３−２、９０２−３−３、９０２−３−４を有するフロア９０２−３を示している。ルーム９０２−３−２はフロア９０２−３のプレイス内のプレイスであり、したがってフロア９０２−３のサブプレイスである。
建物９０２の構造は、階層的なセキュリティに好適である。例えば、建物９０２には、第１のセキュリティレベルの人々、例えば軍の関係者のみが入れるように制限することがことができる。フロア９０２−３には、第２のレベル（より高いレベル）のセキュリティレベルの人々、例えば海軍関係者のみが入れるように、更に制限することができる。ルーム９０２−３−２には、第３の（より高いレベル）セキュリティレベルの人々、例えば海軍将校のみが入れるように、更に制限することができる。フロア９０２−３とは無関係に、フロア９０２−４には、例えば空軍関係者のみが入れるように、更に制限することができる。
コンピュータシステム１２０Ｘ（図９Ｃ）内のエンジンは、プレイス２２０Ｘ１、２２０Ｘ２を実行する。ここで、プレイス２２０Ｘ１は、例えば、建物９０２を表す。プレイス２２０Ｘ１−１、プレイス２２０Ｘ１−２は、プレイス２２０Ｘ１（図９Ｄ）を占有する。したがって、プレイス２２０Ｘ１−１、プレイス２２０Ｘ１−２は、プレイス２２０Ｘ１のサブプレイスであり、逆に、プレイス２２０Ｘ１は、プレイス２２０Ｘ１−１、２２０Ｘ１−２のスーパープレイスである。ここで、プレイス２２０Ｘ１−１、プレイス２２０Ｘ１−２は、例えば、フロア９０２−４、９０２−３を表す。また、プレイス２２０Ｘ１−２−１は、プレイス２２０Ｘ１−２（図９Ｅ）を占有する。したがって、プレイス２２０Ｘ１−２−１は、プレイス２２０Ｘ１−２のサブプレイスであり、プレイス２２０Ｘ１−２は、プレイス２２０Ｘ１−２−１のスーパープレイスである。ここで、プレイス２２０Ｘ１−２−１は、例えば、ルーム９０３−３−１を表す
本発明の一実施例において、２つのエージェントは、”対面（フェイス−ツウ−フェイス）”しているときだけ、すなわち２つのエージェントが同一のプレイスを占有するときだけ、ミーティングすることができる。なお、本実施例では、エージェントは、ただ１つのプレイスのみを占め、そのプレイスのサブプレイスやスーパープレイスを同時に占有することはない。例えば、プレイス２２０Ｘ１−２を占有するエージェントは、プレイス２２０Ｘ１又はプレイス２２０Ｘ１−２−１を同時に占有することはない。建物９０２（図９Ａ）にいる第１の人は、フロア９０２−３にいない限り、フロア９０２−３の２番目の人と対面して会話できないのと同様に、プレイス２２０Ｘ１（図９Ｄ）を占有するエージェントは、プレイス２２０Ｘ１−２を占有するエージェントとは交信できない。また、フロア９０２−３（図９Ｂ）にいる第１の人は、ルーム９０２−３−２にいない限り、ルーム９０２−３−２にいる第２の人と対面して会話できないのと同様に、プレイス２２０Ｘ１−２（図９Ｅ）を占有するエージェントは、プレイス２２０Ｘ１−２−１を占有するエージェントとは交信できない。
このような、プレイスの階層は、本発明のユーザが、プレイス２２０Ｘ１へのアクセスを制限したり、更にプレイス２２０Ｘ１−２へのアクセスを制限したり、更にプレイス２２０Ｘ１−２−１へのアクセスを制限したりすることを可能にする。ただし、このように実現されるセキュリティの階層は、実行されたプレイスの階層に必ずしも直接に関連しているのではない。例えば、プレイス２２０Ｘ１−２へのアクセスは、プレイス２２０Ｘ１−２のサブプレイス、例えばプレイス２２０Ｘ１−２−１へのアクセスよりも、更に制限することができる。なお、プレイスへのアクセスの制限については、後で詳細に説明する。このように、プレイスの階層は、いろいろなエージェントに、あるプレイス、これらのプレイスのサブプレイス、及びこれらのサブプレイスのスーパープレイスを占有している他のエージェントに対するいろいろなアクセスレベルを与えることができるような、高度なセキュリティの階層を、本発明のユーザが構成することを可能にする。
以上に説明した新規なプロセスの詳細をさらに記述するためには、以上に説明したコンピュータシステムの構造のよりよき理解が必要とされる。図１０に示す実施例において、３つのコンピュータシステムは、コンピュータネットワーク１００を形成するように接続されている。コンピュータシステム１２０Ａは、ＣＰＵ１１０Ａ、ネットワーク通信ハードウエア１０４Ａ及びメモリ１１７Ａを有している。ここで、図１の入力モジュール１２及び出力モジュール１４に対応する入力モジュール及び出力モジュールは、分かり易くするために割愛している。また、図１のマスメモリ１７Ａ及びメインメモリ１７Ｂは、メモリ１１７Ａを形成するように組み合わされている。ネットワーク通信ハードウエア１０４Ａは、ＣＰＵ１１０Ａがネットワークを介して信号を伝送させたり、ネットワークから信号を受けてインタープリートしたりすることができれば、どのような装置でもよい。
メモリ１１７Ａには、ＣＰＵ１１０Ａ内において同時に動作するコンピュータプロセスが存在する。ネットワークマネージャ１３０Ａは、コンピュータネットワークのいろいろのコンピュータシステムの間のデータ伝送を管理するコンピュータプロセスである。オペレーティングシステム１３１Ａは、いろいろなコンポーネントの動作及びコンピュータシステム１２０Ａのリソースを管理するコンピュータプロセスである。例えば、オペレーティングシステム１３１Ａは、ＣＰＵ１１０Ａ、メモリ１１７Ａ及び入力／出力モジュール（図１０には示していない。図１参照。）の使用を管理する。エンジン１３２Ａは、本発明のオブジェクト指向コンピュータインストラクションセットのコンピュータインストラクションをインタープリートし、このオブジェクト指向コンピュータインストラクションセット中に規定されたオブジェクトに含まれる情報を処理するコンピュータプロセスである。例えば、エンジン１３２Ａは、プレイス２２０Ａ（図４Ａ）とエージェント１５０Ａを同時に実行する。ここで、プレイス２２０Ａとエージェント１５０Ａは、本発明のオブジェクト指向コンピュータインストラクションセットによって構成されるプロセスである。なお、エンジン１３２Ａは、図４Ａには示されていない。
コンピュータシステム１２０Ａのメモリ１１７Ａ（図３０）内において実行されるプロセスとしては、上述した他にも、通常は１以上のプロセス、例えばユーザアプリケーション１３３Ａが存在する。ユーザアプリケーション１３３Ａは、エンジン１３２Ａによってインタープリートされるオブジェクト指向インストラクションセット内において規定されたオブジェクトの生成及び／又はマニピュレーションをエンジン１３２Ａに要求することができる。
コンピュータシステム１２０Ｂ、１２０Ｃは、コンピュータシステム１２０Ａと同様に構成されている。ただし、コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃの一般的な構造は同様であるが、コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃはその他の点では異なっていてもよい。
コンピュータネットワーク１００のコンピュータシステムは、あるコンピュータシステムから他のコンピュータシステムに、エージェントプロセスを転送することができるように接続されている。コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃは、それぞれのネットワーク通信ハードウエア１０４Ａ、１０４Ｂ、１０４Ｃを、通信リンク１０２ＡＢ、１０２ＢＣ、１０２ＡＣで結合することによって、コンピュータネットワークを形成するように接続されている。ここで、通信リンク１０２ＡＢ、１０２ＢＣ、１０２ＡＣは、１つのネットワーク通信ハードウエア、例えばネットワーク通信ハードウエア１０４Ａから、別のネットワーク通信ハードウエア、例えばネットワーク通信ハードウエア１０４Ｂに、データを転送することができるものであれば、どのような手段であってもよい。例えば、ネットワーク通信リンク１０２ＡＢは、公衆電話網であってもよい。この場合、ネットワーク通信ハードウエア１０４Ａ、１０４Ｂはモデムである。そして、ネットワークマネージャ１３０Ａ、１３０Ｂは、通信リンク１０２ＡＢ、すなわち公衆電話網を介した通信を確立し利用するように、それぞれのネットワーク通信ハードウエア１０４Ａ、１０４Ｂにコマンドを送出する。
オブジェクト指向コンピュータインストラクションセットから成るオブジェクトは、エンジン、例えばエンジン１３２Ａ（図１１Ａ）によって実行される。エンジン１３２Ａは、通信下部構造１３２Ａ−ＣＩ、プログラム部１３２Ａ−Ｐ及びデータ部１３２Ａ−Ｄを有する。エンジン１３２Ａによって実行されるオブジェクト、例えばオブジェクト１４０Ａの状態わ表すデータは、エンジン１３２Ａのデータ部１３２Ａ−Ｄに記憶されている。エンジン１３２Ａのデータ部１３２Ａ−Ｄは、エンジン１３２Ａのワークスペースとして予約されたメモリ１１７Ａ（図１０）内のメモリスペースであり、通常は、コンピュータシステム１２０Ａ上の他のプロセス、例えばオペレーティングシステム１３１Ａやユーザアプリケーション１３３Ａは、アクセスすることはできない。
前述したように、エンジンはプロセス及びオブジェクトを実行する。エンジン１３２Ａのプログラム部１３２Ａ−Ｐ（図１１Ａ）は、データ部１３２Ａ−Ｄにおいて表されるオブジェクトを実行するコンピュータインストラクションを有する。プログラム部１３２Ａ−Ｐを形成するように組み合わされるコンピュータインストラクションは、既知のコンピュータ言語によるものでよい。例えば、実施例において、エンジンのプログラム部は、本発明の原理にしたがって、Ｃ＋＋プログラミング言語によって構成されている。
エンジン１３２Ａの通信下部構造１３２Ａ−ＣＩは、ネットワーク１００を介して、分散されたエンジンの間でデータを転送するためのコンピュータインストラクションを有する。エンジンの通信下部構造のさまざまな様相については、この明細書の一部であるアペンディクスＤに一層詳細に説明されている。
図１１Ｂは、図１１Ａのコンピュータネットワークを別の形式で表現したものである。図１１Ａに示すように、コンピュータシステム１２０Ｂのエンジン１３２Ｂは、エンジン１３２Ａと同じように構成されている。
ネットワーク中のオブジェクト
後述するように、プレイス２２０Ａ、２２０Ｂ（図４Ａ）、エージェント１５０Ａ、チケット１３０６等は、本発明の原理に従って、”オブジェクト”を用いて規定されている。前述したように、オブジェクトは、データ部１３２Ａ−Ｄ（図１１Ａ）に記憶されている。そして、このオブジェクトは、エンジン１３２Ａ、１３２Ｂによってインタープリートされるコンピュータインストラクションセットにしたがって形成され、エンジン１３２Ａによってインタープリートされる。例えば、データ部１３２Ａ−Ｄ中のオブジェクト１４０Ａは、エンジン１３２Ａ、１３２Ｂによってインタープリートされるコンピュータインストラクションセットにしたがって形成され、エンジン１３２Ａによってインタープリートされる。
本発明のコンピュータインストラクションセットの概略
本発明の新規な各プロセス及びこれらのプロセスを定義したり支援したりするために必要ないろいろなフィーチャは、本発明にエンジンによってインタープリートされるコンピュータインストラクションセットによって定義される。本発明のコンピュータインストラクションは、オブジェクト指向である。したがって、本発明のデータ、例えばエージェント１５０Ａを表すデータは、それぞれ内部状態と外部挙動とを有するオブジェクトに組織化される。あるオブジェクトのプロパティは、そのオブジェクトの内部状態を規定し、そのオブジェクトのフィーチャは、そのオブジェクトの外部挙動を規定する（前記の用語の解説参照）。各オブジェクトは、複数のクラスの内の１つのクラスの１つのインスタンス（例）である。
本発明の原理によれば、後述するミックスインクラスを除いて、コンピュータインストラクションセットに規定される全てのクラスは、アペンディクスＡに詳細に説明されるクラス”Object”のサブクラスである。したがって、ミックスインクラスを除いて、ここに記述される各クラスは、クラス”Object”のフィーチャ及びプロパティを受け継いでいる。
制限された多重継承は、一実施例によれば、ミックスインクラスを用いて実現される。”ミックスイン”又は”ミックスインクラス”は、クラス”Object”のサブクラスではないクラスである。以上及びアペンディクスＡに記述されるように、ミックスインクラスには、例えば、ミックスインクラス”Executed”、”Named”、”Referenced”がある。”フレーバ”又は”フレーバクラス”とも呼ばれる非ミックスインクラスは、多くても１つのフレーバの直接のサブクラスであるが、０以上のミックスインクラスの直接のサブクラスで有り得る。ミックスインクラスは、どのクラスのサブクラスでもないか、又は他のミックスインクラスの直接のサブクラスである。特に指定しない限り、クラスはフレーバである。クラス階層においてサイクルは許されない。すなわち、別のクラスのサブクラスであり且つスーパークラスでもあるクラスは許されない。
ミックスインクラスの使用は、フィーチャ及びプロパティが一度定義されると、広範囲のクラスにわたって使用される。例えば、ミックスインクラス”Orderd”は、２つのオブジェクトの相対的な順序を定めるオペレーションを規定する。フレーバクラス”Association”、”Citation”、”List”、”Identifire”、”Pattern”、”Permit”、”Bit”、”Boolean”、”Character”、”Number”、”Octet”、”Time”は、ミックスインクラス”Orderd”から継承される。したがって、アソシエーション、サイテション、リスト、識別子、パターン、パーミット、ビット、ブーリアン、キャラクタ、数、オクテット及び時間は、同一のクラスの他のメンバに対してある順序を持っている。例えば、数値の場合、２は、１の”後”であり、３の”前”である。
本発明においてオブジェクトの主要なクラスは、プロセスのクラスである。前述したようにプロセスは、（ｉ）他のプロセスによって占有されるプレイス、又は（ｉｉ）（ａ）第１のプレイスからそれ自身を転送して第１のプレイスの占有を終了し第２のプレイスを占有することができ、（ｂ）同一のプレイスを占有する他のエージェントと相互作用することができるエージェント、のどちらかである。
エージェント１５０Ａ（図１１Ａ）は、エンジン１３２Ａによって実行される本発明のコンピュータインストラクションセットに従って形成されたプロセスである。エージェント１５０Ａは、（ｉ）それ自身を検査して変更し、（ｉｉ）ネットワーク１００中の第１のプレイス（図１０）から第２のプレイスにそれ自身を転送し、（ｉｉｉ）第２のプレイスを占有する他のエージェントと相互作用することができる。
本明細書においてプロセスは、アーギュメントを使用して、０又は１つのリザルトを発生させるオペレーションを行なうものとして記述される。ただし、プロセス自体は、後述するインストラクションの中から選択されたインストラクションの集合を有するオブジェクトであり、このインストラクションはＣＰＵ１１０Ａ内において動作しているエンジン、例えばエンジン１３２Ａによってインタープリートされる。あるプロセスによる動作の遂行、又は開示されたインストラクションセットの他のオブジェクトの遂行は、実際には、プロセス又はオブジェクトに含まれる特定のインストラクション群の選択とそのインタープリートである。エンジンによるプロセスのインストラクションのインタープリートは、ここでは、”プロセスのインタープリート”とも呼ばれる。すなわち、エージェント１５０Ａがあるオペレーションを実行する場合、エージェント１５０Ａは、エンジン１３２Ａにインストラクションを供給し、エンジン１３２Ａは、そのインストラクションをインタープリートし、エージェント１５０Ａによるオペレーションの遂行を行なう適当なタスクを実行するようにＣＰＵ１１０Ａに指示する。プロセスとエンジンとの間の相互作用は後で詳細に説明する。
本発明の重要な要素は、後で詳細に説明するコンピュータインストラクションセットが、ネットワーク１００（図１０）のそれぞれのコンピュータシステムで、同様に実現されることである。コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃは、完全に異なり且つ互換性がないデータ構造、メモリ形態、ＣＰＵ及びオペレーティングシステムを使用することができる。しかし、エージェントは、コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃのどれに対してもそれ自身を転送することができるので、各コンピュータシステムが標準化された形で本発明のコンピュータインストラクションセットを実行することが大切である。コンピュータシステム１２０Ａ、１２０Ｂ、１２０Ｃは、コンピュータインストラクションセットを同様に実行する限り、他の点では互換性がなくてもよい。したがって、エージェントは同種のコンピュータネットワークだけでなく、異種のコンピュータネットワークのコンピュータシステムの間にも自由に移動することができる。
典型的な従来技術のシステムでは、プロセスが同種のネットワーク内だけを移動すること、又はプロセスが、実行されていたコンピュータシステムと互換性を持ってコンピュータインストラクションを実行するように、特別に設計されていることを必要としていた。後者のケースにおいては、プロセスは、そのプロセスの実行が開始されたコンピュータシステムの特別なシステム要求と、そのプロセスが移動しようとしているコンピュータシステムの特別なシステム要求とに対応するように構成されていた。本発明は、このような従来技術を本質的に改善させたものであり、本発明のエージェントのコンピュータインストラクションは、異種のネットワークのいかなるコンピュータシステムにおいても実行できる。
エージェント
前述したように、エージェントの挙動は、部分的にはそのエージェントの内部状態に依存する。したがって、ネットワーク中のあるエージェントの外部挙動を検討する前に、エージェントの内部状態のいくつかの特色について、簡単に説明する。各エージェントは、クラス”Agent”のメンバである。
クラス”Agent”はアブストラクトクラスであり、いかなるエージェントもクラス”Agent”のインスタンスではないことに注意すべきである。クラス”Agent”は、抽象的であり、オペレーション”live”のインプリメンテーションは、クラス”Agent”によって規定されたり、継承されたりしない。以下及びアペンディクスＡに一層詳細に説明するように、オペレーション”live”は、プロセスの生成時にそのプロセス、すなわちエージェント又はプレイスによって実行されるステップを規定する。これらのステップは、全体としてプロセスの”中央プロシージャ”と呼ばれる。エージェントやプレイスのための中央プロシージャは予め提供されるものではなく、本発明のユーザによって、各ユーザの特定のニーズに適合するようなエージェントやプレイスのための中央プロシージャが、設計され提供される。このように、本発明のユーザは、クラス”Agent”の具体的なサブクラスを生成させ、オペレーション”live”のためのインプリメンテーションを供給する。
クラス”Agent”は、クラス”Process”（図５）のサブクラスである。クラス”Process”は、クラス”Object”のサブクラスであり、ミックスインクラス”Named”からも継承している。クラス”Object”は、ミックスインクラス”Referenced”からも継承している。エージェントは、次のようなアトリビュートを所有している。すなわち、エージェントは、アトリビュートとして、（ｉ）スーパークラス”Object”から受け継がれたアトリビュート”class”、”size”と、（ｉｉ）ミックスインクラス”Referenced”から継承されたアトリビュート”isProtected”と、（ｉｉｉ）ミックスインクラス”Named”から継承されたアトリビュート”name”と、（ｉｖ）スーパークラス”Process”から継承されたアトリビュート”brand”、”Permit”、”privateClasses”とを所有している。クラス”Agent”はいかなるアトリビュートも規定しない。前述の各アトリビュート及びクラスは、アペンディクスＡにおいて一層詳細に説明される。
ダイアグラム１２７０（図１２）は、エージェント１５０Ａがメンバであるクラスのクラス関係を表している。エージェント１５０Ａは、クラス”Agent”を表すドメイン１２７２に含まれているように図示される通り、クラス”Agent”のメンバである。クラス”Agent”は抽象的であり、エージェント１５０Ａは、クラス”Agent”の１以上のサブクラス（図示しない）のメンバでもある。
ドメイン１２７２は、クラス”Process”を表すドメイン１２７４内に完全に収容されている。したがって、エージェント１５０Ａは、クラス”Process”によって規定されたアトリビュート”brand”、”Permit”、”privateClasses”を継承する。さらに、クラス”Agent”のすべてのメンバは、クラス”Process”のメンバでもある。したがって、前述したように、クラス”Agent”はクラス”Process”のサブクラスである。
ドメイン１２７４は、クラス”Object”を表すドメイン１２７６内に完全に収容されている。したがって、エージェント１５０Ａは、クラス”Object”によって規定されるアトリビュート”class”、”size”を継承する。さらに、クラス”Agent”のメンバを含むクラス”Process”のすべてのメンバは、クラス”Object”のメンバでもある。したがって、前述したように、クラス”Process”は、クラス”Object”のサブクラスである。
クラス”Process”を表すドメイン１２７４は、クラス”Named”を表すドメイン１２７８内に収容されている。コネクション１２７８Ａは、ドメイン１２７４がドメイン１２７８に収容されていることを示すと共に、クラス”Object”を表すドメイン１２７６がドメイン１２７８内には収容されてなく、ドメイン１２７８がドメイン１２７６に収容されていないことを明瞭に表している。
ドメイン１２７８によって表されたクラス”Named”は、ミックスインクラスである。ドメイン１２７４は、ドメイン１２７８に含まれているので、エージェント１５０Ａは、ドメイン１２７８に含まれる。したがって、エージェント１５０Ａは、ミックスインクラス”Named”のメンバである。ミックスインクラス”Named”は、エージェント１５０Ａのアトリビュート”name”を規定している。
コネクション１２８０Ａによって示すように、ミックスインクラス”Referenced”を表すドメイン１２８０は、クラス”Object”を表すドメイン１２７６を含んでいる。ドメイン１２７６は、ドメイン１２８０に含まれるので、エージェント１５０Ａは、ドメイン１２８０に含まれる。したがって、エージェント１５０Ａは、ミックスインクラス”Referenced”のメンバである。ミックスインクラス”Referenced”は、エージェント１５０Ａのアトリビュート”isProtected”を規定する。
本発明の開示である実施例において、各フレーバは、クラス”Object”のサブクラスであるので、各フレーバは、ミックスインクラス”Referenced”のサブクラスでもある。したがって、クラス”Object”のフィーチャからクラス”Referenced”のフィーチャを分離する必要はない。しかし、ミックスインクラス”Referenced”のフィーチャは、本発明の概念形成及び理解を助けるために、クラス”Object”のフィーチャから分離されている。
用語の解説において述べたように、オブジェクトは、開示されたコンピュータインストラクションセットにおいて、リファレンスによって特定される。後述するように、オブジェクトにある操作を行なうように指示する場合、オブジェクトは、リファレンスによって特定される。ミックスインクラス”Referenced”によって定義されたフィーチャは、オブジェクトを特定するリファレンスに基づいて動作する。例えば、アトリビュート”isProtected”は、オブジェクト自身が保護されるか否かではなく、オブジェクトへのリファレンスが保護されるか否かを定める。クラス”Object”によって定義されたフィーチャは、リファレンスによって特定されたオブジェクトに対して動作する。例えば、アトリビュート”class”は、そのオブジェクトがどのクラスのインスタンスであるかを定める。
エージェント１５０Ａ（図１２）によって占有されたプレイスに関する情報を供与するアトリビュートが、定義されていないことに注意されたい。しかし、エージェント１５０Ａによって占有されたプレイスは、エージェント１５０Ａのプロパティとして保存される。エージェント１５０Ａは、”here（ヒア）”セレクタの実行によって、どのプレイスをエージェント１５０Ａが占有するかを定めることができる。セレクタの実行、特に”ヒア”セレクタの実行については、アペンディクスＡに詳述されている。エージェント１５０Ａによって占有されているプレイスであるプロパティは、クラス”Process”によって定義される。したがって、いかなるプロセスも、すなわちプレイス又はエージェントは、プロセスによって占有されているプレイスであるプロパティを含んでいる。
クラス”Process”は、ミックスインクラス”Named”の直接のサブクラスであり、本文及びアペンディクスＡに開示されたクラスだけである。一方、クラス”Process”のサブクラスではない、ミックスインクラス”Named”のサブクラスは、本文及びアペンディクスＡに開示されたインストラクションを用いて、本発明のユーザによって定義される。したがって、クラス”Named”は、ミックスインクラスである。
プロセスとしてのエージェント
各プロセス（エージェント及びプレイス）には、前述したように、プロセスの一義的な挙動を規定する中央プロシージャが組み合わされている。プロセスの中央プロシージャは、プロセスによって遂行されるオペレーション”live”を実現するメソッドである。エンジンは、プロセスにオペレーション”live”を遂行させて、プロセスの中央プロシージャを実行させることにより、プロセスの処理を開始する。プロセスのためのメソッドについては、後で詳述する。プロセスがオペレーション”live”の実行を完了したら、プロセスが成功しようがしまいが、プロセスは終了させられる。このような、プロセスの終了については、引用として本明細書の一部とされているアペンディクスＡのセクション２．４．１１に説明されている。
エージェントの移動：オペレーション”go”
前述したように、エージェントは、オペレーション”go”の遂行によって、プレイスから他のプレイスへと移動する。オペレーション”go”について、例えば図１５Ａ〜１５Ｅに示すような実際の流れを例にして説明する。プレイス２２０Ａからプレイス２２０Ｂに移動するために、エージェント１５０Ａ（図１５Ａ）は、オペレーション”go”を遂行する。図１５Ａは、エージェント１５０Ａがオペレーション”go”を遂行する前のネットワーク１５００の状態を示している。
エージェント１５０Ａは、オブジェクト１４０Ａ、１４０Ｂを所有し、エンジン１３２Ａ内のプレイス２２０Ａを占有している。したがって、エージェント１５０Ａ及びプレイス２２０Ａは、エンジン１３２Ａによって同時にインタープリートされるプロセスである。換言すれば、プレイス２２０Ａとエージェント１５０Ａは、オペレーション”live”を同時に遂行する。エンジン１３２Ｂは、プレイス２２０Ｂ及びエージェント１５０Ｂをインタープリートする。エージェント１５０Ｂは、プレイス２２０Ｂを占有している。
エンジン１３２Ａの通信下部構造１３２Ａ−ＣＩは、通信リンク１０２ＡＺによって、エンジン１３２Ｚの通信下部構造１３２Ｚ−ＣＩに接続されている。エンジン１３２Ｚは、プレイス２２０Ｚをインタープリートする。通信下部構造１３２Ｚ−ＣＩは、通信リンク１０２ＺＢによって、エンジン１３２Ｂの通信下部構造１３２Ｂ−ＣＩにも接続されている。この実施例では、ネットワーク１５００内に３つのコンピュータシステムが示されているにすぎないが、ネットワーク１５００のコンピュータシステムの数は任意の数とすることができる。したがって、図１５Ａに示したコンピュータシステムは、本発明の原理を例示しているものにすぎず、本発明は、図示した特別のネットワークに限定されるものではない。
この実施例において、エージェント１５０Ａによるオペレーション”go”の遂行は、エンジン１３２Ａから、エンジン１３２Ｚを介して、エンジン１３２Ｂに、エージェント１５０Ａを転送することを要求する。したがって、オペレーション”go”には、エンジン１３２Ａ、すなわち転送元のエンジンと、エンジン１３２Ｚ、すなわち転送途中のエンジンと、エンジン１３２Ｂ、すなわち目的地のエンジンとにおけるアクションを要求する。
転送先のプレイスを処理するエンジンによって遂行されるオペレーション”go”
図１３Ａは、エージェント１５０Ａがオペレーション”go”を遂行する直前における、エージェント１５０Ａの実行状態の一部を含む内部状態の一部を示している。プロセスの実行状態については、後で詳細に説明する。スタック１３０４は、エージェント１５０Ａの実行状態の一部である。スタック１３０４は、トップ”Ｔ”にチケット１３０６を備えている。チケット１３０６については、後で詳細に説明する。オペレーション”go”の遂行によって使用されたアーギュメントは、スタック１３０４からポップされるので、スタック１３０４は、オペレーション”go”のコンテキストにおいて、”現在のスタック”である。プレイス２２０Ａは、エージェント１５０Ａのプロパティであり、エージェント１５０Ａがプレイス２２０Ａを占有していることを示している。
図１３Ｂは、エージェント１５０Ａによるオペレーション”go”の遂行の直後における、エージェント１５０Ａの実行状態の一部を含む内部状態の一部を示している。図１３Ａ、１３Ｂについては、後で詳細に説明する。
図１４Ａに示すフローチャート（ロジックフローダイアグラム）１４００は、エンジン１３２Ａ（図１５Ａ）によって実行されるオペレーション”go”の流れを示している。オペレーション”go”の遂行が開始された時に、エージェント１５０Ａは、エンジン１３２Ａ内において実行されている。すなわち、エンジン１３２Ａは、転送元のエンジンである。図１４Ａに示すフローチャートの各ステップは、エージェント１５０Ａの、プレイス２２０Ａ（図１５Ａ）からプレイス２２０Ｂへのトリップの流れを説明している。
エージェント１５０Ａによるオペレーション”go”の遂行において、エンジン１３２Ａ（図１５Ａ）は、テストステップ（access?）１４０２（図１４Ａ）において、オペレーション”go”の遂行を要求しているエージェントが、エージェント１５０Ａであるかどうかを判断する。オペレーション”go”が、エージェント１５０Ａ（図１５Ａ）以外のオブジェクトによって要求されたものであれば、処理は、テストステップ１４０２（図１４Ａ）から終了ステップ１４０４に移行する。この終了ステップ１４０４では、オペレーション”go”は失敗したものとして、クラス”Process not Current”のエクセプションが送出される。一方、オペレーション”go”が、エージェント１５０Ａ（図１５Ａ）によって要求されたものであれば、処理は、テストステップ１４０２（図１４Ａ）からテストステップ（canGo?）１４０６に移行する。
このテストステップ（canGo?）１４０６において、エンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａがオペレーション”go”を遂行してもよいのか否かを判断する。テストステップ（canGo?）１４０６において、エンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａのアトリビュート”Permit”に問い合わせを行う。前述したアトリビュート”Permit”は、エージェント１５０Ａの複数のアトリビュートの１つである。エージェント１５０Ａの多くのアトリビュートについては、クラス”Process”に関連して、アペンディクスＡに詳述されている。エージェント１５０Ａのアトリビュート”Permit”の問い合わせによって、エージェント１５０Ａのプロパティ”Permit”が生成される。パーミット１６１２（図１６）は、エージェント１５０Ａのプロパティ”Permit”である。したがって、パーミット１６１２は、エージェント１５０Ａのアトリビュート”Permit”を問い合わせることによって生成される。この実施例において、プロパティ”Permit”は、エージェント１５０Ａの複数のプロパティの中の１つである。
パーミット１６１２（図１７）は、アペンディクスＡに詳細に説明されている幾つかのプロパティの中に、プロパティ”charge”、”canGo”、”age”を含んでいる。ここで、プロパティ”charge”、”canGo”、”age”は、それぞれインテジャ１７０２、ブーリアン１７０４、インテジャ１７０６である。ブーリアンは、”true”又は”false”のどちらかの値を有するオブジェクトである。”canGo”テストステップ１４０６（図１４Ａ）において、エンジン１３２Ａ（図１５Ａ）は、パーミット１６１２（図１７）のアトリビュート”canGo”に対して問い合わせを行い、パーミット１６１２のプロパティ”canGo”であるブーリアン１７０４を生成させ、ブーリアン１７０４を”true”と比較する。
ブーリアン１７０４の値が”false”のときは、処理は、テストステップ（canGo?）１４０６（図１４Ａ）から、終了ステップ１４０８に移行する。このとき、エージェント１５０Ａは、オペレーション”go”の遂行による移動が許されず、オペレーションは失敗に終わり、終了ステップ１４０８において、クラス”Permit Violated”のメンバであるエクセプションを送出する。エクセプション及びその分類はアペンディクスＡに一層詳細に説明されている。
一方、ブーリアン１７０４（図１７）の値が”true”のときは、処理は、テストステップ（canGo?）１４０６（図１４Ａ）から、ステップ（effectuate move）１４１０に移行する。ステップ（effectuate move）１４１０については、図１４Ｂを用いて、後で詳細に説明する。その後、処理は、ステップ（effectuate move）１４１０（図１４Ａ）から、終了ステップ１４１２に移行し、そこでオペレーション”go”は、エンジン１３２Ａに関する限り、成功の内に終了する。
前述したように、エンジン１３２Ａ（図１５Ａ）によって遂行されるステップ（effectuate move）１４１０は、フローチャート１４１０（図１４Ｂ）によって示されている。フローチャート１４１０の第１のステップ、すなわちステップ（route agent）１４１４において、エンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａをトリップの目的地まで転送するのに使用されるエンジン、すなわち”移動目的地”を選出する。ここに使用される移動目的地という用語は、トリップに使用する次のエンジンを示すものであり、トリップの目的地と混同するべきではない。チケット１３０６（図１３Ａ）は、トリップの目的地として１つのプレイスを定義する。したがって、”トリップ目的地”は１つのプレイスである。
チケット１３０６（図１３Ａ）によって規定されたトリップの行程に従って、エージェント１５０Ａ（図１５Ａ）は、１つのエンジンから次のエンジンへと移動する。したがって、”移動目的地”は１つのエンジンである。一般に、トリップには、エージェントがトリップの目的地を有するエンジンに到達するまでに、エージェントの何回かの転送を要求する。
ステップ１４１４（図１４Ｂ）において、移動目的地を規定するウエイオブジェクト、すなわちクラス”Way”のメンバが生成される。移動目的地は、例えば、（ｉ）現在、エージェント１５０Ａを含んでいるエンジン、すなわちエンジン１３２Ａや（この場合エージェント１５０Ａは転送されない）、（ｉｉ）エンジン１３２Ａを含むリージョン（領域）内の別のエンジンや、（ｉｉｉ）別のリージョンのエンジン等である。前記（ｉｉ）又は（ｉｉｉ）のどちらの場合においても、エージェント１５０Ａは、後述するように、移動目的地に向かって転送される。”リージョン”という用語については、用語の解説に規定されている。エンジンを複数のリージョンに分類することは、エージェントの移動経路の決定、すなわちルーティングにおいて重要である。これは、通常、エンジンは、他のリージョン内のエンジンに比べて、同一のリージョン内の他のエンジンについて、より多くの詳細な情報を有しているからである。これは、１つのリージョン内の全てのエンジンは、同一の人又は組織によって構成されるためである。このような人又は組織は、リージョンの”供給者”と呼ばれる。このように、単一のリージョン内の全てのエンジンは、単一の供給者によって供給されるので、そのリージョンの各エンジンには、そのリージョンの他のエンジンについての詳細な情報を与えることができる。
エンジンをリージョンに分類することは、大型の複雑なネーットワークにおいて、エージェントをルーティングする上で有用である。あるエージェントが複数のリージョン間を移動する場合、移動目的地のエンジンについての情報を転送元のエンジンが有している必要はない。転送元のエンジンは、どのリージョンにエージェントが移動しているかを判断し、エージェントをそのリージョン内のエンジンに向かって移動させることができれば十分である。一旦、トリップ目的地であるプレイスを含むリージョン内のエンジンにエージェントを移動させたら、エージェントを、容易にトリップ目的地であるプレイスを含むエンジンに向かってルーティングさせることができる。
フローチャート１４１４（図１４Ｃ）は、ステップ（route agent）１４１４（図１４Ｂ）において実行される各ステップを示しており、後で詳細に説明する。
処理は、ステップ（route agent）１４１４からステップ（isolate agent）１４１６に移行し、ここでエージェント１５０Ａ（図１４Ａ）は切り離される。プロセスの切り離しについてはアペンディクスＡに詳細に説明されており、その説明は引用として本明細書の一部を構成している。簡単に説明すると、エージェント１５０Ａは、（ｉ）エージェント１５０Ａ内の全てのリファレンスを、他のプロセス及びこれらの他のプロセスによって所有されているオブジェクトに対してボイド（無効に）して、（ｉｉ）他の全てのプロセス内において、エージェント１５０Ａ及びエージェント１５０Ａによって所有されるオブジェクトに対するリファレンスをボイドすることによって、切り離される。処理は、ステップ（isolate agent）１４１６（図１４Ｂ）から、ステップ（exiting）１４１８に移行する。
このステップ（exiting）１４１８において、プレイス２２０Ａ（図１５Ａ）は、エンジン１３２Ａの要求によってオペレーション”exiting”を遂行することにより、エージェント１５０Ａが切り離されたことを知る。オペレーション”exiting”については、後で詳細に説明する。処理は、ステップ（exiting）１４１８からテストステップ（next hop is here?）１４２０に移行する。
テストステップ（next hop is here?）１４２０において、エンジン１３２Ａ（図１５Ａ）は、ステップ（route agent）１４１４（図１４Ｂ）において定められた移動目的地を現在のエンジン、すなわちエンジン１３２Ａ（図１５Ａ）と比較する。そして、移動目的地が現在のエンジン、すなわちエンジン１３２Ａであった場合、処理は、テストステップ（next hop is here?）１４２０（図１４Ｂ）から、ステップ（deliver agent）１４２２に移行する。図１５Ａ〜１５Ｅの例の場合、エージェント１５０Ａは、後述するように、エンジン１３２Ｚに転送される。したがって、移動目的地は現在のエンジン、すなわちエンジン１３２Ａではなく、処理は、ステップ（deliver agent）１４２２（図１４Ｂ）には移行しない。しかし、ステップ（deliver agent）１４２２及びステップ（deliver agent）１４２２に後続する各ステップについても、処理を完全なものとするために、以下に説明する。
ステップ（deliver agent）１４２２において、エージェント１５０Ａ（図１５Ａ）は、チケット１３０６（図１３Ａ）を満足するエンジン１３２Ａ内のプレイスに移動される。ステップ（deliver agent）１４２２（図１４Ｂ）は、フローチャート１４２２（図１４Ｅ）に示されており、後で詳細に説明する。処理は、ステップ（deliver agent?）１４２２（図１４Ｂ）から、テストステップ（exception?）１４２４に移行し、ここでエンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａの移動によりエクセプションが送出されたかを判断する。ステップ（deliver agent）１４２２（図１４Ｂ）において、エクセプションが送出されなかった場合、処理はテストステップ１４２４から終了ステップ１４２８に移行する。終了ステップ１４２８にて、ステップ（effectuate move）１４１０を完了するので、処理は、前述した終了ステップ１４１２（図１４Ａ）に移行する。
ステップ（deliver agent）１４２２（図１４Ｂ）において、エクセプションが送出された場合には、処理は、テストステップ１４２４からステップ１４２６に移行する。ここでエージェン１５０Ａは、フローチャート１４２２（図１４Ｅ）に従って、パーガトリに移動する。パーガトリは、各エンジン内にあるプレイスであり、プロセスの進入を拒絶することはない。パーガトリに入る際、エージェント１５０Ａの局所的なパーミット（ローカルパーミット：local permit）は厳しく制限される。例えば、ローカルパーミットのプロパティ”canGo”には、”true”が設定され、プロパティ”canCharge”、”canCreate”、”canDeny”、”canGrant”、”canRestart”、”canSend”、”canTerminate”には、”false”が設定される。プロパティ”charges”、”age”には、エージェント１５０Ａが、エージェント１５０Ａからパーガトリに送ったエクセプションを検出し分析することができるとともに、エージェント１５０Ａが、オペレーション”go”の遂行によって別のプレイスに移動することができる程度に、大きな値が設定される。なお、パーミットに関するプロパティは、アペンディックスＡに詳細に説明されている。
処理は、ステップ１４２６から終了ステップ１４２８に移行する。したがって、前述したように、ステップ（effectuate move）１４１０（図１４Ａ）は成功のうちに終了する。
前述したように、ステップ（route agent）１４１４（図１４Ｂ）において判断された移動目的地が現在のエンジン、すなわちエンジン１３２Ａであった場合には、処理はテストステップ（next hop is here?）１４２０（図１４Ｂ）からステップ（deliver agent）１４２２に移行する。逆に、移動目的地が現在のエンジンでなかった場合、処理は、テストステップ（next hop is here?）１４２０からステップ（form destination）１４３０に移行する。ステップ（form destination）１４３０において、移動目的地を特定する目的地オブジェクトが形成される。処理は、ステップ（form destination）１４３０からステップ（encode agent）１４３２に移行する。
このステップ（encode agent）１４３２において、エンジン１３２Ａ（図１５Ａ）は、アペンディックスＢに含まれるテレスクリプトのエンコード則に従って、エージェント１５０Ａをエンコードする。アペンディクスＢは、本明細書の一部であり、引用として本明細書の一部を構成している。エージェント１５０Ａのエンコードによって、（ｉ）エージェント１５０Ａと、（ｉｉ）オブジェクト１４０Ａ、１４０Ｂを含むエージェント１５０Ａが所有する全てのオブジェクトと、（ｉｉｉ）エージェント１５０Ａ及びエージェント１５０Ａの所有する全てのオブジェクトがメンバとなっているクラスとが、標準バイナリ形式にエンコードされたエージェント１５０Ａ−Ｅ（図１５Ｂ）として表される。ステップ（form destination）１４３０（図１４Ｂ）において形成された目的地オブジェクト、すなわち目的地オブジェクト１５０Ａ−Ｅ−Ｄ（図２１）は、エンコードされたエージェント１５０Ａ−Ｅに含まれている。この目的地オブジェクトについては、後で詳細に説明する。図１５Ｂに示すように、エンコードされたエージェント１５０Ａ−Ｅは、エンジン１３２Ａの通信下部構造１３２Ａ−ＣＩに記憶される。エージェント１５０Ａ（図１５Ａ）は、後で詳細に説明するように、エンコードされたエージェント１５０Ａ−Ｅの移動が完了するまで、エンジン１３２Ａ内に保存される。
処理は、ステップ（encode agent）１４３２からステップ（transfer out）１４３４に移行する。このステップ（transfer out）１４３４において、エンジン１３２Ａ（図１５Ｂ）は、ステップ（form destination）１４３０（図１４Ｂ）において形成された目的地オブジェクトに従って、エンコードされたエージェント１５０Ａ−Ｅの移動を開始する。この例では、目的地オブジェクトは、エンコードされたエージェント１５０Ａ−Ｅの移動目的地としてエンジン１３２Ｚ（図１５Ｂ）を特定する。エンコードされたエージェント１５０Ａ−Ｅは、通信下部構造１３２ＡＣ−ＣＩから、通信リンク１０２ＡＺを介して、エンジン１３２Ｚの通信下部構造１３２Ｚ−ＣＩに、通常の２進データとして転送される。通信下部構造１３２Ａ−ＣＩと通信下部構造１３２Ｚ−ＣＩの間のデータの転送は、アペンディクスＣに詳細に記述されている。このアペンディクスＣは、本明細書の一部であり、引用として本明細書の一部を構成している。前述したように、エンコードされたエージェント１５０Ａ−Ｅの移動は、ステップ（transfer out）１４３４において開始される。このように、通信下部構造１３２Ａ−ＣＩと通信下部構造１３２Ｚ−ＣＩと間で、エンコードされたエージェント１５０Ａ−Ｅの転送が行われている間、フローチャート１４１０（図１４Ｂ）に示すように、エンジン１３２Ａのプログラム部１３２Ａ−Ｐによる処理が行われる。
処理は、ステップ（transfer out）１４３４からテストステップ（exception?）１４３６に移行し、ここでエンジン１３２Ａは、ステップ（transfer out）１４３４でエクセプションが送出されたか否か、すなわちエンコードされたエージェント１５０Ａ−Ｅの移動の開始が失敗したか否かを判断する。ステップ（trnasfer out）１４３４が失敗した場合は、処理は、テストステップ（exception?）１４３６からステップ１４２６に移行し、前述したように、エージェント１５０Ａはパーガトリに移動する。逆に、ステップ（transfer out）１４３４が成功した場合、処理は、テストステップ（exception?）１４３６からステップ１４３８に移行する。
ステップ１４３８において、エンジン１３２Ａ（図１５Ｂ）は、継続中の転送のリストにエージェント１５０Ａを加える。エージェント１５０Ａは、エージェント１５０Ａの転送の間、継続中の転送のリストに保持されている。転送が完了したら、エージェント１５０Ａは、継続中の転送のリストから除かれ、エンジン１３２Ａによって廃棄される。エージェント１５０Ａが継続中の転送のリストにある間に、エージェント１５０Ａのパーミットが終了した場合、すなわち、エージェント１５０Ａの実際の経過時間が、エージェント１５０Ａの実効的パーミット（effective permit）のプロパティ”age”に達した場合には、エンコードされたエージェント１５０Ａ−Ｅの転送は、アボートされる。エージェント１５０Ａは、継続中の転送のリストから除かれ、エージェント１５０Ａは、クラス”Permit Expired”のエクセプションを送出し、オペレーション”go”の遂行は失敗に終わる。プロセスの”実効的パーミット”については、アペンディクスＡに詳細に説明されている。処理は、フローチャート１４１０（図１４Ｂ）において、ステップ１４３８から終了ステップ１４２８に移行し、ステップ（effectuate move）１４１０（図１４Ａ）が終了する。
前述したように、ステップ（route agnet）１４１４において、エンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａの移動目的地を定める。フローチャート１４１４（図１４Ｃ）はステップ（route agent）１４１４（図１４Ｂ）において実行されるステップを示している。
以下に記述するフローチャート１４１４（図１４Ｃ、１４Ｄ）の説明は、図１５Ａ〜１５Ｅに示した例の範囲を越えるような状況についても考慮している。したがって、フローチャート１４１４（図１４Ｃ、１４Ｄ）は、図１５Ａ〜１５Ｅに示した例とは無関係に説明される。ただし、基本的には、フローチャート１４１４（図１４Ｃ、１４Ｄ）は、エンジン１３２Ａ（図１５Ａ）内のプレイス２２０Ａからのトリップを行うためにオペレーション”go”を遂行するエージェント１５０Ａ（図１５Ａ）の動きに基づいて説明される。フローチャート１４１４（図１４Ｃ、１４Ｄ）の説明は、（ｉ）エージェント１５０Ａが、エンジン１３２Ａ（図１５Ａ）以外のエンジンに転送されるトリップや、（ｉｉ）エンジン１３２Ａ、１３２Ｚ、１３２Ｂが同一のリージョン内にあるネットワークに限定されるものではない。また、以下の説明は、エージェント１５０Ａ（図１５Ａ）のトリップを規定するチケット１３０６（図１３Ａ）が、ウェイ、ミーンズ、テレネーム又は供給者の指定を含むように限定したり、又は含まないように限定したりするものではない。チケット１３０６（図１３Ａ）は、フローチャート１４１４（図１４Ｃ、１４Ｄ）の流れの中で、（ｉ）エンジン１３２Ａ（図１５Ａ）内のプレイスへのトリップ、（ｉｉ）エンジン１３２Ａと同一のリージョン内のエンジン内のプレイスへのトリップ、又は（ｉｉｉ）エンジン１３２Ａを含むリージョンとは異なるリージョン内にあるエンジン内のプレイスへのトリップを規定することができる。
オペレーション”go”のアーギュメントとして使用されるチケット１３０６は、オペレーション”go”のために、トリップの目的地及びその他の特徴を特定するものであることを思い出してほしい。フローチャート１４１４（図１４Ｃ）において、エンジン１３２Ａ（図１５Ａ）は、テストステップ１４４０で、チケット１３０６（図１３、図１８Ａ）のアトリビュート”way”を問い合わせて、チケット１３０６のプロパティ”way”を生成させる。チケット１３０６のプロパティ”way”は、ウェイ１８２０（図１８Ａ）である。ただし、チケット１３０６のプロパティ”way”はオプションであり、０としてしてしまってもよい（図示せず）。
チケット１３０６がプロパティ”way”が０の場合、処理はテストステップ１４４０から、テストステップ（ticket has provider?）１４６０に移行する。このテストステップ１４６０については、後で詳細に説明する。逆に、チケット１３０６のプロパティ”way”がウェイである場合、すなわち０でない場合、処理は、テストステップ１４４０からステップ１４４２に移行する。このステップにおいて、エンジン１３２Ａ（図１５Ａ）は、ウェイ１８２０（図１８Ａ）のアトリビュート”name”を問い合わせて、ウェイ１８２０のプロパティ”name”であるテレネームを生成させる。また、ステップ１４４２（図１４Ｃ）において、エンジン１３２Ａ（図１５Ａ）は、そのテレネームのプロパティ”authority”を生成し、コピーする。アペンディクスＡに記載されるようなオクテットストリングによって表されるリザルト”authority”は、後述するように、移動目的地を特定するために用いられる。
処理は、ステップ１４４２からテストステップ（way has means?）１４４４（図１４Ｃ）に移行する。そして、このテストステップ１４４４でウェイ１８２０（図１８Ｂ）のアトリビュート”means”が問い合わされて、ミーンズオブジェクト１８２２であるウェイ１８２０のプロパティ”means”が生成される。ただし、プロパティ”means”は、オプションであり、０としてしまってもよい（図示せず）。
ミーンズオブジェクト、すなわちクラス”Means”のメンバは、（ｉ）コンピュータ間の通信メディアと、（ｉｉ）この通信メディアを介して特定のエンジンに向けての転送を行う転送インストラクションとを特定することによって、エンジンを特定するオブジェクトである。例えば、ミーンズオブジェクトは、公衆電話網（ＰＳＴＮ）と、エージェントを目的地のエンジンに転送するための特定のモデムの電話番号を含むモデムインストラクションとを特定する。ミーンズオブジェクトは、目的地のエンジンにエージェント１５０Ａをルーティングするのに必要なすべての情報を含む。したがって、チケット１３０６の他のプロパティは、チケット１３０６がミーンズオブジェクトを有している場合には、無視される。
したがって、ウェイ１８２０のプロパティ”means”が０でない場合、すなわちミーンズオブジェクト１８２２（図１８Ｂ）である場合、処理は、テストステップ（way has means?）１４４４（図１４Ｃ）からステップ１４４６に移行する。ステップ１４４６において、ウェイ１８２２は、移動目的地を規定するウェイとして指定される。なお、ミーンズオブジェクト１８２２は、最初の移動目的地、すなわちエージェント１５０Ａ（図１５Ａ）の最初の転送の目的地のエンジンを規定するものであり、チケット１３０６（図１８Ａ）によって規定されるトリップの目的地（トリップの目的地はエンジンではなくプレイスである。）を規定するのではない。処理は、ステップ１４４６から終了ステップ１４４８に移行し、フローチャート１４１４の処理、すなわちステップ（route agent）１４１４（図１４Ｂ）の処理は、成功のうちに終了する。
逆に、ウェイ１８２０（図１８Ｂ）のプロパティ”means”が０である場合、ウェイ１８２０はミーンズオブジェクトを含んでおらず、処理は、テストステップ（way has means?）１４４４（図１４Ｃ）からテストステップ（ticket has name?）１４５０に移行する。テストステップ（ticket has name?）１４５０において、エンジン１３２Ａ（図１５Ａ）は、チケット１３０６（図１８Ａ）のプロパティ”destinationName”、すなわちテレネーム１８１８を生成し、このテレネーム１８１８を０と比較する。ただし、チケット１３０６のプロパティ”destinationName”は、オプションであり、０としてもよい（図示せず）。
チケット１３０６のプロパティ”destinationName”が０である場合、処理は、テストステップ（ticket has means?）１４５０からテストステップ（ticket has provider?）１４６０に移行する。このテストステップ１４６０については、後で詳細に説明する。逆に、チケット１３０６のプロパティ”destinationName”がテレネーム１８１８である場合には、処理は、テストステップ（ticket has name?）１４５０からステップ１４５２に移行する。ステップ１４５２において、エンジン１３２Ａ（図１５Ａ）は、エージェント１５０Ａの移動目的地への移動経路を規定するウェイオブジェクトを生成する。エンジン１３２Ａは、上述のステップ１４４２（図１４Ｃ）で生成されコピーされたオーソリティと関連するリージョンへのウェイオブジェクトを生成するために、及びテレネーム１８１８（図１８Ａ）と同じ名前のオーソリティ内にプレイスを生成するために、ファインダ（後で詳細に説明する）を参照する。このような、ファインダの使用によるウェイオブジェクトの生成については、後で詳細に説明する。
処理は、ステップ１４５２からテストステップ（way out is here?）１４５４に移行する。このテストステップ１４５４において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４５２（図１４Ｃ）において生成されたウェイオブジェクトが、エンジン１３２Ａ（図１５Ａ）への転送を規定しているかを判断する。生成されたウェイオブジェクトが、エンジン１３２Ａへの転送を規定していない場合、処理は、テストステップ（way out is here?）１４５４から終了ステップ１４５６に移行する。そして、この終了ステップ１４５６において、フローチャート１４１４の処理、すなわちステップ（route agent）１４１４（図１４Ｂ）の処理は、成功のうちに終了する。
一方、生成されたウェイオブジェクトが、エンジン１３２Ａ（図１５Ａ）への転送を規定している場合、処理は、テストステップ（way out is here?）１４５４からステップ１４５８に移行する。そして、このステップ１４５８において、エンジン１３２Ａは、エージェント１５０Ａがエンジン１３２Ａに転送されるべきことを示すフラグを立てる。そして、処理は、ステップ１４５８から、テストステップ（ticket has name?）１４８０（図１４Ｄ）に移行する。このテストステップ１４８０については、後で詳細に説明する。
前述したように、チケット１３０６のプロパティ”way”が０である場合には、処理は、テストステップ（ticket has name?）１４４０からテストステップ（ticket has provider?）１４６０に移行する。テストステップ（ticket has provider?）１４６０において、エンジン１３２Ａは、チケット１３０６のプロパティ”destinationAddress”、すなわちテレアドレス１８１４（図１８Ａ）と、テレアドレス１８１４のプロパティ”provider”とを生成する。チケット１３０６のプロパティ”destinationAddress”と、テレアドレス１８１４のプロパティ”provider”の、どちらかが０であった場合、処理はテストステップ（ticket has provider?）１４６０から、後で詳細に説明するテストステップ（ticket has name?）１４８０に移行する。逆に、チケット１３０６（図１８Ａ）のプロパティ”destinationAddress”及びテレアドレス１８１４のプロパティ”provider”が０でない場合には、チケット１３０６は、トリップの目的地を含むリージョンを指定する。そして、処理は、テストステップ（ticket has provider?）１４６０からステップ１４６２に移行する。
ステップ１４６２において、エンジン１３２Ａ（図１５Ａ）は、チケット１３０６のプロパティ”destinationAddress”のプロパティ”provider”によって示されるリージョンのエンジンへの転送を規定するウェイオブジェクトを生成するために、後で詳細に説明するファインダを、参照する。そして、処理は、ステップ１４６２（図１４Ｃ）からテストステップ１４６４に移行する。このステップ１４６４において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４６２においてウェイオブジェクトが正常に生成されたかを判断する。ステップ１４６２でウェイオブジェクトが生成された場合、処理は、テストステップ１４６４からステップ１４７２に移行する。このステップ１４７２については、後で詳細に説明する。逆に、ステップ１４６２でウェイオブジェクトが生成されなかった場合には、処理は、テストステップ１４６４からステップ１４６６に移行する。
ステップ１４６６において、エンジン１３２Ａ（図１５Ａ）は、後で詳細に説明するように、チケット１３０６のプロパティ”destinationAddress”であるテレアドレスのプロパティ”routingAdvice”のアイテムによって示されるリージョンへの転送を規定するウェイオブジェクトを生成するために、ファインダを参照する。テレアドレスのプロパティ、特にプロパティ”provider”、”routingAdvice”については、引用として本明細書の一部の構成をしているアペンディクスＡに、より詳細に説明されている。簡単に説明すると、テレアドレスのプロパティ”routingAdvice”のアイテムは、０以上のリージョンの供給者を指定する。ここで、このリージョンは、チケット１３０６（図１８Ａ）によって規定されるトリップの目的地としてエージェント１５０Ａを転送させることができると、テレアドレスの作成者によって想定されている。そして、処理は、ステップ１４６６（図１４Ｃ）から、テストステップ（found?）１４６８に移行する。このテストステップ１４６８において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４６６でウェイオブジェクトの生成が成功したかを判断する。ステップ１４６６でウェイオブジェクトが生成されなかった場合、処理は、テストステップ（found）１４６８から終了ステップ１４７０に移行し、この終了ステップ１４７０において、クラス”Destination Unavailable”のエクセプションが送出される。逆にステップ１４６６でウェイオブジェクトが生成された場合、処理は、テストステップ１４６８からテストステップ１４７２に移行する。
テストステップ１４７２において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４６２又はステップ１４６６（図１４Ｃ）において生成されたウェイオブジェクトが、エンジン１３２Ａ（図１５Ａ）への転送を規定しているかを判断する。生成されたウェイオブジェクトがエンジン１３２Ａへの転送を規定していない場合、処理は、テストステップ１４７２から終了ステップ１４７４に移行し、この終了ステップ１４７４においてフローチャート１４１４の処理、すなわちステップ（route agent）１４１４（図１４Ｂ）の処理は、成功のうちに終了する。
逆に、生成さらたウェイオブジェクトがエンジン１３２Ａ（図１５Ａ）への転送を規定している場合には、処理は、テストステップ１４７２からステップ１４７６に移行する。このステップ１４７６において、エンジン１３２Ａ（図１５Ａ）は、チケット１３０６によって規定されるトリップの目的地を特定するテレネームを、チケット１３０６のプロパティ”destinationAddress”であるテレアドレスのプロパティ”location”から得る。
エンジン１３２Ａは、便利で効率的ないかなる方法によってテレネームを得てもよい。例えば、エンジン１３２Ａは、キーがオクテットストリング、例えばオクテットストリング２００Ｋ１（図２０Ａ）であり、値がテレネーム、例えばテレネーム２０００Ｖ１であるディクショナリ２０００（図２０Ａ）のようなテーブルを使用しても良い。例えば、テレアドレス１８１４（図１８Ａ）のプロパティ”location”がオクテットストリング２０００Ｋ１（図２０Ａ）に等しい場合、テレネーム２０００Ｖ１が、チケット１３０６（図１８Ａ）によって規定されたトリップの目的地であるプレイスを特定するテレネームとして、エンジン１３２Ａによって生成される。
アドレスは、リージョン内に、そのリージョンのエンジンの設計者及び作成者によって設計され作成されたアドレス体系に従って、割り当てられている。本発明で開示するインストラクションセットは、特定のアドレス体系を指定するものではない。各リージョンは、そのリージョンの最も効率的で便利なアドレス体系を自由に作成することができる。したがって、世界の各主権国家は、郵便サービスを提供する際に、各主権国家自身における住所の体系を設計して作成するのと同様に、各リージョンは、そのリージョンのための独自のアドレス体系を自由に作成することができる。当然のことながら、２以上のリージョンにおいて使用されるアドレス体系は、それぞれ同じである必要はない。
アドレス体系を作成する際に、リージョンのエンジンは、１以上のプレイスを含むロケーションにテレアドレスを割り当てる。テレアドレスを割り当てる際に、エンジンは、そのテレアドレスによって特定されたロケーション内の１以上のプレイスを特定するテレネームを生成し記憶する。換言すれば、テレアドレスの割り当てを行うエンジンは、それぞれのテレアドレスが割り当てられたプレイスのテレネームとテレアドレスとを連結する情報を保持している。このようにして、エンジン、例えばエンジン１３２Ａ（図１５Ａ）は、特定のテレアドレスを有するプレイスのテレネームを生成させる。このようなテレネームを記録し生成させるような特定の機構については、与えられたリージョンでエンジンの設計及び作成を行う個人又は組織に任される。
処理は、ステップ１４７６からステップ１４７８に移行する。このステップ１４７８において、エンジン１３２Ａ（図１５Ａ）は、エンジン１３２Ａを含むリージョン内のエンジンにエージェント１５０Ａが転送されるべき事を示すフラグを立てる。処理は、ステップ１４７８（図１４Ｃ）からテストステップ１４８０（図１４Ｄ）に移行する。さらに、処理は、ステップ１４５８（図１４Ｃ）及びテストステップ１４６０（これらのステップはどちらもすでに詳細に説明されたものである）から、テストステップ１４８０に移行する。
テストステップ１４８０（図１４Ｄ）において、エンジン１３２Ａ（図１５Ａ）は、チケット１３０６（図１８Ａ）のプロパティ”destinationName”が０か、又はテレネーム１８１８であるかを判断する。チケット１３０６のプロパティ”destinationName”が、テレネーム１８１８である場合には、処理は、テストステップ１４８０（図１４Ｄ）からステップ１４８２に移行する。このステップ１４８２において、エンジン１３２Ａ（図１５Ａ）は、テレネーム１８１８（図１８Ａ）のコピーを生成し、そのコピーは、ステップ１４７６（図１４Ｃ）において得られたテレネームに代わって、移動目的地のテレネームとなる。そして、処理は、ステップ１４８２（図１４Ｄ）からステップ１４８２に移行する。また、チケット１３０６のプロパティ”destinationName”が０である場合、処理は、テストステップ１４８０からステップ１４８３に直接移行する。
ステップ１４８３において、エンジン１３２Ａ（図１５Ａ）は、後で詳細に説明するようにファインダと相談し、前述したようにステップ１４７６（図１４Ｃ）又はステップ１４８２（図１４Ｄ）で生成されたテレネームによって指示されるプレイスへの転送を規定するウェイオブジェクトを生成する。そして、処理は、ステップ１４８３からテストステップ１４８４に移行する。このテストステップ１４８４において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４５８（図１４Ｃ）で転送の目的地がエンジン１３２Ａ（図１５Ａ）であることを示すフラグが立てられたかを判断する。そして、フラグが立てられていない場合、処理はテストステップ１４８４から、後述するテストステップ１４９０に移行する。逆に、フラグが立てられていた場合、エージェント１５０Ａ（図１５Ａ）の目的地は、エンジン１３２Ａ内の他のプレイスであり、処理は、テストステップ１４８０（図１４Ｄ）からテストステップ１４８６に移行する。
テストステップ１４８６において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４８３（図１４Ｄ）で生成されたウェイオブジェクトが、エンジン１３２Ａ（図１５Ａ）への転送を規定しているかを判断する。生成されたウェイオブジェクトがエンジン１３２Ａへの転送を規定していない場合、処理は、テストステップ１４８６（図１４Ｄ）から終了ステップ１４８８に移行する。この終了ステップ１４８８において、クラス”Destination Unavailable”のエクセプションが送出され、フローチャート１４１４（図１４Ｃ、１４Ｄ）の処理、すなわちステップ（route agent）１４１４（図１４Ｂ）の処理が終了する。逆に、生成されたウェイオブジェクトがエンジン１３２Ａ（図１５Ａ）内のプレイスへの転送を規定している場合、処理は、テストステップ１４８６（図１４Ｄ）からテストステップ１４９０に移行する。
テストステップ１４９０において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４７８（図１４Ｃ）で転送の目的地がエンジン１３２Ａ（図１５Ａ）を含むリージョンであることを指示するフラグが立てられたかを判断する。このフラグが立てられていない場合、処理はテストステップ１４９０から終了ステップ１４９６に移行し、この終了ステップ１４９６において。フローチャート１４１４（図１４Ｃ、１４Ｄ）、すなわちステップ（route agent）１４１４（図１４Ｂ）による処理が成功の内に終了する。逆に、フラグが立てられていない場合、エージェント１５０Ａ（図１５Ａ）を、エンジン１３２Ａを含むリージョン内の他のプレイスに移動させる必要があるので、処理は、テストステップ１４９０（図１４Ｄ）からテストステップ１４９２に移行する。テストステップ１４９２において、エンジン１３２Ａ（図１５Ａ）は、ステップ１４８３（図１４Ｄ）で生成されたウェイオブジェクトが、エンジン１３２Ａ（図１５Ａ）を含むリージョン内のプレイスへの転送を規定しているかを判断する。生成されたウェイオブジェクトがエンジン１３２Ａを含むリージョン内のプレイスへの転送を規定していない場合、処理は、テストステップ１４９２（図１４Ｄ）から終了ステップ１４９４に移行する。この終了ステップ１４９４において、クラス”Destination Unavailable”のエクセプションが送出され、フローチャート１４１４（図１４Ｃ、１４Ｄ）の処理、すなわちステップ（route agent）１４１４（図１４Ｂ）の処理が終了する。
ステップ１４５２、１４６２、１４６６、１４８３（図１４Ｃ）について以上に説明したように、エンジン１３２Ａ（図１５Ａ）は、チケット１３０６（図１３Ａ）によって規定されたトリップの目的地への転送における、エージェント１５０Ａのルートを定めるために、ファインダを使用する。ファインダは、エージェントの移動目的地を定めるために使用される。例えば、チケット１３０６（図１３Ａ）は、トリップの目的地として、エンジン１３２Ｂ内のプレイス２２０Ｂ（図１５Ａ）を規定する。しかし、エージェント１５０Ａは、エンジン１３２Ｂに到達するためには、最初にエンジン１３２Ｚに転送されなければならないので、エンジン１３２Ｚが移動目的地となる。ファインダ２０５０（図２０Ｂ）は、第２のテレネームによって特定されるプレイスに向かう過程における移動目的地のエンジンのテレネームを生成させるために用いられる。実施例において、生成されたテレネームは、エンジンによって処理されるエンジンプレイスを特定することによって、エンジンを特定する。第２のテレネームは、特定のプレイス、又はオーソリティを識別することができ、これにより、識別されたオーソリティの全てのプレイスを特定する。テレネームは、アペンディックスＡに一層詳細に説明されている。
ステップ１４５２（図１４Ｃ）のコンテキストにおいて、第２のテレネームは、テレネーム１８１８（図１８Ａ）であり、このテレネーム１８１８は、チケット１３０６のプロパティ”destinationName”である。ファインダ２０５０（図２０Ｂ）がテレネーム１８１８に関する情報を含まない場合、ステップ１４５２（図１４Ｃ）のコンテキストにおいて、第２のテレネームは、前述したようにステップ１４４２において生成されコピーされるオーソリティを特定化するテレネームである。ステップ１４６２のコンテキストにおいて、第２のテレネームは、チケット１３０６のテレアドレス１８１４（図１８Ａ）のプロパティ”provider”において特定されたオーソリティを識別する。ステップ１４６６（図１４Ｃ）のコンテキストにおいて、第２のテレネームは、チケット１３０６のテレネーム１８１４（図１８Ａ）のプロパティ”routingAdvice”であるリストのアイテムにおいて特定されたオーソリティを識別する。ステップ１４８３（図１４Ｄ）のコンテキストにおいて、第２のテレネームは、チケット１３０６のプロパティ”destinationName”が０でない場合、チケット１３０６のテレネーム１８１８（図１８Ａ）であり、その他の場合は、ステップ１４７６（図１４Ｃ）において生成したテレネームである。ファインダ２０５０（図２０Ｂ）については、後で、ステップ１４８３（図１４Ｄ）のコンテキストにおいて説明する。なお、ステップ１４８３（図１４Ｄ）のコンテキストにおいて、第２のテレネームは、チケット１３０６のテレネーム１８１８（図１８Ａ）である。
ステップ１４５２（図１４Ｃ）、１４６２、１４６６、１４８３（図１４Ｄ）において、ファインダ２０５０（図２０Ｂ）の使用によって生成されたテレネームは、生成されたテレネームによって識別されたエンジンへの転送を規定するウェイオブジェクトを形成するために用いられる。
エンジン１３２Ａは、ファインダ２０５０（図２０Ｂ）の使用によって、エージェント１５０Ａを転送すべきエンジン、すなわち”移動目的地”を定める。ファインダ２０５０は、トリップの目的地からトリップの目的地に向かってのエージェント１５０Ａの移動における移動目的地を、エンジン１３２Ａが判断できるようなものであれば、どのようなデータ構造であってもよい。実施例において、ファインダ２０５０は、ディクショナリであり、このディクショナリは、キーがテレネームで、値もテレネームとなっている。キー、例えばテレネーム２０５０Ｋ１〜２０５０Ｋ６は、オーソリティを特定する。値、例えばテレネーム２０５０Ｖ１〜２０５０Ｖ６は、それぞれに対応するオーソリティによって特定されたプレイスに到達する際に経過するエンジンを特定する。ファインダ２０５０のテレネーム２０５０Ｋ１（図２０Ｂ）が、テレネーム１８１８のものと同一のオーソリティを持つ場合には、テレネーム２０５０Ｖ１は、移動目的地として、エンジン１３２Ｚを特定する。
本発明の一実施例によれば、ファインダ２０５０のキーは、テレネーム２０５０Ｖ７に組み合わされたニル（零）２０５０Ｋ７を含む。テレネーム２０５０Ｖ７は、直接的に又は間接的に、ネットワーク１５００（図１５Ａ）や、ネットワーク１５００に接続され得るネットワークの実質的な部分に関する情報を有するエンジンを識別する。したがって、テレネーム２０５０Ｖ７によって識別されたエンジンは、チケット１３０６（図１８Ａ）に規定されたトリップの目的地に向かうエージェント１５０Ａの経路の決定に、最も適したエンジンである。ファインダ２０５０（図２０Ｂ）のキーであるテレネームが、テレネーム１８１８と同一のオーソリティのものではない場合、ニル２０５０Ｋ７に組み合わされたテレネーム２０５０Ｖ７（図２０Ｂ）は、移動目的地を特定する。以下、具体的な例を示す。
小型のパーソナルコンピュータシステム内においてエンジン１３２Ａが実行され、エンジン１３２Ａが、１つのオーソリティの１以上のプレイスをインタープリートするものと想定する。さらに、エンジン１３２Ｚ（図１５Ａ）が、大型のマルチユーザメインフレームコンピュータシステム内において稼働し、このコンピュータシステムが多くの異なったオーソリティのプレイスをインタープリートし、このコンピュータシステム内を、多くの異なったオーソリティの多くのエージェントが移動するものと想定する。このような場合、エンジン１３２Ａのファインダは、非常に小さく、特定のオーソリティのプレイスへのエージェントの転送について、ほとんど情報をもたらさないであろう。しかし、エンジン１３２Ｚのファインダは、より広範で包括的であると思われるので、特定のオーソリティのプレイスに向かう、特定のエージェントのルーティングの際に、情報を提供できる可能性が高い。このような場合、エンジン１３２Ａのファインダは、トリップの目的地のプレイスのオーソリティに関する情報を、エンジン１３２Ａのファインダが含まない場合には、エンジン１３２Ｚを移動目的地として特定するテレネームをニルと組み合わせる。
ファインダ２０５０（図２０Ｂ）を用いても移動目的地を定めることができなかった場合、エンジンは、次のインプリメンテーション、又は、エンジンの供給者によって選定されたインプリメンテーションに従った他の処理を、インプリメントする。チケット１３０６（図１８Ａ）がサイテション１８１６を有する場合、エンジン１３２Ａ（図１５Ａ）は、（ｉ）エージェント１５０Ａの現在のプレイスにテレネームを生成し、後で説明するステップに従って、引用されたクラスのプレイスを見い出すように努めたり、（ｉｉ）テレネームを生成せずに、エクセプションを送出して、チケット１３０６（図１８Ａ）をあいまいであるとして拒絶したり、又は（ｉｉｉ）あいまいに指定されたトリップの目的地として指定されたプレイスのテレネームを生成させたりすることができる。同様に、チケット１３０６がサイテションを持たない場合、エンジン１３２Ａ（図１５Ａ）は、（ｉ）テレネームを生成せずに、エクセプションを送出して、チケット１３０６（図１８Ａ）をあいまいとして拒絶したり、又は（ｉｉ）あいまいに指定されたトリップの目的地として指定されたプレイスのテレネームを生成させたりすることができる。
図１５Ａ〜１５Ｅの例では、エンジン１３２Ａ（図１５Ａ）は、ファインダ２０５０（図２０Ｂ）と相談して、エージェント１５０Ａ（図１５Ａ）をエンジン１３２Ｂのプレイス２２０Ｂに到達させるために、エージェント１５０Ａをエンジン１３２Ｚに転送させるように判断する。したがって、エンジン１３２Ｚのエンジンプレイスは、エージェント１５０Ａの移動目的地であり、エージェント１５０Ａのエンジン１３２Ｚへの転送を規定するウェイオブジェクトが生成される。
このように、フローチャート１４１４（図１４Ｃ、１４Ｄ）に従った処理によって、チケット１３０６によって規定されたトリップの目的地に向かってエージェント１５０Ａを移動させるために、エージェント１５０Ａ（図１５Ａ）の転送を規定するウェイオブジェクトが生成される。
フローチャート１４１０（図１４Ｂ）のコンテキストにおいて前述したように、エージェント１５０Ａ（図１５Ａ）は、ステップ１４２２（図１４Ｂ）において、他のプレイスに配送される。図１５Ａ〜１５Ｅの実施例においては、エージェント１５０Ａは、エンジン１３２Ａ内のどのプレイスにも配送されないものとしてきた。しかし、記述を完全にするために、エンジン１３２Ａ内のプレイスへのエージェント１５０Ａの配送について説明する。エンジン１３２Ａ内のプレイスがチケット１３０６（図１３Ａ）によってトリップの目的地として規定されている場合に、エージェント１５０Ａ（図１５Ａ）は、エンジン１３２Ａ内のプレイスに配送される。あるプレイスへエージェントが配送されるということには、（ｉ）そのエージェントを配送するべき特定のプレイスを選定すること、（ｉｉ）そのエージェントをそのプレイスの占有者とすること、及び（ｉｉｉ）オペレーション”go”をそのエージェントについて継続させることが含まれる。ステップ（deliver agent）１４２２は、フローチャート１４２２（図１４Ｅ）によって示されている。
フローチャート１４２２（図１４Ｅ）による処理は、ステップ（for all current places）１４２２Ａから開始する。ステップ（for all current places）１４２２Ａ及びステップ（NEXT）１４２２Ｃは、現在処理を行っているエンジンであるエンジン１３２Ａ（図１５Ａ）によって実行中の各プレイスが、ステップ１４２２Ｂ、１４２２Ｄ、１４２２Ｅ（図１４Ｅ）に従って処理されるように、処理ループを形成する。後述するフローチャート１４２２のコンテキストにおいて、”サブジェクトプレイス”は、ステップ（for all current places）１４２２Ａ及びステップ（NEXT）１４２２Ｃによって形成される処理ループの繰り返しの際に、処理されるプレイスである。そして、この処理ループの繰り返しのために、すなわちエンジン１３２Ａ（図１５Ａ）が実行中の各プレイスのために、処理は、ステップ（for all current places）１４２２Ａから、テストステップ（place satisfies ticket?）１４２２Ｂに移行する。
現在処理を行っているエンジンは、テストステップ（place satisfies ticket?）１４２２Ｂにおいて、サブジェクトプレイスがチケット１３０６を満足するかを判断する。
サブジェクトプレイスがチケット１３０６を満足しない場合、（ｉ）処理は、テストステップ（place satisfies ticket?）１４２２Ｂ（図１４Ｅ）から、ステップ（NEXT）１４２２Ｃを経て、ステップ（for all current places）１４２２Ａに移行し、新たな処理ループの反復が開始するか、又は（ｉｉ）処理は、後述するように、終了ステップ１４２２Ｉに移行する。逆に、サブジェクトプレイスがチケット１３０６を満足する場合、処理は、テストステップ（place satisfies ticket?）１４２２Ｂからステップ（entering）１４２２Ｄに移行する。
後述するように、プレイスは、エージェント等のプロセスの進入を、オペレーション”entering”が正常に遂行されたときに許可し、オペレーション”entering”の遂行の際にエクセプションが送出されたときに拒絶する。オペレーション”entering”の遂行については後述する。
処理は、ステップ（entering）１４２２Ｄ（図１４Ｅ）からテストステップ（exception?）１４２２Ｅに移行し、このテストステップ１４２２Ｅにおいて、現在処理を行っているエンジンは、サブジェクトプレイスによるオペレーション”entering”の遂行で、エクセプションが送出されたかを判断する。サブジェクトプレイスによるオペレーション”entering”の遂行でエクセプションが送出され、それによりサブジェクトプレイスへのエージェント１５０Ａの進入を拒絶した場合、処理は、テストステップ１４２２Ｅからステップ（NEXT）１４２２Ｃを経てステップ（for all current places）１４２２Ａに移行し、ステップ（for all current places）１４２２Ａ及びステップ（NEXT）１４２２Ｃによって規定された処理ループの新たな反復が開始されか、以下に説明する終了ステップ１４２２Ｉに移行する。
その反対に、サブジェクトプレイスによってオペレーション”entering”が正常に遂行され、サブジェクトプレイスへの進入をエージェント１５０Ａ（図１５Ａ）に対して許可した場合、処理は、テストステップ１４２２Ｅ（図１４Ｅ）からステップ１４２２Ｆに移行する。エージェント１５０Ａ（図１５Ａ）は、ステップ１４２２Ｆにおいて、サブジェクトプレイスの占有者とされる。さらに、エージェント１５０Ａがサブジェクトプレイスの占有者であることを示すために、エージェント１５０Ａのプロパティがセットされる。
処理は、ステップ１４２２Ｆからステップ１４２２Ｇに移行する。このステップ１４２２Ｇにおいて、エージェント１５０Ａによって遂行されるオペレーション”go”が行われる。前述したように、エージェント１５０Ａは、図１５Ａ〜１５Ｅの例では、エンジン１３２Ａのプレイスには配送されない。したがって、エージェント１５０Ａのためのオペレーション”go”は、後述するように、エンジン１３２Ｂ（図１５Ｅ）のプレイス２２０Ｂに、エージェント１５０Ａ（図１５Ａ）が配送されるまでは完了しない。処理は、ステップ１４２２Ｇ（図１４Ｅ）から終了ステップ１４２２Ｈに移行し、この終了ステップ１４２２Ｈにおいて、フローチャート１４２２の処理、すなわちステップ（deliver agent）１４２２（図１４Ｂ）の処理が成功のうちに終了する。
ステップ（for all current places）１４２２Ａ（図１４Ｅ）及びステップ（NEXT）１４２２Ｃによって規定される処理ループに従って、エンジン１３２Ａ（図１５Ａ）中に存在するすべてのプレイスが処理されたが、処理が終了ステップ１４２２Ｈに到達していない場合、すなわち、エンジン１３２Ａ（図１５Ａ）内のどのプレイスも、チケット１３０６を満足せず、オペレーション”entering”が正常に行われてもエージェント１５０Ａの占有を許可しない場合、処理は、ステップ（for all current places）１４２２Ａ（図１４Ｅ）から終了ステップ１４２２Ｉに移行する。この終了ステップ１４２２Ｉにおいて、クラス”Destination Unavailable”のエクセプションが送出され、フローチャート１４２２の処理、すなわちステップ（deliver agnet）１４２２（図１４Ｂ）は終了する。このように、ステップ（deliver agent）１４２２では、トリップの目的地としてチケット１３０６（図１３Ａ）によって特定されたプレイスにエージェント１５０Ａ（図１５Ａ）が配送されるか、又は、クラス”Destination Unavailable”のエクセプションが送出される。
前述したように、図１５Ａ〜１５Ｅの実施例において、エンジン１３２Ｚは、移動目的地である。そこで、エージェント１５０Ａは、ステップ１４３２（図１４Ｂ）において、エンコードされたエージェント１５０Ａ−Ｅ（図１５Ｂ）を形成するように、エンコードされる。このエンコードされたエージェント１５０Ａ−Ｅは、ステップ（transfer out）１４３４（図１４Ｂ）において、エンジン１３２Ｚ（図１５Ｃ）に転送される。
転送途中のエンジンの視点から見たオペレーション”go”
前述したように、通信下部構造１３２Ａ−ＣＩから通信リンク１０２ＡＺを介して通信下部構造１３２Ｚ−ＣＩ（図１５Ｃ）に至るエンコードされたエージェント１５０Ａ−Ｅ（図１５Ｂ）の転送は、ステップ１４３４（図１４Ｂ）において開始される。エンコードされたエージェント１５０Ａ−Ｅ（図２１）には、プロパティ”name”、”address”、”data”を有する目的地１５０Ａ−Ｅ−Ｄが付加されている。ここで、プロパティ”name”、”address”、”data”は、それぞれテレネーム２１０２、テレアドレス２１０４、オクテットストリング２１０６である。テレネーム２１０２及びテレアドレス２１０４は、エンコードされたエージェント１５０Ａ−Ｅの移動目的地を規定する。目的地１５０Ａ−Ｅ−Ｄ（図２１）によって規定される移動目的地は、エンジン１３２Ｚ（図１５Ｂ）でもエンジン１３２Ｂでもよい。
本発明の一実施例では、ステップ１４３０（図１４Ｂ）において形成された目的地１５０Ａ−Ｅ−Ｄ（図２１）は、エンコードされたエージェント１５０Ａ−Ｅの移動目的地として、エンジン１３２Ｚ（図１５Ｂ）を規定する。このとき、通信下部構造１３２Ａ−ＣＩは、エンコードされたエージェント１５０Ａ−Ｅを１３２Ｚの通信下部構造１３２Ｚ−ＣＩに直接転送する。また、本発明の他の実施例では、目的地１５０Ａ−Ｅ−Ｄ（図２１）は、エンコードされたエージェント１５０Ａ−Ｅの移動目的地としてエンジン１３２Ｂ（図１５Ｂ）を規定する。後者の場合には、通信下部構造１３２Ａ−ＣＩは、目的地１５０Ａ−Ｅ−Ｄ（図２１）に従ってエンジン１３２Ｂに向かうエンコードされたエージェント１５０Ａ−Ｅを、通信下部構造１３２Ｚ−ＣＩ（図１５Ｂ）又はエンジン１３２Ｚを介して転送させるための情報及びロジックを収納する。
前述したどちらの実施例においても、エンジン１３２Ｚ（図１５Ｃ）がエンコードされたエージェント１５０Ａ−Ｅを受けると、エンジン１３２Ｚは、ステップ（route agent）１４１４（図１４Ｂ）において、フローチャート１４００−Ｉ（図１４Ｆ）に示すような、システムオペレーション”transferIn”を遂行する。エンジン１３２Ｚ（図１５Ｃ）は、ステップ１４０２−Ｉ（図１４Ｆ）において、目的地１５０Ａ−Ｅ−Ｄ（図２１）への転送を規定するウェイオブジェクトを生成させることによって、システムオペレーション”transferIn”の遂行を開始する。エンジン１３２Ｚは、ファインダ２０５０（図２０Ｂ）に関連して前述したように、エンジン１３２Ｚ（図１５Ｃ）内のファインダと相談することによって、ステップ１４０２−Ｉ（図１４Ｆ）において、ウェイオブジェクトを生成する。
処理は、ステップ１４０２−Ｉ（図１４Ｆ）からテストステップ（way out is here?）１４０４−Ｉに移行する。このテストステップ（way out is here?）１４０４−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、ステップ１４０２−Ｉ（図１４Ｆ）で生成されたウェイオブジェクトがエンジン１３２Ｚ（図１５Ｃ）への転送を規定しているかを判断する。生成されたウェイオブジェクトが、エンジン１３２Ｚ（図１５Ｃ）を移動目的地として特定していない場合、すなわち目的地１５０Ａ−Ｅ−Ｄ（図２１）がエンジン１３２Ｂ（図１５Ｂ）を移動目的地として規定している場合、処理は、テストステップ（way out is here?）１４０４−Ｉ（図１４Ｆ）からステップ（transfer out）１４０６−Ｉに移行する。このステップ１４０６−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、上述のステップ（transfer out）１４３４（図１４Ｂ）と同じように、目的地１５０Ａ−Ｅ−Ｄ（図２１）に従って、エンコードされたエージェント１５０Ａ−Ｅの転送を開始する。
処理は、ステップ（transfer out）１４０６−Ｉからステップ１４０８−Ｉに移行する。このステップ１４０８−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、ステップ１４３８（図１４Ｂ）について前述したように、継続中の転送のリストに、エンコードされたエージェント１５０Ａ−Ｅを加える。処理は、ステップ１４０８−Ｉ（図１４Ｆ）から終了ステップ１４１０−Ｉに移行し、システムオペレーション”transferIn”は正常に終了する。
ステップ１４０２−Ｉで生成されたウェイオブジェクトが、エンジン１３２Ｂ（図１５Ｃ）への転送を規定している場合、エンコードされたデータ１５０Ａ−Ｅは、生成されたウェイオブジェクトに従って転送される。生成されたウェイオブジェクトがエンジン１３２Ｚへの転送を規定している場合、処理は、テストステップ（way out is here?）１４０４−Ｉ（図１４Ｆ）からステップ１４１２−Ｉに移行する。このステップ１４１２−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、エンコードされたされたエージェント１５０Ａ−Ｅからチケット１３０６（図１３Ａ、１８Ａ）を抽出し、チケット１３０６のコピーを形成する。処理は、ステップ１４１２−Ｉからステップ１４１４−Ｉに移行し、ここでチケットのコピーのプロパティ”way”がクリア、すなわち０にされる。処理は、ステップ１４１４−Ｉからステップ（route agent）１４１６−Ｉに移行し、ここでエンジン１３２Ｚは、エンコードされたエージェント１５０Ａ−Ｅの転送を規定するウェイオブジェクトを生成する。ステップ１４１６−Ｉにおいて遂行されるプロセスは、フローチャート１４１４（図１４Ｃ、１４Ｄ）に示したプロセスと同一である。このステップ１４１６−Ｉのコンテキストでは、フローチャート１４１４の説明において使用されたチケット１３０６に代えて、ステップ１４１２−Ｉにおいて作成したチケットのコピーを用いて、フローチャート１４１４と同様に処理を行う。ステップ１４１６−Ｉが終了したら、処理は、テストステップ（way out is here?）１４１８−Ｉに移行する。
テストステップ（way out is here?）１４１８−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、ステップ１４１６−Ｉ（図１４Ｆ）において生成されたウェイオブジェクトが、エンジン１３２Ｚ（図１５Ｃ）への転送を規定しているかを判断する。生成されたウェイオブジェクトが、エンジン１３２Ｚへの転送を規定している場合、処理は、テストステップ（way out is here?）１４１８−Ｉ（図１４Ｆ）から、後述するステップ（decode agent）１４２８−Ｉに移行する。また、生成されたウェイオブジェクトが、エンジン１３２Ｚ（図１５Ｃ）への転送を規定していない場合、処理は、テストステップ（way out is here?）１４１８−Ｉ（図１４Ｆ）からステップ（form destination）１４２０−Ｉに移行する。図１５Ａ〜１５Ｆの実施例において、エンコードされたエージェント１５０Ａ−Ｅから注出されコピーされたチケット１３０６（図１３Ａ）は、エンジン１３２Ｂ（図１５Ｃ）のプレイス２２０Ｂへのトリップを規定する。したがって、処理は、ステップ（form destination）１４２０−Ｉに移行する。
ステップ（form destination）１４２０−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、前述のステップ（form destination）１４３０（図１４Ｂ）と同じように、目的地１５０Ａ−Ｅ−Ｄ（図２１）を形成する。処理は、ステップ（form destination）１４２０−Ｉ（図１４Ｆ）からステップ（transfer out）１４２２−Ｉ移行する。このステップ１４２２−Ｉにおいて、エンコードされたエージェント１５０Ａ−Ｅ（図１５Ｃ）は、ステップ（transfer out）１４０６−Ｉ（図１４Ｆ）について前述したように、目的地１５０Ａ−Ｅ−Ｄ（図２１）に従って転送される。
処理は、ステップ（transfer out）１４２２−Ｉからステップ１４２４−Ｉに移行する。このステップ１４２４−Ｉにおいて、エンジン１３２Ｚ（図１５Ｃ）は、ステップ１４３８（図１４Ｂ）について前述したように、継続中の転送のリストに、エンコードされたエージェント１５０Ａ−Ｅを加える。処理は、１４２４−Ｉ（図１４Ｆ）から終了ステップ１４２６−Ｉに移行し、ここでシステムオペレーション”transferIn”は正常に終了する。図１５Ａ〜１５Ｅの実施例において、エンコードされたエージェント１５０Ａ−Ｅは、前述したエンジン１３２Ａから１３２Ｚへのエンコードされたエージェント１５０Ａ−Ｅの転送と同じように、エンジン１３２Ｚからエンジン１３２Ｂ（図１５Ｄ）に転送される。
目的地のエンジンの視点から見たオペレーション”go”
エンジン１３２Ｂが、通信下部構造１３２Ｂ−ＣＩ（図１５Ｄ）に、エンコードされたエージェント１５０Ａ−Ｅを受け取ったとき、エンジン１３２Ｂは、エンジン１３２Ｚについて前述したのと同様に、システムオペレーション”transferIn”を遂行する。エンジン１３２Ｂは、ステップ１４０２−Ｉ（図１４Ｆ）において、目的地１５０Ａ−Ｅ−Ｄ（図２１）に従って、転送を規定するウェイオブジェクトを生成させる。そして、テストステップ（way out is here?）１４０４−Ｉ（図１４Ｆ）において、生成させたウェイオブジェクトが、エンジン１３２Ｂ（図１５Ｄ）への転送を規定しているかを判断する。エンジン１３２Ｂ（図１５Ｄ）は、チケット１３０６（図１３Ａ）によって規定されたトリップの目的地であるプレイス２２０Ｂを処理している。したがって、生成されたウェイオブジェクトは、エンジン１３２Ｂ（図１５Ｄ）への転送を規定している。そこで、エンジン１３２Ｂによる処理は、テストステップ（way out is here?）１４０４−Ｉ（図１４Ｆ）からステップ１４１２−Ｉに移行する。
ステップ１４１２−Ｉ、１４１４−Ｉ、１４１６−Ｉにおいて、エンジン１３２Ｂは、エンコードされたエージェント１５０Ａ−Ｅからチケット１３０６（図１３Ａ）を抽出してコピーし、チケットのコピーのプロパティ”way”をクリアする。そして、エンジン１３２Ｂは、このチケットのコピーをチケット１３０６の代りに使用して、前述のフローチャート１４１４（図１４Ｃ、図１４Ｄ）に従って、エンコードされたエージェント１５０Ａ−Ｅのルーティングを行う。テストステップ（way out is here?）１４１８−Ｉ（図１４Ｆ）において、エンジン１３２Ｂ（図１５Ｄ）は、ステップ（route agent）１４１６−Ｉ（図１４Ｆ）において生成させたウェイオブジェクトが、エンジン１３２Ｂ（図１５Ｄ）への転送を規定しているかを判断する。エンジン１３２Ｂ（図１５Ｄ）は、プレイス２２０Ｂの処理を行うので、生成されたウェイオブジェクトによって規定された目的地は、エンジン１３２Ｂ（図１５Ｄ）である。したがって、エンジン１３２Ｂによる処理は、テストステップ（way out is here?）１４１８−Ｉ（図１４Ｆ）からステップ（decode agent）１４２８−Ｉに移行する。
このステップ（decode agent）１４２８−Ｉにおいて、エンジン１３２Ｂは、アペンディックスＢに説明したエンコード則の逆を適用することにより、通信下部構造１３２Ｂ−ＣＩ中のエンコードされたエージェント１５０Ａ−Ｅ（図１５Ｄ）からエージェント１５０Ａをデコードし、データ部１３２Ｂ−Ｄ（図１５Ｅ）にエージェント１５０Ａを格納する。ネットワーク１５００は異種のコンピュータから構成されることがあるため、エンジン１３２Ａ（図１５Ａ）内のエージェント１５０Ａの形式は、エンジン１３２Ｂ（図１５Ｅ）内のエージェント１５０Ａを表わすには不適当であることが有り得る。エンジン１３２Ａとエンジン１３２Ｂとの間にエージェント１５０Ａを転送させる際に、標準形式のエンコードされたエージェント１５０Ａ−Ｅを使用するのであれば、エンジン１３２Ｂは、エージェント１５０Ａを転送させていないときには、エンジン１３２Ｂにとって最も好都合な任意の形式でエージェント１５０Ａを表現することができる。
エンジン１３２Ｂによる処理は、ステップ（decode agent）１４２８−Ｉ（図１４Ｆ）からステップ（deliver agent）１４３０−Ｉに移行する。ステップ（deliver agent）１４３０−Ｉにおいて、エージェント１５０Ａは、ステップ（deliver agent）１４２２（図１４Ｂ）について前述したように、フローチャート１４２２（図１４Ｅ）に従って配送される。ステップ（deliver agent）１４３０−Ｉのコンテキストにおいて、チケットは、今や実際のチケット１３０６（図１３Ａ）であり、仮定されたチケットではない。ステップ（deliver agent）１４３０−Ｉ（図１４Ｆ）において、エージェント１５０Ａ（図１５Ｅ）は、プレイス２２０Ｂの占有が許可されており、エージェント１５０Ａによって遂行されるオペレーション”go”は、正常に終了する。
そして、処理は、ステップ（deliver agent）１４３０−Ｉ（図１４Ｆ）から終了ステップ１４２６−Ｉに移行する。この終了ステップ１４２６−Ｉにおいて、フローチャート１４００−Ｉ（図１４Ｆ）の処理、すなわちエンジン１３２Ｂによるシステムオペレーション”transferIn”の遂行が成功のうちに終了する。
フローチャート１４００−Ｉ（図１４Ｆ）の各ステップを遂行する間にエクセプションが送出されたときは、フローチャート１４５０−Ｉ（図１４Ｇ）のステップが実行される。ステップ１４５２−Ｉ（図１４Ｇ）において、エージェント１５０Ａは、エンコードされたエージェント１５０Ａ−Ｅ（図１５Ｄ）からデコードされる。エージェント１５０Ａは、エンジン１３２Ｂ（図１５Ｄ）に既に転送されているので、エージェント１５０Ａは、エンジン１３２Ａに関連して前述したように、継続中の転送のリスト中には保持されていない。したがって、エージェント１５０Ａの実行を継続するためには、エージェント１５０Ａをデコードすることが必要になる。処理は、ステップ１４５２−Ｉ（図１４Ｇ）からステップ（deliver agent to purgatory）１４５４−Ｉに移行する。このステップ１４５４−Ｉにおいて、エージェント１５０Ａは、ステップ１４２６（図１４Ｂ）に関連して前述したように、パーガトリに配送される。そして、処理は、ステップ（deliver agent to purgatory）１４５４−Ｉ（図１４Ｇ）から終了ステップ１４５６−Ｉに移行し、ここでフローチャート１４５０−Ｉによる処理が終了する。パーガトリを占有しているエージェント１５０Ａは、ステップ（deliver agent）１４５４−Ｉの結果として、エクセプションを送出する。その結果、エージェント１５０Ａによって遂行されたオペレーション”go”は失敗となる。
したがって、エージェント１５０Ａ（図１５Ａ〜１５Ｅ）は、オペレーション”go”を遂行することによって、エージェント１５０Ａと、エージェント１５０Ａによって所有されるオブジェクト、例えばオブジェクト１４０Ａ、１４０Ｂとのネットワーク１５００を介しての転送を指示する。オペレーション”go”の遂行後は、エージェント１５０Ａについて、オペレーション”go”の次のインストラクションのインタープリートが続けられる。
図１３Ｂは、エージェント１５０Ａによるオペレーション”go”の遂行直後におけるエージェント１５０Ａの内部状態及び実行状態の一部を示している。オペレーション”go”の遂行の結果であるチケットスタブ１３０８は、スタック１３０４のトップにある。プレイス２２０Ｂは、エージェント１５０Ａが占有するプレイスを特定するエージェント１５０Ａのプロパティであり、これにより、エージェント１５０Ａがプレイス２２０Ｂを占有することを指示する。
進入と及び退出：オペレーション”entering”及びオペレーション”exiting”
前述したように、プレイス２２０Ｂは、オペレーション”entering”の遂行によって、エージェント１５０Ａの進入を許可したり拒絶したりする。前述のフローチャート１４００（図１４Ａ、１４Ｂ）で表される本実施例では、プレイス２２０Ｂがオペレーション”entering”を遂行するように要求する前に、エンコードされたエージェント１５０Ａ−Ｅ（図１５Ａ〜１５Ｅ）をエンジン１３２Ｂに転送する。本発明の他の実施例では、エージェント１５０Ａが、通信リンク１０２ＡＺを介して通信下部構造１３２Ｚ−ＣＩへ転送され更に通信リンク１０２ＺＢを介してエンジン１３２Ｂに転送される前に、プレイス２２０Ｂは、オペレーション”entering”を遂行するように指示される。プレイス２２０Ｂは、オペレーション”entering”を遂行することによって、プレイス２２０Ｂを占有する許可をエージェント１５０Ａに与えたり拒絶したりする。しかし、本発明は、待ち時間の長い広域ネットワークにおいても使用されることを想定されている。
”待ち時間”（latency）という用語は、この明細書では、本発明の技術分野で通常使用されているように、情報の送出者が情報を最初に送出した時と、情報の受領者が情報を最初に受領した時との間の時間を表すものとして用いられている。待ち時間の長いネットワークの場合、短いメッセージでも、目的地に到達するまでに、多くの時間を必要とすることがある。このような場合、プレイス２２０Ｂ（図１５Ａ）がオペレーション”entering”の遂行を要求してリザルトを待つということには、オペレーション”entering”を遂行するために、この要求を、通信リンク１０２ＡＺを介して通信下部構造１３２Ｚ−ＣＩへ送り、さらに通信リンク１０２ＺＢを介してエンジン１３２Ｂへ送ることによって、プレイス２２０Ｂへ送出するということと、この逆の経路を経て返される、オペレーション”entering”によって生じたリザルトを待つということとが含まれる。
エンジン１３２Ｂにエージェント１５０Ａを転送する前に、このような動作を行うと、エンジン１３２Ａ、１３２Ｂの間の待ち時間のほぼ２倍の時間だけ、エージェント１５０Ａをエンジン１３２Ｂに転送する時間が遅延される。したがって、本発明の性能を向上させるため、エージェント１５０Ａをエンジン１３２Ｂに転送するまで、プレイス２２０Ｂによるオペレーション”entering”の遂行を遅延させる。
オペレーション”entering”については、オペレーション”go”の結果、エージェント１５０Ａ（図１５Ｅ）が、プレイス２２０Ｂに進入するというコンテキストの中で既に説明したが、オペレーション”entering”は、プレイス２２０Ｂ内でのプロセスの生成により、プロセス（エージェント又はプレイス）がプレイス２２０Ｂに進入したために、遂行されることもある。プロセスの生成についてはアペンディクスＡに詳細に説明されている。
図２２Ａは、オペレーション”entering”の遂行直前における、エージェント１５０Ａの実行状態を表している。プロセス、例えばエージェント１５０Ａの実行状態を以下に詳細に説明する。オペレーション”entering”は、エンジン１３２Ｂの要求によって遂行され、オペレーション”entering”の遂行は、エージェント１５０Ａ（図１５Ｅ）の実行状態中に記録される。エージェント１５０Ａ又はプレイス２２０Ｂ、好ましくはプレイス２２０Ｂの許可は、オペレーション”entering”の遂行によって得られる。
フレーム２２００は、エージェント１５０Ａの実行状態の一部分であり、プレイス２２０Ｂによって遂行されるオペレーション”entering”の動的な状態を記録する。フレーム２２００は、現在のスタックであるスタック２２０２を含む。スタック２２０２は、トップから順に、コンタクト２２０８、パーミット２２０６及びチケット２２０４を有する。
コンタクト２２０８は、プレイス２２０Ｂに進入しようとしているプロセスとして、エージェント１５０Ａを特定する。以下及びアペンディクスＡに詳細に説明するように、コンタクト２２０８は、プロパティとして、プロパティ”subjectName”及びプロパティ”subject”を有する。オペレーション”entering”において、通常はエージェント１５０Ａのリファレンスである、コンタクト２２０８のプロパティ”subject”は、ニル（０）である。したがって、プレイス２２０Ｂがエージェント１５０Ａに進入を許可する前は、プレイス２２０Ｂにはエージェント１５０Ａに対するリファレンスが与えられない。コンタクト２２０８のプロパティ”subjectName”は、プレイス２２０Ｂへの進入を要求するエージェントとして、エージェント１５０Ａを特定するテレネームである。
パーミット２２０６は、プレイス２２０Ｂに入ろうとしているエージェントの提案されたローカルパーミットである。パーミット２２０６は、”byProtectedRef”をパスしており、したがって、オペレーション”entering”の遂行によっては変更されない。アーギュメント及びリザルトのパス、特に保護されたリファレンス（例えば”byProtectedRef”）のパスについては、後で詳細に説明する。エージェントのローカルパーミットは、与えられたプレイスにある間、エージェントの能力を規定する。例えば、エージェント１５０Ａは、能力及びアローワンスのサブセットを規定するパーミット２２０６を、プレイス２２０Ｂに供給することによって、プレイス２２０Ｂにある間に、そのネイティブパーミットの能力及びアローワンスのサブセットにそれ自身を制限する。
チケット２２０４は、”byProtectedRef”をパスする。また、チケット２２０４は、レスポンディングプレイス２２０Ｂに移動するために使用されるチケットと同じであり、エージェント１５０Ａが別のプレイスから入ろうとしていることを、レスポンディングプレイス２２０Ｂに知らせる。チケット２２０４がニル（０）である場合、プロセスは、プレイス２２０Ｂ内でのプロセスの生成によって、レスポンディングプレイス２２０００Ｂへの進入を試みる。クラス”Place”によって規定された、プレイスを容認するかを判断する方法、すなわちオペレーション”entering”をインプリメントする方法は、常に、クラス”Occupancy Denied”のメンバであるエクセプションを送出し、レスポンディングプレイスへのプロセスの進入を拒絶する。しかし、本発明のユーザは、特定の条件のもとにプロセスの進入を許可する、クラス”Place”のサブクラスを規定する。これは、エージェントがあるプレイスから別のプレイスへ移動するために、実際上必要なことである。
プレイスによって実行されるオペレーション”entering”のインプリメンテーションは、このプレイスがインスタンスであるクラスによって提供又は承継される特別な方法によって規定されているので、各プレイスは、ネットワーク中の他のプレイスとは異なった方法で、オペレーション”entering”をインプリメントすることができる。フローチャート２２６０（図２２Ｃ）は、オペレーション”entering”のインプリメンテーションの一例を示している。したがって、これらの各ステップは、ステップ１４２２（図１４Ｂ）でオペレーション”entering”を遂行の際に、プレイス２２０Ｂによって行われる。
コンタクト２２０８（図２２Ａ）、パーミット２２０６及びチケット２２０４は、それぞれステップ２２６２（図２２Ｃ）、２２６４、２２６６において、スタック２２０２からポップされる。処理は、次にテストステップ２２７２に移行し、ここでチケット２２０４がニル（０）と比較される。チケット２２０４がニル（０）の場合、エージェント１５０Ａは局地的に生成されており、処理は終了ステップ２２７４に移行し、ここでオペレーション”entering”は成功のうち終了する。しかし、上述の説明及び後述する説明から明らかなように、プレイスは、ある状態のもとではオペレーション”entering”が失敗し、プレイス内のプロセスの生成が阻止されるように、規定することができる。
チケット２２０４がニル（０）でない場合、処理は、テストステップ２２７２からテストステップ２２７６に移行する。テストステップ２２７６において、パーミット２２０６のプロパティ”charges”が、パーミット２２０６のアトリビュート”charges”を問い合わせることによって生成され、パーミット２２０６のプロパティ”charges”が１０００と比較される。パーミット２２０６のプロパティ”charges”が１０００より多い場合、処理は、テストステップ２２７６から終了ステップ２２７８に移行し、そこでクラス”Occupancy Denid”のエクセプションが送出され、レスポンディングプレイスへのエージェントの進入が拒絶される。パーミット２２０６のプロパティ”charges”が１０００に等しいかそれよりも小さい場合、処理は、テストステップ２２７６から終了ステップ２２７４に移行し、そこでオペレーション”entering”は成功のうちに終了し、エージェントはレスポンディングプレイスに進入することが許可される。なお、図２２Ｃの実施例において、比較のために用いた１０００という数値は、説明のために任意に選ばれたものに過ぎず、当然のことながら１０００以外の数値であってもよい。
フローチャート２２６０の方法は、リソースが限定されているパーソナルコンピュータシステム内おいて動作するエンジンによって処理されるプレイスのための、オペレーション”entering”の適切なインプリメンテーションの例を示している。上述したように、又アペンディクスＡに説明するように、パーミットのプロパティ”charge”は、処理の許可である。したがって、提案されたローカルパーミットにおいて、大量の計算及びリソースが必要であることを大きなチャージアロワンス（charges allowance）によって指示するエージェントは、フローチャート２２６０に従って、進入が拒絶される。したがって、小型のパーソナルコンピュータシステムのオーナーは、そのパーソナルコンピュータシステムを、ローカルに作りだされたプロセスや、他の場所で作りだされたエージェントによる比較的廉価な訪問に限定することができる。
プレイス２２０Ｂ（図２２Ｂ）によるオペレーション”entering”の遂行直後は、オペレーション”entering”はいかなる結果も生じていないので、スタック２２０２は空である。
前述したように、プレイスは、オペレーション”exiting”の遂行によって、プロセスの退出、すなわち占有の終了をノートする。フローチャート１４００（図１４Ａ、１４Ｂ）のコンテキストにおいて、オペレーション”go”の結果、エージェント、すなわちエージェント１５０Ａがプレイス２２０Ａを退出する。そして、このエージェント１５０Ａのプレイス２２０Ａからの退出の結果として、プレイス２２０Ａは、オペレーション”exiting”を実行する。オペレーション”exiting”は、プロセス（エージェント又はエージェント）が破壊されて、プレイス２２０Ａを占有しなくなったときにも、プロセス２２０Ａによって遂行される。プロセスの破壊はアペンディクスＡにより詳細に説明されている。クラス”Place”によって規定されたオペレーション”exiting”のインタフェースは、図２３Ａ、２３Ｂに示されている。
オペレーション”exiting”は、エンジン１３２Ａ（図１５Ａ）の要求によって遂行されるので、オペレーション”exiting”の動的状態を記録しているフレーム２３００（図２３Ａ）は、プレイス２２０Ａ（図１５Ａ）の実行状態の一部でもなければ、エージェント１５０Ａの実行状態の一部でもない。実際、プレイス２２０Ａがオペレーション”exiting”を遂行している時点においては、エージェント１５０Ａは、もはやプレイス２２０Ａを占有していない。エンジン１３２Ａは、”エンジンプロセス”の一部として、新しい実行状態を作り出す。エンジンプロセスは、オペレーション”exiting”又はオペレーション”parting”の遂行のためにエンジンによって作りだされたプロセスである。オペレーション”parting”は、以下及びアペンディクスＡに詳細に説明されている。
図２３Ａは、オペレーション”exiting”の遂行の直前におけるフレーム２３００を示している。フレーム２３００は現在のスタックである、スタック２３０２を有している。スタック２３０２は、オペレーション”exiting”のアーギュメントとして、トップから順に、コンタクト２３０８、パーミット２３０６及びチケット２３０４を備えている。
コンタクト２３０８は、プレイス２２０Ａからを退出するプロセスとして、エージェント１５０Ａ（図１５Ａ）を特定する。以下及びアペンディクスに詳細に説明するように、コンタクト２３０８は、プロパティとしてプロパティ”subjectName”及びプロパティ”subject”を有している。コンタクト２３０８（図２３Ａ）のプロパティ”subjectName”は、エージェント１５０Ａ（図１５Ａ）を特定する。また、通常エージェント１５０Ａ（図１５Ａ）に対するリファレンスであるコンタクト２３０８（図２３Ａ）のプロパティ”subject”は、オペレーション”exiting”によりボイドされる。したがって、プレイス２２０Ａには、退出するエージェント１５０Ａに対するリファレンスは残されない。
パーミット２３０６（図２３Ａ）は、レスポンディングプレイス２２０Ａ（図１５Ａ）から退出しているプロセス、すなわちエージェント１５０Ａの現在のローカルパーミットである。プロセスのローカルパーミットは、プレイスを占有している間のプロセスの能力を制限する。ローカルパーミットについては、アペンディクスＡに詳細に説明されている。パーミット２３０６（図２３Ａ）は、”byProtectedRef”をパスしているので、オペレーション”exiting”の遂行において、プレイス２２０Ａ（図１５Ａ）によって変更されることはない。
退出するプロセスのローカルパーミット、すなわちパーミット２３０６（図２３Ａ）は、プレイス２２０Ａを占有していた間、退出するプロセスが使用していたリソースのタイプ及び量を定めるために、レスポンディングプレイス２２０Ａ（図１５Ａ）を実行しているエンジンによって使用される。そのため、退出するプロセスのオーソリティは、それに含まれるリソース及びプレイス２２０Ａについて使用するために、ビル（BILL）されることができる。使用されたリソースのタイプ及び量は、パーミット２３０６（図２３Ａ）と、退出するプロセスに進入を許可したときに、オペレーション”entering”でアーギュメントとして使用されたパーミットとを比較することによって、判断される。オペレーション”entering”については、既に詳細に説明されており、また、アペンディクスＡにも詳細に説明されている。
例えば、プレイス２２０Ａ（図１５Ａ）は、オペレーション”entering”を遂行する際に、オペレーション”exiting”の遂行の際に使用されたパーミット２３０６（図２３Ａ）と後で比較するために、提案されたローカルパーミット、例えばパーミット２２０６（図２２Ａ）を格納しておく。以下及びアペンディクスＡに詳細に説明するように、コンタクト、例えばコンタクト２３０８は、プロパティ”subjectNotes”を有する。実施例では、例えば、プレイス２２０Ａは、コンタクト２２０８（図２２Ａ）のプロパティ”subjectNotes”内に、オペレーション”entering”を遂行する際のパーミット２２０６を格納している。そして、オペレーション”exiting”を遂行する際に、プレイス２２０Ａ（図１５Ａ）は、パーミット２２０６（図２２Ａ）とパーミット２３０６（図２３Ａ）とを比較することによって、プレイス２２０Ａ（図１５Ａ）を占有している間にエージェント１５０Ａが消費するリソースの量を判断する。ここで、パーミット２２０６（図２２Ａ）は、コンタクト２２０８のプロパティ”subjectNotes”内に格納されており、パーミット２３０６（図２３Ａ）は、オペレーション”exiting”の遂行の際に消費される。
チケット２３０４（図２３Ａ）は、”byProtectedRef”をパスしており、チケット１３０６（図１３Ａ）に等しい。このチケットは、エージェント１５０Ａ（図１５Ａ）によって、トリップの目的地を特定するために用いられるとともに、オペレーション”go”の遂行によりエージェント１５０Ａがレスポンディングプレイス２２０Ａを退出しようとしていることを、レスポンディングプレイス２２０Ａに通知するために用いられる。チケット２３０４（図２３Ａ）がニル（０）である場合、エージェント１５０Ａ（図１５Ａ）は、エージェント１５０Ａの破壊により、レスポンディングプレイス２２０Ａを退出する。
フレーム２３００（図２３Ｂ）は、プレイス２２０Ａ（図１５Ａ）によるオペレーション”exiting”の遂行の直後の状態を示している。オペレーション”exiting”は結果を返さないので、スタック２３０２（図２３Ｂ）は、空（エンプティ）である。フレーム２３００（図２３Ｂ）は、プレイス２２０Ａ（図１５Ａ）やエージェント１５０Ａの実行状態の一部分ではなく、エンジンプロセスの実行状態の一部である。したがって、オペレーション”exiting”の遂行によって送出されたいかなるエクセプションも、プレイス２２０Ａやエージェント１５０Ａに影響を与えることはない。オペレーション”exiting”を遂行する際に、プレイス２２０Ａは、エージェント１５０Ａの退出及びエージェント１５０Ａによって所有されるオブジェクト１４０Ａ、１４０Ｂの退出をノート（検知）する。
オブジェクトインタチェンジ
１つのプレイスから別のプレイスへエージェントを転送するために必要とされる時間は、エージェントに含まれるオブジェクトの転送を、目的地のプレイス内に同等のオブジェクトが存在していないオブジェクトのみに制限することによって、実質的に減少する。エンジン１３２Ａからエンジン１３２Ｚに移動するエージェント１５０Ａが、エージェント１５０Ａと、エージェント１５０Ａの所有するオブジェクトとが、メンバとなっているクラスを表すクラスオブジェクトを含むため、このようなオブジェクトの転送の制限は特に重要である。クラスオブジェクトは通常は、非常に大きく、そして１つのエージェント及びそのエージェントが所有するオブジェクトがメンバとなっているクラスは、通常は非常に多数あるので、これらの全てのクラスオブジェクトを転送することは実用的でない。したがって、エンジン１３２Ａからエンジン１３２Ｂ（図１５Ａ）にエージェント１５０Ａを転送する際に、エンジン１３２Ｂ内のクラスオブジェクトによって表されないクラスを表すクラスオブジェクトのみを、エージェント１５０Ａと共にエンジン１３２Ｂに転送することが望ましい。
ネットワーク１５００（図１５Ａ〜１５Ｅ）内の多くのプレイスにおいて同等のオブジェクトを持つと思われるオブジェクトは、ミックスインクラス”Interchanged”のメンバであり、プロパティ”digest”を有する。ミックスインクラス”Interchanged”のメンバは、”インタチェンジドオブジェクト”と呼ばれる。インタチェンジドオブジェクトのプロパティ”digest”から成るオブジェクトは、インタチェンジドオブジェクトの”ダイジェスト”とも呼ばれる。
インタチェンジドオブジェクトは、エンジン、例えばエンジン１３２Ａ又はエンジン１３２Ｂ（図１５Ａ）によって、インタチェンジドオブジェクトのダイジェストと同じようなダイジェストを持つ、インタチェンジドオブジェクトのクラスの他のインスタンスと同等であると見なされる。そのダイジェストは、全ての他のものから第１のインタチェンジドオブジェクトを区別する目的に適したオブジェクトである。例えば、インタチェンジドオブジェクトの標準的な２進表示の数学的ハッシュは、インタチェンジドオブジェクトの多くのクラスに適している。クラスオブジェクト、すなわちクラス”class”のオブジェクトは、以下及びアペンディクスＡに詳細に説明するように、定義済みクラス及びユーザ定義クラスを定義し、コンピュータネットワーク１５００内のエンジン１３２Ａ間において変動しない。したがって、クラスオブジェトクトは、インタチェンジドオブジェクトである。
転送するデータの量を減少するための、すなわち、エージェント及びエージェントが所有するオブジェクトを、プレイスから次のプレイスへ転送する際に必要な時間を減少させるためのダイジェストの使用について、フローチャート２４００、２４５０（図２４Ａ及び図２４Ｂ）に示す。
フローチャート２４００（図２４Ａ）は、インタチェンジドオブジェクトを考慮したときの、エージェント１５０Ａ（図１５Ａ）及びエージェント１５０Ａが所有するオブジェクトを、転送元のエンジン１３２Ａから目的地のエンジン１３２Ｂに転送するプロセスを表している。あるエージェントは、そのエージェントによって所有される全てのオブジェクトと、そのエージェントがメンバとなっている各クラスと、そのエージェントが所有するオブジェクトがメンバとなっている各クラスとを”包含”する。前述したように、エージェント１５０Ａ及びエージェント１５０Ａに包含される全てのオブジェクトは、シッピングボックスにパッケージされ、エンコードされ、エンジン１３２Ｂに転送される。エージェント１５０Ａ及びエージェント１５０Ａに包含されるオブジェクトをパッケージにする場合、エンジン１３２Ａは、ステップ２４０２（図２４Ａ）において、エージェント１５０Ａが包含する全てのオブジェクトを集める。処理は、ステップ２４０２からステップ（FOR EACH OBJECT）２４０４に移行する。このステップ２４０４は、ステップ（NEXT）２４１２とともに、ステップ２４０２において集められた各オブジェクトを処理する処理ループを形成する。処理は、ステップ（FOR EACH OBJECT）２４０４からテストステップ２４０６に移行し、このステップ２４０６において、エージェント１５０Ａが包含する各オブジェクトのクラスのメンバ構成をチェックし、各オブジェクトがダイジェストを持つかを判断する。
前述したように、またアペンディクスＡに一層詳細に示すように、ミックスインクラス”Interchanged”のメンバは、ダイジェストを含むことができる。したがって、オブジェクトがダイジェストを有する場合、そのオブジェクトはインタチェンジドオブジェクトである。インタチェンジされたオブジェクトがダイジェストを持たない場合、すなわちインタチェンジされたオブジェクトのアトリビュート”digest”がニル（０）である場合、そのインタチェンジされたオブジェクトは、インタチェンジされていないオブジェクトとして取り扱われる。
オブジェクトがダイジェストを持たない場合、そのオブジェクトがインタチェンジされたオブジェクトであっても、処理は、テストステップ２４０６からステップ２４１０に移行する。このステップ２４１０において、オブジェクトが、アペンディクスＢのエンコード則にしたがってエンコードされ、シッピングボックスに収納される。また、オブジェクトがダイジェストを有する場合、処理はステップ２４０６からステップ２４０８に移行する。このステップ２４０８において、そのオブジェクトのダイジェストと、そのオブジェクトが１つのインスタンスであるそのクラスのサイテションとが、アペンディクスＢのエンコード則に従ってエンコードされ、パーツボックスに収納され、そのパーツボックスが順次、シッピングボックスに収納される。
処理は、ステップ２４０８又はステップ２４１０から、ステップ（NEXT）２４１２に移行し、このステップ２４１２から、ステップ（FOR EACH OBJECT）２４０４に移行する。エンジン１３２Ａは、ステップ（FOR EACH OBJECT）２４０４とステップ（NEXT）２４１２で形成される処理ループにおいて、エージェント１５０Ａに包含される各オブジェクトについて、ステップ２４０６、２４０８、２４１０のプロセスを繰り返す。ステップ（FOR EACH OBJECT）２４０４とステップ（NEXT）２４１２とで形成される処理ループに従って、ステップ２４０２において集められた全てのオブジェクトが処理されたら、処理は、ステップ（FOR EACH OBJECT）２４０４からステップ（transfer out encoded agent）２４１４に移行する。
ステップ（transfer out encoded agent）２４１４において、前述したように、転送元のエンジン１３２Ａによって、シッピングボックスはエンコードされ、目的地のエンジン１３２Ｂに転送される。したがって、目的地のエンジンに転送されるエンコードされたエージェントは、ダイジェストを持たないエージェントが包含する全てのオブジェクトと、相互変換可能でダイジェストを有するエージェントが含有する全てのオブジェクトのダイジェストとを包含している。ステップ（transfer out encoded agent）２４１４は、ネットワークを介したエンジン間の相互作用を示すため、２重線で囲まれたボックスによって表されている。エンジン間のバイナリデータのこのような交換は、上述した通りであり、またアペンディクスＣにも記載されている。
フローチャート２４５０（図２４Ｂ）は、目的地のエンジン１３２Ｂの観点から見たときの、エンコードされたエージェント１５０Ａの転送を示している。目的地のエンジン１３２Ｂは、ステップ（transfer in encoded agent）２４５２において、転送元のエンジン１３２Ａからバイナリデータとしてエンコードされたエージェントを受け取る。図１５Ａ〜１５Ｅのコンテキストにおいて前述したように、エンコードされたエージェントは、エンジン１３２Ａからエンジン１３２Ｂに至る過程において、１以上の中間のエンジン、例えばエンジン１３２Ｚを通過することができる。
処理は、ステップ（transfer in encoded agent）２４５２からステップ２４５４に移行する。このステップ２４５４において、エンコードされていたエージェントはデコードされ、エージェントが包含するエージェントオブジェクトを中身とするシッピングボックスが再構成される。ダイジェストを持たず、エージェントによって包含される各オブジェクトと、ダイジェストを有するエージェントによって包含されるインタチェンジドオブジェクトのダイジェストとは、ステップ（FOR EACH OBJECT）２４５６及びステップ（NEXT）２４６２によって形成される処理ループに従って、目的地のエンジン１３２Ｂによって処理される。この処理ループの繰り返しにより、ステップ２４５４においてデコードされたオブジェクトが１つずつ処理される。
処理は、ステップ（FOR EACH OBJECT）２４５６からテストステップ（digest?）２４６４に移行する。このテストステップ２４６４において、目的地のエンジン１３２Ｂは、オブジェクトがダイジェストであるかを判断する。オブジェクトがダイジェストでない場合、処理は、テストステップ２４６４から直接、ステップ（NEXT）２４６２に移行する。一方、オブジェクトがダイジェストである場合、そのオブジェクトは、”サブジェクトダイジェスト”と呼ばれ、処理は、テストステップ２４６４からテストステップ２４６６（object here?）に移行する。テストステップ２４６６において、目的地のエンジン１３２Ｂは、サブジェクトダイジェストがエンジン１３２Ｂに存在するインタチェンジドオブジェクトと同等であるかを判断する。この判断については、後で詳細に説明する。
同等のダイジェストを有するインタチェンジドオブジェクトが、ステップ２４６６において見出された場合、処理は、テストステップ２４６６からステップ（substitute object for digest）２４６８に移行する。このステップ２４６８において、ステップ２４５４でサブジェクトダイジェストとして表されるインタチェンジドオブジェクトにデコードされたオブジェクト内の全てのリファレンスを、テストステップ２４６６で見出されたインタチェンジドオブジェクトに対するリファレンスに置き換えることによって、サブジェクトダイジェストは、インタチェンジドオブジェクトに置き換えられる。そして、処理は、ステップ２４６８からステップ２４６２に移行する。
一方、同等のダイジェストを有するインタチェンジドオブジェクトが、テストステップ２４６６において見出されなかった場合、処理は、テストステップ２４６６からステップ２４７０に移行する。このステップ２４７０では、サブジェクトダイジェストがダイジェストのリストに付加される。このとき、ダイジェストのリストが存在しない場合には、新しいリストが作りだされる。そして、処理は、ステップ２４７０から次のステップ２４６２に移行する。
処理は、ステップ（NEXT）２４６２からステップ（FOR EACH OBJECT）２４５６に移行する。ステップ２４５４においてデコードされた全てのオブジェクトが、ステップ（FOR EACH OBJECT）２４５６とステップ（NEXT）２４６２で形成される処理ループに従って処理されたら、処理は、ステップ（FOR EACH OBJECT）２４５６から、後述するテストステップ（list?）２４７６に移行する。
エンジン１３２Ｂは、ステップ２４６６において、インタチェンジ可能なオブジェクトを、以下のように検索する。各エンジンは、同等のインタチェンジ可能なオブジェクトを交換することができる１以上のプレイスを備えている。そして、これらの各プレイスは、プレイス内に存在するインタチェンジ可能なオブジェクトの”リポジトリ（保管場所）”を備えている。ディクショナリ２４９０（図２４Ｄ）は、プレイス２２０Ｂ（図１５Ｄ）のリポジトリである。ディクショナリ２４９０（図２４Ｄ）のキーは、クラス、すなわちクラス２４００Ｋ１、２４００Ｋ２、２４００Ｋ３、２４９０Ｋ４である。各クラスには、ディクショナリが組み合わされている。例えばクラス２４９０Ｋ１〜２４９０Ｋ４には、ディクショナリ２４９０Ａ、２４９０Ｂ、２４９０Ｃ、２４９０Ｄがそれぞれ組み合わされている。
各ディクショナリ２４９０Ａ〜２４９０Ｄの一般的な構造は同一である。そこで、ディクショナリ２４９０Ａを例にして説明する。ディクショナリ２４９０Ａのキーはダイジェスト、すなわちダイジェスト２４９０ＡＫ１、２４９ＡＫ２、２４９０ＡＫ３である。これらの各ダイジェストには、インタチェンジドオブジェクトが組み合わされている。例えば、ダイジェスト２４９０ＡＫ１〜２４９０ＡＫ３には、インタチェンジされたオブジェクト２４９０ＡＶ１、２４９０ＡＶ２、２４９０ＡＶ３が、それぞれ組み合わされている。
インタチェンジドオブジェクトは、２つのステップにより、ディクショナリ２４９０、２４９０Ａから検索される。前述したように、クラスのサイテションとダイジェストは、インタチェンジドオブジェクトを表すために、パーツボックスによって使用される。第１のステップにおいて、サイテションによって参照されたクラスに組み合わされたディクショナリ２４９０Ａ〜２４９０Ｄのうちの１つのディクショナリを検索するために、サイテションが使用される。例えば、サイテションがクラス２４９０Ｋ１を参照している場合、ディクショナリ２４９０Ａが検索される。
第２のステップでは、パーツボックスに含まれるダイジェストと同等のダイジェストと、インタチェンジドオブジェクトとの間の関連について、検索されたディクショナリが探索される。そして、その関連が見いだされたら、インタチェンジドオブジェクトが検索される。また、関連が見いだされなかった場合、そのプレイスは、パーツボックス内のダイジェスト及びサイテションによって表されるインタチェンジドオブジェクトと同等のインタチェンジドオブジェクトを備えていない。このように、ディクショナリ２４９０（図２４Ｄ）のようなリポジトリは、同等のインタチェンジドオブジェクトをプレイスが含んでいるかを判断し、このようなオブジェクトを検索するたに用いられる。
前述したように、処理は、ステップ（FOR EACH OBJECT）２４５６からテストステップ（list?）２４７６に移行する。このテストステップ２４７６において、目的地のエンジン、例えばエンジン１３２Ｂは、ダイジェストのリストがステップ２４７０において作り出されたかを判断し、作り出されている場合には、リストが空であるかどうかを判断する。ダイジェストのリストが存在しないか、又は空である場合、処理は、テストステップ（list?）２４７６から、ステップ（activate traveling agent）２４７８に移行する。このステップ２４７８において、エンジン１３２Ｂは、エージェント１５０Ａの実行についてスケジューリングして、移動中のエージェント１５０Ａを活性化する。そして、処理は、ステップ（activate traveling agent）２４７８から、終了ステップ２４７９に移行し、この終了ステップ２４７９において、エンジン１３２Ｂによって行われたエージェント１５０Ａの転送が成功のうちに終了する。
もし、ステップ２４７０においてリストが作り出され、そのリストが少なくとも１つのダイジェストを含んでいた場合、目的地のエンジン１３２Ｂにおいて、少なくとも１つのインタチェンジドオブジェクトについては、同等のオブジェクトを見い出すことができなかったこととなる。このとき、処理は、テストステップ（list?）２４７６から、ステップ（hold traveling agent）２４７１に移行する。このステップ２４７１において、移動中のエージェント１５０Ａは、中断された状態で、エンジン１３２Ｂ内の保留待ち行列に保持される。そして、処理は、ステップ（hold traveling agent）２４７１からステップ２４７２に移行する。
ステップ２４７２において、目的地のエンジン、例えばエンジン１３２Ｂは、オブジェクト検索エージェント、すなわち”ＯＲＡ（object retrieval agent）”を作り出す。ＯＲＡは、転送元のエンジン、例えばエンジン１３２Ａ内から、フローチャート２４８０（図２４Ｃ）に従って、インタチェンジドオブジェクトを検索する。処理は、ステップ２４７２（図２４Ｂ）からステップ２４７４に移行し、そこでＯＲＡは、オペレーション”live”を遂行するように指示される。そして、これにより、ＯＲＡのインタープリートが開始される。後述するように、ＯＲＡの主な動きは、フローチャート２４８０（図２４Ｃ）によって示される。そして、処理はステップ２４７４（図２４Ｂ）から終了ステップ２４７９に移行し、エンジン１３２Ｂによって行なわれた、エージェント１５０Ａの転送が成功のうちに終了する。なお、移動中のエージェント１５０Ａは活性化されておらず、シッピングボックスの形状とされる。そして、エージェント１５０Ａは、シッピングボックスから再構成され、後述するように、ＯＲＡによって再び活性化される。
フローチャート２４８０（図２４Ｃ）は、ＯＲＡの主な処理を表している。ステップ２４８２において、ＯＲＡは、転送元のエンジン、例えばエンジン１３２Ａに、オペレーション”go”の遂行によって移動する。処理は、ステップ２４８２からステップ２４８４に移行し、このステップ２４８４において、ＯＲＡは、エンジン１３２Ａ内のオブジェクトリポジトリ、例えばディレクショナリ２４９０（図２４Ｄ）から、ダイジェストのリストに含まれるダイジェストと同等のダイジェストを有する各オブジェクトのコピーを収集する。処理は、ステップ２４８４からステップ２４８５に移行する。
ステップ２４８５において、ＯＲＡは、目的地のエンジン、例えばエンジン１３２Ｂに、オペレーション”go”の遂行によって移動する。そして、ＯＲＡは、ダイジェストのリストに含まれていないオブジェクトのコピー、すなわち目的地のエンジン内に同等のオブジェクトが存在していないオブジェクトのコピーを持って、目的地のエンジンへ戻ってくる。処理は、ステップ２４８５からステップ２４８６に移行する。このステップ２４８６において、ＯＲＡは、上述したように、収集してきたオブジェクトを、エージェント１５０Ａ内のダイジェストと置き換える。そして、処理は、ステップ２４８６からステップ（activate traveling agent）２４８７に移行し、このステップ２４８７においてエージェント１５０Ａは、シッピングボックスから再構成され、前述したように、活性化される。シッピングボックスからのエージェント及びエージェントに包含されるオブジェクトの再構成については、アペンディックスＤに詳細に説明されている。そして、処理は、ステップ２４８７から終了ステップ２４８８に移行し、この終了ステップにおいてＯＲＡの主な処理が成功のうちに終了する。
このように、同等のインタチェンジドオブジェクトが、目的地のエンジン内には存在していないインタチェンジドオブジェクトのみを、ネットワークの通信メディアを介して転送することによって、効率が向上する。
オペレーション”send”
エージェントは、オペレーション”send”を遂行することによって、同時にいくつかのプレイスに移動することができる。図２５は、エージェント１５０Ａによるオペレーション”send”の遂行前のネットワーク２５００の状態を示している。図２５の例において、エンジン１３２Ａのデータ部１３２Ａ−Ｄ内のエージェント１５０Ａは、エンジン１３２Ｂのデータ部１３２Ｂ−Ｄ内のプレイス２２０Ｂにそれ自身のクローンを転送し、それと同時に、エンジン１３２Ｃのデータ部１３２Ｃ−Ｄ中のプレイス２２０Ｃにそれ自身のクローンを転送するように構成されている。換言すれば、エージェント１５０Ａは、エージェント１５０Ａのクローンの目的地のプレイスとしてプレイス２２０Ｂ、２２０Ｃを特定化する２つのチケットのリストを、オペレーション”send”にアーギュメントとして供給して、オペレーション”send”を遂行する。エージェント１５０Ａのクローンは、エージェント１５０Ａのコピーであり、このコピーは、エージェント１５０Ａの実行状態を含めて、エージェント１５０Ａを複写することによって形成される。そして、このコピーは、新しい名前と識別子が割り当てられ、エンジンによる実行のためのスケジューリングが行われて、”活性化”される。クローンについてはアペンディックスＡにおいて一層詳細に説明されている。
オペレーション”send”のインタフェースは、図２６Ａ〜２６Ｃに示されている。図２６Ａは、オペレーション”send”の遂行の直前のフレーム２６０２を示している。このフレーム２６０２は、エージェント１５０Ａの実行状態の一部分であり、エージェント１５０Ａによって実行されたオペレーション”send”の動的状態を記録する。エージェントを含め、プロセスの実行状態については、以下及びアペンディックスＡ、Ｂに詳細に説明されている。
スタック２６０４は、フレーム２６０２に含まれている。スタック２６０４は、アーギュメントがそれからポップされ、オペレーション”send”の遂行時に結果がプッシュされるスタックである。現在のスタックである”カレントスタック”については、以下及びアペンディックスＡ、Ｂに一層詳細に規定され、説明されている。
大文字”Ｔ”によって示されたスタック２６０４のトップには、チケット２６０８、２６１０をアイテムとするリスト２６０６がある。リスト２６０６のチケット２６０８、２６１０は、それぞれ、エージェント１５０Ａに対応するクローンが行なうトリップを定義している。オブジェクト２６１８、２６２０は、それぞれ、チケット２６０８、２６１０のプロパティ”travelNote”である。オブジェクト２６１８、２６２０は、オペレーション”send”の遂行によって作り出された各クローンの識別を可能とする。例えば、チケット２６０８、２６１０を形成する場合に、エージェント１５０Ａは、それぞれのテキストが”Able”、”Baker”である文字列を、オブジェクト２６１８、２６２０内に格納する。このような場合に、チケット２６０８に対応するエージェント１５０Ａのクローンは、チケット２６０８のプロパティ”travelNote”から文字列”Able”を検索する。同様に、チケット２６１０に対応するエージェント１５０Ａのクローンは、チケット２６１０の”travelNote”から文字列”Baker”を検索する。
なお、各クローンを識別する方法は、このような方法に限定されるものではなく、本発明のユーザの自由である。例えば、オブジェクト２６１８内に値が１のインテジャを格納し、これによってリスト２６０６内のチケット２６０８の位置を表し、同様に、オブジェクト２６２０内に値が２のインテジャを格納し、これによってリスト２６０６内のチケット２６１０の位置を表すようにしてもよい。
パーミット２６２２、２６２４は、それぞれ、チケット２６０８、２６１０のプロパティ”destinationPermit”であり、インテジャ２６２６、２６２８は、それぞれ、パーミット２６２２、２６２４のプロパティ”charges”である。
パーミット２６１２は、エージェント１５０Ａのプロパティ”permit”であり、したがって、エージェント１５０Ａの内部状態の一部を表している。上述したように、又アペンディックスＡに説明するように、パーミット２６１２は、エージェント１５０Ａの実行を制限する。ブーリアン２６１４は、パーミット２６１２のプロパティ”canSend”である。ブーリアン２６１４の値が”false”であれば、オペレーション”send”は失敗し、クラス”Permit Violated”のエクセプションを送出する。パーミット２６１２のプロパティ”charges”は、インテジャ２６１６である。アペンディックスＡに一層詳細に説明するように、インテジャ２６１６は、エージェント１５０Ａのパーミット処理のアローワンスを表している。
図２５の例において、現在の位置がプレイス２２０Ａであるエージェント１５０Ａは、エージェント１５０Ａのクローンをプレイス２２０Ｂ、２２０Ｃに転送する。エージェント１５０は、リスト２６０６（図２６Ａ）のチケットによって規定された各目的地のプレイスに、それ自身のクローンを送出する。したがって、オペレーション”send”の遂行は、リスト２６０６中のチケットの数と同じ数だけ、エージェント１５０Ａのクローンを作り出す。図２７Ａ、２７Ｂは、オペレーション”send”の簡単な実施例を表している。ここで、エンジン１３２Ａ（図２７Ａ）は、リスト２６０６（図２６Ａ）内のチケットと同じ数だけ、エージェント１５０Ａのクローンを、データ部１３２Ａ−Ｄに作り出す。この例では、リスト２６０６（図２６Ａ）は、２つのチケット、すなわちチケット２６０８、２６１０を備えている。したがって、エンジン１３２Ａは、エージェント１５０Ａ（図２７Ｂ）の２つのクローン、すなわちエージェント１５０Ａ−１、エージェント１５０Ａ−２を作り出す。なお、より効率的な実施例、すなわちエージェントのクローンの作成を遅らせた実施例について、後ほど説明する。
エージェント１５０Ａのクローンを形成する場合、パーミット２６２２、２６２４は、作り出されたクローンのプロパティ”permit”とされる。換言すれば、パーミット２６２２は、エージェント１５０Ａ−１のプロパティ”permit”であり、パーミット２６２４は、エージェント１５０Ａ−２のプロパティ”permit”である。エージェント１５０Ａ−１、エージェント１５０Ａ−２を作り出す際に、エージェント１５０Ａ、すなわちクローンが形成されたエージェントのパーミット２６１２の対応するアローワンスから、パーミット２６２２、２６２４のアローワンスが差し引かれる。換言すれば、エージェント１５０Ａ−１、１５０Ａ−２が作り出された時に、エージェント１５０Ａのチャージアローワンス、すなわちエージェント１５０Ａのパーミットのプロパティ”charges”であるインテジャ２６１６からインテジャ２６２６、２６２８の値が引算される。インテジャ２６１６がインテジャ２６２６、２６２８の合計以下の場合には、オペレーション”send”は失敗し、クラス”Permit Violated”のエクセプションが送出される。これは、エージェント１５０Ａのチャージアローワンスが、エージェント１５０Ａから作り出されたクローンのチャージアローワンスの合計よりも、小さいからである。
したがって、オペレーション”send”のアーギュメントとして供給されたチケットの一部分であるパーミットは、オペレーション”send”の遂行により作り出されたクローンに固有のパーミットである固有のパーミット（ネイティブパーミット：native permit）を形成する。チケット２６０８、２６１０は、エージェント１５０Ａのそれぞれのクローンが行なうトリップを規定する。そして、パーミット２６２２、２６２４は、それぞれチケット２６０８、２６１０のプロパティ”permit”であり、オペレーションの対象となっているエージェントであるレスポンディングエージェント１５０Ａのそれぞれのクローンのローカルミットである。
本発明の第２の実施例によれば、オペレーション”send”は、リスト２６０６に追加されるアーギュメントとして、インテジャ（図示せず）を使用する。レスポンディングエージェント１５０Ａのクローンを作り出す際に、それぞれのネイティブパーミットは、エクセプションに関連して前述したように形成されるが、各ネイティブパーミットのプロパティ”charges”の初期の値は、使用されるインテジャに等しい。
本発明の第３の実施例は、第２の実施例と同様であるが、単一のインテジャの代わりにインテジャリストを使用する点が異なる。そして、リスト２６０６（図２６Ａ）内のチケットのプロパティ”permit”から導かれた、各ネイティブパーミットのプロパティ”charges”の初期の値は、使用されるインテジャリストにおける位置が、ネイティブパーミットを導くのに使用されたチケットのリスト２６０６における位置と同じであるインテジャと等しくする。例えば、リスト２６０６において位置１にあるチケット２６０８に対応するクローンのネイティブパーミットのプロパティ”charges”の初期の値は、使用されるインテジャリスト（図示せず）において位置１にあるインテジャに等しい。同様に、リスト２６０６において位置２にあるチケット２６１０に対応するクローンのネイティブパーミットのプロパティ”charges”の初期の値は、使用されるインテジャリストにおいて位置２にあるインテジャに等しい。
本発明第４の実施例によれば、オペレーション”send”は、リスト２６０６に加えて、アーギュメントとして、パーミット（図示せず）を使用する。そして、レスポンディングエージェント１５０Ａのクローンを作り出す際、各ネイティブパーミットは、使用されるパーミットのコピーとする。
本発明の第５の実施例は、前述の第４の実施例と同様であるが、パーミットのリストが単一のパーミットの代わりに使用される点で異なる。そして、リスト２６０６（図２６Ａ）中のチケットに対応するそれぞれのクローンの各ネイティブパーミットの初期の値は、使用されるパーミットのリストにおける位置が、各クローンに対応するチケットのリスト２６０６における位置と同じであるパーミットと等しくする。例えば、リスト２６０６において位置１にあるチケット２６０８に対応するクローンのネイティブパーミットの初期の値は、使用されるパーミットのリスト（図示せず）において位置１にあるパーミットに等しい。同様に、リスト２６０６において位置２にあるチケット２６１０に対応するクローンのネイティブパーミットの初期の値は、使用されるパーミットのリストにおいて位置２にあるパーミットに等しい。
上述の各実施例において、レスポンディングエージェント１５０Ａのパーミットであるパーミット２６１２のプロパティ”charges”は、オペレーション”send”の遂行において作り出されたエージェントのクローンのネイディブパーミットの各プロパティ”charges”の合計分だけ減少する。
エージェント１５０Ａの各クローンは、各クローンに対応するチケットによって、目的地のプレイスとして特定されたプレイスに転送される。例えば、チケット２６０８は、エージェント１５０Ａ−１の目的地としてプレイス２２０Ｂを特定し、チケット２６１０は、エージェント１５０Ａ−２の目的地としてプレイス２２０Ｃを特定する。各クローンは、各クローンに対応する目的地のエンジン、例えばエンジン１３２Ｂやエンジン１３２Ｃと、転送元のエンジン１３２Ａとの協調によって、それぞれの目的地のプレイスに移動する。オペレーション”send”に遂行における、エージェントのクローン、例えばエージェント１５０Ａ−１やエージェント１５０Ａ−２のプレイスからプレイスへの転送は、既に詳細に説明したオペレーション”go”と同様である。
オペレーション”send”の遂行において、エージェント１５０Ａがエージェント１５０Ａ−１、１５０Ａ−２の生成に成功した場合は、エージェントのクローンのどれか又は全部の転送が失敗したとしても、エージェント１５０Ａによるオペレーション”send”の遂行は成功したものとされる。そして、あるエージェントのクローンのトリップが失敗した場合、最初にオペレーション”send”を遂行したエージェントではなく、エージェントのクローンによって、トリップのエクセプションが送出される。
エージェント１５０Ａによるオペレーション”send”の遂行の直後のエージェント１５０Ａの実行状態の一部を図２６Ｂに示す。前述した現在のスタックであるスタック２６０４は、ニルオブジェクト２６３０を有している。ニルオブジェクトは、もとのエージェントであるオリジナルエージェントのために、結果として生成され、これによって、オペレーション”send”の遂行により生成されたエージェントのクローンと、オリジナルエージェントとを区別する。
図２６Ｃは、エージェント１５０Ａによるオペレーション”send”の遂行後のエージェント１５０Ａ−１の実行状態の一部を示している。エージェント１５０Ａによるオペレーション”send”の遂行後のエージェント１５０Ａ−２の実行状態は、後述するように、エージェント１５０Ａ−１の実行状態に類似している。
パーミット２６２２は、エージェント１５０Ａ−１のプロパティ”permit”である。スタック２６０４−１は、エージェント１５０Ａ−１の生成において作り出されたスタック２６０４のコピーである。スタック２６０４−１は、エージェント１５０Ａ−１の現在のスタックである。スタック２６０４−１のトップには、チケットスタブ２６３２がある。チケットスタブ２６３２は、オペレーション”send”の遂行によって生成されたエージェントのクローンのオペレーション”send”によって生じた結果である。チケットスタブ２６３２はチケット２６０８から導かれる。
チケットスタブ２６３２は、クラス”Ticket Stub”のメンバである。チケットスタブ２６３２は、いくつかあるプロパティの内にプロパティ”way”、”travelNote”を含んでいる。チケット２６０８は、クラス”Ticket”のメンバである。クラス”Ticket”は、クラス”Ticket Stub”のサブクラスであるため、チケット２６０８は、いくつかあるプロパティの内に、スーパークラス”Ticket Stub”から定義が継承されたプロパティ”way”、”travelNote”を備えている。チケットスタブ２６３２は、チケット２６０８から導かれ、チケットスタブ２６３２のプロパティ”way”、”traveNote”は、それぞれチケット２６０８のプロパティ”way”、”travelNote”に等しい。前述したように、チケット２６０８（図２６Ａ）のプロパティ”travelNote”はエージェント１５０Ａ−２からエージェント１５０Ａ−１を区別するために使用することができる。同様に、エージェント１５０Ａ−２の現在のスタック（図示せず）は、プロパティ”travelNote”がオブジェクト２６２０であるチケットスタブ（図示しない）を備えている。
図２８は、オペレーション”send”がエージェント１５０Ａによって遂行された後の、コンピュータネットワーク２５００を示している。エージェント１５０Ａは、コンピュータプロセスエンジン１３２Ａのデータ部１３２Ａ−Ｄに残留している。エージェント１５０Ａ−１は、エンジン１３２Ｂのデータ部１３２Ｂ−Ｄ中のプレイス２２０Ｂを占有している。同様に、エージェント１５０Ａ−２は、エンジン１３２Ｃのデータ部１３２Ｃ−Ｄにおいて実行されるプレイス２２０Ｃを占有している。
オペレーション”send”のアクセスは、”プライベート”であり、オペレーションの要求は、レスポンダのみに制限される。以下及びアペンディックスＡに詳細に説明するように、本発明の各フィーチャは、どんな条件のもとにフィーチャの要求がなされうるかを特定するアクセスを備えている。オペレーション”send”のアクセスはプライベートであるので、エージェント１５０Ａのみが、エージェント１５０Ａによるオペレーション”send”の遂行を開始することができる。エンジン１３２Ａでさえも、エージェント１５Ａによるオペレーション”send”の遂行を開始することはできない。
クローン生成の遅延
オペレーション”send”の遂行に必要な時間や、オペレーション”send”の遂行時に生成されるエージェントのクローンによって占有されるスペースの実質的な節減は、クローンの生成を遅らせること（ディファードクローニング）によって実現される。オペレーション”send”の遂行を行なっているエンジンが、ある１つのエージェントの２以上のクローンをある１つの目的地のエンジンに転送すると判断したとき、クローンの生成を延期する。このような場合に、１つのクローンが目的地のエンジンに転送され、他のクローンは目的地のエンジンにおいて転送された１つのクローンから導出される。図２９Ａ〜２９Ｄに例を示す。
エージェント１５０Ａ（図２９Ａ）は、エンジン１３２Ａ内のプレイス２２０Ａを占有している。エンジン１３２Ａは、コンピュータシステム１１０Ａ（図示せず）内において実行されるコンピュータプロセスである。エージェント１５０Ａは、オペレーション”send”を遂行しており、エージェント１５０Ａのクローンの目的地のプレイスとしてプレイス２２０Ｂ、２２０Ｃ、２２０Ｄを特定する３つのチケット（図示せず）のリストを、オペレーションへのアーギュメントとして供給している。エンジン１３２Ａは、通信リンク１０２ＡＥを介してエンジン１３２Ｅと通信する。通信リンク１０２ＡＥは、オペレーション”go”に関連して通信リンク１０２ＡＺ（図１５Ａ）について説明した通りである。エンジン１３２Ｅは、エンジン１３２Ａと通信するとともに、通信リンク１０２ＥＢＦを介してエンジン１３２Ｂ、１３２Ｆと通信している。さらに、エンジン１３２Ｆは、通信リンク１０２ＦＣＤを介してエンジン１３２Ｃ、１３２Ｄと通信している。プレイス２２０Ｂ、２２０Ｃ、２２０Ｄは、それぞれエンジン１３２Ｂ、１３２Ｃ、１３２Ｄによってインタープリートされるプロセスである。したがって、エージェント１５０Ａのクローンがプレイス２２０Ｂ、２２０Ｃ、２２０Ｄに到達するためには、各クローンは、最初にエンジン１３２Ｅに転送されねばならない。
エンジン１３２Ａ中においては、エージェント１５０Ａの１つのクローン、すなわちエージェント１５０Ａ−１が生成される。エージェント１５０Ａ−１がオペレーション”send”を遂行しているとき、エージェント１５０Ａ−１の実行状態には、センドフレーム２９０２が含まれる。エージェントの実行状態については、以下及びアペンディックスＡに詳細に説明されている。また、センドフレームについては、アペンディックスＢに詳細に説明されている。センドフレーム２９０２（図３０Ａ）は、チケット２９０４のリストを含む。ここで、チケット２９０４のリストは、チケット２９０４Ｂ、２９０４Ｃ、２９０４Ｄを含んでおり、これらのチケットは、目的地のプレイスとして、それぞれプレイス２２０Ｂ、２２０Ｃ、２２０Ｄを特定する。したがって、エージェント１５０Ａの単一のクローンであるエージェント１５０Ａ−１（図２９Ａ）は、プレイス２２０Ｂ、２２０Ｃ、２２０Ｄに移行するべき別々の３つのエージェントのクローンを表している。
エンコードされたエージェント１５０Ａ−１−Ｅ（図３０Ｂ）は、アペンディックスＢのエンコード則に従って、エージェント１５０Ａ−１（図２９Ａ）をエンコードして生成される。エンコードされたエージェント１５０Ａ−１−Ｅ（図３０Ｂ）には、目的地１５０Ａ−１−Ｅ−Ｄ１、１５０Ａ−１−Ｅ−Ｄ２、１５０Ａ−１−Ｅ−Ｄ３が含まれ、これらは、エージェント１５０Ａ（図２９Ａ）の３つのクローンのそれぞれの移動目的地を規定する。エージェント１５０Ａの３つの全てのクローンがエンジン１３２Ｅに転送されるので、目的地１５０Ａ−１−Ｅ−Ｄ１、１５０Ａ−１−Ｅ−Ｄ２、１５０Ａ−１−Ｅ−Ｄ３（図３０Ｂ）は、全て、エージェント１５０Ａ（図２９Ａ）のそれぞれのクローンの移動目的地としてのエンジン１３２Ｅを規定している。エンジン１３２Ａは、目的地１５０Ａ−１−Ｅ−Ｄ１、１５０Ａ−１−Ｅ−Ｄ２、１５０Ａ−１−Ｅ−Ｄ３（図３０Ｂ）が、それぞれ移動目的地としてエンジン１３２Ｅを規定していることを判断し、エージェント１５０Ａ（図２９Ａ）の１つのクローン、すなわちエンコードされたエージェント１５０Ａ−１−Ｅ（図３０Ｂ）を、エンジン１３２Ｅ（図２９Ｂ）に転送させる。このように、３つの別々のクローンをエンジン１３２Ａからエンジン１３２Ｅに転送するのではなく、単一のクローンが、エンジン１３２Ｅに転送される。これにより、エージェント１５０Ａのクローンによって占有されたエンジン１３２Ａ内のスペースの量、及びクローンをエンジン１３２Ｅに転送するために必要とされる時間が減少する。
エージェント１５０Ａ−１は、オペレーション”go”に関連して説明したように、エンコードされ、エンジン１３２Ｅ（図２９Ｂ）に転送される。そして、エンジン１３２Ｅは、エージェント１５０Ａ−１のセンドフレーム２９０２のリスト２９０４を検索する。エンコードされたエージェントは、アペンディックスＢに示すように標準化されているので、エンジン、例えばエンジン１３２Ｅは、エンコードされたエージェント１５０Ａ−１をデコードすることなく、リスト２９０４を検索することができる。そして、エンジン１３２Ｅは、センドフレーム２９０２のチケット２９０４Ｂに対応する１つのクローンがエンジン１３２Ｂに転送されるべきことと、チケット２９０４Ｃ、２９０４Ｄに対応する２つのクローンがエンジン１３２Ｆを経てそれぞれエンジン１３２Ｃ、１３２Ｄに転送されるべきこととを判断する。そこで、第２のクローン、すなわちエージェント１５０Ａ−２（図２９Ｃ）が、エンジン１３２Ｅによってエージェント１５０Ａ−１から生成される。エージェント１５０Ａ−１がエンコードされたように、エージェント１５０Ａ−１のコピーであるエージェント１５０Ａ−２も同様にエンコードされる。エージェント１５０Ａ−２は、センドフレーム２９０２−２を含んでおり、このセンドフレーム２９０２−２は、チケットリスト２９０４−２を含んでいる。ここで、チケットリスト２９０４−２は、エージェント１５０Ａ−１のセンドフレーム２９０２のチケットリスト２９０４から移動したチケット２９０４Ｂを有する。
エージェント１５０Ａ−２は、エンジン１３２Ｂ（図２９Ｄ）に転送され、エージェント１５０Ａ−１は、エンジン１３２Ｆ（図２９Ｄ）に転送される。チケット２９０４Ｂは、センドフレーム２９０２−２のただ１つのチケットであり、トリップの目的地としてプレイス２２０Ｂを特定しているので、プレイス２２０Ｂは、エージェント１５０Ａ−２の目的地であり、これ以上は、エージェント１５０Ａのクローンがエージェント１５０Ａ−２から生成されることはない。エージェント１５０Ａ−２は、エンジン１３２Ｂによってデコードされる。エージェント１５０Ａ−２は、前述したように、プレイス２２０Ｂによるオペレーション”entering”の遂行によってプレイス２２０Ｂの占有が許可され、エージェント１５０Ａ−２についてのオペレーション”send”のオペレーションは完了する。したがって、センドフレーム２９０２Ｂは、エージェント１５０Ａ−１の実行状態から、実行モデルのコンテキストにおいて後述するように除去される。
エージェント１５０Ａ−１は、エンジン１３２Ｆに転送される。エージェント１５０Ａ−１の実行状態の一部分であるセンドフレーム２９０２には、チケット２９０２Ｃ、２９０４Ｄを含むチケットリスト２９０４が含まれる。したがって、エージェント１５０Ａ−１は、それぞれプレイス２２０Ｃ、２２０Ｄに向かって移動しているエージェント１５０Ａの２つのクローンを表している。このように、１つのクローン、すなわちエージェント１５０Ａ−１だけを、エンジン１３２Ｅからエンジン１３２Ｆに転送することによって、前述したように、エンジン１３２Ｅとエンジン１３２Ｆの間でデータを転送するのに必要な時間と、エンジン１３２Ｅ内におけるスペースとが、実質的に節減される。
前述したように、エンジン１３２Ｆにおいて、（ｉ）エージェント１５０Ａの第３のクローン、すなわちエージェント１５０Ａ−３が、エージェント１５０Ａ−１から形成され、（ｉｉ）センドフレーム（図示せず）は、チケット２９０４Ｃを有するエージェント１５０Ａ−３に含まれる。エージェント１５０Ａ−３のコピー元であるエージェント１５０Ａ−１がエンコードされるのと同様に、エージェント１５０Ａ−３もエンコードされる。チケット２９０４Ｃは、エージェント１５０Ａ−１のセンドフレーム２９０２から除去される。そして、エージェント１５０Ａ−３は、エンジン１３２Ｃに転送され、エージェント１５０Ａ−１は、エンジン１３２Ｄ（図２９Ｅ）に転送される。
エンジン１３２Ｃは、チケット２９０４Ｃによって規定されるエージェント１５０Ａ−３のトリップの目的地であるプレイス２２０Ｃを含み、エンジン１３２Ｄは、チケット２９０４Ｄによって規定されるエージェント１５０Ａ−１のトリップの目的地であるプレイス２２０Ｄを含む。前述したように、（ｉ）エンジン１３２Ｃは、エージェント１５０Ａ−３をデコードし、このエージェント１５０Ａ−３は、オペレーション”entering”の実行によって、プレイス２２０Ｃの占有が許可され、（ｉｉ）エンジン１３２Ｄは、エージェント１５０Ａ−１をデコードし、このエージェント１５０Ａ−１は、オペレーション”entering”の実行によって、プレイス２２０Ｄの占有が許可される。センドフレーム２９０２（図示せず）は、目的地としてプレイス２２０Ｄを特定する１つのチケットが含まれているので、エージェント１５０Ａ−１についてのオペレーション”send”は終了する。同様に、エージェント１５０Ａ−３は、単一のプレイスすなわち、エージェント１５０Ａ−３によって占有されるプレイスであるプレイス２２０Ｃを、トリップの目的地として特定するセンドフレームを含んでいるので、エージェント１５０Ａ−３についても、オペレーション”send”は同様に終了する。
こうして、各エージェント１５０Ａ−１、１５０Ａ−２、１５０Ａ−３は、それぞれのエージェントのクローンが行なうトリップを規定する単一のチケットを含むセンドフレームを含む実行状態を有するオペレーション”send”の遂行を完了する。それぞれの単一のチケットは、前述したように、それぞれのエージェントによるオペレーション”send”の遂行の結果として生じるチケットスタブを導出するために使用される。
このように、それぞれの目的地のプレイスにいくつかのクローンを転送する際に、クローンの作成をできるだけ遅らせることによって、オペレーション”send”の遂行において、コンピュータ内の記憶スペースや、時間が節減される。
エージェント１５０Ａ−１の転送中のセンドフレーム２９０２の構造を、図３０Ａに示す。クラス”Send Frame”は、プロパティ”tickets”を規定する。センドフレーム２９０２のプロパティ”tickets”は、チケット２９０４Ｂ、２９０４Ｃ、２９０４Ｄをアイテムとするリスト２９０４である。チケット２９０４Ｂ、２９０４Ｃ、２９０４Ｄは、レスポンディングエージェント１５０Ａのそれぞれのクローンが行なう各トリップを規定する。
前述したように、エージェント１５０Ａがオペレーション”send”を遂行することによって、１以上のエージェントのクローンが生成される。ここで、エージェントの各クローンは、エージェント１５０Ａの１以上のクローンを表す。エージェントの各クローン、例えばエージェント１５０Ａ−１（図２９Ａ）を形成する場合、そのエージェントのクローンにはセンドフレーム２９０２のコピーが含まれる。ただし、センドフレームのコピーのプロパティ”tickets”は、そのエージェントのクローンに対応するチケットのみを包含するように変更される。例えば、エージェント１５０Ａ−２（図２９Ｃ）は、センドフレーム２９０２−２を含み、このセンドフレーム２９０２−２は、チケット２９０４Ｂを含む。また、例えば、エージェント１５０Ａ−１は、センドフレーム２９０２を含み、センドフレーム２９０２は、チケット２９０４Ｃ、２９０４Ｄを含む。したがって、エージェント１５０Ａ−２は、チケット２９０４Ｂによって特定されたプレイス、すなわちプレイス２２０Ｂに向かって移動しているエージェント１５０Ａの１つのクローンを表している。同様に、エージェント１５０Ａ−１は、チケット２９０４Ｃ、２９０４Ｄによって特定されたプレイスに向かって移動しているエージェント１５０Ａの２つのクローンをそれぞれ表している。
各クローンがそれぞれの目的地に到達したら、センドフレーム２９０２のプロパティ”tickets”（図３０Ａ）は、正確に１つのチケットのリストとなる。例えば、エージェント１５０Ａ−１、１５０Ａ−２、１５０Ａ−３（図２９Ｅ）は、フレーム２９０２、２９０２−２、２９０２−３をそれぞれ含み、これらのフレームは、それぞれ単一のチケット、すなわちチケット２９０４Ｄ、２９０４Ｂ、２９０４Ｃをそれぞれ含む。したがって、各センドフレームは、対応するエージェントのクローンが行なうトリップを規定する単一のチケットを有している。この単一のチケットは、前述したように、エージェントの各クローンによるオペレーション”send”の遂行の結果として生成されるチケットスタブを形成するために使用される。
このように、２以上のエージェントのクローンが部分的に同一経路であるトリップを行なう場合には、オペレーション”send”を遂行するエージェントのクローンの生成を遅らせることによって、コンピュータの記憶スペース及びデータ転送時間が実質的に節減される。オペレーション”go”のコンテキストによって前述したように、あるエージェントによるオペレーション”go”の遂行の間にエクセプションが送出された場合には、そのエージェントはパーガトリに置くことができる。同様に、エージェントのクローンによるオペレーション”send”の遂行の間にエクセプションが送出された場合には、そのエージェントのクローンはパーガトリに置くことができる。また、エンコードされたエージェント、例えばエージェント１５０Ａ−１（図２９Ｂ）によって表されるエージェントの、複数のクローンの転送が失敗した場合には、エンコードされたエージェントによって表されるこれらの各クローンは、前述したように、デコードされて活性化され、パーガトリに置かれる。
エージェント間の相互作用：オペレーション”Meet”
同一のプレイスを占有する２つのエージェントは、一方のエージェントが他方のエージェントにオペレーションの遂行や、アトリビュートの設定又は問い合わせを要求することによって、互いに相互作用することができる。要求されたオペレーションのアーギュメントやリザルトを介して、又は、設定や問い合わせがされたアトリビュートを介して、２つのエージェントの間に情報の交換が行なわれる。例えば、エージェント１５０Ａ、１５０Ｂは、エンジン１３２Ｂ（図１５Ｅ）内において実行されているプレイス２２０Ｂを占有している。したがって、エージェント１５０Ａ、１５０Ｂは、（ｉ）エージェント１５０Ａが、エージェント１５０Ｂにフィーチャを遂行するように要求するか、又は（ｉｉ）エージェント１５０Ｂが、エージェント１５０Ａにフィーチャを遂行するように要求することによって、相互作用することができる。
エージェント１５０Ａは、エージェント１５０Ａがエージェント１５０Ｂに対するリファレンスを持つ場合にのみ、エージェント１５０Ｂにフィーチャを遂行するように要求することができる。同様に、エージェント１５０Ｂは、エージェント１５０Ｂがエージェント１５０Ａに対するリファレンスを持つ場合にのみ、エージェント１５０Ａにフィーチャを遂行するように要求することができる。エージェント１５０Ａは、エージェント１５０Ａ、１５０Ｂが占有しているミーティングプレイスによるオペレーション”meet”の遂行を要求することによって、エージェント１５０Ｂに対するリファレンスを取得する。いままで、プレイス２２０Ｂは、エージェント１５０Ａ、１５０Ｂによって占有されるプレイスとしてのみ記述してきた。以下の説明では、プレイス２２０Ｂは、ミーティングプレイス、すなわちクラス”Meeting places”の１メンバである。ミーティングプレイスについては、アペンディックスＡに詳細に説明されている。
図３１Ａ、３１Ｂは、オペレーション”meet”のインタフェースを表している。フレーム３１００は、エージェント１５０Ａの実行状態の一部である。フレーム３１００は、ミーティングプレイス２２０Ｂによるオペレーション”meet”の実行状態を記録する。ミーティングプレイス２２０Ｂは、オペレーション”meet”のレスポンダーとしてのエージェント１５０Ａの実行状態内において、識別される。
フレーム３１００は、現在のスタックであるスタック３１０２を含む。スタック３１０２は、オペレーション”meet”（図３１Ａ）の遂行の直前に、ペティション３１０６をトップに備えている。ペティション３１０６は、オペレーション”meet”の遂行によって使用されるアーギュメントである。ペティション、すなわちクラス”Petition”のメンバについては、以下及びアペンディックスＡに一層詳細に説明されている。
フローチャート３２００（図３２）は、ミーティングプレイス２２０Ｂによって遂行されるオペレーション”meet”のインプリメンテーションを示している。エンジン１３２Ｂ（図１５Ｅ）は、ミーティングプレイス２２０Ｂによってオペレーション”meet”を遂行する際に、ペティション３１０６（図３１Ａ）を分析することによって、ペティションの対象であるエージェントを判断する。ペティション３１０６は、ペティションの対象であるエージェントを、ネーム、クラス、又はその両方によって特定する。ペティションの対象であるエージェントは、ミーティングを要求しているエージェントがミーティングを行おうとしているエージェントとして、ペティションによって特定されたエージェントである。
エンジン１３２Ｂは、ステップ（pop petition）３２０２（図３２）において、現在のスタック３１０２からペティション３１０６をポップする。処理は、ステップ３２０２からステップ３２０４に移行する。このステップ３２０４において、エンジン１３２Ｂは、新しい空（エンプティ）のテレネームリストを作り出す。ステップ３２０４において作り出されたリストに記録されるテレネームは、要求したエージェントとのミーティングを拒絶した、ペティションの対象であるエージェントのテレネームである。したがって、最初は、ペティションの対象であるエージェンは、要求したエージェントとのミーディングを拒絶していないので、このリストは空である。
処理は、ステップ３２０４から、ステップ（find petitioned agent）３２０６に移行する。このステップ３２０６において、オペレーション”meet”を遂行しているエンジンがペティションの対象であるエージェントを、すなわち、ステップ３２０４（図３２）によって作り出されたテレネームのリストのアイテムにそのテレネームが含まれていない、ペティション３１０６（図３１Ａ）を満たすエージェントを見い出す。エージェントがペティション３１０６（図３１Ａ）を満たすのは次のようなときである。
アペンディクスＡに詳細に説明するように、ペティション３１０６は、プロパティ”agentName”及びプロパティ”agentClass”（どちらも図示せず）を含んでいる。ただし、プロパティ”agentName”、”agentClass”はオプションなので、どちらもニル（０）であってもよい。ペティション３１０６のプロパティ”agentName”がテレネームで、プロパティ”agentClass”がニル（０）の場合、ペティションの対象であるエージェントは、ペティション３１０６のプロパティ”agentName”であるテレネームによって、テレネームが指定されたエージェントである。プロパティ”agentClass”がサイテションで、プロパティ”agentName”がニル（０）の場合、ペティションの対象であるエージェントは、ペティション３１０６のプロパティ”agentClass”であるサイテションによって特定されたクラスのメンバであるエージェントである。どちらのプロパティもニル（０）でない場合、ペティションの対象であるエージェントは、上述の両方の基準を満たすエージェントである。どちらのプロパティもニル（０）の場合、クラス”Meeting Invalid”のエクセプションが送出され、オペレーション”meet”は失敗に終わる。
処理は、ステップ（find petitioned agent）３２０６からテストステップ３２０８に移行する。このテストステップ３２０８において、エンジン１３２Ｂは、ペティションの対象であるエージェントが、ステップ（find petitioned agent）３２０６において見い出されたかを判断する。ペティションの対象であるエージェントが、ステップ（find petitioned agent）３２０６で見い出されなかった場合、処理は、テストステップ３２０８から、後述するステップ（wait）３２２２に移行する。逆にペティションに対象であるエージェントがステップ（find petitioned agent）３２０６において見い出された場合、処理は、テストステップ３２０８からステップ（meeting）３２１０に移行する。
ステップ（meeting）３２１０において、ペティションの対象であるエージェントは、ミーティングプレイス２２０Ｂをインタープリートしているエンジン１３２Ｂによって、オペレーション”meeting”を遂行することが求められる。オペレーション”meeting”の遂行において、ペティションの対象であるエージェントは、エージェント１５０Ａとのミーティングに参加することに同意するか、又はこれを拒絶する。オペレーション”meeting”については、以下又はアペンディスクＡに詳細に説明されている。
ペティションの対象であるエージェントによるオペレーション”meeting”の遂行後、処理は、ステップ（meeting）３２１０からテストステップ３２１２に移行する。テストステップ３２１２において、エンジン１３２Ｂは、オペレーション”meeting”が成功のうちに終了し、ペティションの対象であるエージェントがミーティングに同意したかを判断する。ペティションの対象であるエージェントがミーティングを拒絶した場合、処理は、テストステップ３２１２から、後述するテストステップ（fully qualified?）３２３４に移行する。その逆に、ペティションの対象であるエージェントがミーティングに同意した場合、すなわちオペレーション”meeting”が成功のうちに終了した場合、処理は、テストステップ３２１２からステップ（build contact）３２１６に移行する。
ステップ（build contact）３２１６において、コンタクト３１０８（図３１Ｂ）が生成される。ここで、このコンタクト３１０８のサブジェクトは、ペティションの対象であるエージェントである。処理は、ステップ（build contact）３２１６（図３２）からステップ（push contact）３２１８に移行し、このステップ３２１８において、コンタクト３１０８（図３１Ｂ）がスタック３１０２に書き込まれることによって、リザルトとしてコンタクト３１０８が生成される。処理は、ステップ（push contact）３２１８から終了ステップ３２２０に移行し、このステップ３２２０において、オペレーション”meet”は成功のうちに終了する。
しかし、前述したように、ペティションの対象であるエージェントが、オペレーション”meeting”の遂行において反対を表明し、エージェント１５０Ａとのミーティングを拒絶した場合には、処理は、テストステップ３２１２からテストステップ（fully qualified?）３２３４に移行する。テストステップ（fully qualified?）３２３４において、エンジン１３２Ｂは、ペティション３１０６（図３１Ａ）が適格であるかを判断する。ペティション３１０６は、ペティション３１０６のプロパティ”agentName”であるテレネームが適格である場合に、適格であるとされる。テレネームは、プロパティ”authority”とプロパティ”identity”を有する。テレネームについては、アペンディクスＡに一層詳細に説明されている。テレネームのプロパティ”identity”はオプションであり、ニル（０）とすることができる。テレネームのプロパティ”identity”がニル（０）の場合、そのテレネームは部分的に適格であり、テレネームのプロパティ”authority”であるオーソリティの全ての名前付きオブジェクト（ネームオブジェクト：named object）を示すこととなる。一方、テレネームのプロパティ”identity”がニル（０）でない場合、そのテレネームは適格であり、正確にゼロ又は１つの名前付きオブジェクトを示すこととなる。
テストステップ（fully qualified?）３２３４（図３２）において、エンジン１３２Ｂは、ペティション３１０６（図３１Ａ）が適格であるかを判断する。ペティション３１０６（図３１Ａ）が適格の場合、処理はテストステップ（fully qualified?）３２３４から終了ステップ３２３６に移行し、この終了ステップにおいて、クラス”Meeting Denied”のエクセプションが送出され、オペレーション”meeting”は失敗に終わる。したがって、ペティション３１０６（図３１Ａ）が適格であり、ペティション３１０６を満たすエージェントがミーティングを拒絶した場合、オペレーション”meet”は失敗に終わる。一方、ペティション３１０６が適格でない場合、処理は、テストステップ（fully qualified?）３２３４からステップ（add agent to list）３２１４に移行する。
ステップ（add agent to list）３２１４において、ステップ（find petitioned agent）３２０６において見い出された、ペティションの対象であるエージェントは、ステップ３２０４において作り出されたテレネームリストに付加される。処理は、ステップ（add agent to list）３２１４からステップ（find petitioned agent）３２０６に移行する。
前述したように、ペティションの対象であるエージェントがステップ（find petitioned agent）３２０６において見い出されなかった場合、処理は、テストステップ３２０８からステップ（wait）３２２２に移行する。このステップ３２２２において、エージェント１５０Ａのインタープリートは、ペティション３１０６（図３１Ａ）がタイムアウトにより終了するか、又はエージェントがミーティングプレイス２２０Ｂに入るまで、すなわちミーティング２２０Ｂがオペレーション”entering”の遂行を成功するまで中断される。ペティション３１０６は、アペンディクスＡに一層詳細に説明されるように、プロパティ”maximumWait”を有する。このプロパティ”maximumWait”は、オペレーション”meet”の遂行が成功したか否かに関係なく、オペレーション”meet”の遂行の開始から、オペレーション”meet”の遂行の完了までに要することができる最長時間を規定する。そして、ペティション３１０６は、オペレーション”wait”の遂行の開始から、プロパティ”maximumWait”が規定する最長時間が経過したら、タイムアウトにより終了する。
ペティション３１０６が終了した時に、又はエージェントがミーティングプレイス２２０Ｂに入った時に、エージェント１５０Ａのインタープリートが再開され、処理は、ステップ（wait）３２２２（図３２）からテストステップ（time out?）３２２４に移行する。このテストステップ３２２４において、エンジン１３２Ｂ（図１５Ｅ）は、エージェント１５０Ａ（図３１Ａ）のインタープリートの再開がペティション３１０６の終了の結果であるかを判断する。エージェント１５０Ａのインタープリートがペティション３１０６（図３１Ａ）の終了の結果として再開された場合には、処理は、テストステップ３２２４（図３２）から終了ステップ３２２６に移行し、このステップ３２２６において、クラス”Petition Expired”のエクセプションが送出され、オペレーション”meet”は失敗に終わる。
一方、エージェント１５０Ａ（図３１Ａ）のインタープリートが、エージェントがプレイス２２０Ｂに入ったことの結果として再開された場合には、処理は、テストステップ３２２４からテストステップ３２２８に移行する。このテストステップ３２２８において、エンジン１３２Ｂ（図１５Ｅ）は、プレイス２２０Ｂに入ったエージェント（図示せず）が、ペティションの対象であるか否か、すなわちペティション３１０６（図３１Ａ）を満たし、ステップ３２０４（図３２）において作り出されたテレネームのリストにないか否を判断する。プレイス２２０Ｂに入ったエージェントがペティション３１０６（図３１Ａ）を満たさないか、又はプレイス２２０Ｂに入ったエージェントのテレネームがステップ３２０４（図３２）において作り出されたテレネームのリストのアイテムである場合には、処理は、テストステップ３２２８からステップ（wait）３２２２に移行する。
一方、プレイス２２０Ｂに入ったエージェントが、ペティション３１０６（図３１Ａ）を満たし、このエージェントのテレネームが、ステップ３２０４（図３２）で作り出されたテレネームのリストのアイテムにない場合、処理は、テストステップ３２２８からステップ（meeting）３２３０に移行する。このステップ３２３０では、プレイス２２０Ｂに入ったエージェントは、オペレーション”meeting”を遂行するように指示される。処理は、ステップ（meetng）３２３０からテストステップ３２３２に移行し、このテストステップ３２３２において、エンジン１３２Ｂ（図１５Ｅ）は、プレイス２２０Ｂに入ったエージェントによるオペレーション”meet”の遂行が成功し、プレイス２２０Ｂに入ったエージェントとエージェント１５０Ａのミーティングが受け入れられた、又は、オペレーション”meeting”の遂行が失敗し、プレイス２２０Ｂに入ったエージェントとエージェント１５０Ａのミーティングが拒絶されたかを判断する。
プレイス２２０Ｂに入ったエージェントによるオペレーション”meeting”の遂行が成功した場合、処理は、テストステップ３２３２からステップ（build contact）３２１６に移行する。前述したように、ステップ（build contact）３２１６及びこれに続くステップにおいて、ペティションの対象であるエージェント、すなわちプレイス２２０Ｂに入ったエージェントへのコンタクトが作り出され、そのコンタクトが現在のスタックにプッシュされ、オペレーション”meeting”は成功のうちに終了する。一方、プレイス２２０Ｂに入ったエージェントによるオペレーション”meeting”の遂行に対してエクセプションが送出された場合、処理は、テストステップ３２３２からテストステップ（fully qualifief?）３２３８に移行する。
テストステップ（fully qualifief?）３２３８において、エンジン１３２Ｂ（図１５Ｅ）は、ペティション３１０６（図３１Ａ）が適格であるかを判断する。ペティション３１０６が適格である場合、処理は、テストステップ（fully qualifief?）３２３８（図３２）から終了ステップ３２４０に移行し、この終了ステップにおいて、クラス”Meeting Denied”のエクセプションが送出され、ミーティングプレイス２２０Ｂによるオペレーション”meeting”の遂行が失敗に終わる。
逆に、ペティション３１０６（図３１Ａ）が適格でない場合、処理は、テストステップ（fully qualifief?）３２３８からステップ（add agent to list）３２４２に移行する。ステップ（add agent to list）３２４２では、ペティションの対象であるエージェント、すなわちプレイス２２０Ｂに入ったエージェントのテレネームが、ステップ３２０４において作り出されたテレネームのリストに付加される。処理は、ステップ（add agent to list）３２４２から、前述のステップ３２２２に移行する。
このようにして、エージェント１５０Ａと、ペティションの対象であるエージェントとの間のミーティングが取り決められる。このペティションの対象であるエージェントは、（ｉ）ペティション３１０６において特定されたネーム及びクラスのエージェントであり、（ｉｉ）応答するミーティングプレイスを占有するエージェントであり、（ｉｉｉ）ペティション３１０６において特定された最長時間内に、ミーティングを行うことに同意したエージェントである。この最後に述べた条件は、第１のエージェントによって占有されるミーティングプレイスを占有していないが、ある時間内に到着することが期待されている第２のエージェントとのミーティングを、第１のエージェントが要求することを許容する。
オペレーション”meeting”（図３１Ｂ）の遂行の直後に、スタック３１０２は、そのトップに、前述のコンタクト３１０８を有している。コンタクト３１０８は、エージェント１５０Ｂ（図１５Ｅ）へのリファンスであるプロパティ”subject”を備えている。コンタクト３１０８（図３１Ｂ）のプロパティ”subject”は、コンタクト３１０８のアトリビュート”subject”を指示することによって生成される。コンタクトのアトリビュート”subject”については、アペンディクスＡに詳細に説明されている。したがって、エージェント１５０Ａは、エージェント１５０Ｂ（図１５Ｅ）へのリファレンスを取得し、したがって、エージェント１５０Ｂにフィーチャの遂行を要求することができる。
オペレーション”meeting”のコンテキストにおいて後述するように、エージェント１５０Ｂは、オペレーション”meeting”の遂行におけるアーギュメントとして、コンタクトを使用する。ここで、エージェント１５０Ａを、ミーティングを要求するエージェントとして特定するミーティングプレイス２２０Ｂによるオペレーション”meeting”の遂行の後に、エージェント１５０Ｂによって使用されるコンタクトは、エージェント１５０Ａに対するリファレンスであるプロパティ”subject”も備えている。したがってエージェント１５０Ｂは、エージェント１５０Ａのリファレンスを取得し、エージェント１５０Ａにフィーチャの遂行を要求することができる。
コンタクトされるエージェントは、ミックスインクラス”Contacted”から継承されたクラスのメンバである。以下及びアペンディクスＡに詳細に説明するように、ミックスインクラス”Contacted”は、プロパティ”contacts”へのアクセスを提供するアトリビュート”contacts”を規定する。プロパティ”contacts”は、コンタクトのセットである。エージェント１５０Ｂ（図３３）は、コンタクトされたエージェントであり、したがって、プロパティ”contacts”としてセット３３０２を備えている。前述したように、ミーティングプレイス２２０Ｂによるオペレーション”meeting”の遂行後、エージェント１５０Ｂによるオペレーション”meeting”の遂行において使用されたコンタクトであるコンタクト３４０４は、エンジン１３２Ｂによってセット３３０２に付加される。
ペティションの対象であるエージェントの同意：オペレーション”Meeting”
前述したように、ペティションの対象であるエージェントは、ペティションの対象であるエージェントによるオペレーション”meeting”の遂行によって、ミーティングを要求しているエージェントとのミーティングに、同意したり拒絶したりする。オペレーション”meeting”は、クラス”Agent”によっては、規定も継承もされていない。その代わりに、オペレーション”meeting”は、ミックスインクラス”Petitioned”によって規定されている。クラス”Agent”は、ミックスインクラス”Petitioned”のサブクラスではない。しかし、本発明のユーザによって後から定義される、クラス”Agent”のサブクラスは、ミックスインクラス”Petitioned”のサブクラスであることができる。したがって、このようなユーザ定義サブクラスのメンバであるエージェントのみが、オペレーション”meeting”を遂行することができ、他のエージェントとのミーティングに参加することができる。
図３４Ａは、エージェント１５０Ｂによるオペレーション”meeting”の遂行直前の、エージェント１５０Ａの実行状態を示している。クレーム３４００は、エージェント１５０Ａの実行状態の一部分であり、エージェント１５０Ｂが実行するオペレーション”meeting”の動的状態を記録する。オペレーション”meeting”は、エンジン１３２Ｂによって要求される。オペレーション”meeting”の遂行は、エージェント１５０Ａの実行状態に記憶される。エージェント１５０Ａ又はエージェント１５０Ｂ、好ましくはエージェント１５０Ｂのパーミットは、オペレーション”meeting”の遂行によって喪失され得る。エージェント１５０Ｂ（図１５Ｅ）は、オペレーション”meeting”のレスポンダとして、エンジン１３２Ｂ中において識別される。
スタック３４０２は、フレーム３４００のプロパティ”stack”であり、現在のスタックである。オペレーション”meeting”の遂行の直前に、スタック３４０２は、トップから順に、コンタクト３４０４とペティション３４０６を備えている。
コンタクト３４０４は、ミーティングを要求するエージェントとして、エージェント１５０Ａを特定する。コンタクト３４０４のプロパティ”subjectName”（図示せず）は、エージェント１５０Ａのテレネームと同等のテレネームであり、これによって、要求するエージェントとして、エージェント１５０Ａを特定する。コンタクト３４０４のプロパティ”subjectClass”（図示せず）は、エージェント１５０Ａが１つのインスタンスであるクラスを特定するサイテションである。通常、エージェント１５０Ａのリファレンスであるコンタクト３４０４のプロパティ”subject”（図示せず）は、エンジン１３２Ｂによってニル（０）にされる。したがって、エージェント１５０Ｂは、オペレーション”meeting”の遂行の際にコンタクト３４０４を使用することによって、ミーティングを要求しているエージェントとしてエージェント１５０Ａを適切に特定する上で必要な全ての情報を持つこととなる。しかし、エージェント１５０Ｂは、エージェント１５０Ａに対するリファレンスは持っておらず、エージェント１５０Ａと相互作用することはできない。このように、どちらのエージェントも、他のエージェントと、両者がミーティングに同意するまでは、相互作用することができない。
ペティション３４０６は、ミーティングを要求する際に、エージェント１５０Ａ（図１５Ｅ）によって供給されるペティション３１０６（図３１Ａ）のコピーである。それはこのアーギュメントが”byCopy”をパスするからである。それはこのアーギュメントがパスした”byCopy”だからである。アーギュメント”byCopy”のパスについては、以下及びアペンディクスＡに詳細に説明されている。
エージェント１５０Ｂは、オペレーション”meeting”を成功のうちに遂行することによって、コンタクト３４０４によって特定化されたエージェントとペティション３４０６（図３４Ａ）によって規定されたミーティングを行うことに同意する。このミーティングは、エクセプションの送出により拒絶され、オペレーション”meeting”は失敗に終わる。ミックスインクラス”Petitioned”によって規定されたオペレーション”meeting”のメソッドは決して成功せず、常にクラス”Meeting Denied”のエクセプションを送出する。しかし、ミックスインクラス”Petitioned”から継承された、クラス”Agent”のサブクラスは、オペレーション”meeting”のインプレメンテイションを、ある特定の場合には成功するように、再定義することができる。
エージェントは広い範囲のニーズに応え、広い範囲のサービスを遂行することが予想されるので、クラス”Agent”のサブクラスの数や、オペレーション”meeting”のメソッドのバリエーションは非常に多い。例えば、フローチャート３５００（図３５）は、オペレーション”meeting”のメソッドの一例を示している。ステップ３５０２において、コンタクト３４０４（図３４Ａ）及びペティション３４０６は、スタック３４０２からポップされる。処理は、ステップ３５０２（図３５）からステップ３５０４に移行し、このステップ３５０４において、コンタクト３４０４（図３４Ａ）のアトリビュート”subjectClass”が問い合わされて、コンタクト３４０４のプロパティ”subjectClass”が生成する。処理は、ステップ３５０４（図３５）からテストステップ３５０６に移行し、このテストステップ３５０６において、コンタクト３４０４（図３４Ａ）のプロパティ”subjectClass”が、特定のクラスのサイテションと比較される。コンタクト３４０４のプロパティ”subjectClass”がサイテションに等しい場合、処理は、テストステップ３５０６（図３５）から終了ステップ３５０８に移行し、この終了ステップ３５０８において、オペレーション”meeting”は、成功のうちに終了する。そして、これにより、ミーティングに対する同意が得られる。一方、コンタクト３４０４（図１５Ａ）のプロパティ”subjectClass”がサイテションに等しくない場合、処理は、テストステップ３５０６（図３５）から終了ステップ３５１０に移行し、この終了ステップ３５１０において、クラス”Meeting Denied”のエクセプションが送出され、オペレーション”meeting”が失敗に終わる。そして、これにより、コンタクト３４０４（図３４Ａ）によって特定されたエージェントとのミーティングが拒絶される。
前述したように、オペレーション”meeting”の遂行の要求においてアーギュメントとしてエージェント１５０Ｂ（図１５Ｅ）に供給され、エージェント１５０Ａを特定するコンタクト３４０４は、エージェント１５０Ａに対するリファレンスを含んでいない。その代わりに、コンタクト３４０４（図３４Ａ）のプロパティ”subject”は、ニル（０）である。前述したように、ミーティングプレイス２２０Ｂ（図１５Ｅ）によるオペレーション”meeting”の遂行によって、ミーティングの実施が成功すると、エンジン１３２Ｂは、コンタクト３４０４（図３４Ａ）のプロパティ”subject”を、エージェント１５０Ａに対するリファレンスとなるように変更する。
このように、アペンディクスＡに記載されるコンピュータインストラクションセットの十分な一般性とデータ処理能力は、特定のエージェントが、どのようなエージェントと、どのような事情のもとで、ミーティングに同意するように構成されているかを定めるために、多くの量のデータを処理する複雑なロジックを適用するために、使用することができる。
図３４Ｂは、エージェント１５０Ｂ（図１５Ｅ）によるオペレーション”meeting”の遂行直後の、フレーム３４００の状態を示している。スタック３４０２（図３４Ｂ）は、オペレーション”meeting”はリザルトを生成しないので空（エンプティ）である。オペレーション”meeting”のアクセスは、”システム”であり、エンジンだけがオペレーション”meeting”を要求することができる。なお、ミックスインクラス”Petitioned”に規定されたオペレーション”meeting”は、以上及びアペンディクスＡにおいて説明されるクラス”Meeting Place”に規定されるオペレーション”meet”とは別のものである。
エージェント間の相互作用の終了：オペレーション”Part”
前述したように、２つのエージェントは、これらのエージェント間のミーティングが行われている間、相互のエージェントに対するリファレンスや、エージェントによって所有されるオブジェクトに対するリファレンスを交換する。２つのエージェントの間の相互作用を終了するには、確実に、どちらのエージェントも、他のエージェントに対するリファレンスや、他のエージェントが所有するオブジェクトへのリファレンスを持たないようにすることが必要とする。あるミーティングプレイスを占有する２つのエージェントの間のミーティングに参加するエージェントは、ミーティングプレイスによるオペレーション”part”の遂行を要求することによって、そのミーティングを終了させることができる。ミーティングプレイス２２０Ｂを占有しており、エンジン１３２Ｂ（図１５Ｅ）によって実行されているエージェント１５０Ａ、１５０Ｂを、図３６に示す。ミーティングプレイス２２０Ｂによるオペレーション”meeting”の遂行の成功によって、エージェント１５０Ａは、エージェント１５０Ｂへのリファレンス１５０Ａ−Ｒ１を取得しており、エージェント１５０Ｂは、エージェント１５０Ａへのリファレンス１５０Ｂ−Ｒ１を取得している。また、オブジェクト３６０２は、エージェント１５０Ａによって所有されており、同様に、オブジェクト３６０４は、エージェント１５０Ｂによって所有されている。図３６は、エージェント１５０Ａ、１５０Ｂが相互作用してオブジェクト３６０２、３６０４へのリファレンスを交換した後の、エージェント１５０Ａ、１５０Ｂの状態を示している。エージェント１５０Ａは、オブジェクト３６０２へのリファレンスをエージェント１５０Ｂに与えることによって、エージェント１５０Ｂにオブジェクト３６０２へのアクセスを許可する。リファレンス１５０Ｂ−Ｒ１、１５０Ｂ−Ｒ２によるこのようなアクセスによって、エージェント１５０Ｂは、エンジン１３２Ｂにインストラクションを送出することができ、それによってエージェント１５０Ａ、オブジェクト３６０２は、送出されたインストラクションに従って処理を行うことができるようになる。同様に、エージェント１５０Ｂは、オブジェクト３６０４へのリファレンス１５０Ａ−Ｒ２をエージェント１５０Ａに与えることによって、エージェント１５０Ａにオブジェクト３６０４へのアクセスを許可する。
エージェント１５０Ａは、それぞれエージェント１５０Ｂ、オブジェクト３６０４、オブジェクト３６０２へのリファレンス１５０Ａ−Ｒ１、１５０Ａ−Ｒ２、１５０Ａ−Ｒ３を有している。リファレンス１５０Ａ−Ｒ１、１５０Ａ−Ｒ２、１５０Ａ−Ｒ３は、（ｉ）スタック中に含まれているか、又は、エージェント１５０Ａの実行状態の一部分であるフレーム（図示せず）の変数リスト（図示せず）内に収容されているか、又は（ｉｉ）エージェント１５０Ａのプロパティ又はプロパティの一成分として格納されている。エージェントの実行状態については後で説明する。同様に、エージェント１５０Ｂは、エージェント１５０Ａ、オブジェクト３６０２及びオブジェクト３６０４へのそれぞれのリファレンス１５０Ｂ−Ｒ１、１５０Ｂ−Ｒ２、１５０Ｂ−Ｒ３を有している。エージェント１５０Ｂは、オブジェクト３６０４へのリファレンス１５０Ａ−Ｒ２をエージェント１５０Ａに与えることによって、（ｉ）エージェント１５０Ａに、オブジェクト３６０４がオペレーションを遂行するように要求することを許可し、又は（ｉｉ）エージェント１５０Ａに、オブジェクト３６０４の一部又は全部をコピーすることを許可する。
エージェント１５０Ａ又は１５０Ｂは、ミーティングプレイス２２０Ｂがオペレーション”part”を遂行するように要求することによって、エージェント１５０Ａ、１５０Ｂの間の相互作用を終了させることができる。以下の説明では、エージェント１５０Ａが、ミーティングプレイス２２０Ｂにオペレーション”part”の遂行を要求するエージェントであるとする。図３７Ａ、図３７Ｂは、それぞれ、ミーティングプレイス２２０Ｂによるオペレーション”part”の遂行の直前及び直後におけるエージェント１５０Ａの状態を示している。フレーム３７０２は、エージェント１５０Ａの実行状態の一部分であり、ミーティングプレイス２２０Ｂによって遂行されるオペレーション”part”の状態を記録する。ミーティングプレイス２２０Ｂは、フレーム３７０２のプロパティ”responder”であり、したがってオペレーション”part”のレスポンダである。スタック３７０４は、エージェント１５０Ａの実行状態の一部分でもあるフレーム３７０２のプロパティ”stack”であり、現在のスタックである。
スタック３７０４のトップにはコンタクト３７０６がある。コンタクト３７０６は、エージェント１５０Ａがそれから分離されるべきエージェントとして、エージェント１５０Ｂを特定している。エンジン１３２Ｂ（図１５Ｅ）は、ミーティングプレイス２２０Ｂのためにオペレーション”part”を実行している間に、オペレーション”part”を行うようにエージェント１５０Ｂに指示する。エージェント１５０Ｂは、エージェント１５０Ｂが分離しようとしているエージェントとしてエージェント１５０Ａを特定するコンタクトを、唯一のアーギュメントとして使用する。通常はエージェント１５０Ａへのリファレンスであるコンタクトのプロパティ”subject”は、オペレーション”part”を要求する前にエンジン１３２Ｂによって、ボイドされる（無効にされる）。したがって、エージェント１５０Ｂは、ミーティングの終了後にエージェント１５０Ａへのリファレンスとともに残されることはない。
オペレーション”part”の遂行において、エージェント１５０Ｂは、リザルトを生成しない。オペレーション”part”の遂行の動的状態は、エージェント１５０Ｂ（図１５Ｅ）やエージェント１５０Ａの実行状態の一部分ではなく、エンジンプロセスの実行状態の一部分である。オペレーション”part”の実行によって送出されたエクセプションは、エージェント１５０Ｂやエージェント１５０Ａには経験されず、したがってこれらのエージェントに対して効果を持たない。オペレーション”part”の遂行において、エージェント１５０Ｂは、エージェント１５０Ａ、１５０Ｂの間のミーティングが、エージェント１５０Ａによって終了されたことの通知を受ける。エージェント１５０Ｂがコンタクトされるエージェントである場合、エージェント１５０Ｂは、エージェント１５０Ａを参照するコンタクトである、エージェント１５０Ａのプロパティ”contacts”のアイテムは、エージェント１５０Ｂのプロパティ”contacts”から除かれる。オペレーション”part”のアクセスは、”システム”であるため、エンジン１３２Ｂだけが、エージェント１５０Ｂがオペレーション”part”を遂行するように要求できる。
図３７Ｂは、ミーティングプレイス２２０Ｂによるオペレーション”part”の遂行の直後の、エージェント１５０Ａの状態を示している。オペレーション”part”はリザルトを生成しないので、スタック３７０４は空（エンプティ）である。
エージェント１５０Ａ、１５０Ｂの間のミーティングの終了は、エージェント１５０Ｂ及びエージェント１５０Ｂによって所有される全てのオブジェクトに対する、エージェント１５０Ａ内の全てのリファレンスをボイドする（無効にする）。例えば、図３８に示すように、エージェント１５０Ｂを以前に特定していたリファレンス１５０Ａ−Ｒ１と、オブジェクト３６０４を以前に特定していたリファレンス１５０Ａ−Ｒ２とは、どちらもボイドされる。同様に、エージェント１５０Ｂにおいても、エージェント１５０Ａを以前に参照していたリファレンス１５０Ｂ−Ｒ１と、オブジェクト３６０４を以前に参照していたリファレンス１５０Ｂ−Ｒ２とは、ボイドされる。したがって、エージェント１５０Ａ、１５０Ｂは、もはや情報の交換を行うことはできない。エージェント１５０Ａ、１５０Ｂが、コンタクトされるエージェントである場合、エージェント１５０Ａを特定化するコンタクトは、エージェント１５０Ｂのプロパティ”contacts”から除去され、エージェント１５０Ｂを特定するコンタクトは、エージェント１５０Ａのプロパティ”contacts”から除去される。
大規模な広域ネットワークへの本発明の応用可能性
これまで、オペレーション”go”又はオペレーション”send”の実行によって、エージェント１５０Ａ（図１５Ａ）がミーティングプレイス２２０Ｂにそれ自身を転送したり、エージェント１５０Ａのクローンがミーティングプレイス２２０Ｂに転送されたりする通信システムを開示してきた。そして、エージェント１５０Ａは、エージェント１５０Ａ、１５０Ｂとの間のミーティングを取り決めるために、ミーティングプレイス２２０Ｂによってオペレーション”meet”を遂行するように、要求する。このミーティングの間、エージェント１５０Ａ、１５０Ｂは、後で詳細に説明するように、情報を交換することができる。
以上の説明は、本発明の非常に簡単な使用に関するものであり、本発明は、もっと汎用的に使用することが可能である。本文及びアペンディクスＡに記述されるコンピュータインストラクションセットを応用することにより、エージェントは、どのプレイスにそのエージェント自身を転送させるかを判断したり、どのエージェントとどのプレイスでミーティングを行って情報を交換するのかを判断したりするための、非常に複雑で込み入ったロジックを使用することができる。
さらに、本発明は、以上に説明したような２又は３だけのコンピュータシステムを有するネットワークや、同種のコンピュータシステムから成るネットワークに限定されるものではない。本文及びアペンディクスＡに記述されるコンピュータインストラクションセットは、大きなネットワーク内を移動するエージェントを生成できるように、大きなネットワークにわたってプレイスを作り出しその位置を決定することができる。ここで開示したインストラクションセットは、異機種ネットワークにおいても実行することができるので、広域ネットワークは、大型のメインフレームコンピュータ、ローカルエリアネットワーク、小型のパーソナルコンピュータ等を含むことができ、エージェントは、このような広域ネットワーク内を移動できる。
さらに、２つのエージェントの間の相互作用としてミーティングを定義したが、エージェントは、複数のミーティングに同時に参加することができる。
したがって、エージェントは、このエージェントが占有しているミーティングプレイスと同じミーティングプレイスを占有している他の多数のエージェントと、同時に相互作用することができる。
エージェント間の相互作用−実行モデルへのイントロダクション
エージェント１５０Ａとエージェント１５０Ｂとの間のミーティングの間、エージェント１５０Ａ（図１５Ｅ）は、フィーチャを遂行するようにエージェント１５０Ｂに指示するインストラクションを送出することによって、エージェント１５０Ｂと相互作用する。フィーチャの遂行が要求されるメカニズムについて後で説明する。このメカニズムについては、以下及びアペンディクスＡに詳細に説明される。
実行状態は、各プロセスに関係している。用語の解説において説明したように、各メソッドは、そのメソッドの実行の間、ある動的状態を有する。プロセスの実行状態は、１以上のフレームを含み、各フレームは、そのプロセスの実行状態の一部分である、メソッドの動的状態を記録する。各フレームは、スタックを備える。このスタックには、オペレーションの要求の前にアーギュメントをプッシュすることができる。また、このスタックから、オペレーションの実行後にリザルトをポップすることができる。現在のフレームのスタックが、現在のスタックとなる。現在のフレームは、エンジンによって実行されているコンピュータインストラクションを含んでいるフレームである。
オペレーションを要求する前に、リクエスタは、０以上のオブジェクトに対するリファレンスを、現在のスタックにプッシュする。これによって、これらのオブジェクトは、オペレーションのためのアーギュメントとして供給される。次に、リクエスタは、レスポンダに対するリファレンスを、現在のスタックにプッシュする。レスポンダは、要求されたオペレーションを実行するように、リクエスタによって指示されたオブジェクトである。最後に、リクエスタは、要求されたオペレーションを特定する識別子の実行を要求する。
要求されたオペレーションを実行する際に、エンジンは、現在のスタックのトップからオブジェクトをポップする。そして、このオブジェクトはオペレーションのレスポンダとされる。オペレーションをインプリメントするメソッドは、レスポンダがメンバであるクラス内に見出され、そして実行される。一実施例によれば、メソッドの遂行は、（ｉ）新しいスタックを形成し、（ｉｉ）現在のスタックからオペレーションのアーギュメントをポップして、それらを新しいスタックにプッシュし、（ｉｉｉ）新しいスタックを現在のスタックとし、（ｉｖ）新しい現在のスタックからアーギュメントをポップし、（ｖ）オペレーションのよってリザルトが生成された場合、そのリザルトを新しい現在のスタックにプッシュし、（ｖｉ）リザルトがあるならば、リザルトを、新しい現在のスタックからポップし、以前に現在のスタックであったスッタクにプッシュする。オペレーション及びフィーチャの実行については、以下及びアペンディクスＡにおいて、一層詳細に説明されている。
以下の例は、オペレーションが要求されるメカニズムを表している。前述したように、ミーティングの間、エージェント１５０Ａは、オペレーションを遂行するようにエージェント１５０Ｂに指示することによって、エージェント１５０Ｂと相互作用する。エージェント１５０Ａは、要求されたオペレーションへのアーギュメントとして、エージェント１５０Ａに含まれるオブジェクトを供給する。これにより、エージェント１５０Ａは、エージェント１５０Ｂがこれらのオブジェクトにアクセスすることを許可する。また、エージェント１５０Ｂは、要求されたオペレーションのリザルトとして、オブジェクトを生成する。これにより、エージェント１５０Ｂは、エージェント１５０Ａがこのオブジェクトにアクセスすることを許可する。
図３９Ａ〜３９Ｆは、エージェント１５０Ｂと相互作用して情報のやり取りを行うエージェント１５０Ａ（図１５Ｅ）の例を示している（エージェント１５０Ａについては、図３９Ａ〜図３９Ｆには示していない。）。
図３９Ａは、空（エンプティ）のスタック３９０２を示している。スタック３９０２は、エージェント１５０Ａ（図示せず）の実行状態の現在のスタックである。図３９Ａは、スタック３９０２を空（エンプティ）であるものとして示しているが、必ずしも空でなくてもよい。しかし、この例において、図３９Ａに示すスタック３９０２上のオブジェクトが影響されることはない。”This is a message”というテキストを有するような文字列であるストリング３９０４は、スタック３９０２（図３９Ｂ）にプッシュされる。エージェント１５０Ｂへのリファレンスは、スタック３９０２（図３９Ｃ）にプッシュされる。
エージェント１５０Ａは、次に、識別子を実行する。ここで、この識別子のテキストは、”store”であり、この識別子は、オペレーション”store”を参照する。識別子の実行に際して、オブジェクト、すなわちエージェント１５０Ｂは、スタック３９０２からポップされ、そのオブジェクトは、オペレーション”store”（図３９Ｄ）を実行するように指示される。この例において、オペレーション”store”は、エージェント１５０Ｂがメンバであるクラスに定義される。このクラスのメソッドは、フローチャート４０００（図４０）によって示される。
オペレーション”store”を遂行する際に、エージェント１５０Ｂは、ステップ４００２（図４０）において、スタック３９０２からストリング３９０４をポップする。ここで、エージェント１５０Ｂは、オペレーション”store”を遂行するものであるが、エージェント１５０Ｂによるオペレーション”store”の実行の動的状態を記録するフレーム（図示せず）は、エージェント１５０Ａ（図示せず）の実行状態の一部である。エージェント１５０Ａのパーミットのチャージアラウワンス、すなわちプロパティ”charges”は、エージェント１５０Ｂによるオペレーション”store”の遂行のリザルトとして送出される。エージェント１５０Ｂは、オペレーション”store”を遂行するオブジェクトである。これは、（ｉ）エージェント１５０Ａ（図示せず）の実行状態が、エージェント１５０Ｂをレスポンダとして特定し、（ｉｉ）オペレーション”store”のメソッドが、エージェント１５０Ｂがメンバであるクラスによって提供され、（ｉｉｉ）エージェント１５０Ｂの内部状態が、オペレーション”store”の遂行のコンテキストを提供するからである。
処理は、ステップ４００２からステップ４００４に移行し、このステップ４００４において、ストリング３９０４のコピーであるストリング３９０４−Ｃが形成され、図３９Ｅに示した状態となる。ストリング３９０４、３９０４−Ｃは、フレーム３９０６内に含まれている。ここで、フレーム３９０６は、エージェント１５０Ａの実行状態の一部分であり、エージェント１５０Ｂによって遂行されたオペレーション”store”の動的状態を記録している。処理は、ステップ４００４からステップ４００６（図４０）に移行し、このステップ４００６において、エージェント１５０Ｂは、ストリング３９０４−Ｃを格納する。処理は、ステップ４００６からステップ４００８に移行し、このステップ４００８において、エージェント１５０Ｂは、スタック３９０２からポップされたストリング３９０４を廃棄する。処理は、ステップ４００８から終了ステップ４０１０に移行し、その終了ステップ４０１０において、オペレーション”store”は成功のうちに終了する。ステップ４００８の結果、図３９Ｆに示したような状態となる。こうして、エージェント１５０Ａは、エージェント１５０Ｂへの情報を転送を成功する。
このように、エージェント１５０Ａは、オペレーションを遂行するようにエージェント１５０Ｂに要求することによって、エージェント１５０Ｂと相互作用する。また、エージェント１５０Ａは、オブジェクトを、要求したオペレーションへのアーギュメントとして、及び実行されたオペレーションのリザルトとして、エージェント１５０Ｂに送出する。以上の説明では、エージェント１５０Ｂは、エージェント１５０Ａの要求に従って、オペレーションを遂するものとしてきた。しかし、オブジェクトによるフィーチャの遂行は、実際には、そのオブジェクトの内部状態とクラスによって規定されたコンテキストに基づいた、エンジンによるフィーチャの遂行である。なお、特定のフィーチャの挙動は、そのフィーチャを実行しているオブジェクトの内部状態に依存して変化する。ここで、オブジェクトの内部状態の一部分は、オブジェクトのプロパティによって定義される。
エージェント１５０Ｂは、例えば、ステップ４００８の後、終了ステップ４０１０の前に、スタック３９０２にオブジェクトをプッシュすることによって、オブジェクトをエージェント１５０Ｂに転送させることもできる。このオブジェクトは、エージェント１５０Ａによるオペレーション”store”のリザルトとして、スタック３９０２からポップされる。さらに、オペレーション”meet”について前述したように、エージェント１５０Ｂは、エージェント１５０Ａへのリファレンスを含んでいる。したがって、エージェント１５０Ｂは、あるオペレーションを行うようにエージェント１５０Ａに指示したり、そのオペレーションへのアーギュメントとしてエージェント１５０Ａにオブジェクトを供給したりすることもできる。
本発明のコンピュータインストラクションセットの移植性
本発明の多くの様相は、非常に優れた可動性と融通性をプロセスに許容する。第１に、本発明のコンピュータインストラクションセットは、同機種ネットワーク上でも、異機種ネットワーク上でも、同様にインプリメントされる。第２に、クラスは、コンピュータインストラクションのオブジェクトであるので、プロセスと共にネットワークを介して移動することができる。第３に、コンピュータインストラクションセットはインタープリートされる。
コンピュータインストラクションセットの同質性
前述したように、データ及びコンピュータインストラクションを含むエージェントは、１つのコンピュータシステムから他のコンピュータシステムに移動することができ、どのようなコンピュータシステムにおいても実行可能である。
さらに、エージェントがその内部において移動することのできるネットワークは、同機種ネットワークでも、異機種ネットワークでもよい。エージェントが移動可能であるため、エージェントのプロシージャ部分を形成する各コンピュータインストラクションが、ネットワーク上のどのコンピュータシステムで実行されるかを正確に定めることは、必ずしもできない。したがって、エージェントがその内部を通って移動するネットワークの各コンピュータシステムが、同一のコンピュータインストラクションセットをサポートしていることが大切である。
開示されたコンピュータインストラクションセットにおいてオブジェクトとして表されるクラス
第１のコンピュータシステムにおいて実行されているエージェントは、以前に存在していなかった新しいオブジェクトクラスを作り出すことができる。このとき、エージェントは、第２のコンピュータシステムにおいて実行中のエンジンに向かって移動することができる。そして、新しく形成されたクラスのメンバの処理を含めて、エージェントのインタープリートは、その第２のコンピュータシステム内において続けられる。この場合、第２のコンピュータシステムにおいて実行されているエンジンは、新しく形成されたクラス、又はそのクラスのいかなるメンバとも、以前に遭遇したことはない。そして、クラスは、開示されたインストラクションセットのオブジェクトとされるので、クラスは、１つのコンピュータシステムから別のコンピュータシステムに、エージェントとともに、移動することができる。
クラス構造
いくつかのオブジェクトは、クラス、すなわちクラスオブジェクト、識別子及びクラス定義を定義して表現するために、組み合わされる。クラスオブジェクト、識別子及びクラス定義は、それぞれ、クラス”class”、”Identifire”、”Class Definition”のメンバである。
クラスオブジェクト、すなわちクラス”class”のメンバは、そのフィーチャが同一のインターフェイス及びインプリメンテーションを持つオブジェクトセットを表すオブジェクトである。オブジェクトセットは、このクラスの”インスタンス”である。クラス”class”及びクラスオブジェクトについては、以下及びアペンディクスＡに詳細に説明される。
識別子、すなわちクラス”Identifire”のメンバは、あるクラスをリファレンスするために、インターフェイスオブジェクト又はインプリメンテーションオブジェクト内において使用される。なお、識別子は、他の形式のオブジェクトも参照する。インターフェイスオブジェクト及びインプリメンテーションオブジェクトについては、後で詳細に説明する。第１のインターフェイスオブジェクト又はインプリメンテーションオブジェクト内の、第１のクラスに参照する第１の識別子は、第１のインターフェイスオブジェクト又はインプリメンテーションオブジェクト内の、他のクラスに参照する識別子とは、異なっている。しかし、第２のインターフェイスオブジェクト又はインプリメンテーションオブジェクトは、第２のクラスに参照するために、第１の識別子と同等の識別子を使用することができる。
インターフェイスオブジェクトとインプリメンテーションオブジェクトは、いくつかのフィーチャ、すなわちオペレーション及びアトリビュートを、規定する。ここで、アトリビュート（アトリビュートにより、オブジェクトは、オブジェクトの内部状態の一部を供給又は変更するように指示される。）と、オペレーション（オペレーションにより、オブジェクトは、いくつかのコンピュータインストラクションを実行するように指示される。）との間の区別は、本発明の概念形成において重要である。アトリビュートは、概念的には、オペレーションの特別のケースである。例えば、あるオブジェクトのアトリビュートを問い合わせると、そのオブジェクトは、そのオブジェクトの内部状態についての情報を供給するコンピュータインストラクションを実行するように指示される。
繰り返し説明したきたように、オブジェクトによるフィーチャの遂行は、実際には、そのオブジェクトの内部状態及びクラスによって規定されたそのオブジェクトのコンテキストに基づく、エンジンによるフィーチャの遂行である。ある特別なフィーチャの挙動は、そのフィーチャを遂行しているオブジェクトの内部状態に依存して変化する。ここで、オブジェクトの内部状態は、部分的には、オブジェクトのプロパティによって規定される。
単一の識別子で、別々のクラスによって各々規定される２つの別々のフィーチャを同時に特定することができる。例えば、オペレーション”add”は、クラス”Dictionary”による定義とは違うように、クラス”Number”によって定義される。インターフェイス及びインプリメンテーションを選択する際に、フィーチャを遂行しているエンジンは、そのフィーチャを遂行するオブジェクトのクラスにとって適切な、フィーチャの定義と、関連するメソッドオブジェクトとを選択する。換言すれば、フィーチャの定義は、レスポンダをメンバとするクラスから検索される。フィーチャを定義しているコンクリートクラスは、そのフィーチャのインターフェイスと、そのフィーチャのインプリメンテーションとの両方を規定する。フィーチャを定義するアブストラクトクラスは、そのフィーチャのインターフェイスを規定し、またそのフィーチャのインプリメンテーションを規定することができる。
フィーチャの”インタフェイス”は、もしあるならば、そのフィーチャの遂行において使用されたアーギュメントと、生成されるリザルトとを規定する。さらに、フィーチャによって生成されうるエクセプションは、そのフィーチャのインターフェイスによって規定される。あるクラスによって規定されたフィーチャのインターフェイスは、クラス定義オブジェクトのプロパティ”interface”であるインターフェイスオブジェクト、すなわちクラス”interface”のメンバによって規定され、集合的に表される。クラス”interface”については、後で詳細に説明する。
フィーチャのインプリメンテーションは、そのフィーチャの”メソッド”によって定義される。フィーチャのメソッドは、取られるべき動作、すなわちそのフィーチャの遂行により実行されるべきコンピュータインストラクションを規定する。メソッドオブジェクト、すなわちクラス”method”のメンバは、一般に、一連のインストラクションであり、これらのインストラクションの実行は、そのフィーチャの遂行を構成する。あるクラスによって規定又は継承されたフィーチャのインプリメンテーションは、クラス定義オブジェクトのプロパティ”implementation”であるインプリメンテーションオブジェクト、すなわちクラス”implementation”のメンバによって規定され、集合的に表される。クラス”implementation”については、後で詳細に説明する。
フィーチャの定義は、クラスのスーパークラスから継承される。換言すれば、あるフィーチャがある特定のクラスについて定義される場合、そのフィーチャは、そのクラスのサブクラスについても定義される。しかし、サブクラスは、フィーチャのインプリメンテーションを再定義して、スーパークラスから継承されたインプリメンテーションと置き換えることができる。しかし、そのサブクラスのスーパークラスによってフィーチャが”シール”されている場合は、そのサブクラスは、スーパークラスから継承されたインプリメンテーションを再定義することはできない。
クラスによって定義されるフィーチャは、そのクラスのクラス定義であるクラス”Class Definition”のメンバによって定義される。クラス自身は、クラスオブジェクトであるクラス”class”のメンバによって表される。クラスは、識別子であるクラス”Indentifire”のメンバによって参照される。
クラスは、最初にアペンディクスＡに構造が説明されているクラス定義を作り出すことによって、作り出される。
クラス定義は、関係するクラスオブジェクトを作り出すために、オペレーション”makeClasses”を遂行するように指示される。オペレーション”makeClasses”の構文及び挙動は、アペンディクスＡに詳細に説明されている。形成されるクラスオブジェクトは、（ｉ）クラス定義オブジェクトに含まれる情報を保存することができ、（ｉｉ）サイテション４１０８（図４１Ａ）、インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２をクラスオブジェクトから導出することができるならば、特定の形式や構造である必要はない。なお、（ｉｉ）の条件は、アペンディクスＢに説明するように、クラスオブジェクトのエンコードに必要である。
一実施例において、クラス定義４１００（図４１Ａ）のためにオペレーション”makeClasses”を遂行しているエンジンは、クラス定義４１００のプロパティをクラスオブジェクト４１０２に複写して、クラスオブジェクト４１０２（図４１Ｂ）を形成する。
オペレーション”makeClasses”の遂行後、クラス定義４１００は廃棄される。クラス定義４１００のプロパティについては、後で詳細に説明する。クラス定義４１００のプロパティは、クラスオブジェクト４１０２に複写されている。したがって、クラスオブジェクト４１０２は、クラス定義オブジェクト４１００に含まれる全ての情報を含んでおり、クラス定義オブジェクト４１００のプロパティを導出することができる。
他の実施例において、コンパイルされたコンピュータプロセスの処理効率の向上は、サイテション４１０８、インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２の情報を複製し、クラスオブジェクト４１０４内にサイテション構造４１０８Ｃ（図４１Ｃ）、インターフェイス構造４１１０Ｃ及びインプリメンテーション構造４１１２Ｃをそれぞれ形成することによって、実現される。コンパイルされるコンピュータインストラクションから成るコンピュータプロセスは、インストラクションがインタープリートされるコンピュータプロセスに比べて、一般により効率的であり、より少ないＣＰＵクロックサイクルで、与えられたタスクを遂行する。前述したように、コンピュータインストラクションは最初は人が理解しうるソースコードである。コンピュータインストラクションがコンピュータによって実行される前に、このインストラクションは、コンピュータによって理解されうるオブジェクトコードやマシンコードに翻訳されなければならない。インタープリートされるコンピュータプロセスは、各コンピュータインストラクションを実行する毎に、このような翻訳を必要とするが、コンパイルされたコンピュータプロセスは、コンパイルされたコンピュータプロセスの実行時に、このような翻訳を必要としない。したがって、コンパイルされたコンピュータプロセスは、インタープリートされるコンピュータプロセスに比べて、実質的により効率的である。
サイテション構造４１０８Ｃ、インターフェイス構造４１１０Ｃ及びインプリメンテーション構造４１１２Ｃは、それぞれサイテション４１０８、インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２に相当し、コンパイルされたコンピュータインストラクション、例えばＣ＋＋プログラミング言語で記述されるようなコンピュータインストラクションによって形成されるオブジェクトである。
サイテション４１０８、インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２（図４１Ａ）の構造を、クラスオブジェクト４１０４（図４１Ｃ）に、それぞれサイテション構造４１０８Ｃ、インターフェイス構造４１１０Ｃ及びインプリメンテーション構造４１１２Ｃとして複写することによって、クラスオブジェクト４１０４によって表されるクラスに関する情報は、この情報をクラスオブジェクト４１０２（図４１Ｂ）のサイテション４１０８、インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２から復元する場合に比べて、より効率的に復元することができる。サイテション構造４１０８Ｃ（図４１Ｃ）、インターフェイス構造４１１０Ｃ及びインプリメンテーション構造４１１２Ｃに含まれる情報は、クラス定義４１００（図４１Ａ）の、対応するプロパティに含まれる情報と実質的に同等である。
クラスオブジェクトに含まれる情報は、そのクラスオブジェクトが導出されたクラス定義内に含まれる情報と、実質的に同等である。したがって、クラス定義の構造の説明は、クラスオブジェクトに含まれる情報の性質の説明を兼ねることとなる。
クラス定義オブジェクト
クラスによって定義されたフィーチャは、そのクラスを定義するクラス定義オブジェクトにおいて定義される。クラス定義オブジェクト４１００の構造は、図４１Ａに示されている。クラス定義オブジェクト４１００は、プロパティ”citation”、”interface”、”implementation”を含んでいる。サイテション４１０８は、クラス定義オブジェクト４１００のプロパティ”Citation”であり、クラス定義オブジェクト４１００によって定義されたクラスを特定するとともに、そのクラスのオーソリティ、タイトル及びエディションも特定する。サイテションの構造については、以下及びアペンディクスＡに一層詳細に説明される。
インターフェイスオブジェクト４１１０及びインプリメンテーションオブジェクト４１１２は、それぞれクラス定義オブジェクト４１００のプロパティ”interface”、”implementation”である。インターフェイスオブジェクト４１１０は、クラス定義オブジェクト４１００によって定義されたフィーチャのインターフェイスを定義し、インプリメンテーションオブジェクト４１１２は、クラス定義オブジェクト４１００によって定義されたフィーチャのインプリメンテーションを定義する。
インターフェイスオブジェクト
インターフェイスオブジェクト４１１０の構造は図４２に示されている。インターフェイスオブジェクト４１１０のプロパティには、プロパティ”isAbstract”、”classFeatures”、”sealedClassFeatures”、”instanceFeatures”、”sealedInstanceFeatures”、”vocabulaty”、”superclasses”が含まれる。
ブーリアン４２０８は、インターフェイスオブジェクト４１１０のプロパティ”isAbstract”である。インターフェイスオブジェクト４１１０をインターフェイスとするクラスは、ブーリアン４２０８が”true”であれば、抽象クラスであり、ブーリアン４２０８が”true”でなければ、コンクリートクラスである。
レキシコン４２１８は、インターフェイスオブジェクト４１１０のプロパティ”classFeatures”である。レキシコン４２１８は、そのクラスの”クラスフィーチャ”の定義のレキシコン（辞書）である。ここで、クラスのクラスフィーチャとは、クラス自身が、すなわちクラス定義オブジェクト４１００（図４１Ａ）によって表されるクラスが、レスポンダとなるフィーチャである。レキシコン４２１８（図４２）のキー、例えば識別子４２１８Ｋは、クラスフィーチャを参照する識別子である。レキシコン４２１８の値、例えばフィーチャ定義４２１８Ｖは、クラスフィーチャを定義するフィーチャ定義である。フィーチャ定義については、後で詳細に説明する。
セット４２１２は、インターフェイスオブジェクト４１１０のプロパティ”sealedClassFeatures”である。セット４２１２は、シールされたクラスフィーチャを参照する、例えば識別子４２１２Ｉのような、識別子のセットである。シールされたフィーチャは、サブクラスが変更することができないフィーチャである。フィーチャがシールされていない場合、クラス定義オブジェクト４１００（図４１Ａ）によって表されたクラスのサブクラスは、フィーチャのインプリメンテーションを再定義することによって、そのフィーチャを変更することができる。
レキシコン４２１４（図４２）は、インターフェイスオブジェクト４１１０のプロパティ”instanceFeatures”である。レキシコン４２１４は、クラスの”インスタンスフィーチャ”の定義のレキシコン（辞書）である。クラスのインスタンスフィーチャは、そのクラスのメンバがレスポンダであるフィーチャである。レキシコン４２１４（図４２）のキー（レキシコン４２１４のキーや値は図示していない）は、インスタンスフィーチャを参照する識別子であり、レキシコン４１２４の値は、インスタンスフィーチャを定義するフィーチャ定義である。
セット４２１６は、インターフェイスオブジェクト４１１０のプロパティ”sealedIntanceFeatures”である。セット４２１６は、シールされたインスタンスフィーチャを参照する識別子（図示せず）のセットである。
レキシコン４２１８は、インターフェイスオブジェクト４１１０のプロパティ”vocabulaty”である。レキシコン４２１８は、インターフェイスオブジェクト４１１０において参照されたユーザ定義クラスの識別子を、これらのクラスのサイテションと関連させる。レキシコン４２１８のキーは、識別子、例えば識別子４２１８Ｋであり、レキシコン４２１８の値は、対応するサイテション、例えばサイテション４２１８Ｖである。サイテションについては、以下及びアペンディクスＡに詳細に説明される。インターフェイスオブジェクト４１１０のプロパティ”vocabulary”、すなわちレキシコン４２１８は、インターフェイスオブジェクト４１１０の”ボキャブラリィ”であり、また、クラス定義オブジェクト４１００（図４１Ａ）によって定義されたクラスの”ボキャブラリィ”である。
リスト４２２０（図４２）は、インターフェイスオブジェクト４１１０のプロパティ”superclasses”である。リスト４２２０は、クラスを参照する識別子、例えば識別子４２２０Ｉのリストである。リスト４２２０の識別子４２２０Ｉによって参照されるクラスは、クラス定義オブジェクト４１００（図４１Ａ）によって定義されたクラスのイミディエートインターフェイススーパークラスである。リスト４２２０（図４２）の最後のアイテムを除く全てのアイテムは、ミックスインクラスを特定し、リスト４２２０の最後のアイテムは、フレーバを特定する。フレーバを特定するリスト４２２０の最後のアイテムの重要性については、フィーチャの実行におけるメソッドオブジェクトの選択と、オブジェクトのイニシアリゼーションとに関連して、後で詳細に説明する。
フィーチャ定義
フィーチャ定義、すなわちクラス”Feature”のメンバは、ある特別のフィーチャのインターフェイスを定義するオブジェクトである。フィーチャ定義４２１０Ｖ（図４３）のプロパティには、プロパティ”exceptions”、”isPublic”が含まれる。クラス”Feature”は抽象的なので、フィーチャ定義４２１０Ｖは、クラス”Feature”のインスタンスではなく、クラス”Feature”のメンバであり、オペレーション定義又はアトリビュート定義である。これらの定義については、どちらも以下及びアペンディクスＡに説明される。セット４３０２は、フィーチャ定義４２１０Ｖのプロパティ”exceptions”である。セット４３０２は、例えば識別子４３０２Ｉのような、識別子のセットである。ここで、これらの識別子は、それぞれ、定義されたフィーチャによって送出されたエクセプションがメンバであるクラスを参照する。そして、フィーチャ定義４２１０Ｖによって定義されたフィーチャがエクセプションを送出した時、そのエクセプションは、セット４３０２の識別子によって参照されたクラスのうちの１つのメンバであることが確かめられる。エクセプションが、セット４３０２の識別子によって参照されたクラスのメンバでない場合には、エクセプションの代わりに、クラス”Unexpected Exception”のメンバが送出される。その他の場合には、エクセプションが送出される。
ブーリアン４３０４は、フィーチャ定義４２１０Ｖのプロパティ”isPublic”である。ブーリアン４３０４は、フィーチャ定義４２１０Ｖによって定義されたフィーチャが、パブリックなフィーチャか、又はプライベートなフィーチャかを示す。すなわち、ブーリアン４３０４は、定義されたフィーチャのアクセスが”パブリック”であるか”プライベート”であるかを示す。各フィーチャは、それに組み合わされた”アクセス”を持つ。このアクセスは、どんなオブジェクトが、どんな状況の下で、各フィーチャが適切に要求されうるかを定める。本発明の各フィーチャのアクセスについては、アペンディクスＡ、Ｂに示されている。
ブーリアン４３０４が”true”である場合、そのフィーチャはパブリックである。アクセスがパブリックであるフィーチャは、どんなオブジェクトによって要求されてもよい。ブーリアン４３０４が”false”である場合、そのフィーチャはプライベートである。アクセスがプライベートであるフィーチャは、レスポンダ、すなわちそれ自身のフィーチャだけを要求することができるオブジェクトによってのみ、要求される。システムフィーチャ、すなわちアクセスが”システム”であるフィーチャは、全て、予め定義されており、フィーチャ定義によって定義されることはない。
定義済みフィーチャは、エンジン内においてインプリメントされており、フィーチャ定義のようなオブジェクトによって表されることはない。
アトリビュートの定義
アトリビュートを定義するフィーチャ定義は、アトリビュート定義、すなわちクラス”Attribute”のメンバである。したがって、クラス”Attribute”は、クラス”Feature”のサブクラスである。アトリビュート定義はフィーチャ定義であるので、前述したように、アトリビュート定義は、クラス”Feature”によって定義又は継承されたプロパティを継承する。さらに、アトリビュート定義４４００（図４４）は、プロパティ”constrait”、”isSet”を含む。
コンストレイント４４０２は、アトリビュート定義４４００のプロパティ”constrait”である。コンストレイント４４０２は、アトリビュート定義４４００によって定義されたアトリビュートを表すオブジェクトを制約する。後で詳細に説明するように、コンストレイントは、あるオブジェクトに対する制約を設定する。コンストレイントは、（ｉ）そのオブジェクトがメンバであるクラス、（ｉｉ）オブジェクトがそのクラスのインスタンスでなければならないかどうか、（ｉｉｉ）オブジェクトがニル（０）でもよいか、（ｉｖ）フィーチャのリクエスタとレスポンダの間でオブジェクトがどのようにパスされるかを制約することができる。
ブーリアン４４０４は、アトリビュート定義４４００のプロパティ”isSet”である。ブーリアン４４０４は、アトリビュート定義４４００によって定義されたアトリビュートが、問い合わせが可能なだけでなく、設定も可能であるかを定める。ブーリアン４４０４が”true”であれば、アトリビュート定義４４００は、設定可能なアトリビュートを規定する。そうでなければ、アトリビュート定義４４００によって定義されたアトリビュートは、問い合わせのみ可能である。
オペレーションの定義
前述したように、フィーチャは、アトリビュート又はオペレーションである。したがって、クラス”Feature”の第２のサブクラスは、クラス”operation”である。オペレーション定義、すなわちクラス”operation”のメンバは、オペレーションのインターフェイスを定義する。
図４５は、オペレーション定義４５００の構造を示す。オペレーション定義は、フィーチャ定義であるので、オペレーション定義４５００は、前述したように、クラス”Feature”によって定義又は継承されたプロパティを含む。さらに、オペレーション定義は、プロパティ”arguments”、”result”を含む。
リスト４５０２は、オペレーション定義４５００のプロパティ”arguments”である。オペレーション定義のプロパティ”arguments”は、オプションである。したがって、オペレーション定義のプロパティ”arguments”は、リストではなく、ニル（０）でもよい。プロパティ”arguments”がニル（０）である場合、オペレーション定義４５００によって定義されたオペレーションは、可変数のアーギュメントを使用する。アーギュメントの数が可変であるオペレーションの遂行については、アペンディクスＡに説明されている。逆に、プロパティ”arguments”がリスト４５０２であれば、オペレーション定義４５００によって定義されたオペレーションによって使用されるアーギュメントの数は、ある固定された数であり、この数は、リスト４５０２の長さに等しい。プロパティ”arguments”が空のリストであれば、オペレーションはいかなるアーギュメントも使用しない。リスト４５０２のアイテム、例えばコンストレイント４５０２Ｉは、オペレーション定義４５００によって定義されたオペレーションのアーギュメントを制約するコンストレイントである。図４６に関連して後述するように、コンストレイントは、オブジェクトのクラス及びパッセージを制約する。
コンストレイント４５０４は、オペレーション定義４５００のプロパティ”result”である。コンストレイント４５０４は、オペレーション定義４５００によって定義されたオペレーションのリザルトを制約する。オペレーション定義のプロパティ”result”もオプションである。
プロパティ”result”がコンストレイント４５０４でなくニル（０）である場合、オペレーション定義４５００によって定義されたオペレーションはリザルトを生成しない。
コンストレイント
前述したように、コンストレイントは、オブジェクトのクラス及びやり取りを制約する。コンストレイント４４０２の構造については、図４６に示されている。コンストレイント４４０２のプロパティには、プロパティ”classID”、”ofClass”、”isInstance”、”isOptional”、”passage”が含まれる。
プロパティ”ofClass”、”classID”は、制約されたオブジェクトがメンバでなければならないクラスを特定するための他の方法である。クラスオブジェクト４６０２は、コンストレイント４４０２のプロパティ”ofClass”である。クラスオブジェクト４６０２は、コンストレイント４４０２の設定されたオブジェクトがメンバであるクラスを表している。プロパティ”ofClass”はオプションであり、ニル（０）でもよい。プロパティ”ofClass”がニル（０）である場合、そのオブジェクトをメンバとするべきクラスは、コンストレイント４４０２のプロパティ”classID”である識別子４６１０によって、参照される。
プロパティ”ofClass”は、クラスオブジェクトである。したがって、プロパティ”ofClass”は、コンストレイント４４０２が生成された時にだけ存在するクラスである。しかし、コンストレイントのプロパティを、現存するクラスに限定すると、本発明のユーザが複数の独立したクラスを定義することを妨げてしまう。例えば、第１のクラスのフィーチャ定義におけるコンストレイントが、第２のクラスを参照していたり、第２のクラスの第２のフィーチャ定義における第２のコンストレイントが、第１のクラスを参照していることがあり得る。プロパティ”ofClass”の代わりに、コンストレイント４４０２のプロパティ”classID”を提供することにより、ユーザは、複数の独立したクラスを同時に定義することができる。
ブーリアン４６０４は、コンストレイント４４０２のプロパティ”isInstance”である。ブーリアン４６０４は、コンストレイント４４０２の設定されたオブジェクトが、クラスオブジェクト４６０２によって表されたクラスのインスタンスでなければならないかを定める。ブーリアン４６０４が”true”であれば、コンストレイントが設定されたオブジェクトは、クラスのインスタンスでなければならない。さもなければ、そのクラスにおいて、コンストレイントが設定されたオブジェクトのメンバとしての地位は、コンストレイント４４０２を十分に満足している。
ブーリアン４６０６は、コンストレイント４４０２のプロパティ”isOptional”である。ブーリアン４６０６は、プロパティ”ofClass”、”classID”とは関係なく、ニルオブジェクトがコンストレイント４４０２を満たすかを定める。ブーリアン４６０６が”true”であれば、ニルオブジェクトはコンストレイント４４０２を満たす。本明細書中の多くの例において示すように、ニルオブジェクトは、割愛されたオプションのアーギュメントや、フィーチャのリザルトの代わりに、スタック中に置くことができる。
識別子４６０８は、コンストレイント４４０２のプロパティ”passage”である。識別子４６０８は、コンストレイント４４０２が設定されたオブジェクトがどんな仕方でパラメーターとして、すなわちアーギュメント又はリザルトとして、通過するかを示している。識別子４６０８は、４つの値、すなわち”byRef”、”byUnprotectedRef”、”byProtectedRef”及び”byCopy”を持ちうる。識別子４６０８にこれら４つの値以外の値が設定されると、クラス”Passage Invalid”のメンバであるエクセプションが送出される。
フィーチャのリクエスタとそのフィーチャのレスポンダの間での、アーギュメントに対するリファレンスのやり取りを行う際、エンジンは、リクエスタからアーギュメントに対する元となるのリファレンスを受け取り、レスポンダに目的のリファレンスを供与する。また、リザルトに対するリファレンスのやり取りを行う際は、元となるリファレンスをレスポンダから受け取り、目的のリファレンスがリクエスタに供給される。
パラメーターが”byRef”によってやり取りされる場合、元となるリファレンスと目的のリファレンスとは互いに同一である。パラメーターが”byUnprotectedRef”によってやり取りされるとき、元となるリファレンスが保護されている場合には、クラス”Reference Protected”のエクセプションが送出され、他の場合には、目的のリファレンスは元となるリファレンスである。パラメーターが”byProtectedRef”によってやり取りされるとき、目的のリファレンスは、元となるリファレンスによって参照されるオブジェクトに対する、保護されたリファレンスである。パラメーターが”byCopy”によってやり取りされるとき、目的のリファレンスは、元となるリファレンスによって参照されるオブジェクトのコピーに対する保護されていないリファレンスである。パラメーターのやり取りについては、アペンディックスＡに一層詳細に説明されている。
このように、コンストレイント４４０２（図４４）は、オブジェクトのクラス及びやり取りを制限する。
インプリメンテーションオブジェクト
前述したように、インプリメンテーションオブジェクト４１１２（図４１Ａ）は、クラス定義オブジェクト４１００によって定義されたクラスのクラスインプリメンテーションを定義する。クラスインプリメンテーションは、次のものを定義する。（ｉ）定義されたクラスのメンバの０以上のプロパティ。（ｉｉ）クラスによって定義された各クラスフィーチャのそれぞれのインプリメンテーション。（ｉｉｉ）クラスによって定義された各インスタンスフィーチャのそれぞれのインプリメンテーション。（ｉｖ）クラスについて定義されたアトリビュートを設定するメソッド。（ｖ）定義されたクラスから他のクラスにオブジェクトを変換するメソッド。（ｖｉ）他のクラスから定義されたクラスにオブジェクトを変換するメソッド。（ｖｉｉ）クラスの定義に用いられる識別子の定義。（ｖｉｉｉ）定義されたクラスのインプリメンテーションスーパークラス。
リスト４７０２（図４７）は、インプリメンテーションオブジェクト４１１２のプロパティ”properties”である。リスト４７０２は、インプリメンテーションオブジェクト４１１２がインプリメントするプロパティを定義する。リスト４７０２のアイテム、例えば識別子４７０２Ｉは、インプリメンテーションオブジェクト４１１２によって定義されたプロパティの識別子である。
レキシコン４７０４（図４７）は、インプリメンテーションオブジェクト４１１２のプロパティ”classMethods”である。レキシコン４７０４は、クラス定義オブジェクト４１００（図４１Ａ）によって表されたクラスのクラスフィーチャのためのメソッドを提供する。レキシコン４７０４のキー、例えば識別子４７０４Ｋ（図４７）は、クラスフィーチャの識別子である。また、レキシコン４７０４の値、例えばメソッドオブジェクト４７０４Ｖは、クラスフィーチャのインプリメンテーションを定義するメソッドオブジェクトである。
メソッドオブジェクト、すなわちクラス”method”のメンバは、フィーチャのメソッドを定義するオブジェクトである。フィーチャのメソッドは、そのフィーチャの遂行にあたってエンジンが行う、すなわちそのエンジンを実行しているコンピューターシステムが行う、特定の一連のステップである。
インストラクションセットが、ユーザ定義されたクラスやフィーチャによって修正される場合、メソッドは、開示されたインストラクションセットの用語で定義される。メソッドオブジェクトについては、以下及びアペンディックスＡに一層詳細に説明されている。
レキシコン４７０６は、インプリメンテーションオブジェクト４１１２のプロパティ”instanceMethods”である。レキシコン４７０６は、対応するメソッドオブジェクトに、インスタンスフィーチャの識別子を関連づける。ここで、対応するこれらのメソッドオブジェクトは、順次、インスタンスフィーチャのインプリメンテーションを定義する。レキシコン４７０６の構造は、レキシコン４７０４の構造と同様であり、この説明は引用によって本明細書の一部となる。
レキシコン４７０７は、インプリメンテーションオブジェクト４１１２のプロパティ”setMethods”である。レキシコン４７０７は、メソッドオブジェクトに、それぞれのアトリビュートを特定する識別子を関連づける。アトリビュートが”セット”モディファイヤーが存在しているときに実行されると、レキシコン４７０７の各メソッドオブジェクトは、対応する識別子のアトリビュートをインプリメントする。換言すれば、レキシコン４７０７の各メソッドオブジェクトは、対応するアトリビュートの設定についてのインプリメンテーションを定義する。”セット”モディファイアが存在しているときにアトリビュートを実行することについては、アペンディックスＡに説明されている。
レキシコン４７０８は、インプリメンテーションオブジェクト４１１２のプロパティ”fromMethods”である。レキシコン４７０８は、メソッドオブジェクトに、識別子を関連づける。各識別子は、クラスを参照し、メソッドオブジェクトと関連づけられる。ここで、このメソッドオブジェクトは、参照されたクラスから、クラス定義オブジェクト４１００（図４１Ａ）によって定義されたクラス、すなわちインプリメンテーションがインプリメンテーションオブジェクト４１１２（図４７）であるクラス、への変換についてのインプリメンテーションを提供する。
レキシコン４７１０は、インプリメンテーションオブジェクト４１１２のプロパティ”toMethods”である。レキシコン４７１０は、メソッドオブジェクトに、識別子を関連づける。各識別子は、クラスを参照し、メソッドオブジェクトと関連づけられる。ここで、このメソッドオブジェクトは、クラス定義オブジェクト４１００（図４１Ａ）によって定義されたクラスから、すなわちインプリメンテーションがインプリメンテーションオブジェクト４１１２（図４７）であるクラスから、参照されたクラスへの変換についてのインプリメンテーションを提供する。レキシコン４７０７、４７０８、４７１０の構造は、レキシコン４７０４の構造と同様であり、この説明は引用によってこの明細書の一部分となる。
レキシコン４７１２は、インプリメンテーションオブジェクト４１１２のプロパティ”vocabulaty”である。レキシコン４７１２は、クラスを特定するためにインプリメンテーションオブジェクト４１１２によって使用される識別子を定義する。レキシコン４７１２のキー、例えば識別子４７１２Ｋは、特定のユーザ定義クラスを特定するために、インプリメンテーションオブジェクト４１１２内において用いられる識別子である。レキシコン４７１２の値、例えばサイテション４７１２Ｖは、関連づけられた識別子によって特定されるクラスを特定するサイテションに対応する。レキシコン４７１２は、インプリメンテーションオブジェクト４１１２内のユーザ定義クラスを特定するために用いられる識別子と、ネットワークを通じてクラスを特定するために用いられるサイテションとの間の翻訳を行う。サイテションについては、以下及びアペンディックスＡに詳細に説明されている。
リスト４７１４は、インプリメンテーションオブジェクト４１１２のプロパティ”superclasses”である。リスト４７１４のアイテム、例えば識別子４７１４Ｉは、クラス定義４１００（図４１Ａ）によって定義されたクラスのインプリメンテーションスーパークラスを特定する識別子である。リスト４７１４（図４７）（すなわちインプリメンテーションオブジェクト４１１２のプロパティ”superclasses”）は、リスト４２２０（すなわちインターフェースオブジェクト４１１０のプロパティ”superclasses”）のアイテムではないクラスの識別子を含むことができる。例えば、第１のクラスは、第１のクラスのフィーチャのインプリメンテーションにおいて、第２のクラスのフィーチャを使用する能力を持つことにより、得をすることがある。しかしながら、このようなクラスを設計する際に、第２のクラスのフィーチャそのものが、第１のクラスによって継承されることは、必ずしも好ましくない。このような場合、第２のクラスは、第１のクラスのインプリメンテーションスーパークラスとされるが、第１のクラスのインターフェーススーパークラスとはされない。
このように、インプリメンテーションオブジェクト４１１２は、クラス定義オブジェクト４１１０（図４１Ａ）によって定義されるクラスについて、（ａ）定義されたクラスのメンバのプロパティ、（ｂ）クラス及びインスタンスのフィーチャメソッド、（ｃ）アトリビュートを設定するメソッド、（ｄ）定義されたクラスへの変換、又は定義されたクラスからの変換についてのメソッド、（ｅ）クラスを特定するために用いられる識別子、及び（ｆ）インプリメンテーションスーパークラス、を定義する。
メソッドオブジェクト
前述したように、メソッドオブジェクトは、フィーチャを遂行する際、又は変換を遂行する際に実行されるコンピューターのインストラクションを定義する。図４８は、メソッドオブジェクト４８００の構造を示す。メソッドオブジェクト４８００のプロパティは、プロパティ”procedure”、”variables”を含む。プロシージャ４８０２は、メソッドオブジェクト４８００のプロパティ”procedure”である。プロシージャ４８０２の遂行は、メソッドオブジェクト４８００によって実行される、フィーチャの遂行又は変換の遂行を構成する。プロシージャについては、後で詳細に説明する。
リスト４８０４は、メソッドオブジェクト４８００のプロパティ”variables”である。リスト４８０４は、プロシージャ４８０２によって使用される変数を定義する。リスト４８０４のアイテム、例えば識別子４８０４Ｉは、メソッドオブジェクト４８００について定義された変数を参照する識別子である。あるメソッドの変数の値を示すオブジェクトは、そのメソッドの遂行の間、ユーザ定義フレームのプロパティ”variables”としてリスト内に、記憶される。フレームについては、以下及びアペンディックスＡに詳細に説明されている。
プロシージャ
プロシージャ４８０２の構造は、図４９に示される。プロシージャ４８０２は、オブジェクト４９０２Ａ〜４９０２Ｅのリスト４９０２を有している。リスト４９０２は、クラス”List”のメンバではなく、プロシージャ４８０２に不可欠な部分の代わりである。換言すれば、リスト４９０２はプロシージャ４８０２のプロパティ又はアイテムではなく、リスト４９０２をクラス”List”のメンバとして扱うことが可能なフィーチャは提供されていない。本発明の一実施例において、クラス”procedure”は、クラス”List”のインプリメンテーションサブクラスであるが、クラス”List”のインターフェースサブクラスでない。したがって、クラス”List”によって定義されたフィーチャは、クラス”procedure”によって継承されることはないが、クラス”List”によって定義されたメソッドは、リスト４９０２を生成しアクセスするために、プロシージャによって使用されることができる。
オブジェクト４９０２Ａ〜４９０２Ｅは、実行オブジェクト、すなわちミックスインクラス”Executed”のメンバである。プロシージャ４８０２は、順次、すなわちオブジェクト４９０２Ａ、オブジェクト４９０２Ｂ、オブジェクト４９０２Ｃ、オブジェクト４９０２Ｄ、オブジェクト４９０２Ｅの順序で、オブジェクト４９０２Ａ〜４９０２Ｅを実行することによって遂行される。プロシージャ４８０２の実行の間、予め定義されているフレームは、オブジェクト４９０２Ａ〜４９０２Ｅのうちのどれが実行されているかを含めて、プロシージャ４８０２の遂行の動的な状態を記録し保持する。予め定義されているフレームについては、以下及びアペンディックスＢに詳細に説明されている。
サイテション
サイテションは、他のオブジェクトと後方向又は前方向に互換性がある一連のオブジェクトを特定するオブジェクトである。さらに、サイテションは、一連のオブジェクト内やプロセス内の特定のオブジェクト、又はその特定のオブジェクトを作り出したプロセスのオーソリティを特定する。また、既に簡単に説明したように、クラスはサイト（引用）されたオブジェクトである。したがって、サイテションは、互いに後方向及び前方向に互換性がある一連のクラスを特定するために用いられる。後方向及び前方向の互換性については、以下及びアペンディックスＡに詳細に説明される。
なお、サイテションが互いに前方向又は後方向に互換性があるオブジェクトとして特定するオブジェクトは、必ずしも前方向又は後方向に互換性がある訳ではない。例えば、それぞれのサイテションによって互換性があると特定された２つのクラス定義オブジェクトは、単に互換性があることを意図されているに過ぎない。
サイテション５０００（図５０）は、クラス”Citation”のメンバである。サイテション５０００のプロパティには、プロパティ”title”、”majorEdition”、”minorEdition”、”author”が含まれる。サイテション５０００のプロパティ”title”は、識別子５００８である。したがって、識別子５００８はサイテション５０００のタイトルである。サイテションのタイトルは、サイテションによって表される一連の組を参照する。サイテションのタイトルは、サイテションのオーソリティに関してインタープリートされる。換言すれば、異なったオーソリティの２つのサイテションは、同等のタイトルを使用することができる。この２つのサイテションは、異なったオーソリティによって、互いに区別される。サイテションのオーソリティは、以下に説明するプロパティ”author”によって特定される。
プロパティ”majorEdition”、”minorEdition”は、それぞれインテジャ５００４、５００６である。したがって、インテジャ５００４、５００６は、それぞれ、サイテション５０００のメージャーエディション及びマイナーエディションである。ある一連の２つのオブジェクト間の関係は、それらのオブジェクトのメージャーエディション及びマイナーエディションの関係によって定められる。例えば、オブジェクト５１０２、５１０４（図５１）は、それぞれサイテション５１０６、５１０８によって引用される。インテジャ５１１０、５１１２は、それぞれ、サイテション５１０６のメージャーエディションとマイナーエディションを表している。インテジャ５１１４、５１１６は、それぞれ、サイテション５１０８のメージャーエディションとマイナーエディションを表している。
サイテション５１０６のメージャーエディションであるインテジャ５１１０が、サイテション５１０８のマイナーエディションであるインテジャ５１１４よりも大きい場合には、オブジェクト５１０２は、オブジェクト５１０４の生成よりも後に生成されたものであり、オブジェクト５１０４に対して後方向に互換性がある。オブジェクト５１０２がオブジェクト５１０４に対して後方向に互換性があれば、オブジェクト５１０４は、オブジェクト５１０２に対して前方向に互換性がある。逆に、インテジャ５１１０が、インテジャ５１１４よりも小さい場合には、オブジェクト５１０４は、オブジェクト５１０２の生成よりも後に生成されたものであり、オブジェクト５１０２に対して後方向に互換性がある。
また、インテジャ５１１０、５１１４が等しい場合は、それぞれオブジェクト５１０２、５１０４のマイナーエディションを表しているインテジャ５１１２、５１１６の相対的な値が、オブジェクト５１０２、５１０４の間の関係を定める。例えば、インテジャ５１１２がインテジャ５１１６よりも大きい場合は、オブジェクト５１０２はオブジェクト５１０４の生成よりも後に生成され、オブジェクト５１０４に対して後方向に互換性がある。逆に、インテジャ５１１２がインテジャ５１１６よりも小さい場合は、オブジェクト５１０４はオブジェクト５１０２の生成よりも生成の後に生成され、オブジェクト５１０２に対して後方向に互換性がある。
プロパティ”author”は、テレネーム５００２（図５０）である。したがって、テレネーム５００２は、サイテション５０００のオーサーである。テレネーム５００２は、サイテション５０００によって特定されるオブジェクトを生成したプロセスの名前である。ある一連のオブジェクトは、全て単一のオーソリティのプロセスによって生成される。
前方向及び後方向の互換性についてのより正確な定義は、アペンディックスＡに示されている。次の例は、これらのコンセプトの意味及び有用性を示している。アペンディックスＡに定義されるように、クラス”Integer”のメンバ、すなわちインテジャは、”加算”、”減算”、”掛け算”及び”割り算”を含む数学的な演算を実行することができる。クラス”Integer”のプロパティ”Citation”は、クラス”Integer”を特定する第１のサイテションである。本明細書中に記載されるコンピューターインストラクションセットをインプリメントする際に、また、本明細書中に記載されるコンピューターインストラクションセットの使用において新しいクラス及び新しいフィーチャを定義する際に、アペンディックスＡに記載されたクラス”Integer”の記述に適合するクラス”Integer”のメンバに依存して非常に多くのフィーチャが設計される。
本明細書に記述されるコンピューターインストラクションセットの次のバージョンにおいて、乱数を生成させるためにオペレーション”randomize”を提供するように第２のクラス”Integer”が設計されているものと想定する。第１のクラス”Integer”は、第１のクラス”Integer”と呼ばれる。第２のクラス”Integer”のプロパティ”Citation”は、第２のサイテションである。さらに、第１のクラス”Integer”と第２のクラス”Integer”との間には他の差異は存在せず、第１のクラス”Integer”のメンバについて要求されたいかなるフィーチャも、第２のクラス”Integer”のメンバによって満たされているものと想定する。
このとき、第１のクラス”Integer”の記述に適合したインテジャに依存して設計されたフィーチャは、第２のクラス”Integer”のインテジャについても、適切に機能する。すなわち、第２のクラス”Integer”は、第１のクラス”Integer”と後方向に互換性があり、逆に、第１のクラス”Integer”は、第２のクラス”Integer”と前方向に互換性がある。
第１及び第２のサイテションのプロパティ”title”は、互いに等しく、どちらかのクラス”Integer”を参照する。しかし、第１及び第２のサイテションのメージャーエディション及びマイナーエディションは、第１のクラス”Integer”と第２のクラス”Integer”の間の前方向及び後方向の互換性を反映している。後方向及び前方向に互換性のあるオブジェクトがネットワーク内において共存することを許容すると、本明細書に記述されるコンピューターインストラクションセットの初期のバージョンによって作り出されたオブジェクトが、本明細書に記述されるコンピューターインストラクションセットの後のバージョンを実行するエンジン内において、移動や動作をできるようになる。以上の説明からあきらかなように、クラスは、それ自身に対して前方向及び後方向に互換性がある。以上の実施例では、予め定義されているクラスのコンテキストにおいて前方向及び後方向の互換性を示したが、ユーザ定義クラスは、通常、予め定義されているクラスよりも頻繁に変化する。そのため、クラスの間の前方向及び後方向の互換性を与えることは、ユーザ定義クラスのコンテキストにおいて、特に重要である。
こうして、クラスは、ここに開示されたインストラクションのセットの一部分となる。したがって、クラスは、移動可能であり、エージェントと共に第１のコンピューターシステムから第２のコンピューターシステムに移動することができる。
インタープリートされるインストラクションセット
前述したように、本発明の３つの要素によって、コンピュータープロセスは、非常に可動的かつ汎用的になる。第１に、本発明のコンピューターインストラクションセットは、同種又は異種のネットワーク内において同様にインプリメントされる。第２に、クラスは、開示されたコンピューターインストラクションセットのオブジェクトであるので、インストラクションセットは、拡張性と可動性を兼ね備える。すなわち、遠隔のコンピューターシステムにおいて定義されていないクラスは、可動性を有するコンピュータープロセスと共に、遠隔のコンピューターシステムに転送される。以下の説明は、コンピューターインストラクションセットをより汎用的かつ可動的にする第３の要素に関する。すなわち、ここに開示されるコンピューターインストラクションセットのコンピューターインストラクションは、インタープリートされる。
多くのコンピュータープロセスは、最初に人が読むことができるソースコードで書かれ、次にこのソースコードがオブジェクトコードにコンパイルされ、マシンコードにリンクされる。このマシンコードは、人には全く読むことができない。ソースコードをマシンコードに翻訳する主な利点は、マシンコードがソースコードを再コンパイルすることなく、何回でもコンピューターシステムのＣＰＵによって実行されるため、翻訳を一度だけ行えば良いことである。しかし、異機種ネットワークの２つのコンピューターシステムの両方が、同一のマシンコードのインストラクションを実行することはできない。したがって、第１のコンピューターシステムから第２のコンピューターシステムに向かって移動するエージェントは、第１のコンピューターシステムに固有のものでも、第２のコンピューターシステムに固有のものでもないが、標準化されたインストラクションセットによって表されることが好ましい。
ソースコードを１回だけコンパイルするばよいという利点は、ネットワークの異種性によって除かれる。そこで、開示されたコンピューターインストラクションセットは、インタープリートされる。本明細書中において、”インタープリートされる”という用語は、当該技術分野において理解されている通りに用いられている。すなわち、一連のコンピューターインストラクション中の１つのコンピューターインストラクションが、読み込まれてマシンコードに翻訳されて、一連のコンピューターインストラクション中の次のコンピューターインストラクションが読み込まれる前に、エンジンによって実行される。
開示されたインストラクションセットのインストラクションをインタープリートすることによって、コンパイルするよりも、より広い汎用性が得られる。
第１のエージェントは、第１のコンピューターシステムから第２のコンピューターシステムに向かって移動し、第１のエージェントにプロシージャを与える第２のエージェントと出会う。そして、第１のエージェントは、当初は第１のエージェントが遂行するように設計されていなかったプロシージャを遂行する。
以下の説明は、ここに開示されたコンピューターインストラクションのインタープリートについての説明である。なお、以下の説明は、プロシージャと、プロシージャの個々のアイテムの実行とに焦点を当てている。ここで、個々のアイテムとは、個々のコンピューターインストラクションである。
プロシージャの実行
プロシージャは、そのプロシージャがオペレーション”do”を遂行するように要求するインストラクションを送出することによって、遂行される。プロシージャの遂行を生じさせる他のプロシージャについては、以下及びアペンディックスＡに説明されている。クラス”procedure”について定義されたオペレーション”do”の遂行は、フローチャート５２００（図５２Ａ）及び定義済みフレーム５２５０（図５２Ｂ）に示されている。定義済みフレーム５２５０は、それぞれインテジャ５２５２及びプロシージャ４８０２であるプロパティ”position”、”procedure”を含んでいる。定義済みフレームについては、アペンディックスＡに詳細に説明されている。定義済みプロシージャ５２５０は、プロシージャ４８０２（図４９）によって遂行されるオペレーション”do”の動的な状態を記録する。
ステップ５２０２（図５２Ａ）において、インテジャ５２５２は、値１に設定される。インテジャ５２５２は、その実行が最も最近に開始されたアイテムのプロシージャ４８０２内における位置を特定する。処理は、ステップ５２０２（図５２Ａ）からテストステップ（end of procedure?）５２０４に移行し、ここでインテジャ５２５２（図５２Ｂ）がプロシージャ４８０２の長さと比較される。インテジャ５２５２が、プロシージャ４８０２の長さに比べて短いか、又は等しい場合、処理は、テストステップ５２０４（図５２Ａ）からステップ５２０８に移行する。ステップ５２０８において、プロシージャ４８０２（図５２Ｂ）内の位置がインテジャ５２５２が示す位置であるアイテムが遂行される。実行オブジェクトの遂行については、以下及びアペンディックスＡに詳細に説明される。
プロシージャ４８０２のアイテムが遂行されると、処理は、ステップ５２０８（図５２Ａ）からテストステップ（exception?）５２１０に移行する。このテストステップ（exception?）５２１０において、エンジンがインタープリートしているプロシージャ４８０２（図５２Ｂ）は、そのアイテムの遂行が成功したか、又はエクセプションを送出したかを判断する。エクセプションが送出された場合、処理は、テストステップ（exception?）５２１０（図５２Ａ）から終了ステップ５２１２に移行する。この終了ステップ５２１２において、オペレーション”do”が失敗に終わり、プロシージャ４８０２（図５２Ｂ）の遂行が終了する。
ステップ５２０８（図５２Ａ）における、インテジャ５２５２により示されるプロシージャ４８０２内の位置にあるアイテムの遂行によって、エクセプションが送出された場合、処理は、テストステップ（exception?）５２１０からステップ５２１４に移行する。このステップ５２１４において、インテジャ５２５２（図５２Ｂ）がインクリメント（増加）される。処理は、ステップ５２１４（図５２Ａ）からテストステップ（end of procedure?）５２０４に移行し、このテストステップ５２０４において、前述したように、定義済みフレーム５２５０（図５２Ｂ）のプロシージャ”position”、すなわちインテジャ５２５２が、応答しているプロシージャ４８２の長さと比較される。
インテジャ５２５２（図５２Ｂ）がプロシージャ４８０２の長さよりも大きい場合、処理は、テストステップ（end of procedure?）５２０４（図５２Ａ）から終了ステップ５２１６に移行し、この終了ステップ５２１６において、オペレーション”do”は成功のうちに終了する。
このように、プロシージャ４８０２（図４９及び図５２Ｂ）によってオペレーション”do”が遂行されることによって、前述した順序でプロシージャ４８０２の各アイテムが実行される。
実行モデル
前述したように、エンジン、例えばエンジン１３２Ｂ（図１５Ａ）の主な機能は、プロシージャの遂行、すなわちプロシージャのアイテムの実行である。本発明の開示された実施例の実行モデルは、プロシージャの各アイテムが実行されるプロセスである。ここに開示された実施例の実行モデルの説明は、６つのセクションに分けられる。第１に、フレームの構造及び組織が説明される。ここで、フレームは、フィーチャ又は変換（コンバージョン：conversion）をインプリメントするメソッドの動的状態を記録するオブジェクトである。第２に、識別子の実行が説明される。ここで、フィーチャを参照する識別子の実行は、参照されたフィーチャの遂行を生じさせる。第３に、フィーチャ又は変換をインプリメントするメソッドオブジェクトをクラス階層から選出するプロセスが説明される。なお、メソッドオブジェクトを検索するクラスオブジェクトの構造は前述した通りである。第４に、フィーチャのエスカレーション（増大）が説明される。第５に、モディファイアの実行が説明される。第６に、セレクタの実行が説明される。
フレーム
フレームは、フィーチャ又は変換の実行の間、フィーチャ又は変換をインプリメントするメソッドの動的状態を記録するオブジェクトである。プロセスの実行状態、すなわちエージェント又はプレイスの実行状態は、１以上のフレーム内に記録される。例えば、図５３にプロセス５３００の実行状態を示す。１つのプロセスが生成されるとき、そのプロセスはオペレーション”live”を遂行するように求められる。プロセス５３００内には、プロパティ”frames”が生成される。このプロパティ”frames”は、プロセス５３００の実行スレッドを表すスタック５３０２である。スタック５３０２は、プロセス５３００の実行状態を集合的に形成するフレームを有している。プロセス５３００がオペレーション”live”を遂行するように初めて求められたとき、スタック５３０２の単一のアイテムは、ユーザ定義フレーム５３０４である。ここで、ユーザ定義フレーム５３０４は、オペレーション”live”の動的状態を記録する。
定義済みクラス”Process”、”Agent”、”Place”は、アブストラクトクラスである。したがって、本発明の開示された実施例のプロセスは、ユーザ定義クラスのインスタンスである。定義済みアブストラクトクラス”Process”、”Agent”、”Place”は、オペレーション”live”のインプリメンテーションを定義しない。したがって、オペレーション”live”のメソッドの動的状態を記録するフレーム５３０４は、必然的に、ユーザ定義フレームである。ユーザ定義フレームは、ユーザによって定義されたインプリメンテーションによるオペレーションの動的状態を、そのオペレーションの実行の間、記録するフレームである。ユーザ定義フレーム５３０４の構造は、図５４に示されている。
ユーザ定義フレーム５３０４（図５４）のプロパティには、プロパティ”class”、”responder”、”procedure”、”position”、”stack”、”variables”が含まれる。クラスオブジェクト５４０２は、ユーザ定義フレーム５３０４のプロパティ”class”であり、これはスーパークラス”Object”から継承されたプロパティである。クラスオブジェクト５４０２は、ユーザ定義フレーム５３０４がインスタンスであるクラスを表しており、したがって、クラスオブジェクト５４０２は、クラス”User-defined Frame”又はそのサブクラスを表している。
オブジェクト５４０４は、ユーザ定義フレーム５３０４のプロパティ”responder”である。オブジェクト５４０４は、ユーザ定義フレーム５３０４に動的状態が記録されるフィーチャ又は変換のレスポンダである。図５３のコンテキストにおいて、プロセス５３００がオペレーション”live”のレスポンダであるため、オブジェクト５４０４は、プロセス５３００である。
プロシージャ５４０６（図５４）は、ユーザ定義フレーム５３０４のプロパティ”procedure”であり、スーパークラス”Procedure Frame”から継承されたプロパティである。
プロシージャ５４０６は、ユーザ定義フレーム５３０４に動的状態が記録されるメソッドオブジェクトのプロパティ”procedure”である。例えば、ユーザ定義フレーム５３０４がメソッドオブジェクト４８００（図４８）の動的状態を記録する場合、プロシージャ４８０２、５４０６は同一のプロシージャである。
インテジャ５４０８は、スーパークラス”Procedure Frame”から継承された、ユーザ定義フレーム５３０４のプロパティ”position”である。インテジャ５４０８は、現在実行されているプロシージャ５４０６のアイテムについて、プロシージャ５４０６内のポジションを特定する。例えば、プロシージャ５４０６の２番目のアイテムが、実行は開始されているが、終了はしていない場合、インテジャ５４０８の値は２となる。
ユーザ定義フレーム５３０４は、さらに２つのプロパティ、すなわちプロパティ”stack”、”variables”を有する。スタック５４１０は、ユーザ定義フレーム５３０４のプロパティ”stack”であり、ユーザ定義フレーム５３０４のスタックである。
プロシージャ５４０６の実行の開始時に、スタック５４１０は、ユーザ定義フレーム５３０４に動的状態が記録されるフィーチャ又は変数の遂行によって使用されたアーギュメントを有している。プロシージャ５４０６の遂行後には、スタック５４１０は、フィーチャ又は変更の遂行によってリザルトが生成された場合は、このリザルトを有している。
リスト５４１２は、ユーザ定義フレーム５３０４のプロパティ”variables”である。リスト５４１２のアイテム、例えばオブジェクト５４１２Ｉは、フレームの変数である。変数は、プロシージャ５４０６が遂行される間、ユーザ定義フレーム５３０４の動的状態を記録する。リスト５４１２（図５４）のアイテムである変数は、ユーザ定義フレーム５３０４に動的状態が記録されているメソッドオブジェクトのプロパティ”variables”の同じポジションにあるアイテムによって、参照される。例えば、ユーザ定義フレーム５３０４がメソッドオブジェクト４８００（図４８）の動的状態を記録する場合、リスト４８０４内のポジション”１”にある識別子４８０４Ｉは、リスト５４１２内のポジション”１”に有るオブジェクト５４１２Ｉ（図５４）を参照する。
このように、ユーザ定義フレーム５３０４は、（ｉ）フィーチャ又は変数のレスポンダと、（ｉｉ）フィーチャ又は変換をインプリメントするプロシージャと、（ｉｉｉ）現在実行されているインストラクションのプロシージャにおけるポジションと、（ｉｖ）フィーチャ又は変換のアーギュメント又はリザルトを収容しているスタックと、（ｖ）ユーザ定義フレーム５３０４の動的状態を記録する変数と、を記録することによって、ユーザ定義されたフィーチャ又は変数の動的状態を記録する。
実行オブジェクトの実行
前述したように、プロシージャの遂行とは、プロシージャの各アイテムを順次実行することである。一般に、実行オブジェクトの実行、すなわちミックスインクラス”Executed”から継承されたオブジェクトの実行は、そのオブジェクトに対するリファレンスが、プロシージャの実行状態を表すフレームのスタック、例えばスタック５４１０に保存される結果となる。ただし、識別子、モディファイア及びセレクタの実行は、このような一般的な原則の例外となっている。
識別子
他の指示をしているモディファイアの存在の元に実行されるのでない限り、実行される識別子は、フィーチャを参照するものと仮定される。したがって、実行される識別子は、オペレーションを呼び出すか、又はアトリビュートを問い合わせる。第１のプロシージャ内のある識別子の実行は、その識別子によって参照されるフィーチャを遂行させる。そして、これによって第２のプロシージャが生じる。この第２のプロシージャは、識別子によって参照されたアトリビュート又はオペレーションをインプリメントする、メソッドオブジェクトのプロシージャである。フィーチャを参照する識別子の実行は、フローチャート５５００（図５５）に示されている。
フローチャート５５００は、図５６Ａ〜図５６Ｃのコンテキストにおいて説明される。スタック５３０２（図５６Ａ）は、プロセス５３００の実行スレッド、すなわちプロパティ”frames”である。
ユーザ定義フレーム５３０４は、現在のフレームである。現在のフレームは、現時点においてアイテムがエンジンによって実行されているプロシージャ、すなわちプロシージャ５４０６を含んでいるフレームである。
換言すれば、プロセス５３００のインタープリートにおいてエンジンによって次に実行されるオブジェクトは、ユーザ定義フレーム５３０４のプロシージャから検索される。
プロシージャ５４０６は、ユーザ定義フレーム５３０４のプロパティ”procedure”である。インテジャ５４０８は、ユーザ定義フレーム５３０４のプロパティ”position”である。インテジャ５４０８は、プロセス５３００の処理のうち最も最近にエンジンによって実行が開始されたアイテムについて、プロシージャ５４０６内のポジションを示している。
インテジャ５４０８によって示されるポジションにあるプロシージャ５４０６のアイテムが、識別子である場合に、識別子の実行が生じる。この例において、識別子は、オペレーションを参照する。なお、識別子によって参照されるオペレーションは、図５６Ａ〜図５６Ｃ及び図５５のコンテキストにおいて、サブジェクトオペレーションとも呼ばれる。識別子の実行は、フローチャート５５００（図５５）に示される。
リクエスタのスタック、すなわちスタック５４１０は、ステップ５５０２において、ユーザ定義フレーム５３０４のアトリビュート”stack”に問い合わせることによって生ずる。ユーザ定義フレーム５３０４のプロシージャ５４０６（図５６Ａ）の遂行は、インテジャ５４０８によって示されるプロシージャ５４０６内のポジションにある識別子の実行を、要求する。したがって、現在のフレームであるユーザ定義フレーム５３０４のプロパティ”responder”は、識別子によって参照されるオペレーションのリクエスタである。図５６Ａのコンテキストにおいて、レスポンダは、プロセス５３００である。したがってスタック５４１０は、”リクテスタのスタック”である。
処理は、ステップ５５０２（図５５）からテストステップ（stack empty?）５５０４に移行する。識別子が実行される時点において、スタック５４１０のトップにあるオブジェクトは、サブジェクトオペレーションのレスポンダである。テストステップ（stack empty?）５５０４において、プロセス５３００をインタープリートしているエンジンは、スタック５４１０が空であるかを判断する。
スタック５４１０がエンプティである場合、処理は、テストステップ（stack empty?）５５０４から終了ステップ５５０６に移行し、ここでクラス”Responder Missing”のエクセプションが送出され、サブジェクトオペレーションは失敗に終わる。一方、スタック５４１０がエンプティでない場合、処理は、テストステップ（stack empty?）５５０４からステップ５５０８に移行し、このステップ５５０８において、スタック５４１０のトップにあるオブジェクト（図示せず）が、スタック５４１０からポップされる。スタック５４１０からポップされたオブジェクトは、実行中の識別子のサブジェクトオペレーションの将来のレスポンダであり、図５６Ａ〜図５６Ｃ及び図５５のコンテキストにおいて、”レスポンディングオブジェクト”とも呼ばれる。
なお、サブジェクトオペレーションは、ユーザ定義される。したがって、サブジェクトオペレーションは、ユーザ定義フレームによって表される。定義済みフィーチャは、エンジン内において直接に表される。換言すれば、定義済みオペレーションを形成するインストラクションは、エンジンであるコンピュータープロセスを形成するインストラクションに含まれている。実行される識別子が、定義済みオペレーションを参照する場合は、エンジン内のオペレーションを定義するインストラクションが、探索され遂行される。
処理は、ステップ５５０８からステップ５５１０に移行する。このステップ５５１０において、サブジェクトオペレーションを定義するオペレーション定義が検索される。オペレーション定義の選択、及び関連するメソッドオブジェクトの選択については、後述する。処理は、ステップ５５１０からテストステップ（access?）５５１２に移行する。このテストステップ（access?）５５１２において、サブジェクトオペレーションのアクセスが検査される。プロパティ”isPublic”、例えばブーリアン４４０４（図４４）は、オペレーション定義から検索される。サブジェクトオペレーションのアクセスが”パブリック”でなく、すなわちプロパティ”isPublic”が”false”であり、かつ、レスポンディングオブジェクトが、ユーザ定義フレーム５３０４のプロパティ”responder”（図示せず）でない場合、処理は、テストステップ（access?）５５１２から終了テストステップ５５１４に移行する。
終了ステップ５５１４において、クラス”Feature Unavailable”のエクセプションが送出され、サブジェクトオペレーションは失敗に終わる。一方、プロパティ”isPublic”が”true”であるか、又はレスポンディンブオブジェクトがユーザ定義フレーム５３０４のプロパティ”responder”である場合、サブジェクトオペレーションのアクセスは可能であり、処理は、テストステップ（access?）５５１２からテストステップ（number of arguments?）５５１６に移行する。
テストステップ（number of arguments?）５５１６において、オペレーション定義のプロパティ”arguments”が、オペレーション定義のアトリビュート”arguments”の問い合わせによって生成される。プロパティ”arguments”のリスト中のアイテム数は、スタック５４１０上のオブジェクトの数と比較される。プロパティ”arguments”が、スタック５４１０上に存在するオブジェクトの数よりも多くのアーギュメントの数を定義している場合には、処理は、テストステップ（number of arguments?）５５１６から終了ステップ５５１８に移行する。この終了ステップ５５１８において、クラス”Argument Missing”のエクセプションが送出され、サブジェクトオペレーションは失敗に終わる。
なお、例えば終了ステップ５５０６又は終了ステップ５５１４において、サブジェクトオペレーションを参照する識別子の実行によって送出されるエクセプションは、同一のエクセプションであり、サブジェクトオペレーションを終了させる。
ステップ５５１０において検索されたオペレーション定義のプロパティ”arguments”によって示されるアーギュメントの数と、少なくとも同じ数のオブジェクトがスタック５４１０に存在している場合、処理は、テストステップ（number of arguments?）５５１６からテストステップ（class of arguments?）５５２０に移行する。このテストステップ５５２０において、プロセス５３００をインタープリートているエンジンは、アーギュメントのポジションにあるスタック５４１０上の各オブジェクトが、ステップ５５１０で検索されたオペレーション定義のプロパティ”arguments”であるリスト内の対応するコンストレントを、満足しているかを判断する。例えば、オペレーション定義４５００のプロパティ”arguments”であるリスト４５０２Ｉ（図４５）のコンストレント４５０２Ｉは、スタック５４１０のトップにあるオブジェクトに対応する。コンストレントの構造については、以上及びアペンディックスＡに詳細に説明されている。
以上に詳細に説明したように、コンストレントは、（ｉ）オブジェクトがメンバであるべきクラス、（ｉｉ）オブジェクトが、特定されたクラスのインスタンスでもあるべきか、及び（ｉｉｉ）特定されたクラスには関係なく、ニル（０）が、コンストレントを満たすか、を特定することによってオブジェクトを制限する。コンストレントに対応するスタック５４１０上の各オブジェクトは、そのオブジェクトがテストステップ（class of arguments?）５５２０中のコンストレントを満足しているかを判断するために点検される。スタック５４１０上のどのオブジェクトも、オペレーション定義のプロパティ”arguments”の対応するコンストレントを満足していない場合、処理は、ステップ（class of arguments?）５５２０から終了ステップ５５２２に移行し、そこでクラス”Argument Invalid”のエクセプションが送出される。
逆に、スタック５４１０上の各オブジェクトが、対応するコンストレントを満たす場合、処理は、テストステップ（class of arguments?）５５２０からステップ５５２４に移行する。このステップ５５２４において、レスポンディングオブジェクトのコンテキストにおいてサブジェクトオペレーションのインプリメンテーションを定義するメソッドオブジェクトが選択される。メソッドオブジェクトは、後で詳細に説明するように、レスポンディングオブジェクトがメンバとなっているクラスの中から選択される。
処理は、ステップ５５２４からステップ５５２６に移行し、このステップ５５２６において、ユーザ定義される新たなフレーム５６０２（図５６Ｂ）が作り出される。レスポンディングオブジェクト５６０４は、新たなユーザ定義フレーム５６０２のプロパティ”responder”とされる。ステップ５５２４において選択されたメソッドオブジェクトのプロパティ”procedure”は、プロシージャ５６０６であり、新たなユーザ定義フレーム５６０２のプロパティ”procedure”とされる。ユーザ定義フレーム５６０２のプロパティ”position”は、値が１のインテジャ５６０８となるように初期化される。また、プロパティ”stack”は、空のスタック５６１０にとなるように初期化される。
新たなユーザ定義フレーム５６０２が作り出されたら、処理は、ステップ５５２６からステップ５５２８に移行する。このステップ５５２８において、オブジェクトは、ユーザ定義フレーム５３０４のスタック５４１０から、ユーザ定義フレーム５６０２のスタック５６１０に移動する。このとき、オブジェクトは、オブジェクトの順序が保たれるように、スタック５４１０からスタック５６１０に移動する。換言すれば、スタック５４１０上の最も上のアーギュメントは、スタック５６１０のトップに存在し、スタック５４１０の最も下のアーギュメントは、スタック５６１０のボトムに存在する。各オブジェクトは、検索されたオペレーション定義のプロパティ”arguments”の対応するコンストレントのプロパティ”passage”に従って移動する。
プロパティ”passage”が”byRef”であれば、オブジェクトへのリファレンスは、スタック５４１０からポップされ、スタック５６１０に保存される。したがって、新たなユーザ定義プロシージャ５６０６は、ユーザ定義フレーム５３０４を要求しているプロシージャ５４０６と同じ、アーギュメントへのアクセスを持つ。
プロパティ”passage”が”byProtectedRef”であれば、オブジェクトへのリファレンスは、スタック５４１０からポップされ、保護されたリファレンスとされて、スタック５６１０に保存される。したがって、新たなユーザ定義フレーム５６０２のプロシージャ５６０６は、アーギュメントを変更することができず、アーギュメントは”リードオンリー”となる。
プロパティ”passage”が”byUnprotectedRef”であれば、要求しているユーザ定義フレーム５３０４のスタック５４１０上のアーギュメントへのリファレンスが、保護されているかが判断される。この判断は、アペンディックスＡに一層詳細に記述されているアトリビュート”isProtected”を問い合わせることによって行う。リファレンスが保護されている場合、クラス”Reference Protected”のエクセプションが送出される。その他の場合、リファレンスは、スタック５４１０からポップされ、スタック５６１０に保存される。したがって、新たなユーザ定義フレーム５６０２のプロシージャ５６０６には、保護されていないリファレンスを通じてアーギュメントを変更するためのアクセスが与えられる。
プロパティ”passage”が”byCopy”の場合、スタック５４１０上に見出されるオブジェクトのコピーが作られ、そのコピーへの保護されていないリファレンスは、新たなユーザ定義フレーム５６０２のスタックに保存される。したがって、プロシージャ５６０６には、アーギュメントのコピーへの無制限のアクセスが与えられる。ただし、プロシージャ５６０６には、コピーはパスするが、アーギュメント自身に対してはアクセスを持たない
こうして、新たなユーザ定義フレーム５６０２は、完成し、サブジェクトオペレーションの遂行の直前のサブジェクトオペレーションの動的状態を表す。処理は、ステップ５５２８（図５５Ｂ）からステップ５５３０に移行する。このステップ５５３０において、新たなユーザ定義フレーム５６０２は、スタック５３０２（図５６Ｃ）にプッシュされることによって、プロセス５３００の実行状態に含められる。したがって、スタック５４１０と、そのプロパティ”procedure”がプロシージャ５４０６であるメソッドオブジェクトとは、現在のスタックでも現在のメソッドでもなくなる。そして、スタック５６１０が、現在のスタックとなり、プロパティ”procedure”がプロシージャ５６０６であるメソッドオブジェクトが、現在のメソッドとなる。処理は、ステップ５５３０（図５５Ｂ）からステップ５５３２に移行する。このステップ５５３２において、ユーザ定義フレーム５６０２のプロシージャ５６０６（図５６Ｃ）が遂行される。
プロシージャ５４０６の遂行によって、サブジェクトオペレーションの遂行と、ユーザ定義フレーム５６０２の生成とを生じさせる識別子が実行されるように、ユーザ定義フレーム５６０２のプロシージャ５６０６の遂行によって、更なるオペレーションを生じさせる識別子が実行される。そして、これにより、新たなフレームが作り出されて、スタック５３０２に順次保存され、そのプロシージャが順次遂行される。このように、プロセス５３００の実行状態は、実行のスレッドを表すプロセス５３００のプロパティ”frames”であるスタック５３０２上の１以上のフレームによって表される。
プロシージャ５６０６の遂行の後、ユーザ定義フレーム５６０２は、サブジェクトオペレーションの遂行直後のサブジェクトオペレーションの動的状態を表している。
ユーザ定義フレーム５６０２のスタック５６１０は、サブジェクトオペレーションの遂行によってリザルトが生じていれば、このリザルトを有している。処理は、ステップ５５３２（図５５Ｂ）からステップ５５３４に移行する。このステップ５５３４において、サブジェクトオペレーションを定義するオペレーション定義のプロパティ”result”が、オペレーション定義のアトリビュート”result”を問い合わせることによって生成される。処理は、ステップ５５３４からテストステップ（result?）５５３６に移行し、ここで、クラス”Constraint”のプロパティ”result”のメンバーシップ（帰属関係）が判断される。換言すれば、プロパティ”result”は、コンストレントであり、かつニル（０）でないことが検査される。プロパティ”result”が、コンストレントであり、かつニル（０）でない場合に、サブジェクトオペレーションは、リザルトを生成し、処理は、テストステップ（result?）５５３６からテストステップ（stack empty?）５５３８に移行する。
テストステップ（stack empty?）５５３８において、プロセス５３００（図５６Ｃ）をインタープリートしているエンジンは、スタック５６１０にオブジェクトが存在するかを判断する。スタック５６１０が空であれば、処理は、テストステップ（stack empty?）５５３８（図５５Ｂ）から終了ステップ５５４０に移行する。この終了ステップ５５４０において、クラス”Result Missing”のエクセプションが送出される。一方、スタック５６１０（図５６Ｃ）がオブジェクトを含んでいる場合、処理は、テストステップ（stack empty?）５５３８（図５５Ｂ）からテストステップ（class of results?）５５４２に移行する。このテストステップ５５４２において、プロセス５３００（図５６Ｃ）をインタープリートしているエンジンは、スタック５６１０上のオブジェクトが、オペレーション定義のプロパティ”result”であるコンストレントを満足しているかを判断する。オブジェクトがコンストレントを満足しない場合、処理は、テストステップ（class of results?）５５４２（図５５）から終了ステップ５５４４に移行する。この終了ステップ５５４４において、クラス”Result Invalid”のエクセプションが送出される。一方、オブジェクトがコンストレントを満足する場合、処理は、テストステップ（class of results?）５５４２からステップ５５４６に移行する。
このステップ５５４６において、オブジェクトは、前述したように、オペレーション定義のプロパティ”passage”に従って、ユーザ定義フレーム５６０２のスタック５６１０（図５６Ｃ）から、ユーザ定義フレーム５３０４のスタック５４１０へ移動する。処理は、ステップ５５４６（図５５Ｂ）からステップ５５４８に移行する。
テストステップ（result?）５５３６において、プロパティ”result”がニル（０）である場合、処理は、ステップ５５４８に直接移行する。このステップ５５４８において、新たなユーザ定義フレーム５６０２がスタック５３０２（図５６Ｂ）からポップされ、廃棄される（図５６Ａ）。したがって、スタック５４１０と、そのプロパティ”procedure”がプロシージャ５４０６であるメソッドオブジェクトとが、再び、それぞれ、現在のスタックと、現在のメソッドとになる。処理は、ステップ５５４８（図５５Ｂ）からステップ５５５０に移行する。このステップ５５５０において、プロシージャ５４０６の実行は、インテジャ５４０８のインクリメントと、インテジャ５４０８によって示される位置にあるプロシージャ５４０６のアイテムの実行とによって、継続される。こうして、オペレーションを参照する識別子の実行によって、そのオペレーションが遂行される。
オペレーション定義及びメソッドの選択
前述したように、サブジェクトオペレーションを定義する、オペレーション定義とメソッドオブジェクトとは、それぞれステップ５５１０、５５２４において選択される（図５５Ａ）。オペレーション定義及びメソッドの選択は、図４１Ｂについて前述した本発明の実施例のコンテキストにおいて説明される。この実施例において、クラスオブジェクト４１０２は、クラス定義４１００のプロパティ”Citation”、”interface”、”implementation”を複写することによって生成される。選択されるオペレーション定義は、インターフェースオブジェクトから選択され、選択されるメソッドオブジェクトは、インプリメンテーションオブジェクトから選択される。オペレーション定義及びメソッドオブジェクトは、フローチャート５７００（図５７）に従って選択される。
適切なオペレーション定義及びメソッドオブジェクトは、レスポンディングオブジェクトがインスタンスとなるクラスに依存している。テストステップ（class?）５７０２において、レスポンディングオブジェクトは、それがクラスオブジェクトであるか、すなわちクラス”class”のメンバであるか検査される。
レスポンディングオブジェクトがクラスオブジェクトの場合、処理は、テストステップ５７０２からステップ（class look up）５７０４に移行する。このステップ５７０４において、レスポンディングオブジェクトのプロパティ”classFeatures”と、レスポンディングオブジェクトのインターフェーススーパークラスとが、後述するようにサーチ（検索）される。クラスフィーチャのレキシコン、すなわちプロパティ”classFeatures”は、サブジェクトオペレーションの識別子、すなわち実行中の識別子に適合するキーについてサーチされる。また、ステップ（class look up）５７０４において、レスポンディングオブジェクトのプロパティ”classMethods”と、レスポンディングオブジェクトのインプリメンテーションスーパークラスとが、実行中の識別子に関連したメソッドオブジェクトについて、後述するようにサーチされる。
処理は、ステップ５７０４からテストステップ５７０６に移行する。このテストステップ５７０６において、現在のプロセス、例えばプロセス５３００（図５６Ａ）をインタープリートしているエンジンは、オペレーション定義及びメソッドオブジェクトがステップ５７０４において見出されるかを判断する。サブジェクトオペレーションを定義するメソッドオブジェクト及びオペレーション定義が見出された場合は、処理は、テストステップ５７０６から終了ステップ５７０８に移行し、選択のプロセスが終了する。その他の場合には、処理は、テストステップ５７０６からステップ（instance look up）５７１０に移行する。また、レスポンディングオブジェクトがクラスオブジェクトでない場合、すなわちクラス”class”のメンバでない場合、処理は、テストステップ５７０２からステップ５７１０に直接移行する。
ステップ５７１０において、レスポンディングオブジェクトがインスタンスであるクラスのインターフェースオブジェクトと、そのクラスのインターフェーススーパークラスのインターフェースオブジェクトのプロパティ”instanceFeatures”とが、実行中の識別子に関連するフィーチャ定義について、サーチされる。さらに、ステップ５７１０において、レスポンディングオブジェクトがインスタンスであるクラスのインプリメンテーションと、そのクラスのインプリメンテーションスーパークラスのインプリメンテーションのプロパティ”instanceMethods”とが、実行中の識別子に関連するメソッドオブジェクトについて、サーチされる。サーチされるスーパークラスの順序については、後述する。
レスポンディングオブジェクトがクラスオブジェクトである場合には、クラスメソッドはクラスフィーチャだけを実行でき、インスタンスメソッドはインスタンスフィーチャだけを実行できる。
処理は、ステップ（instance look up）５７１０からテストステップ（found?）５７１２に移行し、このテストステップ５７１２において、エンジンは、オペレーション定義とメソッドオブジェクトが、ステップ５７１０にて検索されたかを判断する。実行中の識別子によって特定されたメソッドオブジェクトとオペレーション定義が、検索された場合は、処理は、テストステップ５７１２から終了ステップ５７１６に移行する。この終了ステップ５７１６において、この選択のプロセスは成功のうちに終了する。さもなければ、処理は、テストステップ５７１２から終了ステップ５７１４に移行する。この終了ステップ５７１４において、クラス”Feature Unavailable”のエクセプションが送出される。
引用として本明細書の一部を構成するアペンディックスＡに開示されている定義済み階層構造の一部が、適切なオペレーション定義及びメソッドオブジェクトについて種々のクラスがサーチされる順序を示すために、図５８Ａ、図５８Ｂに示されている。図５８Ａ、図５８Ｂは、定義済みインターフェース階層の一部を示しており、インプリメンテーション階層をサーチするメソッドは、インターフェース階層のサーチに関連して、以下に説明される。
階層図５８００（図５８Ａ）は、クラス”List”を表すクラスオブジェクト５８０２を示している。クラス”List”は、クラスオブジェクト５８０４によって表されたミックスインスーパークラス”ordered”、及びクラスオブジェクト５８０６によって表されたフレーバスーパークラス”Collection”から継承される。クラス”Collection”は、クラスオブジェクト５８０８によって表されるスーパークラス”Object”から継承される。クラス”Object”は、クラスオブジェクト５８１０によって表されるミックスインスーパークラス”Referenced”から継承される。図５８Ａ、図５８Ｂにおいて（ｉ）二重線は、フレーバクラスと、フレーバクラスのサブクラスとの間を結び、（ｉｉ）単一の実線は、ミックスインクラスと、ミックスインクラスのサブクラスとの間を結び、（ｉｉｉ）破線は、あるクラスと、そのクラスのインスタンスとの間に結んでいる。前述したように、インプリメンテーションオブジェクト又はインターフェースオブジェクトのプロパティ”superclasses”の最後のアイテムは、ミックスインクラスを特定すべきではない。この理由については後述する。
例として、フローチャート５７００（図５７）のコンテキストにおけるレスポンディングオブジェクトが、クラス”List”を表すクラスオブジェクト５８０２（図５８Ａ）であるものと想定する。ステップ５７０４（図５７）において、クラスオブジェクト５８０２のプロパティ”interface”であるインターフェースオブジェクトのプロパティ”classFeatures”は、実行中の識別子をキーとする関連についてサーチされる。このような関連が検索された場合、識別子と関連づけられたフィーチャ定義は、サブジェクトオペレーションのインターフェースを定義するオペレーション定義であり、選択される。そして、オペレーション定義のサーチは終了する。
一方、そのような関連が検索されなかった場合、クラス”List”の第１のスーパークラス、すなわちクラス”ordered”のインターフェースオブジェクトが、適切なオペレーション定義の場合と同様に、サーチされる。適切に特定されたオペレーション定義が検索されなかった場合、インターフェース階層の縦型探索において、クラス”ordered”のスーパークラスがサーチされる。クラス”ordered”はスーパークラスを持たないので、クラス”List”のインターフェースオブジェクト、すなわちクラス”Collection”のプロパティ”superclasses”の次のアイテムが前述したようにサーチされる。サーチされる最後のスーパークラスはミックスインクラスではないので、フレーバスーパークラスのサーチの前に各ミックスインスーパークラスをサーチする。
こうして、クラス”List”について前述したように、図５８Ａのクラスオブジェクトの残りの部分が、クラス”Object”を表すクラスオブジェクト５８０８、クラス”Referenced”を表すクラスオブジェクト５８１０の順序でサーチされる。
サブジェクトオペレーションのインプリメンテーションを定義する適切なメソッドオブジェクトのサーチは、２つの例外を除いて、適切なオペレーション定義のサーチについて前述した通りである。第１に、あるクラスのインプリメンテーションオブジェクトのプロパティ”classMehods”が、適切に特定されたメソッドオブジェクトについてサーチされる。第２に、クラス”List”の、インターフェーススーパークラスではなく、インプリメンテーションスーパークラスが、適切に特定されたメソッドオブジェクトについてサーチされる。
単一のフレーバスーパークラスが、最後にサーチされるスーパークラスであることの重要性は、次の仮定の例を検討すれば明らかとなる。例えば、フレーバ”Collection”を表すクラスオブジェクト５８０６と、クラス”cllection”のスーパークラスを表すクラスオブジェクト５８０８とが、ミックスインクラス”ordered”を表すクラスオブジェクト５８０４のサーチの前にサーチされるものと想定する。さらに、クラス”Object”を表すクラスオブジェクト５８０８が、クラス”ordered”によって適合された１以上のフィーチャ、すなわちクラスオブジェクト５８０４によってそのメソッドが提供された１以上のフィーチャを、定義していると想定する。この仮定の例においては、クラスオブジェクト５８０８は常にクラスオブジェクト５８０４の前にサーチされるので、クラスオブジェクト５８０８によって定義されたフィーチャについてのメソッドは、常にクラスオブジェクト５８０８において検索される。したがって、クラスオブジェクト５８０４がクラスオブジェクト５８０８によって定義されたフィーチャに適合することは、不可能である。したがって、あるフレーバのフレーバスーパークラスは、常にオペレーション定義又はメソッドについてサーチされるフレーバの最後のスーパークラスである。
引き続いて、この例示的な例では、フローチャート５７００（図５７）のコンテキストにおけるレスポンディングオブジェクトが、クラス”List”を表すクラスオブジェクト５８０２（図５８Ａ、図５８Ｂ）であり、階層図５８５０（図５８Ｂ）が、ステップ５７１０（図５７）においてサーチされるクラスを示している。クラスオブジェクト５８０２（図５８Ｂ）のインスタンスフィーチャのためのメソッドオブジェクト及びオペレーション定義についてのサーチは、前述したようなクラスフィーチャのためのメソッドオブジェクト及びオペレーション定義についてのサーチと、次の２つの点で異なっている。第１に、あるクラスのインターフェースオブジェクトのプロパティ”instanceFeatures”は、適切に特定されたオペレーション定義についてサーチされ、あるクラスのインプリメンテーションオブジェクトのプロパティ”instanceMethods”は、適切に特定されたメソッドオブジェクトについてサーチされる。第２に、レスポンディングオブジェクト、すなわちクラスオブジェクト５８０２がメンバであるクラスがサーチされる。
クラスをサーチする方法は、前述したものと同様であり、ここでは繰り返さない。適切なオペレーション定義及びメソッドオブジェクトが見出されるが、又は以下に述べる全てのクラスがサーチされるかするまで、以下のクラスが、以下の順序においてサーチされる。（ｉ）クラスオブジェクト５８０２がインスタンスであるクラス”class”を表すクラスオブジェクト５８１２。（ｉｉ）クラス”class”のミックスインスーパークラスあるクラス”Interchanged”を表すクラスオブジェクト５８１６。（ｉｉｉ）ミックスインクラス”Interchanged”のミックスインスーパークラス、したがってクラス”class”のミックスインスーパークラスであるクラス”Unchanged”を表すクラスオブジェクト５８１８。（ｉｖ）クラス”class”のミックスインスーパークラスであるクラス”Cited”を表すクラスオブジェクト５８１４。（ｖ）クラス”class”のフレーバスーパークラスであるクラス”Object”を表すクラスオブジェクト５８０８。（ｖｉ）クラス”Object”のミックスインスーパークラスであるクラス”Referenced”を表すクラスオブジェクト５８１０。
図５８Ａ、図５８Ｂのクラスのサーチにおいて、実行中の識別子に関連したオペレーション定義又はメソッドオブジェクトが見出されない場合には、レスポンディングオブジェクトについてオペレーションが定義されず、クラス”Feature Undefind”のエクセプションが送出される。
前述したように、レスポンディングオブジェクトがクラスでない場合には、ステップ５７０４（図５７）の処理は行われない。例えば、レスポンディングオブジェクトが、クラス”List”のインスタンスであるリスト５８０２Ａであれば、前述したように、階層図５８００（図５８Ａ）に示されたクラスがステップ５７１２（図５７）においてサーチされる。
本発明の一実施例において、インターフェース階層とインプリメンテーション階層とは互いに独立である。換言すれば、あるクラスのインターフェーススーパークラスは、必ずしもそのクラスのインプリメンテーションスーパークラスではなく、あるクラスのインプリメンテーションスーパークラスは、必ずしもそのクラスのインターフェーススーパークラスではない。このような実施例では、エンジンは、オペレーション”makeClasses”の遂行の間、インプリメンテーションの欠けたフィーチャ定義がないように保証する。オペレーション”makeClasses”が失敗に終わり、クラス”class Exception”のエクセプションが送出されるのは、次の条件の下である。すなわち、この条件とは、定義されるクラスが抽象的ではないこと、及び、その定義されるクラスが、定義されたフィーチャをインプリメントするメソッドを定義していないか、又はそのメソッドをインプリメンテーションスーパークラスから継承していないことである。こうして、インターフェース階層において定義されたフィーチャは、インプリメンテーション階層において見出されたメソッドによって常にインプリメントされる。
こうして、サブジェクトオペレーションのための適切なオペレーション定義及びメソッドオブジェクトが、前述したようにクラス階層をサーチすることによって見出されるか、又はエクセプションが送出される。
エスカレーション
前述したように、スーパークラスからフィーチャを継承するクラスは、フィーチャに対する新しいインプリメンテーションの供与によって、フィーチャのインプリメンテーションを変更することができる。ただし、この新しいインプリメンテーションは、スーパークラスによって提供されたインプリメンテーションを使用することもある。オブジェクトは、フィーチャのエスカレーションによって、現在のクラスの直接のスーパークラスの特定又は任意の１つによってインプリメントされるようなフィーチャを遂行するように指示される。アペンディックスＡに一層詳細に説明するように、現在のクラスは、現在実行されているメソッドを供与するクラスである。
フィーチャは、エスカレーションされるべきフィーチャを参照する資格のある識別子（有資格識別子）を実行するか、又は”エスカレート”セレクタを実行することによって、エスカレーションされる。有資格識別子（qulified identifier）は、フィーチャのインプリメンテーションを供与するクラスを特定するプロパティ”qualifier”を含んでいる。
”エスカレート”セレクタの実行によってフィーチャがエスカレートされる場合、いかなる直接のインプリメンテーションスーパークラスも、そのフィーチャのインプリメンテーションを供与することができる。
なお、有資格識別子のプロパティ”qualifier”へにアクセスを与えるアトリビュートは、定義されていない。有資格識別子が作り出され、その有資格識別子が破壊されるまで変更されずに保たれるときに、有資格識別子のプロパティ”qualifier”が設定される。フィーチャのエスカレーションについてはアペンディックスＡに詳細に説明されている。
エスカレーションは、オブジェクトの初期化において特に重要な役割をする。アペンディックスＡには、本発明の定義済み各クラスの初期化についての説明が含まれている。オブジェクトの初期化は、フローチャート５９００（図５９）に示されている。このフローチャート５９００（図５９）は、リストの初期化について、すなわちクラス”List”のインスタンスの初期化について、例示的なコンテキストを説明している。オペレーション”initialize”は、クラス”List”の直接の各インプリメンテーションスーパークラスについてエスカレートされる。前述したように、階層図５８００（図５８Ａ）は、クラス”List”のインターフェーススーパークラスを表している。さらに、階層図５８００は、クラス”List”のインプリメンテーションスーパークラスを正確に表している。
ステップ５９０２において、新しいリストがインスタンスであるクラス、すなわちクラス”List”によって定義されたオペレーション”initialize”が、遂行される。オペレーション”initialize”の遂行は、現在のスタックから０以上のアーギュメントを使用する。処理は、ステップ５９０２からステップ５９０４に移行する。
ステップ５９０４においては、インプリメンテーションオブジェクトのアトリビュート”superClasses”を問い合わせることによって、クラス”List”のインプリメンテーションオブジェクトのプロパティ”superClasses”が生成される。前述したように、インプリメンテーションオブジェクトのプロパティ”superClasses”は、クラスを参照する識別子のリストである。処理は、ステップ５９０４からステップ（FOR EACH SUPERCLASS）５９０６に移行する。
ステップ（FOR EACH SUPERCLASS）５９０６とステップ（NEXT）５９１０は、前記のようにして形成されたプロパティ”superClasses”の各スーパークラスがステップ（escalate”initialize”）５９０８において処理されるように、処理ループを形成する。すなわち、各スーパークラスについて、処理は、ステップ５９０６からステップ５９０８に移行する。このステップ５９０８において、スーパークラスは、フローチャート５９００に従ってオペレーション”initialize”を遂行するように指示される。したがって、フローチャート５９００において、インプリメンテーション階層の縦型探索が反復して遂行される。例えば、ステップ５９０８において、”initialize”がエスカレートされるような、第１のイミディエイトスーパークラスは、（ｉ）ステップ５９０２において、”initialize（初期化）”を遂行し、（ｉｉ）ステップ５９０４において、そのスーパークラスの直接のインプリメンテーションスーパークラスを生成させ、（ｉｉｉ）ステップ５９０６及びステップ５９１０によって定義された処理ループにおいて、そのスーパークラスの各スーパークラスに”initialize（初期化）”をエスカレートする。
処理は、ステップ５９０８からステップ５９１０を経てステップ５９０６に移行する。こうして、プロパティ”superclasses”のリストで検索される順に、イニシアライゼーションが、直接の各インプリメンテーションスーパークラスにエスカレートされる。クラス”List”のスーパークラスによるオペレーション”initialize”のそれぞれの遂行は、現在のスタックから０以上のアーギュメントを使用し、スーパークラスの直接のインプリメンテーションスーパークラスに、イニシアライゼーションをエスカレートする。
ステップ５９０６及びステップ５９１０の処理ループに従って、クラス”List”の直接の各インプリメンテーションスーパークラスがオペレーション”initialize”を遂行した後、処理は、ステップ５９０６から終了ステップ５９１２に移行する。この終了ステップ５９１２において、クラス”List”によって定義されたオペレーション”initialize”の遂行は成功のうちに終了する。こうして、新しいリストがメンバである各クラスは、前述のステップ５７１０（図５７）においてクラスがサーチされた順に、オペレーション”initialize”を遂行する。
モディファイアの実行
識別子の実行については以上に、そしてアペンディックスＡに詳細に説明されている。しかし、モディファイアの存在や、識別子の性質によって、識別子の実行が変更されることがある。例えば、アペンディックスＡに述べたモディファイア代替ルールに従って識別子があるアトリビュートを特定した場合、オペレーション”getAttribute”が遂行され、只１つのアーギュメントとして、実行中の識別子が使用される。種々のモディファイアと、識別子の実行に対する効果とについては、アペンディックスＡに説明されており、この説明は引用として本明細書の一部とされる。
セレクタの実行
セレクタは、基本的な要素であり、その実行によってある特別のアクションが引き起こされる。各セレクタについては、アペンディックスＡに説明されているが、幾つかのセレクタについてここで説明する。例えば、セレクタ”break”、”continue”、”succeed”は、プロシージャの遂行のコンテキストにおいて、後述される。セレクタ”self”の実行は、現在のメソッドのレスポンダである現在のオブジェクトへのリファレンスを、現在のスタックにプッシュする。図５６Ｃのコンテキストにおいて、現在のオブジェクトは、フレーム５６０２のプロパティ”responder”であるオブジェクト５６０４であり、現在のスタックは、フレーム５６０２のプロパティ”stack”であるスタック５６１０であり、現在のメソッドは、そのプロパティ”procedure”がプロシージャ５６０６であるメソッドオブジェクトである。セレクタ”Process”の実行によって、現在のプロセスへのリファレンスが、現在のスタックにプッシュされる。図５６Ｃにおいて、現在のプロセスは、プロセス５３００である。現在のプロセスがエンジンプレイスであれば、ニル（０）が現在のスタックにプッシュされる。
こうして、本発明に従って作り出されたエンジンは、プロシージャのアイテムを順次実行することによって、プロシージャを実行する。プロシージャのアイテムの実行は、このアイテムが識別子である場合、前述したような状態の元で、その識別子によって参照されるフィーチャの実行を引き起こす。遂行されるプロシージャの動的状態はフレームに記録される。ユーザ定義フィーチャをインプリメントするメソッドの動的状態は、ユーザ定義フレームに記録される。フィーチャのインターフェースとインプリメンテーションをそれぞれ定義するフィーチャ定義とメソッドオブジェクトは、レスポンディングオブジェクトのメンバであるクラスから選択される。現在のクラスのスーパークラスによって提供されたインプリメンテーションは、フィーチャのエスカレートによって遂行される。例えば、オペレーション”initialize”は、反復的にエスカレートされ、レスポンダがメンバである各クラスによって供与されるメソッドが、遂行される。モディファイアは、識別子の実行を変更するために用いられる。セレクタは、普通に実行される複雑なアクションが単一のオブジェクトの実行によって生ずるようにする簡単な手段を提供する。これらのフィーチャの組み合わせにより、ここに開示されたコンピューターインストラクションセットにおいて、非常に高度の機能性及び汎用性が得られる。
コントロールコンストラクト
前述したように、エージェントは、１以上のどのプレイスに移動し、１以上のどのエージェントとミーティングするかを定めるための、複雑なロジックを適用することができる。ここに開示されたインストラクションセットは、そのインストラクションセットからなるプロシージャにおいて、複雑で込み入ったロジックの実現を可能にする高度な一般性が得られる、多くのインストラクションを提供している。
以下に、このような高度な一般性を与えるコントロールコンストラクトについて説明する。（ｉ）リソース及びリソース割当フィーチャは、プロシージャの実行の間、リソースの共有もしくは排他的コントロールを取得し保持する能力をプロセスに提供する。（ｉｉ）デシジョンハンドリングフィーチャは、プロセスがプロシージャを条件的に実行することを可能にする。（ｉｉｉ）エクセプションハンドリングフィーチャは、プロセスがエクセプションの送出を検出してそれに対してアクションをとることを可能にする。（ｉｖ）ルーピングフィーチャはプロシージャを反復遂行して、それにより反復的なタスクを効率的に実行することを可能にする。
リソース及びリソース割当フィーチャ
以上に説明したように、また、アペンディックスＡに説明するように、１以上のプロセスを処理するエンジンは、それらの処理を同時に行っている。例えば、エンジン１３２Ｂ（図１５Ｅ）は、エージェント１５０Ａ、１５０Ｂを同時に処理する。エンジン１３２Ｂは、エンジン１３２Ｂによって実行されるエージェント１５０Ａによる第１のプロシージャの遂行の間のどの時点でも、エージェント１５０Ａによる第１のプロシージャの遂行を一時的に中断することができる。そして、このとき、エンジン１３２Ｂは、エージェント１５０Ｂのために第２のプロシージャを自由に実行することができる。エンジン１３２Ｂは、第２のプロシージャの遂行のどの時点においても、エージェント１５０Ｂのために第２のプロシージャの実行を一時的に中断し、エージェント１５０Ａのために第１のプロシージャの実行を再開することができる。このようにして、エンジン１３２Ｂは、エージェント１５０Ａ、１５０Ｂを同時に処理する。
アペンディックスＡに説明するように、エンジンは、定義済みフィーチャの大部分をアトミック（不可分）に遂行する。エンジンが、フィーチャが成功又は失敗のうちに完了するまで、他のプロセスを処理するためにそのフィーチャの遂行の中断することを拒んだ場合、そのフィーチャはアトミックに遂行される。フィーチャがアトミックに遂行される場合、そのフィーチャの遂行の間いかなる他のプロセスもインタープリートされないので、現在のプロセスを除くいかなるプロセスもリソースを変更したり操作したりすることはできない。アトミックに遂行されない、定義済みフィーチャは、アペンディックスＡに説明されている。
ユーザ定義フィーチャをアトミックに遂行するメカニズムは存在しない。すなわち、ユーザ定義フィーチャの遂行の間に、又はアトミックに遂行されないあらかじめ定義されたフィーチャの遂行の間に、プロセスがリソースの共有又は排他的な使用を取得し得るようにするためのメカニズムが必要である。ユーザは、クラス”Resource”によって定義される、アペンディックスＡに詳細に説明されているオペレーション”use”の使用によって、リソースの共有又は排他的な使用が得られるように、プロセスを構成することができる。オペレーション”use”の遂行の動的状態はクラス”Use Frame”のユーズフレームによって記録される。ユーズフレームについては、付録Ｂに記載されている。
実行オブジェクトの条件的な実行
実行オブジェクトは、オペレーション”if”又はオペレーション”either”の遂行によって条件的に実行される。レスポンディング実行オブジェクトによるオペレーション”if”の遂行では、ブーリアンオブジェクトが使用され、ブーリアンオブジェクトの値が”true”であれば、実行オブジェクトを遂行する。なお、プロシージャは、実行オブジェクト、すなわちミックスインクラス”Executed”のメンバであり、プロシージャの遂行については、図５２Ａ、図５２Ｂを参照して上述したとおりである。
フローチャート６０００（図６０）は、ミックスインクラス”Executed”によって定義されたオペレーション”if”のインプリメンテーションを示している。オペレーション”if”を遂行する際に、レスポンディング実行オブジェクトは、ステップ６００２において、現在のスタックからブーリアンオブジェクトをポップする。処理は、ステップ６００２からテストステップ（boolean?）６００４に移行し、このテストステップ６００４において、ステップ６００２でポップされたブーリアンオブジェクトが”true”と比較される。ブーリアンオブジェクトが”true”であれば、処理は、テストステップ６００４からステップ６００６に移行し、このステップ６００６において、レスポンディング実行オブジェクトが遂行される。処理は、ステップ６００６から、テストステップ（exception?）６０１０に移行し、ここで、オペレーション”if”を実行しているエンジンが、レスポンディング実行オブジェクトのステップ６００６での遂行によってエクセプションが送出されたかを判断する。
ステップ６００６においてエクセプションが送出されなかった場合、処理は、テストステップ６０１０から終了ステップ６００８に移行する。また、ブーリアンオブジェクトが”false”である場合、処理は、テストステップ６００４から終了ステップ６００８に直接移行する。そして、この終了ステップ６００８において、オペレーション”if”が成功のうちに終了する。一方、ステップ６００６においてエクセプションが送出された場合、処理は、テストステップ６０１０から終了ステップ６０１２に移行し、この終了ステップ６０１２において、レスポンディング実行オブジェクトのステップ６００６での遂行によって送出されたエクセプションが送出され、それによってオペレーション”if”が失敗となる。オペレーション”if”の遂行の動的状態は、上述しまたアペンディクスＢにおいて説明される、定義済みフレーム、すなわちクラス”Predefined Frame”のメンバ、によって記録される。
オペレーション”either”の使用によって、２つの実行オブジェクトのうちの１つが選択され実行される。実行オブジェクトは、第２の実行オブジェクトとブーリアンオブジェクトとを使用して、ブーリアンオブジェクトの値が”true”であれば、レスポンディング実行オブジェクトを実行させ、ブーリアンオブジェクトの値が”false”であれば、第２の実行オブジェクトを実行させることによって、オペレーション”either”を遂行する。フローチャート６１００（図６１）は、ミックスインクラス”Executed”によって定義されたオペレーション”either”のインプリメンテーションを示している。
レスポンディング実行オブジェクトは、ステップ６１０２において第２の実行オブジェクトを現在のスタックからポップする。処理は、ステップ６１０２からステップ６１０４に移行し、このステップ６１０４において、レスポンディング実行オブジェクトは、現在のスタックからブーリアンオブジェクトをポップする。処理は、ステップ６１０４からテストステップ６１０６に移行し、このテストステップ６１０６において、ステップ６１０４においてポップされたブーリアンが”true”と比較される。ブーリアンオブジェクトが”true”の場合、処理は、テストステップ６１０６からステップ６１０８に移行し、このステップ６１０８において、レスポンディング実行オブジェクトが遂行される。一方、応答するブーリアンオブジェクトの値が”false”の場合、処理は、テストステップ６１０６からステップ６１１０に移行し、このステップ６１１０において、第２の実行オブジェクトが遂行される。処理は、ステップ６１０８又はステップ６１１０から、終了ステップ６１１２に移行する。この終了ステップ６１１２において、オペレーション”either”が終了し、ステップ６１０８又はステップ６１１０においてエクセプションが送出されていたならば、エクセプションが送出される。オペレーション”either”を遂行する、実行オブジェクトの動的状態は、定義済みフレームによって記録される。
オペレーション”select”の遂行によって、１つの実行オブジェクトが、１以上の実行オブジェクトから選択され遂行される。オペレーション”select”は、クラス”Object”によって定義され、遂行されるべき特定の実行オブジェクトを決定するオブジェクトによって遂行される。図６２Ａ、図６２Ｂは、オペレーション”select”のインターフェースを示している。図６２Ａは、オブジェクト６２０４によって遂行されるオペレーション”select”の動的状態を記録する定義済みフレーム６２００の状態を示している。定義済みフレーム６２００は、プロセス（図示せず）の実行状態の一部分であり、オペレーション”select”の遂行直前の状態を示している。
オブジェクト６２０４はレスポンダである。定義済みフレーム６２００は、オブジェクト６２０４を特定するプロパティ”responder”を持たない。その代わりに、オブジェクト６２０４は、現在のプロセスのプロパティ”frames”であるスタック（図示せず）上における現在のフレームの直下のフレーム（図示せず）のプロパティ”procedure”内のポジションによって、レスポンダとして特定される。オブジェクト６２０４は、そのポジションが、そのフレームのプロパティ”position”よりも１だけ少ないプロシージャ（図示せず）のアイテムである。例えば、ユーザ定義フレーム５６０２（図５６Ｃ）のレスポンダは、そのポジションがインテジャ５４０８の値よりも１だけ少ないプロシージャ５４０６のアイテムである。
スタック６２０２（図６２Ａ）は、現在のスタックである。スタック６２０２上には、オペレーションのアーギュメントを示し、文字”Ｍ”によってポジションが示されるマークと、１以上の対のオブジェクト及びそれに関連する実行オブジェクトとがある。例えば、スタック６２０２は、トップからマークのすぐ上の部分にかけて、オブジェクト６２０２と、実行オブジェクト６２０８と、オブジェクト６２１０と、実行オブジェクト６２１２と、ニル（０）６２１４と、実行オブジェクト６２１６とを収容している。オブジェクト６２０６、６２１０及びニル（０）６２１４は、それぞれの実行されるオブジェクト６２０８、６２１２、６２１６に関連づけられている。
オペレーション”select”のインプリメンテーションは、フローチャート６３００（図６３）によって示される。ステップ６３０２において、オブジェクト６２０６〜６２１６（図６２Ａ）及びマークが、スタック６２０２からポップされる。処理は、ステップ６３０２からステップ６３０４に移行する。このステップ６３０４において、オブジェクト６２０６、６２１０及びニル（０）６２１４をキーとし、それぞれ実行オブジェクト６２０８、６２１２、６２１６を関連する値とするディクショナリが形成される。処理は、ステップ６３０４からステップ６３０６に移行する。このステップ６３０６において、関連づけられたキーがレスポンディングオブジェクト６２０４に等しい実行オブジェクトが、ステップ６３０４において形成されたディクショナリから検索される。ディクショナリのキーが与えられたときのディクショナリの値の検索については、アペンディクスＡに一層詳細に説明されている。
処理は、ステップ６３０６からテストステップ６３０８に移行する。テストステップ６３０８において、オペレーション”select”を実行しているエンジンは、実行オブジェクトがディクショナリーから検索されたかを判断する。応答するオブジェクト６２０４とキーが等しい実行オブジェクトがディクショナリー内において検索された場合、処理は、ステップ６３１４に移行する。このステップ６３１４において、検索された実行オブジェクトが遂行される。処理は、ステップ６３１４からテストステップ６３１８に移行し、このテストステップ６３１８において、エンジンは、実行オブジェクトの遂行がステップ６３１４において成功のうちに完了したかを判断する。
ステップ６３１４において実行オブジェクトの遂行が失敗し、エクセプションが送出された場合、処理は、テストステップ６３１８から終了ステップ６３２０に移行する。この終了ステップ６３２０において、エクセプションが送出され、オペレーション”select”は失敗に終わる。一方、検索された実行オブジェクトがステップ６３１４において成功のうちに遂行された場合、処理は、テストステップ６３１８から終了ステップ６３１６に移行する。この終了ステップ６３１６において、オペレーション”select”は成功のうちに終了する。
テストステップ６３０８において、レスポンディングオブジェクト６２０４に等しいキーが、ステップ６３０４において形成されたディクショナリから検索されなかった場合、処理は、テストステップ６３０８からステップ６３１０に移行する。このステップ６３１０において、ディクショナリ内に含まれる関連づけられたキーがニル（０）である実行オブジェクト、例えばニル（０）６２１４と関連づけられたオブジェクト６２１６が検索される。処理は、ステップ６３１０からテストステップ６３１２に移行し、このテストステップ６３１２において、エンジンは、実行オブジェクトがステップ６３１０において成功のうちに検索されたかを判断する。ニル（０）と等しいキーを有するディクショナリ内の実行オブジェクトが検索された場合、処理は、テストステップ６３１２からステップ６３１４に移行し、このステップ６３１４において、前述したように実行オブジェクトが遂行される。
一方、ステップ６３１０において実行オブジェクトが検索されなかった場合、オブジェクト６２０４に等しいキー及びニル（０）６２１４に等しいキーが、ディクショナリーにおいて見いだされなかったので、処理は、テストステップ６３１２から終了ステップ６３１６に移行する。前述したように、終了ステップ６３１６において、オペレーション”select”は成功のうちに終了する。すなわち、レスポンディングオブジェクトやニル（０）とキーが等しい実行オブジェクトがない場合、オペレーション”select”は、ディクショナリー内の実行オブジェクトを遂行することなく、成功のうちに終了する。
図６２Ｂは、レスポンディングオブジェクト６２０４によるオペレーション”select”の遂行の直後のセレクトフレーム６２００の状態を示している。オペレーション”select”の遂行は、図６２Ｂの空のスタック６２０２に示すように、いかなるリザルトも生じない。
実行オブジェクトは、オペレーション”while”の遂行によって、条件が満たされるまで繰り返し実行される。オペレーション”while”の遂行の動的状態は、定義済みフレーム６４０２（図６４）に記録される。実行オブジェクト６４０４は、オペレーション”while”のレスポンダであり、レスポンディング実行オブジェクトである。実行ブジェクト６４０４は、定義済みフレーム６４０２のプロパティ”procedure”である。実行オブジェクト６４０６は、定義済みフレーム６４０２のプロパティ”precondition”であり、後述するようにアーギュメントとして使用される実行オブジェクトである。
オペレーション”while”は、レスポンディング実行オブジェクト６４０４によって遂行される。ここで、レスポンディング実行オブジェクト６４０４は、アーギュメントとして、実行オブジェクト６４０６を使用する。オペレーション”while”の遂行は、フローチャート６５００（図６５）によって示されている。ステップ６５０２において、実行オブジェクト６４０６が、現在のスタックからポップされる。処理は、ステップ６５０２からステップ６５０４に移行し、このステップ６５０４において、実行オブジェクト６４０６が遂行される。実行オブジェクト６４０６がステップ６５０４で遂行されることによって、レスポンディング実行オブジェクト６４０４が遂行されるか否かを示すブーリアンが、現在のスタックにプッシュされる。
処理は、ステップ６５０４からテストステップ６５０６に移行し、このテストステップ６５０６において、オペレーション”while”を遂行しているエンジンは、実行オブジェクト６４０６の遂行によってエクセプションが送出されたかを判断する。実行オブジェクト６４０６の遂行がエクセプションを送出した場合、処理は、テストステップ６５０６から終了ステップ６５０８に移行し、この終了ステップ６５０８において、オペレーション”while”によってエクセプションが送出され、オペレーション”while”は失敗に終わる。一方、実行されるオブジェクト６４０６が成功のうちに遂行された場合、処理は、テストステップ６５０６からステップ６５１０に移行する。
ステップ６５１０において、ブーリアンが現在のスタックからポップされる。処理は、ステップ６５１０からテストステップ６５１２に移行する。このテストステップ６５１２において、現在のスタックからポップされたブーリアンが”true”と比較される。ブーリアンが”true”の場合は、処理は、テストステップ６５１２からステップ６５１４に移行し、このステップ６５１４において、レスポンディング実行オブジェクト６４０６が遂行される。処理は、ステップ６５１４からテストステップ６５１６に移行し、このテストステップ６５１６において、エンジンは、実行オブジェクト６４０６がエクセプションを送出したかを判断する。
ステップ６５１４で実行オブジェクト６４０６の遂行によってエクセプションが送出された場合、処理は、テストステップ６５１６からテストステップ６５２２に移行する。このテストステップ６５２２において、送出されたエクセプションは、以下及びアペンディクスＡに説明されるセレクタ”continue”の実行によって送出される内部的なエクセプション”continue”と比較される。後で詳細に説明するように、セレクタ”continue”の実行は、プロシージャの反復的な遂行を終了させ、そのプロシージャの新しい反復的な遂行を開始させる。ステップ６５１４において送出されたエクセプションが、内部的なエクセプション”continue”の場合、処理は、テストステップ６５２２から、前述のステップ６５０４に移行する。
一方、ステップ６５１４において送出されたエクセプションが内部的なエクセプション”continue”でない場合、処理は、テストステップ６５２２からテストステップ６５２４に移行する。このテストステップ６５２４において、ステップ６５１４において送出されたエクセプションが、以下及びアペンディクスＡに説明されるセレクタ”break”の実行によって送出される内部的なエクセプション”break”と比較される。後で詳細に説明するように、セレクタ”break”の実行によって、プロシージャの反復的な遂行が、そのプロシージャの新しい反復的な遂行を開始することなく終了される。ステップ６５１４において送出されたエクセプションが内部的なエクセプション”break”の場合、処理は、テストステップ６５２２から終了ステップ６５２０に移行し、この終了ステップ６５２０において、オペレーション”while”は、後述するように成功のうちに終了する。
一方、ステップ６５１４において送出されたエクセプションが内部的なエクセプション”break”でない場合、処理は、テストステップ６５２４から終了ステップ６５１８に移行する。この終了ステップ６５１８において、ステップ６５１４において送出されたエクセプションが送出され、オペレーション”while”は失敗に終わる。
また、実行オブジェクト６４０４の遂行が成功し、ステップ６５１４においてエクセプションが送出されなかった場合、処理は、テストステップ６５１６からステップ６５０４に移行し、このステップ６５０４において、実行オブジェクト６４０６は再び遂行される。
ステップ６５０４、６５０６、６５１０、６５１２、６５１４、６５１６、６５２２の遂行は、実行オブジェクト６４０６の遂行により値が”false”のブーリアンを生じるか、又はステップ６５０８若しくはステップ６５１８においてエクセプションが送出されるまで反復される。実行オブジェクト６４０６の遂行により値が”false”のブーリアンを生じた場合、処理は、テストステップ６５１２から終了ステップ６５２０に移行し、この終了ステップ６５２０において、オペレーション”while”は成功のうちに終了する。したがって、プロシージャ６４０６は、実行オブジェクトの遂行によって値が”true”のブーリアンを生じている間、反復して遂行される。
このように、オペレーション”if”、”either”、”select”、”while”は、ここに開示されたコンピュータインストラクションセットに、実質的な判断能力を供与する。
エクセプションハンドリングフィーチャ
アペンディクスＡにおいて詳細に説明するように、オペレーション”do”を遂行する実行オブジェクトは、それによって遂行される。そして、この実行オブジェクトの遂行がエクセプションを送出した場合、オペレーション”do”によってエクセプションが送出され、オペレーション”do”が失敗となる。エクセプションの伝送は、前述したようにフローチャート５２００（図５２Ａ）のステップ５２１０、５２１２に示されている。実行オブジェクトの遂行の失敗は、その遂行を、直接的又は間接的に、呼び出している実行オブジェクトの失敗を一般に生じさせる。あるプロセスのオペレーション”live”を失敗させるエクセプションは、そのプロセスの破壊を生ずる。したがって、エクセプションの伝送を検出して、防止するためのインストラクションを用意することが好ましい。
第２の実行オブジェクトの遂行を呼び出す第１の実行オブジェクト、例えばプロシージャは、第２の実行オブジェクトによって送出されるエクセプションを”キャッチ”することによって、第２の実行オブジェクトによって送出されたエクセプションによる第１の実行オブジェクトの失敗を防止することができる。
エクセプションを”キャッチ”することは、エクセプションの送出を検出し、このような事態において特定のアクションを取るように指示することである。第２の実行オブジェクトによって送出され、第１の実行オブジェクトによってキャッチされるエクセプションは、第１の実行オブジェクトを失敗に終わらせることはない。
実行オブジェクトの遂行によって送出されるエクセプションは、オペレーション”do”のプレイスにおいて、オペレーション”catch”の使用により実行オブジェクトの遂行を開始させることによって、キャッチされる。オペレーション”catch”によって遂行が開始される実行オブジェクトは、実行オブジェクトの遂行によって送出されるエクセプションがオペレーション”catch”を失敗に終わらせることはないということ以外は、その実行オブジェクトがオペレーション”do”を遂行しているかのように遂行される。このような場合には、エクセプションは、現在のスタックにプッシュされ、リザルトとして返される。
オペレーション”catch”のインターフェースは、図６６Ａ、図６６Ｂに示される。図６６Ａは、キャッチフレーム６６０２の状態を示している。このキャッチフレーム６６０２は、実行オブジェクト６６０４によるオペレーション”catch”の遂行の直前における、ミックスインクラス”Executed”によって定義されたオペレーション”catch”の動的状態を記録している。キャッチフレーム６６０２は、あるプロセス（図示せず）の実行状態の一部である。実行オブジェクト６６０４は、レスポンディング実行オブジェクトであり、キャッチフレーム６６０２のプロパティ”procedure”である。オペレーション”catch”が遂行されると、１つのアーギュメントであるスタック６６０６のトップにあるクラスオブジェクト６６０８が使用される。スタック６６０６は現在のスタックである。スタック６６０６は、現在のプロセスのプロパティ”frames”であるスタック（図示せず）上のキャッチフレーム６６０２の下方にあり、最も上のユーザ定義フレーム（図示せず）のプロパティ”stack”である。クラスオブジェクト６６０８は、クラス”exceptions”又はそのサブクラスを表している。
オペレーション”catch”のインプリメンテーションは、フローチャート６７００（図６７）によって示される。ステップ６７０２において、クラスオブジェクト６６０８は、スタック６６０６からポップされ使用される。処理は、ステップ６７０２からステップ６７０４に移行し、このステップ６７０４において、実行オブジェクト６６０４が遂行される。処理は、ステップ６７０４からテストステップ６７０６に移行し、このテストステップ６７０６において、オペレーション”catch”の遂行を行うエンジンは、実行オブジェクト６６０４の遂行によりエクセプションを送出されたかを判断する。実行オブジェクト６６０４の遂行がエクセプションを送出しなかった場合、処理は、テストステップ６７０６からステップ６７０８に移行する。このステップ６７０８において、スタック６６０６にニル（０）がプッシュされる。処理は、ステップ６７０８から終了ステップ６７１０に移行し、この終了ステップ６７１０において、オペレーション”catch”は、成功のうちに終了する。
ステップ６７０４で実行オブジェクト６６０４の遂行が失敗してエクセプションが送出された場合、処理は、テストステップ６７０６からテストステップ６７１２に移行する。このテストステップ６７１２において、エンジンは、ステップ６７０４で送出されたエクセプションについて、クラスオブジェクト６６０８によって表されるクラスにおける帰属関係をチェックする。送出されたエクセプションがクラスオブジェクト６６０８によって表されるクラスのメンバでない場合、処理は、テストステップ６７１２から終了ステップ６７１４に移行する。この終了ステップ６７１４において、ステップ６７０４で送出されたエクセプションが、オペレーション”catch”によって送出され、オペレーション”catch”は失敗となる。
一方、送出されたエクセプションがクラスオブジェクト６６０８によって表されるクラスのメンバである場合、処理は、テストステップ６７１２からステップ６７１６に移行する。このステップ６７１６において、ステップ６７０４で送出されたエクセプションがスタック６６０６に保存され、処理は、ステップ６７１６から終了ステップ６７１０に移行する。前述したように、この終了ステップ６７１０において、オペレーション”catch”は成功のうちに終了する。したがって、送出されたエクセプションはキャッチされ、オペレーション”catch”は成功し、送出されたエクセプションが伝送されることはない。
図６６Ｂは、プロシージャ６６０４によるオペレーション”catch”の遂行直後におけるキャッチフレーム６６０２の状態を示している。スタック６６０６のトップには、エクセプション６６１０がある。このエクセプション６６１０は、プロシージャ６６０４の遂行が失敗したときにプロシージャ６６０４の遂行によって送出されたエクセプションである。この場合、エクセプション６６１０は、クラスオブジェクト６６０８（図６６Ａ）によって表されるクラスのメンバである。プロシージャ６６０４の遂行が成功した場合に、スタック６６０６のエクセプション６６１０（図６６Ｂ）の場所にあるのはニル（０）（図示せず）である。このように、ここに開示されたコンピュータインストラクションセットは、エクセプションを検出し取り扱うための手段を備えている。
ルーピングフィーチャ
ここに開示されたコンピュータインストラクションセットは、実行オブジェクト、例えばプロシージャを繰り返し遂行して、反復するタスクの遂行を容易にするための手段を備えている。前述したオペレーション”while”は、ルーピングフィーチャの一例である。そのほかに、実行オブジェクトは、オペレーション”loop”、”repeat”を用いて繰り返し遂行される。
オペレーション”loop”は、レスポンディング実行オブジェクトを繰り返し遂行することによって、実行オブジェクトを繰り返し遂行する。実行オブジェクトによるオペレーション”loop”の遂行は、アーギュメントを使用せず、いかなるリザルトも生じない。実行オブジェクトによるオペレーション”repeat”の遂行は、インテジャアーギュメントを使用し、使用されるアーギュメントのインテジャの値に等しい回数だけ、レスポンディング実行オブジェクトを遂行し、いかなるリザルトも生じない。オペレーション”loop”又はオペレーション”repeat”の間の、レスポンディング実行オブジェクトの遂行は、実行オブジェクトの”反復的な遂行”と呼ばれる。
フローチャート６８００（図６８）は、レスポンディング実行オブジェクトによって遂行されるオペレーション”loop”のインプリメンテーションを示している。レスポンディング実行オブジェクトは、ステップ６８０２において遂行される。処理は、ステップ６８０２からテストステップ６８０４に移行し、このテストステップ６８０４において、オペレーション”loop”を遂行しているエンジンは、レスポンディング実行オブジェクトがエクセプションを送出しているかを判断する。
エクセプションが送出されなかった場合、すなわちレスポンディング実行オブジェクトが成功のうちに遂行された場合、処理は、テストステップ６８０４からステップ６８０２に移行し、このステップ６８０２において、レスポンディング実行オブジェクトが再び遂行される。一方、レスポンディング実行オブジェクトの遂行がエクセプションを送出した場合には、処理は、テストステップ６８０４からテストステップ６８０６に移行する。この継続テストステップ６８０６において、レスポンディング実行オブジェクトの遂行によってステップ６８０２で送出されたエクセプションが、内部的なエクセプション”continue”と比較される。
内部的なエクセプション”continue”、”break”は、セレクタ”continue”、”break”の実行によって、それぞれ送出される。なお、これらの内部的なエクセプション”continue”、”break”については、以下及びアペンディクスＡに一層詳細に説明される。これらのエクセプションは、内部的なエクセプション”continue”、”break”が、それに応答してアクションを行うエンジンによって検出されるので、”内部的”と呼ばれる。第３の内部的なエクセプション、すなわちセレクタ”succeed”の実行の結果として送出される内部的なエクセプション”succeed”については、後述する。内部的なエクセプションは、後述するような場合を除いて、オペレーション”catch”によってはキャッチされず、オペレーション”live”を失敗に終わらせて、プロセスの破壊を生じさせる。
ステップ６８０２で実行オブジェクトの遂行によって送出されたエクセプションが内部的なエクセプション”continue”である場合は、処理は、テストステップ６８０６からステップ６８０２に移行し、このステップ６８０２において、レスポンディング実行オブジェクトが再び遂行される。一方、送出されたエクセプションが内部的なエクセプション”continue”でない場合は、処理は、テストステップ６８０６からテストステップ６８０８に移行する。このテストステップ６８０８において、レスポンディング実行オブジェクトの遂行によって送出されたエクセプションは、内部的なエクセプション”break”と比較される。ステップ６８０２で実行オブジェクトの遂行によって送出されたエクセプションが内部的なエクセプション”break”である場合は、処理は、テストステップ６８０８から終了ステップ６８１０に移行し、この終了ステップ６８１０において、オペレーション”loop”は成功のうちに終了する。一方、送出されたエクセプションが内部的なエクセプション”break”でない場合は、処理は、テストステップ６８０８から終了ステップ６８１２に移行し、この終了ステップ６８１２において、オペレーション”loop”は失敗に終わり、レスポンディング実行オブジェクトの遂行によってステップ６８０２で送出されたエクセプションは、オペレーション”loop”によって送出される。
図６９は、実行オブジェクト６９０４によるオペレーション”repeat”の遂行の動的状態を記録するリピートフレーム６９０２を示している。リピートフレーム６９０２は、あるプロセス（図示せず）の実行状態の一部分である。リピートフレーム６９０２は、プロパティ”procedure”、”repetitions”、”repetitionsSoFar”、”position”を含む。実行オブジェクト６９０４は、オペレーション”repeat”のレスポンダであり、リピートフレーム６９０２のプロパティ”procedure”である。インテジャ６９１０、６９１１は、それぞれリピートフレーム６９０２のプロパティ”repetitionsSoFar”、”repetitions”である。インテジャ６９１０は、実行オブジェクト６９０６の完了した反復遂行の回数を示し、インテジャ６９１１は、使用されるインテジャのアーギュメントによって特定される反復遂行の全回数である。
フローチャート７０００（図７０）は、実行オブジェクト６９０４によって遂行されるオペレーション”repeat”のインプリメンテーションを示している。ステップ７００２において、インテジャ６９１０は、ゼロに初期化され、インテジャ６９１１は、アーギュメントとして使用されるインテジャの値に初期化される。処理は、ステップ７００２からテストステップ７００４に移行し、このテストステップ７００４において、インテジャ６９１０はインテジャ６９１１と比較される。インテジャ６９１０がインテジャ６９１１に等しいかこれよりも大きい場合、処理は、テストステップ７００４から終了ステップ７０１８に移行し、この終了ステップ７０１８において、オペレーション”repeat”は成功のうちに終了する。したがって、アーギュメントとして使用されるインテジャが、正のインテジャで無い場合は、オペレーション”repeat”の遂行は効果を持たない。一方、インテジャ６９１０がインテジャ６９１１より小さい場合、処理は、テストステップ７００４からステップ７００５に移行し、このステップ７００５において、インテジャ６９１０の値が増加される。処理は、ステップ７００５からステップ７００６に移行し、このステップ７００６において、インテジャ６９１０に等しい値を持つインテジャオブジェクトが現在のスタックにプッシュされる。処理は、ステップ７００６からステップ７００８に移行し、このステップ７００８において、応答している実行ブジェクト６９０４が遂行される。現在のスタックからインテジャをポップすることは、実行オブジェクト６９０４の仕事である。換言すれば、実行オブジェクト６９０４の遂行が現在のスタックからインテジャをポップしない場合、オペレーション”repeat”の遂行の間、インテジャは現在のスタックに留まっている。
処理は、ステップ７００８からテストステップ７０１０に移行し、このテストステップ７０１０において、オペレーション”repeat”を遂行しているエンジンは、レスポンディング実行オブジェクト６９０４の遂行がエクセプションを送出するかを判断する。エクセプションが送出されなかった場合、処理は、テストステップ７０１０からテストステップ７００４に移行する。逆に、エクセプションが送出された場合、処理は、テストステップ７０１０から、テストステップ７０１４に移行し、このテストステップ７０１４において、そのエクセプションが内部的なエクセプション”continue”と比較される。送出されたエクセプションが内部的なエクセプション”continue”である場合、処理は、テストステップ７０１４からテストステップ７００４に移行する。このように、ステップ７００８においてエクセプションが送出されなかったり、送出されたエクセプションが内部的なエクセプション”continue”である場合には、処理は、テストステップ７００４に移行し、このテストステップ７００４において、インテジャ６９１０がインテジャ６９１１と再び比較される。したがって、セレクタ”continue”の実行は、オペレーション”repeat”の遂行においてその後の反復的な遂行に影響することなく、早い段階で、レスポンディング実行オブジェクト６９０４の反復遂行を終了させる。
テストステップ７０１４において、ステップ７００８でレスポンディング実行オブジェクト６９０４の遂行が内部的なエクセプション”continue”以外のエクセプションを送出したことをエンジンが判断した場合、処理は、テストステップ７０１４からテストステップ７０１６に移行する。このテストステップ７０１６において、送出されたエクセプションが内部的なエクセプション”break”と比較される。送出されたエクセプションが内部的なエクセプション”break”である場合、処理は、テストステップ７０１６から終了テストステップ７０１８に遂行する。この終了テストステップ７０１８において、オペレーション”repeat”は成功のうちに終了する。したがって、セレクタ”break”の実行は、レスポンディング実行オブジェクト６９０４の反復的な遂行を終了させて、オペレーション”repeat”の遂行を成功のうちに終了させ、オペレーション”repeat”の遂行においてその後の反復的な遂行を全てアボートする。
一方、送出されたエクセプションが、内部的なエクセプション”break”でない場合、処理は、テストステップ７０１６から終了ステップ７０２０に移行する。
この終了ステップ７０２０において、レスポンディング実行オブジェクト６９０４の遂行によって送出されたエクセプションは、オペレーション”repeat”によって送出され、オペレーション”repeat”は失敗に終わり、エクセプションが伝送される。前述したように、オペレーション”catch”は、エクセプションの伝送を防止するために使用することができる。
なお、ステップ７００５において、インテジャ６９１０が０以下の値まで減少された場合は、処理は、テストステップ７００４から終了ステップ７０１８に移行し、この終了ステップ７０１８において、オペレーション”repeat”は成功のうちに終了する。実行オブジェクトによるオペレーション”repeat”の遂行は、図７０のステップ７００８によって実行されるオブジェクトの遂行によるリザルト以外は、リザルトを生成しない。
セレクタ”continue”の実行によって、内部的なエクセプション”continue”が送出される。この内部的なエクセプションは、オペレーション”while”（例えば図６５のテストステップ６５２２において）、オペレーション”loop”（例えば図６８のテストステップ６８０６において）及びオペレーション”repeat”（例えば図７０のテストステップ７０１４において）によって、キャッチされる。セレクタ”continue”の実行による内部的なエクセプション”continue”の送出は、オペレーション”while”、”loop”、又は”repeat”を遂行している実行オブジェクトの反復的な遂行を終了させる。先により詳細に述べたように、オペレーション”while”、loop”又は”repeat”を遂行している間に、内部的なエクセプション”continue”の検出によって、応答するプロシージャのその後の反復的な遂行、例えば図６５、図６８及び図７０のテストステップ６５２２、６８０６、７０１４のような反復的な遂行が生ずる。
セレクタ”break”の実行は、内部的なエクセプション”break”を送出する。このエクセプション”break”は、オペレーション”while”（例えば図６５のテストステップ６５２４において）、オペレーション”loop”（例えば図６８のテストステップ６８０８において）及びオペレーション”repeat”（例えば図７０のテストステップ７０１６において）によって、キャッチされる。前述した内部的なエクセプション”continue”の送出の場合と同様に、内部的なエクセプション”break”が送出されると、オペレーション”while”、”loop”又は”repeat”の遂行によって生じる実行オブジェクトの反復的な遂行が終了される。ただし、内部的なエクセプション”break”の送出は、レスポンディング実行オブジェクトのその後の反復的な遂行を生じさせることなく、オペレーション”while”、”loop”又は”repeat”の遂行を終了させる。
内部的なエクセプション”continue”、”break”は、オペレーション”while”、”loop”、”repeat”のコンテキスト内においてのみ、他のエクセプションから識別される。したがって、内部的なエクセプション”continue”、”break”のコンテキストに説明において、オペレーション”while”、”loop”、”repeat”は、集合的に”関連するオペレーション”と呼ばれる。関連するオペレーションの各々は、内部的なエクセプション”continue”、”break”を検出し、それに応答してアクションを行うので、内部的なエクセプション”continue”、”break”は、関連するどのオペレーションによっても、他のエクセプションのように送出されることはない。図７１に具体的な例を示す。
スタック７１０４は、プロセス７１０２のプロパティであり、プロセス７１０２の実行スレッドを表している。ユーザ定義フレーム７１０６は、スタック７１０４のボトムにあり、オペレーション”live”の遂行の動的状態を記録する。ボトムからトップにかけてのスタック７１０４の他の内容は、リピートフレーム７１０８、定義済みフレーム７１１０（オペレーション”loop”の遂行の動的状態を記録する）及びユーザ定義フレーム７１１２である。ここで、定義済みフレーム７１１０は、オペレーション”loop”の遂行の動的状態を記録する。そして、図７１において、オペレーション”live”は、オペレーション”repeat”の遂行を生じさせ、このオペレーション”repeat”は、オペレーション”loop”の遂行を生じさせ、このオペレーション”loop”は、さらに別のフィーチャの遂行を生じさせる。
ユーザ定義フレーム７１１２によってその動的状態を記録されるフィーチャの遂行が、セレクタ”continue”又はセレクタ”break”を実行する想定する。”前述したように、セレクタ”continue”又は”break”の実行は、対応する内部的エクセプションを送出する。これらの内部的なエクセプションをキャッチするように設計されていないオペレーション、すなわち関連するオペレーション以外のオペレーションは、普通のエクセプションが送出されたかのように挙動する（エクセプションに関する図５２Ａのステップ５２１０及び終了ステップ５２１２についての前述の説明を参照）。この状態のもとでは、内部的なエクセプションは、ユーザ定義フレーム７１１２によって表されるフィーチャの遂行によって伝送され、前述したように定義済みフレーム７１１０によって表されるオペレーション”loop”の遂行によってキャッチされる。内部的なエクセプションは、ループフレーム７１１０によって表されるオペレーション”loop”によっては伝送されず、したがって、リピートフレーム７１０８によって表されるオペレーション”repeat”の遂行には影響しない。
関連のあるオペレーションが現在遂行されていない場合、すなわち、スタック７１０４に存在してない場合、セレクタ”continue”又はセレクタ”break”が実行されると、クラス”Loop Missing”のエクセプションが生成される。クラス”Loop Missing”のエクセプションは、内部的なエクセプションではないので、他のエクセプションと同様に、伝送される。
内部的なエクセプション”succeed”が送出された場合、すなわちセレクタ”succeed”が実行された場合、現在のメソッドの遂行は成功のうちに終了する。なお、定義済みフィーチャは、直接にインプリメントされるので、すなわち全体としてエンジンを形成するコンピュータインストラクション内においてインプリメントされるので、ユーザ定義フィーチャのみがメソッドオブジェクトによってインプリメントされる。したがって、遂行の動的状態が定義済みフレーム７１１０（図７１）に記録されるオペレーション”loop”がセレクタ”succeed”を実行する場合、内部的なエクセプションsucceed”が送出され、オペレーション”loop”の実行が終了する。
オペレーション”loop”は予め定義されているので、オペレーション”loop”は内部的なエクセプション”succeed”をキャッチせず、したがって、内部的なエクセプション”succeed”を伝送させ、遂行の動的状態がリピートフレーム７１０８に記録されているオペレーション”repeat”を終了させる。同様に、オペレーション”repeat”は予め定義されているので、オペレーション”repeat”は内部的なエクセプション”succeed”をキャッチせず、遂行の動的状態がユーザ定義フレーム７１０６中に記録されているオペレーション”live”を終了させる。ただし、オペレーション”live”は定義済みインプリメンテーションを持たないので、オペレーション”live”は成功のうちに終了し、エクセプションの送出によって失敗に終わることはない。同様に、ユーザ定義フレーム７１１２のサブジェクトをメソッドとするフィーチャが内部的なエクセプション”succeed”を送出した場合、すなわち、セレクタ”succeed”を実行した場合、そのフィーチャは、成功のうちに終了し、内部的なエクセプション”succeed”はキャッチされる。この場合、内部的なエクセプション”succeed”は、定義済みフレーム７１１０、リピートフレーム７１０８及びユーザ定義フレーム７１０６には影響しない。
前述したオペレーション、すなわちオペレーション”do”、”if”、”either”、”while”、”select”、”catch”、”loop”、”repeat”は、現在のメソッドのコンテキストにおいて遂行される。前述したように、定義済みオペレーションは、メソッドオブジェクトによっては、インプリメントされない。そして、前述のこれらのオペレーションは、すべて予め定義されており、したがって、メソッドオブジェクトによっては、インプリメントされない。前述のこれらの各オペレーションに関して、ユーザのメソッドのコンテキストにおいての遂行について、簡単な例について説明する。
例えば、メソッドがフレーム７１１２（図７１）のサブジェクトとなっているフィーチャが、前述の定義済みオペレーションのうちの１つについて遂行を、要求したものと想定する。ここで、このオペレーションの遂行は、スタック７１０４上のユーザ定義フレーム７１１２の直上の定義済みフレーム（図示せず）に記録される。定義済みオペレーションの遂行の間、ユーザ定義フレーム７１１２のプロパティ”stack”は、現在のスタックのままである。したがって、定義済みオペレーションの遂行は、ユーザ定義フレーム７１１２のプロパティ”stack”に対して、アーギュメントをポップしたり、リザルトをプッシュしたりする。したがって、前述の定義済みオペレーションは、現在のメソッドのコンテキストにおいて遂行される。
前述のオペレーション、すなわちオペレーション”do”、”if”、”either”、”while”、”select”、”catch”、”loop”、”repeat”、”continue”、”break”は、本発明のオブジェクト指向のインストラクションセットに、実質的な汎用性及び融通性を供与する。すなわち、エージェントは、１つのプレイスから別のプレイスに移動する間に複雑なロジックを使用したり、いろいろなプレイスにおいて生み出されるエージェントとの相互作用によって情報を預けたり収集したりすることができる。
このように、新規なコンピュータプロセスのセット、すなわち、コンピュータネットワークを介してそれ自身の移動を指示でき、ネットワークを通じて複数のアクティブなコピーを送出することができ、遠隔のコンピュータにある他のコンピュータプロセスと相互作用し、プロセス間で情報を伝達することができる新規なコンピュータプロセスのセットが、提供される。
このような新規なコンピュータプロセスのセット形成するここに開示されたコンピュータインストラクションセットは、移植性があり汎用的である。このコンピュータインストラクションセットは、コンピュータネットワークの各ノードにおいて、一様にインプリメントされる。クラスは、開示されたインストラクションセット内のオブジェクトとされる。本発明において、プロセスのインストラクションは、コンパイルされるのではなくインタープリートされる。また、制御構造が、リソースの管理、判断処理、エクセプションの処理及びループ構造のために提供される。このように、移植性があり汎用的なコンピュータインストラクションセットが提供され、このインストラクションセットから新規なコンピュータプロセスのセットが構成される。
なお、以上及びアペンディクスにおいては、特定のコンピュータインストラクションセットについて説明したが、本発明はここに記載されたインストラクションの機能に限定されるものではなく、本発明の範囲は特許請求範囲の記載によってのみ限定される。
アペンディックスＡ
著作権  ジェネラル・マジック社  1991、1992、1993．複製を禁ず。
以下の目次は、読者がアペンディックスＡの構成を理解し、その情報を検索するために役立てるものである。
目  次
1.  序文
1.1  テレスクリプトインストラクションセット
1.2  テレスクリプトエンジン
1.3  テレスクリプトネットワーク
1.4  本アペンディックス
1.4.1  適用範囲
1.4.2  一致
1.4.3  慣用的表現
1.4.4  構成
1.4.5  ロードマップ
1.4.6  リファレンス
2.  テレスクリプトのコンセプト
2.1  モデル
2.2  オブジェクトモデル
2.2.1  オブジェクト
2.2.2  リファレンス
2.2.3  クラス
2.2.4  インヘリタンス
2.2.5  フィーチャ
2.2.6  アトリビュート
2.2.7  オペレーション
2.2.8  エクセプション
2.2.9  コンストレイント
2.2.10  プロパティ
2.2.11  コピー
2.2.12  オブジェクトの初期化
2.2.13  オブジェクトの最終化
2.2.14  クラスの構造
2.3  実行モデル
2.3.1  メソッド
2.3.2  プロシージャ
2.3.3  エグゼキュートオブジェクト
2.3.4  識別子
2.3.5  静的な置換の規則
2.3.6  動的な置換の規則
2.3.7  セレクタの実行
2.3.8  モディファイヤの実行
2.3.9  識別子の実行
2.3.10  メソッドの選択
2.3.11  メソッドの遂行
2.4  プロセスモデル
2.4.1  プロセス
2.4.2  フェーズ
2.4.3  スレッド
2.4.4  リソース
2.4.5  パーミット
2.4.6  オーナーシップ
2.4.7  クローニング
2.4.8  ブランディング
2.4.9  コンタクト
2.4.10  アイソレーション
2.4.11  終了
2.5  ネットワーク・モデル
2.5.1  エージェント
2.5.2  プレイス
2.5.3  トリップ
2.5.4  チケット
2.5.5  ミーティング
2.5.6  ペティション
2.5.7  占有
2.5.8  コンタクト
2.5.9  サイテション
2.5.10  テレネーム
2.5.11  テレアドレス
2.5.12  相互変換
2.6  タイムキーピング・モデル
2.6.1  タイム
2.6.2  カレンダータイム
2.7  パターンマッチングモデル
2.7.1  パターン
2.7.2  構造
2.7.3  他の非ターミナル
2.7.4  メタキャラクタ
3.  テレスクリプトクラスの概観
3.1  グループ
3.2  カーネルグループ
3.2.1  クラス
3.2.2  コンストレインド
3.2.3  コンストレイント
3.2.4  エクセプション
3.2.5  エグゼキューテッド
3.2.6  実行エクセプション
3.2.7  識別子
3.2.8  カーネルエクセプション
3.2.9  マーク
3.2.10  モディファイヤ
3.2.11  ニル
3.2.12  オブジェクト
3.2.13  パッケージ
3.2.14  プロシージャ
3.2.15  プログラミングエクセプション
3.2.16  有資格識別子
3.2.17  リファレンスド
3.2.18  セレクタ
3.2.19  変更されない
3.2.20  予想されないエクセプション
3.2.21  検査
3.3  プリミティブグループ
3.3.1  ビット
3.3.2  ブーリアン
3.3.3  ケースド
3.3.4  キャラクタ
3.3.5  インテジャ
3.3.6  ナンバ
3.3.7  オクテット
3.3.8  オーダー
3.3.9  プリミティブ
3.3.10  プリミティブエクセプション
3.3.11  テレナンバ
3.3.12  タイム
3.4  コレクショングループ
3.4.1  アソシエーション
3.4.2  ビットストリング
3.4.3  コレクション
3.4.4  コレクションエクセプション
3.4.5  コンストレインドディクショナリ
3.4.6  コンストレインドリスト
3.4.7  コンストレインドセット
3.4.8  ディクショナリ
3.4.9  ハッシュド
3.4.10  レキシコン
3.4.11  リスト
3.4.12  オクテットストリング
3.4.13  セット
3.4.14  スタック
3.4.15  ストリーム
3.4.16  ストリング
3.5  クラス定義グループ
3.5.1  アトリビュート
3.5.2  クラス定義
3.5.3  クラスエクセプション
3.5.4  フィーチャ
3.5.5  インプリメンテーション
3.5.6  インターフェース
3.5.7  メソッド
3.5.8  オペレーション
3.6  特定化グループ
3.6.1  サイテション
3.6.2  引用
3.6.3  名前付き
3.6.4  テレアドレス
3.6.5  テレネーム
3.7  プロセスグループ
3.7.1  コンタクト
3.7.2  コンタクティッド
3.7.3  パーミット
3.7.4  プロセスエクセプション
3.7.5  プロセス
3.7.6  リソース
3.8  エージェント及びプレイスグループ
3.8.1  エージェント
3.8.2  オーセンティケータ
3.8.3  相互変換
3.8.4  ミーンズ
3.8.5  プレイス
3.8.6  チケット
3.8.7  チケットスタッブ
3.8.8  トリップエクセプション
3.8.9  アンムーブ
3.8.10  ウェイ
3.9  ミーティンググループ
3.9.1  ミーティングエクセプション
3.9.2  ミーティングプレイス
3.9.3  ペティション
3.9.4  ペティションド
3.10  その他のグループ
3.10.1  カレンダータイム
3.10.2  種々のエクセプション
3.10.3  パターン
3.10.4  ランダムストリーム
3.10.5  実数
4.  テレスクリプトクラスの詳細
4.1  規約
4.2  エージェント
4.3  アソシーエーション
4.4  アトリビュート
4.5  オーセンティケイタ
4.6  ビット
4.7  ビットストリング
4.8  ブーリアン
4.9  カレンダータイム
4.10  ケースド
4.11  キャラクタ
4.12  サイテション
4.13  サイティド
4.14  クラス
4.15  クラス定義
4.16  クラスエクセプション
4.17  コレクション
4.18  コレクションエクセプション
4.19  コンストレインド
4.20  コンストラインドディクショナリ
4.21  コンストレインドリスト
4.22  コンストレインドセット
4.23  コンストレイント
4.24  コンタクト
4.25  コンタクティド
4.26  ディクショナリ
4.27  エクセプション
4.28  エグゼキュート
4.29  実行エクセプション
4.30  フィーチャ
4.31  ハッシュド
4.32  識別子
4.33  インプリメンテーション
4.34  インテジャ
4.35  インテーチェンジド
4.36  インターフェース
4.37  カーネルエクセプション
4.38  レキシコン
4.39  リスト
4.40  マーク
4.41  ミーンズ
4.42  ミーティングエクセプション
4.43  ミーティングプレイス
4.44  メソッド
4.45  その他のエクセプション
4.46  モディファイヤ
4.47  名前付き
4.48  ニル
4.49  ナンバ
4.50  オブジェクト
4.51  オクテット
4.52  オクテットストリング
4.53  オペレーション
4.54  オーダー
4.55  パッケージ
4.56  パターン
4.57  パーミット
4.58  ペティション
4.59  ペティションド
4.60  プレイス
4.61  プリミティブ
4.62  プリミティブエクセプション
4.63  プロシージャ
4.64  プロセス
4.65  プロセスエクセプション
4.66  プログラミングエクセプション
4.67  有資格識別子
4.68  ランダムストリーム
4.69  実数
4.70  リファレンスド
4.71  リソース
4.72  セレクタ
4.73  セット
4.74  スタック
4.75  ストリーム
4.76  ストリング
4.77  テレアドレス
4.78  テレネーム
4.79  テレナンバ
4.80  チケット
4.81  チケットスタッブ
4.82  タイム
4.83  トリップエクセプション
4.84  アンチェンジド
4.85  アネクスペクティドエクセプション
4.86  アンムーブド
4.87  ベリファイド
4.88  ウェイ
5.  テレスクリプトシンタックス
5.1  テレスクリプト
5.2  キャラクタテレスクリプト
5.2.1  プリフェースとコメント
5.2.2  実行オブジェクト
5.2.3  他の非ターミナル
5.3  バイナリテレスクリプト
5.3.1  プリウエイスとコメント
5.3.2  エグゼキューティドオブジェクト
5.3.3  他の非ターミナル
5.4  数値コード
5.4.1  プレデファインディドクラス
5.4.2  プレデファインディドフィーチャーズ
5.4.3  実行オブジェクトのエンコード
6.  モジュールのシンタックス
6.1  一般的な構造
6.2  詳細な構造
6.2.1  モジュール
6.2.2  インターフェース
6.2.3  フィーチャ
6.2.4  コンストレイント
6.2.5  他の非ターミナル
7.  プレデファインドモジュール
8.  プレデファインドクラスグラフ
１  序  文
アペンディックスＡのセクションでは、テレスクリプト・テクノロジー（Telescript Technology）の３つの主要な要素を紹介する。３つの主要な要素とは、アペンディックスの主題であるテレスクリプトの命令（インストラクション：insutruction）のセットと、それらのインストラクションセットを実行するテレスクリプトエンジンと、相互接続するエンジンによって形成されるテレスクリプトネットワークのことである。
１．１  テレスクリプトインストラクションセット（Telescript Instraction Set）
テレスクリプトインストラクションセットは、単にインストラクションセットとも呼ばれるものであり、適用分野が分散型のシステム及びアプリケーションであるプログラミング言語を、集合的に形成するコンピュータインストラクションの組である。また、”インストラクションセット（Instraction Set）”は、オブジェクト指向でインタプリートされるものである。マイクロフィルムのアペンディックスＥ、Ｆにおいて、インストラクションセットは、”言語（the Language）”とも呼ばれる。
インストラクションセットの中に組み込まれる主なクラスは、”エージェント（Agent）”及び”プレイス（Plase）”である。エージェントクラス（クラス”Agent”）のメンバであるコンピュータプロセスは、エージェント自身を検査変更することができ、エージェント自身をネットワーク中の一方のプレイスから他方のプレイスに移動することができ、そして、他方のプレイスに見い出される他のエージェントと相互作用することのできる活性なオブジェクトである。この機能は、特定の場合において、特定のエージェントに対して、特定の機能のみを、プログラマ又は管理者が許可できるようにすることで、均衡が保たれる。一方、プレイスクラス（クラス”Plase”）のメンバであるコンピュータプロセスであるプレイスは、プレイス自身を検査変更することができ、エージェントに対する地域（venue）として、及びエージェントが相互作用するコンテキストとして、取り扱う活性なオブジェクトである。
エージェントは、特定のプレイスに移動し、そのプレイスやそのプレイスの他のエージェントと相互作用する。エージェントとプレイスは、離れている場合は相互作用できない。このように、リモートプログラミング（Remote Programming：以下、ＲＰと言う。）を実行するインストラクションセットは、所謂リモートプロシージャコーリング（Remote Procedure Calling：以下、ＲＰＣと言う。）のパラダイムを実行するものではない。ＲＰは、システムの要素を通信せずに相互作用させることによってＲＰＣを改善し、待ち時間を減少させることによって相互作用の効率を向上する。すなわち、ＲＰは、システムの要素を、存在しているそれ自身のエージェントによって、すなわちそれ自身によって、それぞれの領域において、他の要素にカスタマイズすることができる。
以下、インストラクションセットの特徴を述べる。
安全性
インストラクションセットは、許可を得ることなしに、他のプロセスの実行に干渉することがないように、又はプロセスが実行中のコンピュータを直接操作することがないように、制約の上限を越えるようなプロセスを防止する。これは、ウィルスの汚染を防止するのに役立つ。
携帯性
インストラクションセットは、ハードウェアの制約、ソフトウェアの制約、又は異なるコンピュータシステムの違いを意識する必要はない。これにより、ネットワーク内においても、又はネットワークのあちこちにおいても、プロセスを実行することが可能となる。
拡張性
インストラクションセットは、プログラマにより定義された情報オブジェクトの型に対して、インストラクションセットに組み込まれるものと同様の拡張性を与える。これにより、特定の目的のためのインストラクションセットを拡張することが可能となる。
向  上
インストラクションセットは、揮発性のストレージと非揮発性のストレージとの間に区別を設けない。全ての情報オブジェクトは、もともと不変である。これは、プロセスの抽象化を拡大し、プロセスのサイズを減少させる。
１．２  テレスクリプトエンジン（Telescript Engin）
インストラクションセットで作成されたプログラムは、テレスクリプトと呼ばれ、テレスクリプトエンジンによって起動される。テレスクリプトエンジン（以下、単に”エンジン（Engin）”とも言う。）は、プログラム中のインストラクションを解釈・実行（インタープリート：interprete）する。また、エンジンは、多くのテレスクリプトを同時にインタープリートすることができる。
エンジンは、エンジンが実行中の時に、コンピュータのハードウェア又はオペレーティングシステムに直接依存することなく、インストラクションセットの抽象化を実現することができる。エンジンは、通信する際にエンジンが必要とする情報、ストレージ、及び他のサブシステムへの標準的なインターフェースを使用してインストラクションセットの抽象化を実現する。これらは、テレスクリプト・コミュニケーション・アプリケーション・プログラミング・インターフェース（Application Programming Interface：以下、ＡＰＩと言う。）を形成する。このインターフェースに関しては、本明細書の一部であるアペンディックスＣに記載する。
エンジンは、インストラクションセットの抽象化からの特別に許可されたエスケープを実行することができる。このエスケープは、エンジンの外において、オペレーション、アドミニストレーション、及びマネージメント（operational,administrative, and managerial：以下、ＯＡＭと言う。）のツールの構成を可能とする。このようなツールは、大規模な通信システムを実現するために不可欠なものである。
１．３  テレスクリプトネットワーク（Telescrit Network）
２つ以上のエンジンは、相互接続することができる。ここで、テレスクリプトネットワーク（以下、単に”ネットワーク（Network）”とも言う。）は、エージェントが移動することができる世界である。このネットワークは、他のネットワークのクライアントである複数のコンピュータシステムを含んでいるが、他のネットワークの一部ではない。
コンピュータシステムは、エンジンを組み込んで、エージェントが移動できるプレイスを提供する場合にのみ、ネットワークの一部分となる。この要求は、情報の構造、並びに伝送形式に関して、ネットワークを同種のものとする。
エンジンは、上述したように相互接続されているため、エージェントは、エンジン間を移動することができる。エージェントは、アペンディックスＢに記載されているテレスクリプトエンコード則に従って、エンコードされる。したがって、オクテットストリングは、プラットフォームインターコネクトプロトコルによって規定されるようにエンジン間を移動する。プラットフォームインターコネクトプロトコルに関しては、アペンディックスＦに記載されている。
１．４  本アペンディックス
以下、アペンディックスＡについて説明する。
１．４．１  適用範囲
アペンディックスＡは、インストラクションセットのバージョン０．８を規定する。なお、テレスクリプトエンコード則、テレスクリプトプロトコル、及び、テレスクリプトＡＰＩに関しては、本明細書の一部であるアペンディックスＢ、、Ｃにそれぞれ記載する。
インストラクションセットは、仮想的なマシンのためのインストラクションセットと見なすことができる。このことから、インストラクションセットは、より高いレベルの言語であるテレスクリプトのコンパイラであると言うことができる。カリフォルニア州マウンテンビューのジェネラル・マジック社は、ハイテレスクリプトと呼ばれる言語を開発している。なお、本明細書のアペンディックスのコンテキストにおいて、インストラクションセットは、ローテレスクリプトとも呼ばれる。
１．４．２  一  致
エンジンの製造者は、このアペンディクスに適切に一致するように、一定の要求を満たさなければならない。
１．４．３  慣用的表現
以下、アペンディックスにおける慣用的な表現を記載する。
・”アトリビュートα（The α attribute）”は、”その識別子がαに等しいアトリビュート”を意味する。
・”キーである（Is a key）”は、”キーに一致している（equals a key）”ことを意味し、”キーと同一である（is the same as a key）”ということではない。
・”Ｘ（An x）”は、通常、”Ｘのメンバ”を意味し、”Ｘのインスタンス”ではない。
・”Ｘを送出する（Throws X）”は、通常、”Ｘのメンバを送出する”を意味する。
・”「ステイトメント」か否か（Whether statement）”は、”「ステイトメント」であり、且つこの「ステイトメント」に限られるか（statement iff true）”を意味する。
・”〜の場合にのみ（Iff）”は、数学の分野における”ｉｆｆ”と同様に、”〜の場合、且つその場合に限り（if and only if）”を意味する。
・”MSB”は、最上位ビットを意味する。
・”LSB”は、最下位ビットを意味する。
注：このアペンディックス全体を通して、”注”に記載した内容は、定義では無く、注釈である。
１．４．４  構  成
アペンディックスＡは、８つのセクションに分けられる。セクション１は、アペンディックスＡの序である。セクション２は、インストラクションセットの主な概念を紹介する。セクション３は、インストラクションセットの定義済みクラスについて述べる。セクション４は、それらのクラスに関して詳細を述べる。セクション５は、インストラクションセットの構文の定義について述べる。
セクション６は、定義済みクラスへの形式的なインターフェースの定義に基いた慣例について述べる。セクション７は、この形式的なインターフェースの定義について述べる。セクション８は、ユーザ定義クラスではなく、定義済みクラスを含むクラス図表の一部を示す。
１．４．５  ロードマップ
上述した８つのセクションは、テレスクリプトにおける定義について記載したセクションと、その定義に関する事柄について記載したセクションとから成る。すなわち、実際の定義を記載したセクションは、セクション１、２、４、５である。また、セクション３、７、８は、セクション４に記載した内容を再構成した形で説明したセクションである。セクション６は、ハイテレスクリプトの様相を写したものである。
ユーザーは必要性に応じて、８つのセクションから必要なセクションを選択する必要がある。例えば、インストラクションセットの適用範囲及び構造についてのみの情報が必要である場合は、セクション１、２、３のみをマスターすればよい。テレスクリプトプログラマは、セクション１、２、３以外に、セクション４もマスターする必要がある。また、ローテレスクリプトプログラマは、キャラクターテレスクリプトをカバーするセクション５もマスターする必要がある。ハイテレスクリプトのコンパイラやエンジンの作成者は、バイナリのテレスクリプトをカバーするセクション５をマスターする必要がある。なお、ハイテレスクリプトプログラマは、セクション５をマスターする必要はない。
一方、テレスクリプトの実務者にとっては、セクション７、８は不可欠なリファレンスである。
１．４．６  リファレンス
アペンディックスＡは、下記のドキュメントに依存するものとする。
[10646]
Information technology -Universal Coded Character Set(UCS), ISO/IEC DIS 10646, International Organization for Standardization and International Electrotechnical Commission, 1990.
[ユニコード(Unicode)]
The Unicode Standard: Worldwide Character Encoding, Volume 1, Version 1.0, The Unicode Consortium, AddisonーWesley, 1991.
２．テレスクリプトのコンセプト
インストラクションセットは、種々の概念（コンセプト：concept）を定義する。インストラクションセットの最も重要な定義が、本セクションで紹介される。ここで、種々のコンセプトを、モデル（Model）に分ける。したがって、サブセクションには、各モデルが割当られている。また、各サブセクションにおいて、さらに小さなサブセクションに、そのモデルのコンセプトが割り当てられている。
インストラクションセットは、リモートプログラミング用であるため、言語、オペレーティングシステム及びネットワークの範囲に及ぶコンセプトを含んでいる。通常、独立しているこれらの領域は、このインストラクションセットにより一つにまとめられる。
２．１  モデル（Models）
インストラクションセットのコンセプトは、複数のモデルに分けられる。この複数のモデルは、教育的な目的にのみ用いられるものであり、処理の遂行時には見られないものである。
以下のモデルが定義される。
オブジェクト（Object）
”オブジェクト（Object）”モデルは、オブジェクト指向、例えば、オブジェクト、リファレンス、クラス、オペレーション、及びエクセプションを提供する。
実行（Execution）
”実行（Execution）”モデルは、逐次実行、例えば、メソッド、プロシージャ、及び識別子を提供する。
プロセス（Process）
”プロセス（Process）”モデルは、マルチタスク処理、例えば、プロセス、リソース、パーミッット、コンタクト、及びオーナーシップを提供する。
ネットワーク（Netwoek）
”ネットワーク（Netwoek）”モデルは、ネットワークのアーキテクチャ、例えば、エージェント、プレイス、トリップ、ミーティング、及びテレネームを提供する。
タイムキーピング（Timekeeping）
”タイムキーピング（Timekeeping）”モデルは、時間を計測する手段、例えば、タイム及びカレンダータイムを提供する。
パターンマッチング（Pattern Maching）
”パターンマッチング（Pattern Maching）”モデルは、パターンマッチングのための手段、例えば、パターンを提供する。
各モデルは、上述した順序で以下に記載される。また、各モデル内のコンセプトは、合理的な順序で記載される。
２．２  オブジェクトモデル（Object Model）
インストラクションセットは、本セクションで定義する”オブジェクトモデル（object model）”を実現する。
２．２．１  オブジェクト（Object）
オブジェクトは、情報と、情報を処理するプログラムとから成るインストラクションセットの単位である。オブジェクトは、クラスのインスタンスである。
注：オブジェクトは、如何なるものでもよく、例えば、ブーリアンのような単純なもの、ディクショナリのような複雑なもの、ストリングのような受動的なもの、又はプロセスのような能動的なものである。
注：メッセージングにおいて、すなわちインストラクションセットが含まれるアプリケーションにおいて、オブジェクトは、メイルボックス及び分配リストのような、メッセージのシステムの構成部分と、メッセージや送信の情報のような、システムが伝達する情報オブジェクトと、エンベロープフィールドのような、これらの情報オブジェクトの要素とを含むことができる。
パーシステンス（Persistence）
全てのオブジェクトは、”パーシステント（persistent）”である。すなわち、エンジンが故障し、後に回復した場合、オブジェクトに対する影響は、一時的に使用できなくなることだけである。
サイズ（Size）
全てのオブジェクトは、オブジェクトが占有する不変な記憶容量である”サイズ（size）”を有しており、オクテット単位で測定される。
注：オブジェクトのサイズは、プレイス毎に可変でもよい。
２．２．２  リファレンス（Reference）
”リファレンス（reference）”は、オブジェクトが指示又はアクセスされるための手段である。
保護（Protected）と非保護（Unprotected）
リファレンスには、”保護されている（protected）”ものと、”保護されていない（unprotected）”ものがある。保護されていないリファレンスは、オブジェクトを変更することができ、保護されているリファレンスは、オブジェクトを変更することができない。また、保護されていないリファレンスは、保護されるようすることできるが、その逆に、保護されているリファレンスにおいて、その保護を解除することはできない。
生成（Creation）
個々のオブジェクトには、１つ以上のリファレンスが存在する。オブジェクトを生成するということは、そのオブジェクトへの最初のリファレンスを生成するということである。オブジェクトが不変である場合のみ、リファレンスは保護される。一方、追加するリファレンスに関しては、保護するか又は保護しないかを必要に応じて選択して、リファレンスを生成することができる。ソースリファレンスが保護されている場合のみ、その生成されたリファレンスは保護される。
注：多くの定義済みオペレーションは、既存のオブジェクトへの新しいリファレンスを生成し、生成したリファレンスをリザルトとしてリターンする。
比較（Comparison）
オブジェクトに対する全ての保護されていないリファレンスは、同等である。任意のオブジェクトに対する保護されていないリファレンスを用いて行われた変更は、そのオブジェクトに対して行われた変更である。したがって、実際には、そのオブジェクトに対する全ての他のリファレンスについて変更が行われる。また、オブジェクトに対する全ての保護されたリファレンスも、相互に同等である。
保護されていないリファレンスと、保護されているリファレンスとは、２つの点で異なっている。これらの相違点は、リファレンスが指示するオブジェクトのフィーチャを要求するために、保護されたリファレンスが用いられる場合に現れる。第１の相違点として、フィーチャがオブジェクトを変更しようとする場合には、そのフィーチャはエラーとなり、”リファレンスが保護されている（Reference Protected）”ことを示す応答結果が送出される。第２の相違点として、フィーチャが、オブジェクトのコピーされたものではないプロパティの１つへのリファレンスをリターンした場合、そのリファレンスは保護される。
また、２つのリファレンスが同一のオブジェクトに対するものであるか否かを判断することができる。
廃棄処理（Discarding）
リファレンスが、必要とされなくなった場合には、そのリファレンスを廃棄する必要がある。オブジェクトへのリファレンスが残存していない場合には、そのオブジェクト自身は破壊される。
無効処理（Voiding）
エンジンは、アペンディックスＡに記載された定義によりリファレンスを無効にすることができる。無効にされた（ボイドされた：voided）リファレンスは、オブジェクトへアクセスしない。エンジンは、スタックに、ボイドされたリファレンスをプッシュするのではなく、”Reference Void”を送出する。
２．２．３  クラス（Classes）
”クラス（class）”は、全て同一のインターフェースと同一のアクションとを有する、クラスのインスタンスであるオブジェクトのセットを定義する。クラス自身は、潜在的にクラスについてユニークである、インターフェースとアクションとを有する。
定義済み（Predefined）とユーザ定義（User-defined）
クラスは、”定義済み（プリデファインド：Predefined）”クラス、又は”ユーザ定義（ユーザデファインド：User-defined）”クラスの何れかである。定義済みクラスは、インストラクションセットに組み込まれるものであり、このアペンディックスにおいて、定義されているものである。また、定義済みクラスは、テレスクリプトプログラマが利用することができる一種のオブジェクトを示している。ユーザ定義クラスは、プログラマによって定義されるもので、インストラクションセットを特定の目的のために拡張させるものである。
コンクリート（Concrete）とアブストラクト（Abstract）
クラスは、コンクリート（具象的：concrete）なものか、アブストラクト（抽象的：abstract）なものである。”コンクリート”クラスは、インスタンスを持つことができる。また、”アブストラクト”クラスは、インスタンスを持つことができないが、アブストラクトクラスのサブクラスは、インスタンスを持つことができるものもある。コンクリートクラス、又はこのクラスと共通なアクションを有するスーパークラスは、クラスに固有の各フィーチャ、又はクラスによって継承された各フィーチャを遂行する。
封印（Sealing）
クラス（通常はコンクリートクラス）は、封印（シール：seal）されることができる。エンジンは、シールされたクラスがユーザ定義される直接のサブクラス（イミディエートサブクラス：immediate subclass）を持つことを禁止する。ただし、シールされたクラスが定義済みのイミディエートサブクラスを持つことは禁止しない。
クリエーション（Creation）
コンクリートクラスは、新しいインスタンスを記述する初期パラメータが与えられると、そのインスタンスを生成することができる。しかし、全てのクラスの全てのインスタンスが、このようにして生成されるわけではない。残りのインスタンスは、最初にこのようにインスタンスを１つ生成し、次に必要に応じてインスタンスのアトリビュートを変更することによって、生成することができる。
コンバージョン（Conversion）
コンクリートクラスは、任意のクラスのインスタンスを、そのコンクリートクラス自身のインスタンスに変換（コンバート：convert）することができる。しかし、全てのクラスの全てのインスタンスが、他のクラスのインスタンスに変換可能であるとは限らない。変換のオペレーションであるオペレーション”Conversion”の定義と、変換することにより生成されるオブジェクトの性質は、呼び出された２つのクラスに依存する。
互換性（Compatibility）
クラスは、引用されたオブジェクトとして具体化される。クラスは、他のクラスに対して、以下の種類の変更を行うだけで前者のインターフェースを後者のインターフェイスから生成することができる場合にのみ、後方向に互換性を有する。第１に、フィーチャを付加する。第２に、後者のインターフェースにおいてアトリビュートがリードオンリーである場合、そのアトリビュートのクラスを、サブクラスにまで狭める。第３に、現存しているオペレーションのアーギュメントのクラスを、スーパークラスまで広げる。第４に、現存するオペレーションのリザルトのクラスを、サブクラスまで狭める。
２．２．４  インヘリタンス（Inheritance）
ネイティブ（Native）とインヘリタンス（Inherited）
全てのクラス、すなわち定義済みクラス及びユーザ定義クラスは、”継承（インヘリタンス：inheritance）”によって相互に関連付けられている。各クラスは、様々な特性を有する。一般に、クラスの特性は、そのクラスに対する”固有（ネイティブ：native）”な特性と、他のクラスから”継承”された特性である。すなわち、インヘリタンスは、各クラスの特性の遷移の関係である。クラスは、他のクラスから、後者のクラスに固有な特性だけでなく、後者のクラスに固有な特性も継承する。上記の説明を少し拡張して説明すると、オブジェクトの固有の特性は、そのオブジェクトがインスタンスであるクラスに固有の特性である。
インストラクションセットは、クラス間の十分な継承関係を要求する。なお、クラスとそれらの関係は簡単な図表によって表される。この図表において、ノード（節）はクラスを表し、ノードの間のアーク（枝）は、それらのノードが表すクラスの間の継承関係を表している。
サブクラス（Subclass）とスーパークラス（Superclass）
あるクラスが他のクラスから直接又は間接的に特性を継承した場合、前者のクラスは、後者のクラスの”サブクラス（subclass）”であり、後者のクラスは前者のクラスの”スーパークラス（superclass）”である。また、前者のクラスが直接的に後者のクラスから特性を継承した場合、前者のクラスは後者のクラスの”直接のサブクラス（イミディエートサブクラス：immediate subclass）”であり、後者のクラスは前者のクラスの”直接のスーパークラス（イミディエートスーパークラス：immediate superclass）”である。また、前者のクラスのインスタンスは、そのクラス及び複数のスーパークラスの”メンバ（member）”である。
フレーバ（Flavor）
いくつかのクラスは、フレーバである。”フレーバ（flavor）”は、以下に述べるような、ツリー構造を形成する。なお、各フレーバは、コンクリート又はアブストラクトである。
ツリーのルートは、クラス”object”を表す。基点となる任意のノード（以下、ソースノードという。）から発してアークをたどって到達した点の各ノード（以下、目的点ノードという。）は、そのソースノードが示すフレーバのイミディエートサブクラスを表している。したがって、ソースノードは、各々のこのような目的点ノードが示すフレーバのイミディエートスーパークラスを表す。また、１つ以上のアークを次々に移動して到達する各目的点ノードは、そのソースノードが示すフレーバのサブクラスを表している。上述のように、ソースノードは、各目的点ノードが示すフレーバのスーパークラスを表している。
注：フレーバは、単一の継承を提供する。
ミックスイン（Mix-in）
他の全てのクラスは、ミックスインである。また、クラス”mix-in”とその０以上のスーパークラス（これらは全てミックスインである。）は、以下に述べるようにして、第２のツリーを形成する。すなわち、この第２のツリーのルートは、クラス”mix-in”である。アークは、ツリーのノードが示すミックスイン間の逆継承関係を表す。ミックスインは、アブストラクトである。
注：ミックスインは、多重継承の限定された形式を提供する。
クラスグラフ（Class Graph）
フレーバとミックスインは、指定された図表を形成する。この図表は、次の２つのステップで形成される。第１ステップでは、各ミックスインツリーにおけるアークは、逆継承関係ではなく、継承関係を表すように新しく方向づけられる。第２ステップでは、このように変更されれたミックスインツリーは、フレーバツリー上に重ねられる。
注：複数のクラスを包括的に関連づけることによって作られる包括的なクラス図表がある。如何なる特定のプレイスにおいても、この図表が表している内容は、不完全な場合がある。
カノニカルオーダー（Canonical order）
１つのクラス、すなわち１つのフレーバ又はミックスインと、その１以上のスーパークラス、すなわちその１以上のフレーバやミックスインとは、第３のツリーの道筋の順序である”正規の順序（canonical order：カノニカルオーダー）”を有する。
第３のツリーは次のようにして構成される。ルートは、問題のクラスであり、他のノードは、そのクラスのスーパークラスである。アークは、ミックスインツリーと同様に、ツリーのノードが示すクラス間の逆継承関係を表す。
道筋は、そのクラスが定義する縦型の（depth-first）道筋であり、この縦型の道筋において、クラスのイミディエートスーパークラスは、それらの正規の順序に従って訪問される
インターフェース（Interface）とインプリメンテーション（Implementation）
上述した全てのことは、クラス特性の何れについても、すなわち、クラスのインターフェースと、それらの実行（インプリメンテーション：implementation）と、それらの両方との何れについても、言えることである。このアペンディックスにおいて、このアペンディックスの特定の部分においてこの２つの特性のどちらが説明されているかは、明確に又は暗黙の内に説明する。
注：クラスのインターフェースは、頻繁に説明されている。
２．２．５  フィーチャ（Features）
”フィーチャ（feature）”は、オブジェクトの外部から見られる特性である。フィーチャは、オブジェクトを相互作用させることができる。任意のオブジェクトが他のオブジェクトへのリファレンスを所有していれば、その任意のオブジェクトは他のオブジェクトのフィーチャを要求することができる。クラスの全てのインスタンスは、そのクラスに固有のインターフェースによって、又はそのクラスにより継承されたインターフェースによって定義される同一のフィーチャを有する。
フィーチャは、正しく遂行された場合に”正常終了（succeeds）”となり、正しく遂行されなかった場合には”異常終了（fails）”となる。フィーチャが異常終了した場合には、例外（エクセプション：exception）が送出される。
アトリビュート（Attribute）とオペレーション（Operation）
フィーチャは、アトリビュート及びオペレーションの２種類に分類される。
注：どのフィーチャをアトリビュートとし、どのフィーチャをオペレーションとするかは、状況に応じて任意に決定してよい。
封印（Sealing）
クラスは、固有なフィーチャ又は継承されたフィーチャを封印（シール：seal）することができる。これにより、ユーザ定義されたサブクラスによるフィーチャの実行は禁止される。ただし、定義済みサブクラスによるフィーチャの実行は禁止されない。
実行（Implementation）
クラスは、スーパークラスによってシールされていない固有のフィーチャ又は継承されたフィーチャを実行（インプリメンテーション：implementation）することができる。そのクラスに対するスーパークラスが存在し、そのクラスが継承されたフィーチャを実行する場合、そのクラスにおける実行は、スーパークラスにおける実行に代わるものである。
アクセス（Access）
エンジンは、フィーチャへのアクセスを制御する。フィーチャのアクセスは、フィーチャを使用することができるオブジェクトを定義する。そのフィーチャのアクセスは、以下に述べる何れかに該当する。
パブリック（public）
如何なるオブジェクトもこのフィーチャを遂行することができる。
プライベート（private）
このフィーチャを有するオブジェクトのみが遂行することができる。
システム（system）
エンジンのみが、このフィーチャを遂行することができる。なお、このフィーチャは、定義済みである。
２．２．６  アトリビュート（Attributes）
”アトリビュート（Attribute）”は、オブジェクトである。そして、アトリビュートは、あるオブジェクト、すなわち”要求側（リクエスタ：requester）”が、別のオブジェクト又は同一のオブジェクト、すなわち”応答側（レスポンダresponder）”に対して、取得するように、そして場合によっては設定するように、要求することができる特性である。なお、設定されることがでいないアトリビュートは、”リードオンリ（read-only）”である。
”αGet”と”αSet”
アトリビュートがリードオンリの場合は、アトリビュートは、どちらか一方のオペレーションに相当し、アトリビュートがリードオンリでない場合は、アトリビュートは、両方のオペレーションに相当する。”αGet”として表される第１のオペレーションは、アトリビュートを取得する。その第１のオペレーションは、アーギュメントを持たず、そのリザルトはアトリビュートである。
また、”αSet”として表される第２のオペレーションは、アトリビュートをある特定のオブジェクトに置き換えて設定する。オペレーション”αSet”のアーギュメントは、このオブジェクトであり、このオペレーションは、リザルトを持たない。
手動（Manual）と自動（Automatic）
クラスは、アトリビュートを手動的又は自動的に実行することができる。ただし、クラスがアブストラクトである場合は、全く実行できない。アトリビュートを”手動的（Manually）”に実行することは、”αGet”のメソッドと、（そのアトリビュートが設定可能であれば）”αSet”のメソッドとを供与することである。一方、アトリビュートを”自動的（Automatically）”に実行すると言うことは、アトリビュートが自動的に実行されるようにエンジンに制御させることである。この場合、アトリビュートはインスタンスアトリビュートであり、クラスはコンクリートであり、そのクラスもそのスーパークラスもそのアトリビュートを実行しない。エンジンは、同一の識別子のプロパティを伴って、アトリビュートを遂行する。
インストラクションセットは、アーギュメントがアトリビュートの識別子（”α”）である内部オペレーション、”getAttribute”及び”setAttribute”の助けを借りて、それぞれアトリビュートの取得及び設定を定義する。
これらの２つのオペレーションは、アトリビュートが自動的に実行されている場合は、そのアトリビュートに関連したプロパティを取得及び設定し、その他の場合、すなわちアトリビュートが手動的に実行されている場合は、”αGet”及び”αSet”の各オペレーションにについて、ユーザ定義されたメソッド実行する。同様にアトリビュートの手動的又は自動的な実行は、オペレーションの実行の位置を決める実行モデルのアルゴリズムを使用して、位置決めされる。
格納位置（Storage Location）
リードオンリでないアトリビュートは、デフォルトでは”ストレージロケーション（Strage Location）”として挙動する。すなわち、オペレーション”αGet”は、オペレーション”αSet”のアーギュメントとして正常に供給された最新のオブジェクトをリターンする。このデフォルトでの挙動に対するエクセプションは、特定のアトリビュートの散文的な記述において、呼び出される。
注：すなわち、デフォルトでの挙動を示すアトリビュートが、クラス”Dictionary”のメンバであるように制約され、クラス”Dictionary”のサブクラスのインスタンスが、オペレーション”αSet”に供給される場合、オペレーション”αGet”は、クラス”Dictionary”のインスタンスではなく、そのサブクラスのインスタンスをリターンする。
注：リードオンリである全ての定義済みアトリビュートは、デフォルトでの起動を示す。
２．２．７  オペレーション（Operations）
オペレーションは、あるオブジェクト、すなわちリクエスタが、他のオブジェクト又は同一のオブジェクト、すなわちレスポンダに対して実行するように要求することのできるタスクである。
アーギュメント（Arguments）
リクエスタは、オペレーションの”アーギュメント（arguments）”である０以上のオブジェクトをレスポンダに供給する。オペレーションは、オペレーションのアーギュメントの数が可変であるか、又は固定されているかを判断し、アーギュメントの数が固定されている場合には、どのように各アーギュメントが制約されるかを定める。
注：アーギュメントの数が可変である場合には、何れもマークとはならない。
注：定義済みのオペレーションでは、オペレーション”initialize”、”make Classes”、”select”、”new”が、可変数のアーギュメントを必要とし、その他のオペレーションは、可変数のアーギュメントを必要としない。
リザルト（Result）
オペレーションが正常終了した場合、レスポンダは、オプションとして、リクエスタに対して単一のオブジェクト、すなわちオペレーションの”結果（リザルト：result）”を、供給することができる。オペレーションは、リザルトの有るか否かを判断し、リザルトがある場合には、それがどのように制約されているかを判断する
２．２．８  エクセプション（exception）
”エクセプション（exception）”は、フィーチャーのメソッドの遂行の異常終了を示すオブジェクトである。より具体的には、メソッドのプロシージャにおける項目（アイテム：item）である、実行されたオブジェクトの１つの実行の異常終了を示すオブジェクトである。
フィーチャは、レスポンダが、フィーチャが正常終了した場合にリターンするリザルトの代わって、エクセプションを”送出（throws）”した場合に、異常終了となる。フィーチャのリクエスタがエクセプションに対して応答することを望む場合、リクエスタは、そのエクセプションを”受信（キャッチ：catches）”する。その他の場合、エンジンは、エクセプションを”伝送（propagates）”させる。すなわち、エンジンは、リクエスタにエクセプションを送出させる。
２．２．９  コンストレイント（constraint）
”コンストレイント（constraint）”は、コンストレイントの”対象（サブジェクト：subjects）”である他のオブジェクトにおける制限を定義する。可能な制限は、サブジェクトがメンバであるクラスの識別子と、サブジェクトがそのクラスのインスタンスであるか否かと、そのサブジェクトがニル（０）であることが許容されるか否かと、既に述べたにもかかわらずそのクラスと、サブジェクトのパッセージ（Passage）とである。
パッセージ（Passage）
オブジェクトは、どのようにソース（転送元：source）リファレンスがデスティネーション（目的地：destination）リファレンスを判断するかを定める幾つかの異なった方法にうちのどれかに基づいて、フィーチャのリクエスタとレスポンダ間で送受信されることができる。ここで、ソースリファレンスは、オブジェクトのソースがエンジンに伝え、デスティネーションリファレンスは、エンジンがオブジェクトのデスティネーションに伝える。
オブジェクトのパッセージは、以下の識別子の一つである。
byRef
デスティネーションリファレンスは、ソースリファレンスである。
byUnprotectedRef
デスティネーションリファレンスは、ソースリファレンスである。しかし、ソースリファレンスが保護されている場合、エンジンは、”Reference Protected”を送出する。
byProtectedRef
デスティネーションリファレンスは、ソースリファレンスがアクセスを与えるオブジェクトへの保護されたリファレンスである。
byCopy
デスティネーションリファレンスは、デスティネーションリファレンスがアクセスを与えるオブジェクトのコピーへの保護されていないリファレンスである。エンジンは、この目的のためのみにコピーを作成する。コピーは、プロセスの場合は、オブジェクトのデスティネーションにより所有され、その他の場合は、オブジェクトのデスティネーションのオーナーにより所有される。
２．２．１０  プロパティ（property）
オブジェクトは、０以上のプロパティを有する。プロパティ自身もオブジェクトである。１つの”プロパティ（property）”は、オブジェクトの内部状態の要素の１つであり、オブジェクトのプロパティは全体として、全内部状態を構成する。オブジェクトのプロパティは、オブジェクトに対して内部的である。したがって、プロパティは、そのオブジェクトだけによって、直接に感知、検査又は変更することができる。
オブジェクトのプロパティは、クラスによって区分される。０以上のプロパティは、オブジェクトのクラスに対して固有であり、０以上のプロパティは、そのクラスのインプリメンテーションスーパークラスに対して固有である。
プロパティは、そのプロパティが固有であるクラスのメソッドによって、直接に感知、検査又は変更することができる。一方、そのプロパティが固有でない他のクラスのメソッドによっては、たとえそのクラスのサブクラスやスーパークラスであっても、直接に感知、検査又は変更することができない。
２．２．１１  コピー（copy）
オブジェクトは、コピーされることができる。あるオブジェクトの”コピー（copy）”は、別のオブジェクトである。この別のオブジェクトは、一般的に、保護されたリファレンスがコピーを作成するために使用されたとしても、オペレーション”isSame”による場合以外は、或いはそのコピーが変更された場合以外は、コピー元のオブジェクトから区別することはできない。
一般に、少なくとも最初は、コピーは、コピー元そのものであるオリジナルと同等（イコール）になる。ここで、”同等”の意味は、オリジナルがメンバであるクラスに依存するということである。クラスとコピーが不変である場合、コピーとオリジナルはいつまでも同等のままである。その他の場合は、コピーとオリジナルは、互いに独立となるように、互いに異なるものとなることができる。
コピーは、オペレーション”copy”を用いることにより生成される。エンジンは、オリジナルの各プロパティのオペレーション”copy”を要求することによってコピーを作成する。しかし、エンジンがこの目的のために既にコピーしたことのあるオブジェクトへのリファレンスがプロパティであることを見いだした場合には、エンジンは、そのオブジェクトの第２のコピーを生成せず、第１のコピーへのリファレンスを使用する。
２．２．１２  オブジェクトの初期化（initialize）
オブジェクトの生成には、オブジェクトの初期化（イニシャライズ：initialize）が必要である。オペレーション”initialize”についてのメソッドは、生成されたオブジェクトがメンバであるクラスに対して固有であることができる。このメソッドは、そのクラスに対して固有のオブジェクトのプロパティを初期化する。
エンジンがオペレーション”initialize”のメソッドを要求する前に、エンジンは、そのメソッド自体が固有であるクラスに固有のプロパティをニル（０）に設定する。
初期化の順序（Initialization  Order）
オペレーション”initialize”についての各メソッドは、そのメソッドが責任を持っているプロパティをイニシャライズした後に、オペレーションをエスカレートする。これにより、他のメソッドが同じことを行うようにすることができる。メソッドが、オペレーションをエスカレートすることなく正常終了した場合、エンジンは、そのメソッドについて同じことを行う。エスカレーション（escalation）のプロセスは、生成されたオブジェクトのクラスと、そのクラスのインプリメンテーションスーパークラスとを、正規の順序で訪問する。
初期化パラメータ（Initialization Parameters）
クラスの”初期化パラメータ（initialization parameters）”は、そのクラスに固有のオペレーション”initialize”についてのメソッドが、そのオペレーションを遂行するために要求するオブジェクトである。クラスがミックスインである場合、そのクラスは、パラメータを選択することによって、そのクラス自身のために、処理を行う。また、クラスがフレーバである場合、そのクラス自身及びそのインプリメンテーションスーパークラスのために、同様に、処理を行う。エスカレーションにおいて、オペレーション”initialize”についてのクラスのメソッドは、正規の順序で続くクラスのパラメータが、スタック上に、トップのマークの上に存在することを、保証している。全てのクラスについてのメソッドが実行された後、パラメータがスタックに残っている場合、クラス”object”は、エクセプションを送出する。
初期化の特権（Initialization Privileges）
オペレーション”initialize”のメソッドは、エスカレーションの前ではなく、エスカレーションの後に、生成されたオブジェクトのフィーチャを使用することができる。このときも、オブジェクトは、オブジェクトがインスタンスであるクラスではなく、メソッドが固有であるクラスのインスタンスであるかのように応答する。メソッドは、いつでも、他のオブジェクトのフィーチャを使用することができる。
２．２．１３  オブジェクトの最終化（Object Finalization）
オブジェクトが破壊されると、そのオブジェクトは最終化（ファイナリゼーション：finalization）を迎える。オペレーション”finalize”のメソッドは、破壊されたオブジェクトがメンバであるどのクラスにも固有であることができる。このメソッドは、そのクラスに対して固有のオブジェクトのプロパティを終了させる。オペレーション”finalize”は、オプションとして、そのオペレーションが終了させるプロパティを破壊することができる。ただし、オペレーション”finalize”がプロパティを破壊しない場合には、エンジンがプロパティを破壊することとなる。
最終化の順序（Finalization order）
オペレーション”finalize”のメソッドは、オペレーションをエスカレートしない。エンジンは、破壊されたオブジェクトのクラス及びそのインプリメンテーションスーパークラスを正規の順序でアクセスして、他のメソッドが正常終了しているか否かにかかわらず各メソッドを遂行する。
２．２．１４  クラスの構造（Class construction）
インストラクションセットは、多くのコンピューター言語とは異なり、オペレーション”makeclass”により、実行中にクラスを生成することができる。また、クラスは、クラスのインターフェースとクラスのインプリメンテーションとを定義するクラス定義に基づいて生成される。
識別子のバインディング（Identifier Bindings）
クラスのインターフェース又はインプリメンテーションは、典型的には、そのインターフェース又はインプリメンテーションが識別子によって指定する他のクラスに依存する。サイテションは、このインターフェース又はインプリメンテーションのアトリビュート”vocabulary”の助けを借りて、このような識別子に束縛（バインド：bind）される。
識別子が、定義済みクラスの識別子に等しい場合には、そのサイテションはそのクラスのものである。その他の場合、識別子が、アトリビュート”vocabulary”にあるキーと等しいときは、そのサイテションは、そのキーに関連づけられた値に等しい。上述した以外の場合には、サイテションのアトリビュート”title”がそのクラスの識別子に等しいことを除いて、サイテションは、構成されたクラスのサイテションに等しい。
注：インストラクションセットは、定義済みクラスの割り当てられたサイテションを定義しない。
サイテションのバインディング（Citation Bindins）
クラスは、現在のプロセス及び現在のプレイスのアトリビュート”privateClasses”及び”publicClasses”の助けを借りて、サイテションに結合（バインド：bind）される。引用された（サイテッド：cited）クラスが、定義済みクラスである場合、引用されたクラスはエンジンに検出される。また、引用されたクラスがユーザ定義クラスである場合、そのクラスは、先ず、現在のプロセスのアトリビュート”privateClasses”を用いて検索され、見つからなければ、次に、現在のプレイスのアトリビュート”publicClasses”を用いて検索される。ただし、この検索では、検出されない場合もある。ここで、引用されたクラスは、引用されたクラスに対して後方向に互換性を有するものならば、どのようなクラスでもよい。
クラスは、２回に１回の割合で、サイテションにバインドされる。クラスの識別子がプロシージャのアイテムである場合は、識別子が実行されている時はいつでも、そのクラスは検索される。その他の場合は、クラスが構成された時に、そのクラスは検索される。
２．３  実行モデル（Execution Model）
インストラクションセットは、このセクションで定義する”実行モデル（execution model）”を実現する。
２．３．１  メソッド（method）
メソッドは、各々の遂行の動的状態を別々に保持することのできるプロシージャである。この動的状態は、１つのフレームの形状をとる。オペレーションと、変換と、選択されたアトリビュートとを遂行するために、メソッドが使用される。
フレーム（Frame）
”フレーム（frame）”は、スタックと、０以上の変数を含む。”変数（cariable）”は、変数自身がオブジェクトであり、フレームのメソッドの特定の遂行の動的状態の１つの要素である。また、変数は、フレームのプロパティの全てが、スタックと共に集められ、全動的状態を構成する。フレームのスタック、及び変数は、そのフレームに対して内部的である。したがって、フレームのメソッドのみにより、直接に感知、検査及び変更することができる。フレーム自身は、全く操作されない。
遂行（Performance）
メソッドを”遂行（paform）”するということは、１つのフレームを生成し、フレームのスタックの初期のアイテムとしてオブジェクトの申し出を受け取り、フレームの変数をニル（０）に設定し、メソッドのプロシージャを実行し、フレームを廃棄し、そして、プロシージャが成功した場合のみ、フレームの廃棄前にスタックからポップしている、フレームの最終的なアイテムを提供するということである。ここで、プロシージャが正常終了した場合に、メソッドの遂行は正常終了となり、プロシージャが異常終了した場合に、メソッドの遂行は異常終了となる。
如何なる場合においても、”現在のメソッド（カレントメソッド：current method）”は、現在遂行中のメソッドであり、”現在のフレーム（カレントフレーム：current frame）”は、その遂行のために生成されたフレームである。また、”現在のスタック（current stack）”、すなわち”そのスタック（the stack）”は、現在のフレームのスタックである。
注：メソッドが、オペレーションを遂行する場合、スタックの初期のアイテムとして供給されたオブジェクトがアーギュメントであり、最終的なアイテムとして供給されたオブジェクトのうち最も上方にあるものが、もしあるならば、リザルトである。これらの２つの事象の間で、スタックは、最初にアーギュメントを保持し、次にメソッドが要求するオペレーションのリザルトが存在すれば、そのリザルトを保持する。オペレーションの終了時に、スタックの最も上方にあるアイテム以外のアイテムが存在した場合、そのアイテムは、オペレーションの中間ステップを実行するオペレーションの遂行の間に、使用されるオブジェクトである。
２．３．２  プロシージャ（procedures）
”プロシージャ（procedure）”は、プロシージャのプロパティに含まれない、より基本的なプロシージャの一部分、すなわち、プロシージャの”アイテム”である０以上の実行オブジェクトを含む。これらのアイテムは、範囲［１，ｎ］によって番号付けされる。ここで、”ｎ”は、プロシージャの”レングス（length）”を示している。プロシージャは、レングスが０の場合は、クリアされる。アイテムの番号は、プロシージャ中のポジションを示している。”サブプロシージャ（subprocedure）”は、一つのプロシージャ内の隣接したポジションにある０以上のアイテムを含む。
遂行（performance）
プロシージャを”遂行（perform）”することは、現在のフレーム中において、ポジションが示す順に順次そのアイテムを実行することである。プロシージャの遂行は、各アイテムが正常終了のうちに実行される場合は、”正常終了（succeed）”となり、その他の場合は、”異常終了（fails）”となる。何れかのアイテムが異常終了した場合には、残りのアイテムは実行されない。なお、”正常終了する”は、”成功のうちの終了する”や”成功に終わる”と表現するときもあり、”異常終了”は、”失敗のうちの終了する”や”失敗に終わる”と表現するときもある。
２．３．３  エグゼキューティドオブジェクト（Executed Object）
”実行オブジェクト（エグゼキューティドオブジェクト：executed object）”は、プロシージャの１つのアイテムとして許可される。
遂  行（Prformance）
プロシージャ以外のエグゼキューティドオブジェクトを”遂行（perform）”することは、そのオブジェクトを実行することである。
実行（execution）
エグゼキューティドオブジェクトを”実行（execute）”することは、エグゼキューティドオブジェクトが、識別子であるか、モディファイヤであるか、セレクタであるか、又は他の何かであるか、ということに依存して実行することである。エンジンがエクセプションを送出した場合、その実行は”異常終了（fails）”であり、その他の場合、その実行は”正常終了（succeed）”である。
識別子、モディファイヤ、又はセレクタ以外の如何なるエグゼキューティドオブジェクトは、エグゼキューティドオブジェクトへの保護されたリファレンスをスタックにプッシュすることによって、実行される。
注：上記の問題のエグゼキューティドオブジェクトは、ビット、ビットストリングブーリアン、キャラクタ、インテジャ、マーク、オクテット、オクテットストリング、プロシージャ、実数、及び、ストリングである。
２．３．４  識別子（identifier）
特定のクラス、フィーチャ、プロパティ、又は変数は、インストラクションセット内のその他の構成やオブジェクトと同様に、識別子によって示される。
識別子（Identifiers）
”識別子（Identifier）”は、レングスが１以上のストリングである、その識別子の”テキスト（text）”を用いて、その範囲内において、あるオブジェクトと他のオブジェクトを区別する。
有資格識別子（Qualified Identifier）
”有資格識別子（qualified identifier）”は、フィーチャの０以上のインプリメンテーションを、同一のフィーチャの０以上の他のインプリメンテーションから識別する。有資格識別子は、その有資格識別子のテキストを用いて、フィーチャを示す。さらに、有資格識別子は、有資格識別子の”クエリファイヤ（qualifier）”である、クラスの識別子のテキストを用いて、クラスに固有の又は継承されたインプリメンテーションを示す。
範囲（Scope）
同一の範囲（スコープ：scope）を持っている２つの識別子は、同一ではない。
クラス（Class）
インプリメンテーション又はインターフェースによって引用されたクラスは、その範囲がそのインプリメンテーション又はインターフェイスによって引用された全てのクラスにわたる識別子によって、示される。
フィーチャ（Feature）
オブジェクトのフィーチャは、その範囲が全てのフィーチャーにわたる識別子によって示される。ここで、オブジェクトのフィーチャーは、オブジェクトがインスタンスであるクラスに対して固有であるフィーチャー、又はオブジェクトがインスタンスあるクラスによって継承されたフィーチャーの何れかである。
プロパティ（Property）
オブジェクトのプロパティは、対象となるプロパティ自身が固有であるクラスに対して固有である全てのプロパティを範囲とする識別子によって示される。
変数（Variable）
フレームの変数は、その範囲が全ての変数にわたる識別子によって示される。ここで、変数は、そのフレームがその遂行に属しているメソッドによって定義されるものである。
シンタックス（Syntax）
テキスト又はクエリファイヤは、表Ａ．１に示すキャラクタを除くものとする。
0003723572.tif 000002
テキスト又はクエリファイヤの最初のキャラクタは、表Ａ．１に示したものと同様に、表Ａ．２に示すキャラクタを除くものとする。
0003723572.tif 000003
２．３．５  静的な置換の規則（Static Substitution Rules）
プロシージャは、表Ａ．３に示すような置換が行われたように遂行される。プロシージャにおいて、表１行のサブプロシージャが現れた場合はいつも、第２行の同じ列のサブプロシージャは、第１列目で検出されたサブプロシージャに置き換えられる。
表Ａ．３は、テレスクリプトを定義するために用いられたノンターミナルを用いる各サブプロシージャを定義する。この表Ａ．３の第１セクションにおいて、”識別子（Identifier）”は、それ自身又は”Ｑ識別子（QIdentifier）”を示す。また、第２セクションにおいて、”識別子（Identifier）”は、それ自身のみを示す。
0003723572.tif 000004
表Ａ．３又は後述する表Ａ．４に示した以外のサブプロシージャにおいて定められたモディファイアを有するプロシージャの生成が求めらた場合には、エンジンはエクセプションを送出する。
アペンディックスＡのセクション３．２．１２において説明される内部的なオペレーションは、表Ａ．３又は表Ａ．４に示した置換のうち１つを結果として要求された場合にだけ、正常終了となる。その他の場合には、内部オペレーションは、アクセスすることができない。
２．３．６  動的な置換の規則（Dynamic Substitution Rules）
プロシージャは、表Ａ．４に示す置換が行われたように遂行される。表Ａ．４において、”識別子（Identifier）”は、それ自身又は”Ｑ識別子（QIdentifier）”を示す。
0003723572.tif 000005
２．３．７  セレクタの実行（selector Execution）
”セレクタ（selector）”は、特定の実行効果を達成する。セレクタは、次のように実行される。
ブレーク（break）
オペレーション”loop”、”repeat”、”while”を終了させる。どのオペレーションも遂行さなていない場合には、”Loop Missing”が送出される。
クライアント（client）
現在のクライアントへの保護されていないリファレンスを、スタックにプッシュする。ここで、リクエスタがエンジン自身でない場合、例えば、フィーチャのアクセスが”システム（system）”である場合、”現在のクライアント（カレントクライアント：current client）”は、現在のメソッドが実行（インプリメント：implement）としているフィーチャを要求しているオブジェクトである。その他の場合、現在のクライアントは、ニル（０）である。
継続（continue）
オペレーション”loop”、”repeat”、”while”の何れかのオペレーションが遂行されている場合、その次の遂行を開始させる。何れのオペレーションも遂行されていない場合は、”Loop Missing”が送出される。
エスカレート（escalate）
現在のメソッドが遂行するオペレーションのための識別子を、これらのエクセプションとともに、実行することと同様である。メソッドの選択の前に、エンジンは、リクエスタがレスポンダでない場合には、”Escalation Invarid”を送出する。メソッドの選択の間、エンジンは、現在のメソッドが固有であるクラスを無視する。オペレーションは、エスカレートされている。
ヒア（here）
現在のプレイスに対する保護されていないリファレンスを、スタックにプッシュする。”現在のプレイス（current process）”とは、現在のプロセスがエンジンプレイスでない場合には、現在のプレイスが占有されているプレイスのことであり、その他の場合には、ニル（０）である。
プロセス（process）
現在のプロセスに対する保護されていないリファレンスを、スタックにプッシュする。”現在のプロセス（current process）”とは、現在のメソッドの遂行が動的にプロセスの一部となっているプロセスのことである。
セルフ（self）
現在のオブジェクトに対するリファレンスをスタックにプッシュする。”現在のオブジェクト（current object）”とは、現在のメソッドを遂行しているオブジェクトのことである。保護されたリファレンスが現在のメソッドの遂行を要求するために用いられた場合にのみ、リファレンスは保護される。
サクセス（succeed）
残りのアイテムを実行させること無しに、現在のメソッドを終了させる。アトリビュート又はオペレーションのリザルトがある場合には、そのリザルトは、スタック上にある。
２．３．８  モディファイヤの実行（Modifier Execution）
モディファイアは、プロシージャにおいて、モディファイアに続くアイテムの実行を変更する。様々なモディファイヤの実行が置換規則に定められている。置換規則が関与しないモディファイヤは、次のように実行される。
デマルケイト（demarcate）
以下の識別子又は有資格識別子が、変更を伴って実行されるようにする。スタックがマークを含まない場合、エンジンは、”Mark Missing”を送出する。識別子が示すオペレーションによって要求されるアーギュメントの数が固定されており、その数がマークよりも上方のオブジェクトの数より少ない場合、エンジンは、”Argument Invalid”を送出する。その他の場合において、アーギュメントの数が固定されていてマークよりも上方のオブジェクトの数より多いとき、エンジンは、スタック内のそのマークと供給されたオブジェクトの間に、足りないアーギュメントの分だけニル（０）を挿入する。エンジンは、このとき、スタックからマークを取り除く。また、エンジンは、オペレーションが正常終了してはいるがリザルトを返さない場合には、リクエスタに対して、正常終了を示すリザルトの代りにニル（０）をリターンする。
メンション（mention）
”メンション（mention）”モディファイアに続くオブジェクトの実行を回避し、代りにスタックにそのオブジェクトに対する保護されたリファレンスをプッシュする。
ユーススタック（useStack）
次のオブジェクトを実行する前に、スタック自身に対するリファレンスをスタックにプッシュする。
２．３．９  識別子の実行（Identfier Execution）
クラス、アトリビュート、プロパティ、又は変数のための識別子の実行は、表Ａ．３及び表Ａ．４に示した置換規則によって定められている。
識別子（Identfier）
置換規則が関与しない識別子、すなわちオペレーションのための識別子は、次のようにして実行される。
スタックがクリアされている場合には、レスポンダがスタックのトップにあったため、エンジンは”Responder Missing”を送出する。レスポンダが識別子の示すオペレーションを持たない場合、又はリクエスタがオペレーションへのアクセスを持たない場合には、エンジンは”Feature Unavailable”を送出する。上述した以外の場合には、エンジンは、以下のセクションで述べるように、オペレーションのためのメソッドを選択し遂行する。
有資格識別子（Qualified Identfier）
オペレーションのための有資格識別子は、有資格識別子ではない識別子と同じように、これらのエクセプションを伴って実行される。
メソッドの選択前に、リクエスタがレスポンダでない場合、エンジンは”Escalation Invalid”を送出する。これ以外の場合、エンジンはオペレーション”getClass”を要求する。そして、そのオペレーションのリザルトが、現在のメソッドが固有のクラスでも、その直接のインプリメンテーションスーパークラスでもない場合には、エンジンは、”Escalation Invalid”を送出する。ここで、オペレーション”getClass”のアーギュメントは、テキストがクエリファイヤである識別子である。
メソッドの選択の間、エンジンは、それ自身を、オペレーション”getClass”のリザルトとそのインプリメンテーションスーパークラスに制限する。このとき、そのオペレーションは、エスカレートされている。
２．３．１０  メソッドの選択（Method Selection）
エンジンは、下記に示す４つについて、この順に順次検索することにより検出された最初のメソッドを、オペレーションのために選択する。
・レスポンダがクラスであれば、そのクラスメソッド。
・レスポンダがクラスであれば、正規の順序で探索されるインプリメンテーションスーパークラスのクラスメソッド。
・レスポンダのクラスのインスタンスメソッド。
・正規の順序で探索される、レスポンダのクラスのインプリメンテーションスーパークラスのインスタンスメソッド。
メソッドがオペレーションをエスカレートする場合、エンジンは、既に選択されたメソッドが固有であるクラスの後に検索を再開して、他のメソッドの選択を試みる。エンジンが、何れのメソッドをも見出さなかった場合、エンジンは、”Escalation Invalid”を送出する。
２．３．１１  メソッドの遂行（Method Parformance）
エンジンは、オペレーションのために選択したメソッドを次のように遂行する。
固定数のアーギュメント（Arguments Fixed in Number）
オペレーションが、数が一定のアーギュメント、すなわち固定数のアーギュメントを必要とする場合において、スタックのレングスがその固定数に１を加えたものよりも少ない場合、エンジンは”Argument Missing”を送出する。また、アーギュメントがアーギュメントのコンストレイントを侵害している場合、エンジンは”Argument Invalid”を送出する。
可変数のアーギュメント（Arguments Variable in Number）
オペレーションが、数が変化するアーギュメント、すなわち可変数のアーギュメントを必要とする場合において、スタックがマークを含まない場合、エンジンは”Mark Missing”を送出する。また、アーギュメントがアーギュメントのコンストレイントを侵害している場合、エンジンは”Argument Invalid”を送出する。
遂行（Performance）
エンジンは、スタックからレスポンダをポップし、メソッドの遂行のためのフレームを生成し、そのメソッドを遂行し、そして、フレームを廃棄する。
以下に述べるアクションが、メソッドの遂行に伴って行われる。エンジンは、オペレーションのアーギュメントをリクエスタのスタックからレスポンダのスタックに移動して、アーギュメントを供給する。アーギュメントの数が可変の場合、マークもアーギュメントと同様に供給される。エンジンは、オペレーションのリザルトが有る場合は、そのオペレーションのリザルトの提供を受けて、それをレスポンダのスタックからリクエスタのスタックに移動させる。
サクセス（Success）
メソッドが正常終了し、且つオペレーションがリザルトを生成しようとした場合、エンジンは以下のことを行う。オペレーションでリザルトが生成されなかった場合、エンジンは”Result Missing”を送出する。リザルトがそのリザルトのコンストレイントを満たさなかった場合、エンジンは”Result Invarid”を送出する。これらのエクセプションは、以下に述べるように取り扱われる。
失敗（Failure）
メソッドが異常終了し、且つオペレーションが送出するべきエクセプションを送出しようとしなかった場合、エンジンは、そのエクセプションを”Unexpected Exception”に置き換える。
２．４  プロセスモデル（Process Model）
インストラクションセットは、本セクションが定義する”プロセスモデル（process model）”を実現する。
２．４．１  プロセス（Processes）
”プロセス（process）”は、名前が付けられた自律的な処理である。また、プロセスは、マルチタスクのためのインストラクションセットの規則を構成する。
注：プロセスは、しばしば、実世界の何かに相当する。例えば、ネットワークにおいて、プロセスは、目的を促進しようと努めている人に相当する。
注：プロセスには、エージェントとプレイスの２種類がある。
相互作用（Interaction）
あるプロセスが他のプロセスに対するリファレンスを持つ場合、それぞれのフィーチャを用いて、２つのオブジェクトが相互作用するのと同じように、これらのプロセスは、相互作用することができる。このようなフィーチャの各アーギュメント又はリザルトは、オブジェクトへのリファレンス、又はオブジェクトのコピーへのリファレンスを、一方のプロセスが他方のプロセスに伝達することができる。
２．４．２  フェーズ（Phases）
プロセスは、複数の段階（フェーズ：phases）を経る。エンジンの要求により、このとき見込みのあるプロセスは、オペレーション”initialize”を正常に遂行する。また、エンジンの要求により、そのプロセスは、オペレーション”live”を正常に遂行する。ここで、このオペレーションのアーギュメントとしてニル（０）が供給される。また、エンジンの要求により、そのプロセスは、オペレーション”finalize”を遂行する。
エクセプション（Exceptions）
上述した各段階における通常の進行状態は、中断されることがある。オペレーション”initialize”がエクセプションを送出した場合、エンジンはそのプロセスを終了させる。オペレーション”live”がエクセプションを送出した場合、プロセスが保持するパーミットが許可するときは、オペレーション”live”を再び要求することによりプロセスを再始動し、その他のときには、オペレーション”finalize”を要求する。オペレーション”finalize”がエクセプションを送出した場合、エンジンは、プロセスを終了させる。
プロセスが上述した各段階の何れかで、固有のパーミット（ネイティブパーミット：native permit）又は局地的なパーミット（ローカルパーミット：local permit）を使い尽くした場合には、プロセスが”Permit Exhausted”を送出したのような状態となる。
２．４．３  スレッド（Threads）
各プロセスは、独立した実行スレッドを生じさせる。この実行スレッドはいつでも、プロセスの主導のもとで遂行されているメソッドのフレームを含んでいる。第１のメソッドは、プロセス自身がオペレーション”live”のために供給するものである。第２のメソッドは、オペレーション”live”のメソッドがオブジェクトに要求するフィーチャーのためにオブジェクトが供給するものである。そして、これ以降も同様に行われる。
スケジューリング（Scheduling）
エンジンは、ブロック化されていない全ての実行スレッド、例えば所定の時間まで待機している全ての実行スレッドをスケジュールし、必要があれば優先順位に従って実行スレッドを切り換える。ここで、ブロック化されていない実行スレッド全てが等しければ、エンジンは、あるオーソリティのプロセスを他のオーソリティのプロセスに対して優先させたり、あるブランドのプロセスを他のブランドのプロセスに対して優先させたり、同一のプライオリティのプロセスのどちらかを他のプロセスに優先させたりすることはない。
中断（Interruption）
エンジン自身がオブジェクトのフィーチャを要求するとき、すなわちシステムフィーチャのとき、そのフィーチャのメソッドは、オブジェクトのオーナーのスレッドの一部分として遂行される。オーナーは、結果として、この目的のために中断される。
２．４．４  リソース（Resouces）
”リソース（resouse）”は、特定のプロシージャの遂行を通して、プロセスに対して保証を作り出すことのできるものである。エンジンは、リソースがこのような保証を作り出すことができるまで、プロセスを遅延させることができる。
注：リソースは、臨界条件付きのリージョンを定義することができる。
注：リソースは、後述するような物理的なリソースの代わりとなることが多い。
注：電子メールシステムにおいて、例えば、メールボックスに値するエージェントは、そのプロパティの中に、送信されるメッセージのデータベースと、データベースを示すリソースとを含めることができる。また、エージェントは、新しく送信されるメッセージをデータベースに追加する処理を行うタスクが起動される前に、リソースの排他的な使用を得る。これにより、現在の伝送に対するデータベースの整合性を確保する。
ニード（Need）
プロセスは、他のプロセスに対してオブジェクトへのリファレンスを伝送することができるため、各オブジェクトは、それらのプロセスによって同時に遂行されるように、クラスに固有なメソッド、又はクラスにより継承されたメソッドが用意されなければならない。リソースは、オブジェクトのこのような用意を可能にする。
リソースは、一連のオペレーションが不可分に行われることを保証するために用いられる。（以下、”不可分に”実行されることを、”アトミックに”実行されると表現する。）ただし、一般に、オペレーションに対して、このような保証は要求されない。なぜなら、エンジンは、オペレーション”wait”と、オペレーション”meet”と、レスポンダ（例えばオペレーション”do”）又はアーギュメント（例えばオペレーション”restrict”）として供給されたプロシージャを遂行するあらゆる定義済みオペレーションとを除く、全ての定義済みオペレーションを、アトミックに遂行するからである。
注：エンジンは、オペレーション”go”、”send”をアトミックに遂行する。
排他的（Exclusive）と共有（Shared）
プロセスは、リソースの共有的又は排他的な使用を保証されることができる。どの時点においても、どのプロセスもリソースを使用していないか、１つのプロセスがリソースを”排他的（exclusive）”に使用しているか、又は１以上のプロセスがリソースを”共有的（shared）”に使用しているかのいずれかである。
コンディション（Condition）
リソースが、要求された時に特定された１以上の条件（コンディション）の中にあることを、プロセスは、保証されることができる。どの時点においても、リソースは、リソースが生成された時に定義された１以上の条件の中に、”コンディション（condition）”を有する。識別子によって示されるリソースのコンディションは、リソースを共有的又は排他的に使用できるプロセスによってのみ検査でき、リソースを排他的に使用することができるプロセスによってのみ変更される。
２．４．５  パーミット（Permits）
”パーミット（permit）”は、プロセス、すなわちパーミットの”対象（サブジェクト：subject）”に能力を与える。インストラクションセットの大部分（例えばインストラクションセットの算術演算）によって表される能力は、各プロセスに暗黙のうちに許可されている。他の能力は、特定のプロセスに対して割り当てられたパーミットを用いて、明確に許可されている。
注：パーミットの主要な目的は、予定外の量のコンピュータ及びコミュニケーションのリソースを、プロセスが消費するのをできるだけ阻止することにある。これは、プロセスを生成し、そのプロセスに対してお金を支払うかもしれないユーザにとっても、プロセスが消費するリソースを供給しなければならない供給者にとっても利益となる。
注：上述したリソースは、クラス”Resouce”のメンバと混同されるべきではなく、これらの間に関連性はない。
能力（Capabilities）
パーミットは、ある定義された次元（ディメンション：dimension）と、その量とで、能力を与える。
パーミットは、プロセスに対して、寿命（エージ：age）、大きさ（サイズ：size）、料金（チャージ：charges）、優先度（プライオリティ：priority）、認証（オーセンティシティ：authenticity）を与えることができる。パーミットがサブジェクトに権利を与えるチャージは、サブジェクトの”アローワンス（allowance）”と呼ばれる。これらのディメンションにおいて量は、整数として示される。また、エージは秒単位で、サイズはオクテット単位で、チャージは”テレクリック（teleclicks）”単位で計測される。プライオリティは、その整数値が大きくなるにつれて増大する。オーセンティシティは、リージョンに特有なものである。
パーミットは、プロセスに対して、以下に述べる権限を与えることができる。すなわち、パーミット自身を転送する権限（パーミットのアトリビュート”canGo”）、パーミット自身のクローンを生成し転送する権限（アトリビュート”canSend”）、他の同レベルのプロセスを生成する権限（アトリビュート”canCreate”）、選択されたプロセスのパーミットの能力を減少させたり（アトリビュート”canDeny”）又は増大（アトリビュート”canGrant”）させるように選択されたプロセスのパーミットを設定する権限、他のプロセスの実際のチャージを増大させる権限（アトリビュート”canCharge”）、又は終了された時に再スタートさせる権限（アトリビュート”canRestart”）である。
これらのディメンションにおいて、量はブーリアン、すなわち論理的なものであり、このブーリアンの値が”真（true）”であれば、それについての権限は許可される。
パーミットが能力を許容することのできる各ディメンションは、パーミットのアトリビュートによって示される。通常、アトリビュートは、整数であるが、ニル（０）である場合もあり、この場合、能力は無限の量となる。
注：エンジン又は他のプロセスにより任意のプロセスに与えられるサービスにおいて、テレクリックで示されたチャージは、プレイス毎、時間毎、又はプレイスと時間毎に、変化させることができる。例えば、スペース等のサービスに対するチャージは、単位時間ごとに評価することができる。
ステイタス（Status）
プロセスの”ステイタス（status）”は、プロセスの実行される能力を特定する。プロセスのステイタスは、パーミットのアトリビュート”age”、”charge”、”extent”及び”priority”は、それぞれプロセスの実際のエージ、チャージ、サイズ及びプライオリティであること以外は、後述するプロセスの”実効的パーミット（effective permit）”である。
実効的パーミット（Effective Permit）
”実効的パーミット（effective permit）”は、プロセスに許容された能力を特定する。実効的パーミットは、いつでもどこでも、プロセスに固有のものと、リージョンによるものと、ローカルパーミットと、一時的に有効なパーミットとの共通集合である。しかしながら、このため、元のパーミットのアトリビュート”authenticity”は、プロセスが生成されたリージョンにそのプロセスが存在しない場合には、ニル（０）とされる。
２つのパーミットの共通集合は、それ自体がパーミットである。各パーミットの固有のアトリビュート（例えばＡ0）は、問題の２つのパーミットのアトリビュート（例えばＡ1とＡ2）の共通集合である。特に、Ａ2がニル（０）である場合は、Ａ0はＡ1であり、Ａ1がニル（０）である場合は、Ａ0はＡ2であり、それ以外の場合には、Ａ0はＡ1とＡ2とうちの小さい方である。
一旦、設定されたプロセスのパーミットの何れかが再設定された場合には、後述するオペレーション”restricted”を用いることにより、エンジンは、プロセスに対して、設定されたプロセスのパーミットの何れかが再設定されたことを通知する。
プロセスが、プロセスの実効的パーミットによって許可される量以上の能力で実行しようとした場合、プロセスは、そのパーミットを”侵害（violates）”している。このように、自己のパーミットを使い尽くすことなしに侵害すると、エクセプションが引き起こされる。
プロセスの一時的なパーミットが全て有効でないならば、プロセスの実際のエージ、チャージ、又はサイズが、それぞれプロセスの実効的パーミットがプロセスに与えていたエージ、チャージ、又はサイズに到達することを認めることにより、プロセスはそのパーミットを”使い尽くす（exhaust）”。自己のパーミットを使い尽くすということは、自己の終了を開始させるということである。
ネイティブパーミット（Native Permit）
プロセスの”ネイティブパーミット（native permit）”は、プロセスの生成元によりプロセスに許容された能力を特定する。親に相当するプロセスは、子に相当する他のプロセスを生成した時に、ネイティブパーミットを設定する。対等なプロセス（ピアプロセス）は、そのプロセス自身の実効的パーミット（アトリビュート”canDeny”）により可能となっているならば、その能力を、増大させることはできないが、減少させることはできる。
能力は、プロセス間で転送はされるが生成されることはない。親のプロセス又はピアプロセスは、その親のプロセス又はピアプロセス自身が持たない能力”Ｘ”を、子に相当するプロセスに与えることはできない。ここで、親のプロセス又はピアプロセスの実効的パーミットにより、親のプロセス又はピアプロセスに許可された能力”Ｘ”の量を”Ｐ”で示し、子に相当するプロセスのネイティブパーミットにより、子に相当するプロセスに許容された能力”Ｘ”の量を”Ｃ”で示すと、”Ｃ”は”Ｐ”を超過しない関係となる。
チャージ能力（”Ｘ”）は維持されている。このとき、親のプロセス又はピアプロセスの実際の初めのチャージの量を”Ａ”で示すと、”Ｃ”は”Ｐ−Ａ”を超過しない関係となる。そして、親のプロセス又はピアプロセスのその後の実際のチャージの量は”Ａ＋Ｃ”となる。
リージョナルパーミット（Regional Permit）
プロセスの”地域的なパーミット（リージョナルパーミット：regional permit）”は、プロセスの占有するプレイスを含むリージョンにより、プロセスに許可された能力を特定する。リージョンのオーソリティのプレイスは、プレイス自身の実効的パーミット（アトリビュート”canDeny”及び”canGrant”）により能力が賦与されている場合、プロセスがそのプレイスに入ってきた時、及びその後のどの時点においても、リージョナルパーミットを設定することができる。しかし、子に相当するプロセスがオペレーション”go”又は”send”を使用せずに、オペレーション”new”を使用してプレイスに入る場合には、子に相当するプロセスの最初のリージョナルパーミットは、親に相当するプロセスの現在のリージョナルパーミットとなる。
ローカルパーミット（Local Permit）
プロセスの”ローカルパーミット（local permit）”は、プロセスが占有するプレイスにより、プロセスに許可される能力を特定する。プロセスが占有するプレイスは、プレイス自身の実効的パーミット（アトリビュート”canDeny”及び”canGrant”）により能力が賦与されていれば、プロセスがプレイスに入る時、及びその後のどの時点においても、ローカルパーミットを設定することができる。
チケットを用いてプレイスに入るとき、エージェントは、プレイスの特定の能力を要求する。しかし、この時、プレイスは、そのエージェントが持っている能力を判断する。また、プレイスは、エージェントが要求したものより多いか又は少ない能力を有するローカルパーミットを伴って、エージェントがプレイスに入ることを許容することができる。しかしながら、少ない能力を有するローカルパーミットの場合、その移動は異常終了となる。すなわち、オペレーション”go”又は”send”は、エージェントがプレイスに到着したとしても、エクセプションを送出することとなる。
プロセスがそこで生成されることによりプレイスに入るとき、プロセスは、プロセスの初期のローカルパーミットとして、初期化パラメータ無しに生成されたローカルパーミットを受け取る。
一時的なパーミット（Temporary Permits）
プロセスの０以上の”一時的なパーミット（temporary permit）”は、プロセスが一時的にプロセス自身に許容する能力を特定する。これらは、特定されたプロシージャの遂行のためにオペレーション”restrict”又は”sponsor”を用いて設定される。これらのプロシージャは、入れ子にさせることができる。
エンジンがシステムフィーチャを要求するときはいつも、レスポンダのオーナーは、初期化パラメータを用いずに生成された一時的なパーミットを用いて、オペレーションのメソッドを暗黙の内に保証する。このようにして、チャージは、オーナーに帰せられる。
注：プロセスは、一時的なパーミットを使用して、プロセスの許容されたエージ、チャージ、又はサイズの一部分を保持することができる。これらの大部分をプロセスが使い尽くした場合には、プロセスは保持されていた部分を使用して緊急のアクションを取ることができる。
２．４．６  オーナーシップ（ownership）
プロセスでない各オブジェクトは、オブジェクトによって”所有（owned）”されている。プロセスとそれが所有するオブジェクトは、そのプロセスの”アーティファクト（artifacts）”である。
注：オーナーシップは、オーソリティとは混同されない。
オブジェクトの生成（Object Creation）
各オブジェクトは、メソッド間で、フィーチャのアーギュメント又はフィーチャのリザルトのコピーをパスすることによって、最終的に、生成される。新しく生成されたオブジェクト、すなわちパスされるコピーは、オブジェクトがプロセスである場合、そのコピーにメソッドが伝送されるオブジェクトによって所有され、オブジェクトがプロセスでない場合、オブジェクトのオーナによって所有される。
オブジェクトの破壊（Object Destruction）
プロセスが破壊される場合、プロセスの全てのアーティファクトは破壊され、残存する全てのアーティファクトへのリファレンスはボイドされる。
オブジェクトの共有（Object Sharing）
プレイスのアーティファクトは、それ自身のアーティファクトと第１の領分を構成する、イミディエートスーパープレイスのアーティファクト、及び集合的に第２の領分を構成する、イミディエートサブプレイスのアーティファクトを参照することができる。しかし、エンジンは、これら２つの領分間にパスされたリファレンスをボイドする。
注：こうして、防護壁をプレイスの間に設立することができる。
２．４．７  クローニング（cloning）
プロセスには、プロセス自身をクローニングする能力が与えられる場合がある。クローンは、これらのエクセプションとともに、他のプロセス、すなわち”オリジナル（original）”のコピーとして存在するプロセスである
クローンの識別情報（アイデンティティ：identity）は、オリジナルのアイデンティティとは異なったものである。ただし、クローンのオーソリティはこの限りではない。
ローカルパーミットでもあるクローンのネイティブパーミットは、クローンが生成された時に与えられるパーミットである。オリジナルにおいて継続中の一時的なパーミット、すなわちオペレーション”restrict”のリザルトとしての一時的なパーミットは、クローンのネイティブパーミットが必要とする範囲内で、クローン内において制限的に作られる。
オリジナルが、オリジナル自身、又はオリジナルが所有するオブジェクトを参照しているときはいつでも、クローンは、それぞれ、クローン自身を参照するか、又はクローン自身が所有するオブジェクトのコピーを参照している。また、オリジナルが、第３のプロセスのアーティファクトを参照しているときはいつでも、クローンは、ボイドされたリファレンスを有する。
オリジナルがコンタクトされるオブジェクトである場合、すなわちクローンがコンタクトされるオブジェクトである場合、クローンのアトリビュート”contacts”はクリアされる。
２．４．８  ブライディング（branding）
リージョンは、リージョン内部の各プロセスにブランドを与える。
”ブランド（brand）”とは、リージョン内の０以上のプロセスによって生成された識別マークである。エージェントがリージョンに入る時、そのリージョンは、入ってきたエージェントに新しいブランドを与える。また、リージョン内のプロセスが他のプロセスを生成する場合、生成された他のプロセスは、もとのプロセスのブランドを受け継ぐ。したがって、ブランドは、リージョンに入ってきたプロセス、例えばエージェントと、プロセスにより生成された全てのプロセスとを示すものである。
注：ブランドは、インストラクションセット内には存在しない追跡メカニズムを可能にする。
２．４．９  コンタクト（Contacts）
”コンタクト（contact）”は、あるプロセス、すなわち”オブザーバ（ofserver）”のために、そのプロセスと、第２のプロセス、すなわち”サブジェクト”との相互作用を記録し表すものである。接触されたプロセス（コンタクトされたプロセス：contacted proces）は、コンタクトのセットを保存するのに、エンジンの協力を受ける。
２．４．１０  アイソレーション（Isolation）
プロセスは、以下に述べるような様々な条件のもとで切り離し（アイソレート：isolate）される。例えば、プロセスは、オペレーション”partA11”を用いてそのプロセスに関連した全てのプロセスから分離（パート：part）することにより、トリップを開始することにより、又は終了することにより、アイソレートされる。
プロセスを”アイソレート”すると言うことは、他のプロセスのアーティファクトによって保持されているプロセスのアーティファクトへの各リファレンスをボイドし、そのプロセスのアーティファクトが保持している、他のプロセスのアーティファクトへの各リファレンスをボイドすることである。ここでは、２つのエクセプションがある。第１のエクセプションとして、プロセスが占有するプレイスは、そのプロセスへのリファレンスは保持するが、そのプロセスが所有するオブジェクトへのリファレンスは保持しない。第２のエクセプションとして、プロセスは、プロセスが占有するプレイスを参照し続けることができる。
２．４．１１  終了（Termination）
プロセスは、プロセスのフレームがプロセスの実行スレッド中に含まれているメソッドを優雅に終了させることによって、終了される。
（ｉ）Ａ、Ｂ、Ｃがプロセスであり、（ｉｉ）ＡのアーティファクトがＢのアーティファクトのフィーチャを要求し、（ｉｉｉ）ＢのアーティファクトがＣのアーティファクトのフィーチャを要求し、（ｉｖ）ＡがＡのネイティブパーミット、又はローカルパーミットを生ずるものとする。この場合、エンジンは、Ａを以下に述べるようにして終了させる。
すなわち、Ａ、Ｂ及びＣが同一でない場合、エンジンは、”Permit Exhausted”を送出し、このエクセプションについてオペレーション”catch”を用いて、最も新しく生成されたＡ、Ｂ又はＣのメソッドに制御を戻す。制御が戻されたメソッドは、再開される。しかし、再開されたメソッドに関連するオブジェクト、又はそのオブジェクトのオーナの何れかである、Ａ、Ｂ又はＣの何れかのローカルパーミットを、Ａは保持している。その再開されたメソッドが正常終了又は異常終了すると、エンジンは、Ａの使い尽くされたパーミットを回復し、上述の終了アルゴリズムを再開する。
上述の終了アルゴリズムを再開した後に、エンジンは、（ｉ）Ａを停止し、（ｉｉ）Ａをアイソレートし、（ｉｉｉ）診断的な検査のために有効なＯＡＭポリシーが要求する場合は、Ａを供給し、（ｉｖ）Ａを破壊する。
２．５  ネットワーク・モデル（Network model）
インストラクションセットは、本セクションが定義する”ネットワーク・モデル（network model）”を実現する”。
２．５．１  エージェント（Agents）
”エージェント（agent）”は、プレイスからプレイスへと移動することができるプロセスである。エージェントは、オペレーション”go”により、特定のデスティネーション（目的地：destination）にエージェント自身が移動することができ、また、オペレーション”send”により、同時に１つ以上のクローンを幾つかのデスティネーションに向かって移動することができる。
注：インストラクションセットのオペレーション”go”、”send”は、インストラクションセットにおいて最も有効で重要な部分である。多くのネットワークアーキテクチャにおいて、全てのプロセスは、静止しており、メッセージを交換することによって通信する。しかし、本発明のネットワーク・アーキテクチャでは、いくつかのプロセスは静止しているが、移動できるプロセスもある。そして、静止しているプロセスは、移動できるプロセスを用いて通信することができる。これは、技術進歩である。
２．５．２  プレイス（Places）
”プレイス（place）”は、０以上の他のプロセスのための場所である。各プロセスは、プレイスを参照し、相互作用することができる。
注：プレイスは、遠隔におけるインストラクションセットのアクションの例を示している。プレイスは、プレイスの間を移動するエージェントによって相互作用する。
エンジン・プレイス（Engine place）と仮想的なプレイス（Virtual Places）
プレイスには、”エンジン・プレイス（engine place）”と”仮想的なプレイス（virtual place）”の２種類がある。各エンジンは、１つのエンジンプレイスを有しており、エンジンプレイスは、エンジン自身を示している。そして、各エンジンは、０以上の”仮想的（virtual）”なプレイスも有する。
サブプレイス（Subplace）とスーパープレイス（Superplace）
エンジンプレイスを除く全てのプレイスは、他のプレイスを占有することができる。プレイスが直接的又は間接的に他のプレイスを占有する場合、占有するプレイスは、占有されるプレイスの”サブプレイス（subplace）”であり、占有されるプレイスは、占有するプレイスの”スーパープレイス（superplace）”である。ここで、プレイスが他のプレイスを直接的に占有する場合には、占有するプレイスは、占有されるプレイスの”直接のサブプレイス（イミディエートサブプレイス：immediate subplace）”であり、また、占有されるプレイスは、占有するプレイスの”直接のスーパープレイス（イミディエイトスーパープレイス：immediate superplace）”である。
プレイスヒエラルキー（Place Hierarchy）
エンジンが有するプレイスは、ツリー、すなわち”プレイス階層（プレイスヒラルキー：place hierarchy）”のノードとして配される。プレイスヒエラルキーにおいて、ノードは、プレイスを示し、ノードの間のアークは、ノードが示すプレイス間の占有の相互関係を示している。
注：ツリーのルートは、エンジンプレイスを示し、他のノードは、仮想的なプレイスを示す。
２．５．３  トリップ（Trips）
”トリップ（trip）”は、”開始点（オリジン：origine）”である１つのプレイスから、”目的地（デスティネーション：destination）”である他のプレイス内又は同じプレイス内の別の場所へのエージェントの移動である。トリップは、エージェントをそのオリジンや”移動経路上のプレイス（トランジットプレイス：transit place）”の残したまま、そのオリジンや目的地を異常終了することはできない。
注：トリップは、単に論理的にエージェントを移動させるだけではなく、物理的なコミュニケーションのメディアを用いてエージェントを移動させる場合があるため、多くの時間を要する場合がある。
オペレーション”go”とオペレーション”send”
エージェントは、オペレーション”go”により、１つの目的地にエージェント自身が移動することができ、又、オペレーション”send”により、幾つかの目的地に同時に移動できるように１以上のクローンを生成することができる。
注：幾つかのクローンが、エンジンが有する複数のプレイスに送信されていても、オペレーション”send”は、特定のエンジンに対して、エージェントを表現するものを１つだけ転送する。これにより、そのエンジンのコンピュータのメモリスペース等をさらに節減することができる。
制限（Restrictions）
オペレーション”go”、”send”は、クラス”Agent”のサブクラスに固有のメソッドのプロシージャ、又はこのようなプロシージャのアイテムであるプロシージャによってだけ、繰り返し要求される。これ以外の場合、エンジンは”State Improper”を送出する。
２．５．４  チケット（Tickets）
”チケット（ticket）”は、トリップするエージェントの観点から見た、予定されたトリップに関する情報を設定する。チケットの主な目的は、トリップの目的地を特定することである。
構  成（Composition）
チケットは、目的地のテレアドレス及びテレネームと、目的地がメンバであるクラスに対するサイテションと、エージェントが目的地において必要とするローカルパーミットと、トリップが理想的に終了する時間（所望時間：desired time）と、どの様な状況のもとでもトリップが正常終了又は異常終了となるべき時間（最長時間：maximum time）とを示す情報から構成される。
注：所望時間を定義することは、ネットワークが移動中のエージェントにコミュニケーションリソースをどの様に分配するかを定める上で、有効である。
注：プログラミングの便宜上の問題として許可される最長時間の効果も、オペレーション”restrict”によって達成することができる。
充足（Satisfication）
チケットは、最長時間内においてエージェントが到着することに同意した、特定されたネーム、アドレス及びクラスのプレイスによって、満足される。
どのプレイスもチケットの条件を満たしていない場合、ネットワークはそのチケットを拒絶する。
２以上のプレイスのセットがチケットを満たしている場合、１つのプレイスがエージェントの移動を受け入れるまで、又はネットワークがアプローチする全てのプレイスがエージェントの移動を拒絶するまで、ネットワークは、そのセットのメンバに対して順次、トリップを試みる。
ネットワークがそのセットのメンバにアプローチする順序について、そのセットについてネットワークが保証する範囲について、及びチケットの提示後にセットに加わるプレイスにネットワークがアプローチするか否かについては、定義されていない。
２．５．５  ミーティング（Meetings）
”ミーティング（meeting）”は、同一プレイスの２つの占有者が、相互作用するための機会である。ここで、ミーティングする占有者は、ペティションされるオブジェクト、すなわちエージェントである。要求しているエージェント（リクエスティングエージェント：requesting agent）は、”ペティショナ（petitioner）”であり、応答するエージェント（レスポンディングエージェント：responding agent）は、”ペティショニ（petitionee）”である。
ミーティング（Meeting）
エージェントは、他のエージェントに、オペレーション”meet”により、”会合（ミート：meet）”することを要求できる。エンジン（このエンジンはペティショナではない。）は、アーギュメントとしてペティショナのコンタクトを供給して、ペティショニのオペレーション”meeting”を要求する。ミーティングは、オペレーションの結果次第で決まる。
オペレーション”meeting”が正常終了し、ミーティングが完了した場合にのみ、２つのエージェント相互に対するリファレンスを与える。ここで、ミーティングしている間、２つのエージェントのことを、相互に対して”知人（acquaintances）”であると言う。
エンジンは、エージェントとのミーティングを系列化しない。すなわち、エージェントが既にオペレーション”meeting”を行なっているということは、エンジンがオペレーション”meeting”の遂行を再び要求することを妨げるものではないということである。一方、エージェントは、例えばリソースによって、エージェントが要求するミーティングの系列化を供与しなければならない。
パーティング（Parting）
２つのエージェントの何れか一方は、オペレーション”part”又は”partAll”により、１つ又は全ての知人から”分離（パート：part）”することができる。エンジン（エージェントではない。）は、エージェントの１以上の知人に対して、オペレーション”parting”を要求することができる。エンジンは、オペレーション”meeting”のアーギュメントして、又はオペレーション”meet”のリザルトとして、エンジンが先に提供したコンタクトを、アーギュメントとして提供する。ミーティングとは異なり、パーティングは、直接的に無条件に生じ、オペレーション”parting”の結果には依存せずに正常終了する。
エンジンは、他のエージェントのアーティファクトに対する各エージェントのリファレンスをボイドする。
エンジンは、エージェントからのパーティングを系列化しない。すなわち、エージェントが既にオペレーション”parting”を遂行しているということは、エンジンがオペレーション”parting”の遂行を再び要求することを妨げないということである。一方、エージェントは、例えばリソースによって、エージェントが要求するパーティングの系列化を供与しなければならない。
２つのエージェントが相互に分離することを要求した場合、エンジンがどちらののエージェントのオペレーション”parting”を要求するか否かについては、定義されていない。
制限（Restrictions）
オペレーション”meet”、”part”、”partAll”は、クラス”Agent”のサブクラスに固有のメソッドのプロシージャ、又はこのようなプロシージャのアイテムであるプロシージャによってだけ、繰り返し要求される。これ以外の場合、エンジンは”State Improper”を送出する。
２．５．６  ペティション（Petitions）
”ペティション（petition）”は、ペティショナの観点から見て、予定されたミーティングを設定する。ペティションの主な目的は、ペティショニを特定することである。
構  成（Composition）
ペティションは、ペティショニにテレネーム、ペティショニがメンバであるクラスに対するサイテション、及びどの様な状態においてもミーティングの試みが正常終了又は異常終了すべき時間（最長時間：maximum time）を示す情報から成る。
注：プログラミングの便宜上の問題として許可される最長時間の効果も、オペレーション”restrict”によって達成することができる。
充足（Sartisfaction）
ペティションは、最長時間内においてミーティングすることに同意した、特定されたネーム及びクラスの、ペティションされたオブジェクトによって、満足される。ペティショニは、最長時間内のある時点において、ペティショナと同一のプレイスの占有者でなければならない。ただし、上記のある時点は、必ずしも最長時間のスタートの時点である必要はない。
ペティションされるオブジェクトがペティションを満足しない場合、エンジンはそのペティションを拒絶する。
２以上のペティションされるオブジェクトのセットがペティションを満たしている場合、１つのペティションされるオブジェクトがミーティングを受け入れるまで、又はエンジンがアプローチする全てのペティションされるオブジェクトがミーティングを拒絶するまで、エンジンは、そのセットのメンバに対して順次、ミーティングを試みる。エンジンがそのセットのメンバにアプローチする順序について、そのセットについてエンジンが保証する範囲について、及び、ペティションの提示後にセットに加わるエージェントにエンジンがアプローチするか否かについては、定義されていない。
２．５．７  占有（Occupation）
プレイスを占有しているものは、経時的に変化することができる。
エントリー（Entry）
プロセスは、２つの方法のうちの何れかで、プレイスに”進入（エントリー：entry）”し、そのプレイスを占有することができる。エージェントは、トリップの結果としてプレイスに移動することができる。また、既にプレイスに存在するプロセスは、そのプレイスに他のプロセスを生成することができる。
何れの場合においても、エンジン（プレイスに移動したエージェントや、生成されたプロセスではない。）は、プレイスのオペレーション”entering”を要求する。プレイスに移動したエージェントのためのコンタクト、又は生成されたプロセスのためのコンタクトは、オペレーション”entering”のアーギュメントとして供給される。このエントリーが正常終了するか否かは、オペレーションの結果に依存する。
エントリーが完了した場合のみ、すなわちオペレーション”entering”が正常終了した場合のみ、エンジンは、プレイスと、そのプレイスに進入したプロセスとに、相互に対するリファレンスを与える。プロセスは、プレイスを占有している間、プレイスの占有者となる。
エンジンは、プレイスに対するエントリーを系列化しない。すなわち、プレイスが既にオペレーション”entering”を遂行しているということは、エンジンがオペレーション”entering”の遂行を再び要求することを妨げないということである。一方、プレイスは、プレイスが要求するエントリの系列化を供与しなければならない。
注：たとえトリップの出発点（オリジン）と目的地（デスティネーション）とが同一であったとしても、オペレーション”entering”は発生する。
エクシット（Exit）
プロセスは、以下に述べる２つの方法の何れかで、プレイスを”退出（エクシット：exit）”し、プレイスを占有しなくなる。すなわち、エージェントは、トリップの結果としてプレイスを去ることができる。又は、プレイスに存在するプロセスは、そのプレイスに存在する他のプロセス又はプロセス自身を破壊することができる。これら何れの場合にも、エンジン（立ち去ろうとしているエージェントや、破壊されるプロセスではない。）は、プレイスのオペレーション”exiting”を要求する。オペレーション”entering”のアーギュメントとして供給されたものと同じコンタクトが、オペレーション”exiting”のアーギュメントとして供給される。エントリーの場合とは異なり、エクシットが正常終了するか否かは、エクシットは既に生じており、オペレーションの結果に依存しない。
エンジンは、エクシットしようとしているプロセスとプレイスの、互いのアーティファクトへのリファレンスをボイドする。さらに、エンジンは、プロセスをアイソレートする。
エンジンは、プレイスからのエクシットを系列化しない。すなわち、プレイスが既にオペレーション”exiting”を行なっているということは、オペレーション”exiting”を再びエンジンが要求するということを妨げないということである。一方、プレイスは、プレイスが要求するエクシットの系列化を供与しなければならない。
注：たとえトリップの出発点（オリジン）と目的地（デスティネーション）とが同一であっても、オペレーション”exiting”は成立する。
２．５．８  コンタクト（Contacts）
エンジンは、プレイス及びエージェントに対して、それらの占有者及び知人との連絡（コンタクト：contact）の保持において、協力を申し出る。
占有者（Occupants）
プレイスがコンタクトされるオブジェクトでもある場合、
エンジンは、アトリビュートがプレイスの現在の占有者を含み且つそのプレイスの以前の占有者を含まないようにして、プレイスのコンタクトのアトリビュートを保持する。
エンジンは、プロセスがプレイスに進入する時点において、プロセスに対するコンタクトをプレイスのアトリビュートに含め、プロセスがプレイスからエクシットする時点において、プロセスに対するコンタクトをプレイスのアトリビュートから排除する。
知人（Acquaintances）
ペティションされるオブジェクトがコンタクトされるオブジェクトでもある場合、エンジンは、アトリビュートがオブジェクトの現在の知人を常に含み且つ以前の知人を含むことのないように、そのコンタクトのアトリビュートを保持する。
エンジンは、オペレーション”meet”が成功したとき、ペティショニのためのコンタクトを、ペティショナのアトリビュートを含め、オペレーション”meeting”が成功したとき、ペティショナのためのコンタクトを、ペティショニのアトリビュートに含める。
何れかのプロセスがオペレーション”part”又は”partAll”を要求した場合、エンジンは、ペティショナ及びペティショニのアトリビュートからコンタクトを除去する。
２．５．９  サイテション（Citations）
ネットワーク内において、特定のクラスのオブジェクトは、サイテションによって示される。
サイテション（Citations）
”サイテション（citation）”は、オーサー（author）、エディション（edition）及びタイトル（title）によって、０以上の引用されたオブジェクト（cited object）を特定する。ここで、オーサーとエディションは、オプションであり、使用しなくてもよい。また、サイテションは、オーサーのアイデンティティ（author's identity）及びオーサーのオーソリティ（author's authority）によって、オーサを特定する。ここで、オーサーのアイデンティティは、オプションであり、使用しなくてもよい。サイテションが、この３つの特徴のうちのどれかを定義しなかった場合、サイテションは、サイテションが定義した特徴を満たす全ての引用されたオブジェクトを示す。
オーサー（Author）
”オーサー（author）”は、引用されたオブジェクトを生成するプロセスである。したがって、オーサは、テレネームによって特定される。また、タイトルの全てのエディションのオーサは、対等である。
タイトル（Title）
”タイトル（title）”は、相互に対して後方向又は前方向に互換性がある、引用されたオブジェクトの組である。タイトルは、タイトルのオーサーの共通のオーソリティに関連してインタープリートされる識別子によって示される。
エディション（Edition）
”エディション（edition）”は、タイトル内の引用されたオブジェクトの何れかである。エディションは、２つのインテジャにより示される。第１のものは、タイトルに関してインタープリートされ、メジャーエディションを示す。他方は、第１のものに関してインタープリートされ、マイナーエディションを示す。
注：通常、メジャーエディションには１が割り当てられ、マイナーエディションには０が割り当てられる。
割り当てられたサイテション（assiged citation）
”割り当てられたサイテション（アサインドサイテション：assiged citation）”は、オーサー、タイトル、及びエディションによって、１つの引用されたオブジェクトを示し、オーソリティ及びアイデンティティによりオーサーを特定する。これにより、割り当てられたサイテションは、引用されたオブジェクトを、他の全ての引用されたオブジェクトから、すなわち割り当てられたサイテション自身のタイトル中の他の引用されたオブジェクトから、識別する。後述の”テレネーム”についての説明を参照すること。
互換性（コンパティビリティ：Compatibility）
引用されたオブジェクトＯ2は、他の引用されたオブジェクトＯ1に対して以下に述べる場合のみ、”後方向にコンパティブル（backward compatible）”である。すなわち、その場合とは、引用されたオブジェクトの両者がメンバであるクラスにより規定された種類の変更のみをＯ1に対して行なうことにより、Ｏ2を生成することができ、その変更の種類が、プロセスＯ1について書かれたプログラムがＯ2も同様に処理することが確保されるように選定される場合である。また、上述したような場合と同様の条件のもとで、Ｏ1はＯ2に対して”前方向にコンパティブル（forward compatible）”であると言うこともできる。
２．５．１０  テレネーム（Telenames）
ネットワーク内において、特定のクラスのオブジェクトは、テレネームによって示される。
テレネーム（Telename）
”テレネーム（telename）”は、０以上の名前付きオブジェクト（ネームドオブジェクト：named object）を、それらのオーソリティとアイデンティティによって特定する。ここで、特定するオブジェクトが０個になるのは、テレネームが無効の場合である。また、アイデンティティは、オプションであり、使用しなくてもよい。
テレネームがアイデンティティを定義していない場合、テレネームは、特定されたオーソリティーのオブジェクト全てを示す。
オーソリティ（Authority）
名前付きオブジェクトの”オーソリティ（authority）”は、そのオブジェクトに対して責任のあるエンティティ（entity）、例えば人や組織である。オーソリティは、ネットワーク中の他の全てのものから対象のオーソリティを識別する、オクテット文字列によって特定される。
２つのテレネームは、それらが同一のオーソリティを特定する場合のみ、”同等（ピア：peer）”である。
注：オーソリティは、プログラム的にではなく、管理的に生成される。一方、アイデンティは、プログラム的にも管理的にも生成される。
アイデンティティ（Identity）
名前付きオブジェクトの”アイデンティティ（identity）”は、名前付きオブジェクト自身を示している。アイデンティティは、オーソリティと同様に、オクテット文字列によって、ネットワーク中の他の全てのものからアイデンティティを識別する。
注：オーソリティ又はアイデンティティを示すオクテット文字列は、通常は人には意味が分からないようになっている。インストラクションセットは、どのようにオクテット文字列を割り当てるかについては、定義しない。
割り当てられたテレネーム（assigned Telenames）
”割り当てられたテレネーム（アサインドテレネーム：assigned tekename）”は、オーソリティ及びアイデンティティにより、１つの名前付きオブジェクトを正確に示す。
２．５．１１  テレアドレス（Teleaddress）
ネットワーク中において、プレイスは、テレアドレスによって位置が定められる。”ネットワーク（network）”は、全てのエンジンプレイスを含み、１以上のリージョンに区分される。”リージョン（region）”は、特定のオーソリティによって、操作又は提供される１以上のエンジンプレイスである。
テレアドレス（teleaddress）
”テレアドレス（teleaddress）”は、０以上のプレイスを、そのリージョンとロケーションによって特定する。具体的に言うと、テレアドレスは、０以上のプレイスを、０以上のプレイスのロケーションにより特定する。
テレアドレスがロケーションを定義していない場合、テレアドレスは、特定されたリージョン内の全てのプレイスを示す。
リージョン（Region）
プレイスの”リージョン（region）”は、そのプレイスを含むリージョンである。リージョンは、オーソリティと同様に（上述の”テレネーム”についての説明を参照）、ネットワーク中の他の全てのものから対象のリージョンを識別する、オクテット文字列によって特定される。
ロケーション（Location）
プレイスの”ロケーション（location）”は、プレイスのリージョンのオーソリティによって選択されたプレイスの情報である。ロケーションは、リージョン内の他の全てのものから対象のリージョンを識別する、文字列によって特定される。
リージョン内の２つのプレイスは、同一のロケーションを持つことができる。
注：プレイスのロケーションは、例えば、その基となってるコンピュータ・システムである場合もある。
注：ロケーションを示す文字列は、必ずしも必要ではないが、人に対して意味があるようにすることができる。インストラクションセットは、どのようにその文字列を割り当てるかを定義しておらず、一般に、その割り当ては、リージョン毎に異なる。
ルーティングアドバイス（Routing Advice）
テレアドレスは、必ずしも必要ではないが、テレアドレスが示すプレイスに対するエージェントのルーティングに関するアドバイスを与えることができる。テレアドレスは、エージェントが通るであろう１以上のリージョンを提示することにより、ルーティングに関するアドバイスを与える。
このような、”ルーティングアドバイス（routing advice）”が無い場合、例えばプレイスがエージェントのソースから非常に離れている場合、ネットワークは、エージェントをプレイスに移動させることができない場合がある。
割り当てられたテレアドレス（Assigned Teleaddress）
”割り当てられたテレアドレス（アサインドテレアドレス：assigned teleadress）”は、リージョン内において、１以上のプレイスをそのリージョン及びロケーションにより特定する。ここで、１以上のプレイスとなるのは、いくつかのプレイスは、同じロケーションを持つことができるからである。
２．５．１２  相互変換（Interchange）
”相互変換されるオブジェクト（インターチェンジドオブジェクト：interchenged object）”は、そのオブジェクトのオーナーがオブジェクトを随伴するトリップを行なう場合にはいつでも、例えば目的において検出される、同等のオブジェクトに、ネットワークが置き換えることができる不変のオブジェクトである。ここで、相互変換されるオブジェクトはダイジェストを持っている。また、この置き換えは必ずしも必要ではない。なお、ダイジェストに関しては後述する。
注：相互変換されるオブジェクトは、目的地等で検出される同等のオブジェクトに置き換えられるので、エンジンは、相互変換されるオブジェクトを物理的に搬送することを避けることができる。これにより、オペレーション”go”及び”send”の遂行が効率的になる。
注：クラス及びパッケージは、相互変換されるオブジェクトである。
ダイジェスト（Digests）
相互変換されるオブジェクトは、ダイジェストが相互変換されるオブジェクトのものと同等であるオブジェクトのクラスの他のインスタントと同等であると見なされる。”ダイジェスト（digest）”は、この目的に適した、ニル（０）以外のオブジェクトである。例えば、ダイジェストは、相互変換されるオブジェクトを示す標準的な２進数の数学的ハッシュ（hash）でもよい。
注：相互変換されるオブジェクトは、オブジェクトがダイジェストよりも大きい場合のみ、オペレーション”go”及び”send”の遂行が効果的に行われるようにする。
２．６  タイムキーピング・モデル（Timekeeping Model）
インストラクションセットは、本セクションが定義する”タイムキーピングモデル（timekeeping model）”を実現する。
タイムキーピング（計時）は、”タイム（time）”と”カレンダータイム（calendar time）”２つの方法で行うことができる。タイム又はカレンダータイムは、日付及び時間を同様にして特定するが、他の点では異なっている。
注：タイムとカレンダータイムは相互に変換することができる。
注：エンジンは、タイムの方が”カレンダータイムよりもよりコンパクトに内部的に表現することができる。したがって、一般に、日付及び時間を保存したり転送したりする場合、タイムのほうが適している。
２．６．１  タイム（Time）
”タイム（time）”は、協定世界時間（ＵＴＣ：Coordinated Uneversal Time）を用いて、１秒単位で日付と時間を特定する。また、タイムは、計測された時間帯（time zone）を特定し、サマータイム（ＤＳＴ：Daylight Savings Time）等が使用されている場合には、その影響も考慮する。
注：ＵＴＣとは、グリニッヂ標準時間（ＧＭＴ：Greenwich Mean Time）として知られているものである。
２．６．２  カレンダータイム（Calendar Time）
”カレンダータイム（calender time）”は、時間の全ての情報、及びその他の情報を有する。特に、カレンダータイムは、一日の「時」、「分」、「秒」を検出し変更するようにしている。さらに、カレンダータイムは、グレゴリー暦の「月」、「日」を表す。また、カレンダータイムは、「曜日」や「年」も表す。さらに、ＵＴＣからの時間の一定のずれと、季節による時間のずれとを「分」で表す。ここで、季節による時間のずれがある場合は、サマータイム等の時である。
ノーマリティ（Normality）
通常、カレンダータイムは、定められた範囲内に整数として、アクセス可能な日付及び時間に関する情報を作成する。「時間」として、「時」が［０，２４］の範囲内、「分」が［０，６０］の範囲内、「秒」が［０，６０］の範囲内で表わされる。「秒」は、閏秒を考慮するために、［０，６０］の範囲内、すなわち６１種類の数値で表わされる。例えば、「１９９３年」は整数「１９９３」で表され、その年の「月」は［１，１２］の範囲内で表され、その月の「日」は［１，３１］の範囲内で表される。また、その「日」の「曜日」は、「日曜」、「月曜」、「火曜」、「水曜」、「木曜」、「金曜」及び「土曜」をそれぞれ示す数字「１」、「２」、「３」、「４」、「５」、「６」及び「７」で表される。さらに、また１年における「日」は［１，３６６］の範囲内で表される。一定のずれ及び季節的なずれは、何れも［−７２０，７２０］の範囲内で表される。
注：整数はＡ．Ｄ．（紀元後）を表し、負数はＢ．Ｃ．（紀元前）を表す。
アブノーマリティ（Abnormrity）
カレンダータイムでは、通常に表される日付けの範囲外の整数値で表される場合がある。例えば、カレンダータイムでは、「９月３２日」と日付を表す場合があり、この場合、通常の日付けでは「１０月２日」を示していることとなる。このような異常な数値は、効率的な方法で、例えば、上述のような場合、その月のその日に「２」を加えてカレンダータイムを操作することにより生じる。このような場合は、カレンダータイムが正確であるかを考慮する前に、除去されていなければならない。したがって、上述のような場合には、カレンダータイムは、以下の正常化処理によって正常に戻される。
正常化（Normalization）
カレンダータイムは、後述のステップによって、”ノーマライズ（正常化）”される。第１のステップでは、カレンダータイムにおける如何なる情報もニル（０）でありうることを考慮している。
デフォールト（Defauts）
・  「時」、「分」又は「秒」がニル（０）の場合には、「時」、「分」又は「秒」は「０」とされる。また、「年」、「月」又は「日」がニル（０）の場合には、「年」、「月」又は「日」も「０」とされる。また、一定のずれ又は季節的なずれがニル（０）の場合には、一定のずれ又は季節的なずれは、現在の時間を表す正常化されたカレンダータイムのものとされる。
時間のずれ（Offsets）
・  一定のずれ又は季節的なずれは、オフセットを２４×６０、すなわち整数１４４０で、割算することによって得られた剰余結果を、［−７２０，７２０］の範囲内の数値に置き換えられたものである。
時間（Time）
・  「秒」は、数値「６０」までを繰り返し加算又は減算し、６０秒単位で「分」に１を加算又は減算することにより、正常な範囲内に置かれる。「分」は、数値「６０」までを繰り返し加算又は減算し、６０分単位で「時」に１を加算し又は減算することにより、正常な範囲内に置かれる。「時」は、数値「２４」までを繰り返し加算又は減算し、２４時間単位で「日」に１を加算又は減算することにより、正常な範囲内に置かれる。
日付（Date）
・  「月」は、数値「１２」までを繰り返し加算又は減算し、１２月単位で「年」に１を加算又は減算することにより、正常な範囲内に置かれる。「日」は、Ｋに１を加算又は減算し、Ｋ日単位で「月」に１を加算又は減算することにより、［１，Ｋ］の範囲内に置かれる。ここで、Ｋは、対象となる「年」の「月」の日数である。１の加算又は減算によって「日」が所定の範囲に置かれない場合には、この全体のステップを再び行なう。換言すると、「月」は、再び「日」を調整する前に、上述したようにして調整される。
日（Days）
・  「曜日」や、１年における「日」についても、適切にセットされる。
ローカライズ（Localize）とグローバライズ（Globalize)
カレンダータイムは、特定の絶対的な時間を変えることなく、他の一定のずれ又は季節的なずれ修正することができる。カレンダータイムのずれが現在のプレイスのものとして作られた場合、カレンダータイムは”地域化（ローカライズ：localized）”される。また、カレンダータイムのずれがＵＴＣのずれとして作られた場合、カレンダータイムは”全域化（グローバライズ：globalize）”される。
２．７  パターンマッチングモデル（Pttern Matching Model）
インストラクションセットは、本セクションが定義する”パターンマッチングモデル（pattern matching model）”を実現する。
２．７．１  パターン（Patterns）
”パターン（pattern）”は、文字列を解析する手段である。パターンの”テキスト（text）”（これ自体文字列である。）は、ストリングがパターンにマッチ（match）するかを判断する基準を規定する。
パターンのテキストは、後述するような構文的な規則やそれに付随する意味上の規則に従う一連のトークンである。
ここで、規則は、例えば、任意選択字句（オプショナルトークン：optional token）を角括弧（”［”及び”］”）で囲む、バッカス・ナウア形式（ＢＮＦ：Backus-Naur又はBackus Normal Form）において与えられる。また、パターンのテキストを記述する上でＢＮＦに従ったものであるのか、又は特別なテキストのメタキャラクタであるのかを識別するために、引用符（’”’）によって、垂直バー（”｜”）、左角括弧（”［”）、及び、右角括弧（”］”）を囲む。
パターンのテキストの各トークンは、０以上のキャラクタである。テキストは、トークン、すなわちキャラクタを連結することにより得ることができる。
２．７．２  構造（Structure）
パターン（Pattern）
パターン、すなわち、そのテキストは、次の規則に従うものとする。
0003723572.tif 000006
文字列（ストリング：string）は、その代替物（オールタナティブ：alternatibu）に一致（マッチ：matche）している場合にのみ、パターンと一致する。
オールタナティブ（Alternative）
オールタナティブは、次の規則に従う。
0003723572.tif 000007
ストリングは、間にギャップの無い連続するサブストリングがオールタナティブの連続するコンポーネントと一致する場合にのみ、オールタナティブに一致する。オールタナティブが、脱字記号（”＾”）で始まる場合、又はドルマーク（”＄”）で終わる場合、一連のサブストリングは、それぞれ、ストリングの最初又は終わりにおいて開始又は終了しなければならない。
コンポーネント（Component）
コンポーネントは、次の規則に従う。
0003723572.tif 000008
アスタリスク（”＊”）が表れたときは、コンポーネントが、０以上のサブストリング（それぞれがアイテムに一致している）を含んでいる場合にのみ、プラス符号（”＋”）が表れたときは、コンポーネントが、１以上のそのようなサブストリングを含んでいる場合にのみ、疑問符（”？”）が表れたときは、コンポーネントが、そのアイテムに一致しているか、消されている場合にのみ、又は、これら以外のときはそのアイテムが一致している場合にのみ、ストリングは、コンポーネントに一致する。
アイテム（Item）
アイテムは、次の規則に従う。
0003723572.tif 000009
ストリングは、アイテムが規定しているパターン、キャラクタクラス、又はキャラクタの何れかに一致する場合にのみ、アイテムに一致する。
キャラクタクラス（CharacterClass）
キャラクタクラスは、次の規則に従う。
0003723572.tif 000010
ストリングは、キャレット（＾）が存在しておらず、且つキャラクタアイテムのリストに一致する場合にのみ、キャラクタクラスに一致する。
キャラクタアイテム（CharacterItems）
キャラクタアイテムのリストは、次の規則に従う。
0003723572.tif 000011
ストリングは、ストリングの連続するサブストリング間にギャップが無く、リスト中の連続するキャラクタアイテムとマッチする場合にのみ、キャラクタアイテムのリストに一致する。一連のサブストリングは、ストリングの開始点で開始され、終了点で終了しなければならない。
キャラクタレンジ（CharacterRange）
キャラクタレンジは、次の規則に従う。
0003723572.tif 000012
ストリングが、１番目のキャラクタの後に１つのキャラクタを含み、又は１番目のキャラクタと等しい１つのキャラクタを含み、且つ、２番目のキャラクタの前に１つのキャラクタを含み、又は２番目のキャラクタと等しい１つのキャラクタを含む場合にのみ、ストリングは、キャラクタレンジに一致する。
キャラクタ（Character）
キャラクタは、次の規則に従う。
0003723572.tif 000013
ストリングは、ピリオド（”．”）が存在しているときには、ある１つのキャラクタのどれかを含んでいる場合にのみ、逆スラッシュ（”＼”）が存在しているときには、メタキャラクタを含んでいる場合にのみ、又はその他のときに、そのキャラクタを含んでいる場合のみ、キャラクタに一致する。
注：これにより、逆スラッシュ（”＼”）がメタキャラクタの直前にある場合には、メタキャラクタの特定な意味合いは避けられる。
２．７．３  他の非ターミナル（Other Non Terminals）
キャラクタ（Character）
メタキャラクタ以外のクラス”Charactor”のインスタンスである。
メタキャラクタ（Metacharacter）
メタキャラクタ（metacharacter）である。
２．７．４  メタキャラクタ（Metacharacters)
パターンのテキストは、メタキャラクタを含むことができる。メタキャラクタは、テキストを支配するセマンティックなルール、すなわち意味付けされたルールに含まれる特別な意味を有する。メタキャラクタは、表Ａ．５に示すキャラクタ、及びキャラクタのテレスクリプトのストリングトークンに示されたもの、例えばバックスペースである。
0003723572.tif 000014
３．  テレスクリプトクラスの概観
オブジェクト指向されたインストラクションセットは、アペンディックスＡの本セクションにおいて概観が示される定義済みクラスを含む。これらのクラスは、後述するように複数のグループに分けられる。サブセクションは、各グループに委ねられている。各サブセクション内において、サブセクションは、グループ内の各クラスに委ねられている。
インタープリートされるインストラクションセットは、例えば制御フローのための、ステートメント形式を規定するのではなく、むしろ、そのクラスのオペレーションに依存する。したがって、インストラクションセットの意味は、定義済みクラスの意味であることが多々ある。
３．１  グループ（Groups）
インストラクションセットの定義済みクラスは、カーネルと呼ばれる複数のグループに分けられる。この分割は、教育的な目的のみに用いられるものであり、カーネル以外のグループにおけるクラスがカーネルにより実行されることを示すものではなく、また、エンジンがカーネルのクラスを実行するが他のグループのものは必ずしも実行しなくてもよいことを示すものでもない。
以下のグループが規定されている。
カーネル（Kernel）
このグループは、基本的な機械言語、例えば、クラス、オブジェクト、リファレンス、プロシージャ、実行及びエクセプションを供与する。
プリミティブ（Primitives）
このグループは、不可分な情報の基本的な形式、例えば、ブーリアン、オクテット、ナンバ、キャラクタ及びタイムを供与する。
コレクション（Collections）
このグループは、複合情報の基本的な形式、例えば、セット、リスト、スタック、ストリング及びディクショナリを供与する。
クラス定義（Class Definition）
このグループは、クラス定義の基本的な構成要素、例えば、インタフェース、アトリビュート、オペレーション、インプリメンテーション及びメソッドを供与する。
特定化（アイデンティフィケーション：Identification）
このグループは、名前付け（ネーミング：naming）及びアドレス設定（アドレッシング：addressing）について、例えば、テレネーム及びテレアドレスを供与する。
プロセス（Processes）
このグループは、マルチタスクについて、例えば、プロセス、パーミット、リソース及びコンタクトを供与する。
エージェント（Agents）とプレイス（Place）
このグループは、ネットワーク内のプロセスの移動について、例えば、プロセス、エージェント及びチケットを供与する。
ミーティング（Meeting）
このグループは、ネットワークのノード内のプロセス相互作用について、例えば、ミーティングプレイス及びペティションを供与する。
その他（Miscellaneous）
このグループは、様々なことについて、例えば、乱数発生器（ランダムナンバジェネレータ：random number generator）及びパターンマッチャ（pattern matcher）を供与する。
以下、上記した順序で各グループについて説明する。各グループ内のクラスは、アルファベット順で示される。
３．２  カーネルグループ（Kernel Group）
0003723572.tif 000015
３．２．１  クラス（Class）
オペレーション（Operations）
0003723572.tif 000016
”クラス（class）”は、クラスのインスタンスであるオブジェクトのセットを定義する不変のオブジェクトである。
クラスの固有のオペレーションは、オペレーション”new”により、新しいインスタンスを生成したり、オペレーション”convert”により、他のクラスのインスタンスをそのクラスのインスタンスに変更したり、オペレーション”isInstance”により、オブジェクトがインスタンスであるかを示したり、オペレーション”isMember”により、オブジェクトがメンバであるかを示したり、オペレーション”isSubclass”により、他のクラスが現在のクラスのサブクラスであるか否かを示したりする。
３．２．２  コンストレインド（Constrained）
アトリビュート（attributes）
0003723572.tif 000017
”コンストレインドオブジェクト（constrained objict）”は、そのオブジェクトがメンバである他のクラスによって特定されたプロパティのそれらに対してコンストレイントを強いる。
コンストレインドオブジェクトの固有のアトリビュートは、コンストレイントである（アトリビュート”constraint”）。
注：コンストレインドディクショナリ、リスト及びセットは、コンストレインドオブジェクトである。
３．２．２  コンストレイント（Constraint）
アトリビュート（Attributes）
0003723572.tif 000018
”コンストレイント（constraint）”は、他のオブジェクトの制約を定義するオブジェクトである。
コンストレイントの固有のアトリビュートは、コンストレイントのサブジェクトがメンバとなるであろうクラスの識別子（アトリビュート”classld”）と、そのクラス自身（アトリビュート”ofClass”）と、サブジェクトがクラスのインスタンスとなるか否か（アトリビュート”isInstance”）と、サブジェクトがニル（０）であるか否か（アトリビュート”isOptional”）と、サブジェクトのパッセージ（アトリビュート”passage”）とである。
３．２．４  エクセプション（Exception）
オペレーション（Operations）
0003723572.tif 000019
”エクセプション（exception）”は、実行又は遂行の異常終了を示すオブジェクトである。
エクセプションの固有のオペレーションは、エクセプションを送出する（オペレーション”throw”）。
３．２．５  エグゼキューテッド（Executed）
オペレーション（Operations）
0003723572.tif 000020
”実行オブジェクト（excuted object）”は、プロシージャのアイテムとして許可される。
実行オブジェクトの固有のオペレーションは、（ｉ）オペレーション”do”により、１回だけ、（ｉｉ）オペレーション”catch”により、一定のエクセプションを１回キャッチすることを、（ｉｉｉ）オペレーション”if”により、予め定められた条件が充たされた場合にのみ、（ｉｖ）オペレーション”repeat”により、ある一定の回数だけ、（ｖ）オペレーション”loop”により、不定の回数だけ、又は（ｖｉ）オペレーション”while”により、他の実行オブジェクトの遂行が指示する回数だけ、実行オブジェクトを遂行する。さらに、他のオペレーションは、２つの実行されるオブジェクトのうち何れかを実行すべきかを定める（オペレーション”either”）。
注：クラス”Primitive”の定義済みコンクリートサブクラスのインスタンスは、クラス”Constrained List”の定義済みサブクラスと同様に、実行オブジェクトである。
３．２．６  実行エクセプション（Execution Exception）
”実行エクセプション（execution exception）”は、エンジンがプロシージャのアイテムを実行できないことを示すカーネルエクセプションである。
このクラスの定義済みサブクラスの中には、”内部エクセプション（Internal exception）”がある。この”内部エクセプション（Internal exception）”のメンバは、エンジンが、インストラクションセットのある部分の実行に失敗したことを示す。理想的なエンジンでは、このようなエクセプションは送出されないが、実際のエンジンでは、このようなエクセプションが送出される。実際のエンジンでは、例えば、２つの整数の和がエンジンにとって内部的に有効に表すには大きすぎるとき等に、エクセプションが送出される。
３．２．７  識別子（Identifier）
”識別子（アイデンティファイア：identifier）”は、特定のコンテキストにおいて、任意のオブジェクトを他のオブジェクトから識別するプリミティブ（基本要素：primitive）である。
３．２．８  カーネルエクセプション（Kernel Exception）
”カーネルエクセプション（kernel exception）”は、本セクションのクラスのメンバによって送出されるプログラミングエクセプション（programming exception）である。
３．２．９  マーク（Mark）
”マーク（mark）”は、１つの可能な値を伴ったプリミティブである。マークは、一連のオブジェクトを区分するために使用され、通常はスタックの一番上のものに使用される。
３．２．１０  モディファイヤ（Modifier）
”モディファイヤ（modifier）”は、”demarcate”、”getClass”、”getProperty”、”getVariable”、”mention”、”setAttribute”、”setProperty”、”setVariable”及び”useStack”の可能な値を伴ったプリミティブである。モディファイヤは、プロシージャにおいて、モディファイヤの直後に存在するアイテムの実行を変えるために用いられる。
３．２．１１  ニル（Nil）
”ニル（０：nil）”は、１つの可能な値を伴ったプリミティブである。ニル（０）は、クラスのメンバが、例えばスタック上に、存在しないことを示すために用いられる。
３．２．１２  オブジェクト（Object）
アトリビュート（Attributes）
0003723572.tif 000021
オペレーション（Operations）
0003723572.tif 000022
内部オペレーション（Internal Operations）
0003723572.tif 000023
”オブジェクト（object）”は、情報（information）及び情報処理（information processing）の両方から成る、インストラクションセットのユニットである。また、オブジェクトは、クラスのインスタンスである。
オブジェクトの固有のアトリビュートは、それのクラス（”class”）及びそれのサイズ（”size”）である。
オブジェクトの固有のオペレーションは、そのオブジェクトを初期化したり（オペレーション”initialize”）、そのオブジェクトを最終化したり（オペレーション”finalize”）、そのオブジェクトが他のオブジェクトに等しいか否かを判断したり（オペレーション”isEqual”）、幾つかのオブジェクトのうちのどれが前者のオブジェクトと等しいかを判断して、そのオブジェクトと対をなしてその実行オブジェクトを遂行したり（オペレーション”select”）、そのオブジェクト分かれてはいるが同一である、そのオブジェクト自身のコピーを生成したりする（オペレーション”copy”）。
オブジェクトは、幾つかの内部的フィーチャを有する。内部的フィーチャは、システムフィーチャであり、このシステムフィーチャは、クラス”object”によってシールされ、さらに、クラス”object”のユーザ定義サブクラスに固有のフィーチャが、同一の識別子を有することを妨げるものではない。
したがって、内部的フィーチャは、仮想的なものである。オブジェクトの唯一の目的は、インストラクションセットの定義、特にその実行モデルについて、簡略化することである。
オブジェクトの内部的オペレーションは、オブジェクトのクラスのインプリメンテーション及びインタフェースにおいて使用される識別子を、実行時に、オブジェクトにバインドする。したがって、オブジェクトは、以下のことができる。すなわち、（ｉ）ある識別子が示すそれ自身のアトリビュートを、オペレーション”getAttribute”により取得、又はオペレーション”setAttribute”により設定する。（ｉｉ）ある識別子が示すそれ自身のプロパティを、オペレーション”getProperty”により取得、又はオペレーション”setProperty”により設定する。（ｉｉｉ）ある識別子が示す変数を、オペレーション”getVariable”により取得、又はオペレーション”setVariable”により設定する。又は、（ｉｖ）オペレーション”getClass”により、識別子が示すクラスを特定しロケート（locate）する。
３．２．１３  パッケージ（Package）
”パッケージ（package）”は、クラスのコンストレインドされたセットである。さらに、パッケージは、引用されたオブジェクトであり、パッケージが含む各クラスの同等なものである。
１つのパッケージは、以下に述べるような変更だけで、そのパッケージが他のパッケージから生成できる場合にのみ、他のパッケージに対して後方向に互換性がある。その変更とは、第１に、新しいクラスが付加すること、第２に、現存のクラスは、その現存のクラスと後方向に互換性があるクラスに置き換えることである。
３．２．１４  プロシージャ（Procedure）
”プロシージャ（procedure）”は、実行オブジェクトの順序付けられたセットを含むプリミティブである。
３．２．１５  プログラミングエクセプション（Programming Exception）
”プログラミングエクセプション（programming exception）”は、フィーチャの遂行において、プログラミングエラーが生じたことを示すエクセプションである。
３．２．１６  有資格識別子（Quarified Identifier）
”有資格識別子（quarified identifier）”は、フィーチャ及びクラスを示す識別子である。ここで、そのフィーチャのインプリメンテーションは、そのクラスに固有であるか又は継承されている。
３．２．１７  リファレンスド（Referenced）
アトリビュート（Attributes）
0003723572.tif 000024
オペレーション（Operations）
0003723572.tif 000025
”参照されるオブジェクト（リファレンスドオブジェクト：referenced object）”は、そのオブジェクトに対するリファレンスを取得することができるオブジェクトである。リファレンスドオブジェクトのフィーチャは、そのオブジェクト自身ではなく、それらを要求するのに使われるリファレンスを操作する。
リファレンスドオブジェクトの固有のアトリビュートは、リファレンスが保護されているか否かを明らかにする（アトリビュート”isProtected”）。リファレンスドオブジェクトの固有のオペレーションは、そのオブジェクトに対する新しいリファレンスを生成したり（オペレーション”ref”）、所望するならばそれを保護したり（オペレーション”protect”）、現存のリファレンスを廃棄したり（オペレーション”discard”）、２つのリファレンスが同一のオブジェクトに対するものであるか否かを検査したりする（オペレーション”isSame”）。
注：全てのオブジェクトは、リファレンスドオブジェクトである。このとき、現在のクラスは、純粋に教育的な理由によって定義される。
３．２．１８  セレクタ（Selector）
”セレクタ（selector）”は、”break”、”client”、”continue”、”escalate”、”here”、”process”、”self”及び”succeed”の可能な値を伴ったプリミティブである。セレクタは、特別な実行結果を得るために用いられる。
３．２．１９  変更されない（Unchanged）
”変更されないオブジェクト（アンチェインジドオブジェクト：unchanged object）”は、変更させることはない。”変更されない（unchanged）”ということは、アンチェインジドオブジェクトがメンバである他のクラスに依存している。また、アンチェインジドオブジェクトは、”不変なオブジェクト（immutable object）”と呼ばれる場合がある。
注：”クラス”Class””exception”、”packege”、”primitive”及び”time”のメンバは、不変である。
３．２．２０  予想されないエクセプション（Unexpected Exception）
アトリビュート（Attributes）
0003723572.tif 000026
”予想されないエクセプション（unexpected exception）”は、フィーチャが明らかではないクラスのエクセプションを送出したことを示す実行エクセプションである。
予想されないエクセプションの固有なアトリビュートは、明らかにされていないエクセプションである（アトリビュート”exception”）。
３．２．２１  検査（Verified）
オペレーション（Operations）
0003723572.tif 000027
”検査されるオブジェクト（verified object）”は、そのオブジェクトがメンバである他のクラスに依存する１以上の方法で内部的に不一致することができる。
検査されるオブジェクトの固有のオペレーションは、オブジェクトが内部的に一致するか否かを示す（オペレーション”verify”）。
注：セットは、検査されるオブジェクトである。
３．３  プリミティブグループ（Primitive Group）
0003723572.tif 000028
３．３．１  ビット（Bit）
”ビット（bit）”は、２つの可能な値、すなわち”０”及び”１”とを伴ったプリミティブである。
３．３．２  ブーリアン（boolean）
オペレーション（Operations）
0003723572.tif 000029
”ブーリアン（boolean）”は、２つの可能な値、すなわち”偽（false）”と、”真（true）”とを伴ったプリミティブである。
ブーリアンの固有のオペレーションは、論理積（オペレーション”and”）、論理和（オペレーション”or”）及び論理否定（オペレーション”not”）を可能にする。
３．３．３  ケースド（Cased）
アトリビュート（Attributes）
0003723572.tif 000030
オペレーション（Operations）
0003723572.tif 000031
”ケースド（cased）”オブジェクトは、キャラクタ情報を含む。このようなキャラクタ情報、すなわちケースドオブジェクト自身は、英大文字（アッパーケース：upper-case）、小文字（ロウアーケース：lower-case）、又はそれらを混合して含むことができる。
ケースドオブジェクトの固有のアトリビュートは、キャラクタ情報が英小文字であるか（アトリビュート”isLower”）、又はキャラクタ情報が英大文字であるか（アトリビュート”isUpper”）を示す。
ケースドオブジェクトの固有のオペレーションは、そのオブジェクトと同等で全て英小文字のものを生成したり（オペレーション”makeLower”）、そのオブジェクトと同等で全て英大文字のものを生成したりする（オペレーション”makeUpper”）。
注：２つのケースドオブジェクトは、オペレーション”makeLower”又はオペレーション”makeUpper”と組合せてオペレーション”isEqual”を使用することにより、それらの大小文字に関わりなく、比較することができる。
注：キャラクタとストリングは、ケースドオブジェクトである。
３．３．４  キャラクタ（Character）
”キャラクタ（character）”は、可能な値がユニコード［Unicode］のキャラクタであるプリミティブである。
３．３．５  インテジャ（Integer）
オペレーション（Operations）
0003723572.tif 000032
”インテジャ（integer）”は、ナンバ（number）であり、このナンバも整数である。
インテジャの固有のオペレーションは、整数の除算を行い、リザルトとして商（オペレーション”quotient”）又は剰余（オペレーション”modulus”）を生成する。
注：本質的に、エンジンは、有限な精度でのみ整数を表すことができる。したがって、全ての整数が、必ずしもこのクラスのインスタンスであるとは限らない。
３．３．６  ナンバ（Number）
オペレーション（Operations）
0003723572.tif 000033
”ナンバ（number）”は、基本的な演算操作を可能にするプリミティブである。
ナンバの固有のオペレーションは、加算（オペレーション”add”）、減算（オペレーション”subtruct”）、掛算（オペレーション”multiply”）、除算（オペレーション”divide”）、符号反転（オペレーション”negate”）、絶対値（オペレーション”abs”）、丸め（オペレーション”round”）、切捨て（オペレーション”turncate”）、最小値（オペレーション”floor”）及び最大値（オペレーション”ceiling”）の機能を遂行する。
３．３．７  オクテット（Octet）
”オクテット（octet）”は、８ビットから成るプリミティブである。リファレンスの目的のために、そのビットは、ビット［７］からビット［０］で示される。
３．３．８  オーダー（Ordered）
オペレーション（Operations）
0003723572.tif 000034
”オーダーオブジェクト（ordered object）”は、メンバを他のメンバと同じ所に、他のメンバの前に、又は他のメンバの後に配することにより、各メンバが順序付けされることが可能なクラスのメンバである。ここで、”前”及び”後”の意味は、そのクラスに依存する。
オーダーオブジェクトの固有のオペレーションは、このようなオブジェクトが他のオブジェクトの前にあるか（オペレーション”isBefore”）又は後にあるか（オペレーション”isAfter”）を示したり、２つのオブジェクトの何れのオブジェクトが最小（オペレーション”min”）又は最大（オペレーション”max”）であるかを示したりする
注：２つのオーダーオブジェクトが一致しているか否かは、オペレーション”isEqual”により示される。
注：多くのクラスのインスタンスは、オーダーオブジェクトである。
３．３．９  プリミティブ（Primitive）
”プリミティブ（primitive）”は、インストラクションセットプリミティブ（インストラクションセットの基本要素：Instruction Set primitive）であるオブジェクトである。
注：全てのインストラクションセットプリミティブが、このクラスのメンバであるわけではない。
３．３．１０  プリミティブエクセプション（Primitive Exception）
”プリミティブエクセプション（primitive exception）”は、本セクションのクラスのメンバによって送出されたプログラミングエクセプションである。
３．３．１１  テレナンバ（Telenumber）
アトリビュート（Attributes）
0003723572.tif 000035
”テレナンバ（telenumber）は、国際電話ネットワークにおいて、電話機のアドレスを与えるオブジェクトであり、すなわち電話番号である。
テレナンバの固有のアトリビュートは、電話機が置かれている国のコード（アトリビュート”country”）、その国が電話機に与えるナンバ（アトリビュート”telephone”）、及び電話機に内線等がある場合には、その電話機の内線コード（アトリビュート”extension”）である。
３．３．１２  タイム（Time）
オペレーション（Operations）
0003723572.tif 000036
”タイム(time）”は、ＵＴＣを用いて、１秒単位で日付及び時間を特定するオブジェクトである。タイムは、計測された時間帯を記録し、さらに、もしあるならば、その時点におけるＤＳＴについても記録する。
時間の固有のオペレーションは、秒数により時間を調節したり（オペレーション”adjust”）、ある時間と他の時間との時間間隔を与えたりする（オペレーション”interval”）。
３．４  コレクショングループ（Collection Group）
0003723572.tif 000037
３．４．１  アソシエーション（Association）
アトリビュート（Attributes）
0003723572.tif 000038
”アソシエーション（association）”は、１つのオブジェクトであり、このオブジェクトは、１つのオブジェクトの”key”と”value”である２つのオブジェクトを含む。
アソシエーションの固有のアトリビュートは、それのキー（アトリビュート”key”）及びそれの値（アトリビュート”value”）である。
注：アソシエーションは、ディクショナリを生成するために用いられる。
３．４．２  ビットストリング（Bit String）
”ビットストリング（bit string）”は、クラス”bit”のインスタンスをアイテムとするコンストレインドリストである。
３．４．３  コレクション（Collection）
アトリビュート（Attributes）
0003723572.tif 000039
オペレーション（Opearations）
0003723572.tif 000040
”コレクション（collection）”は、順序付けされていない０以上のオブジェクトのセットを含んでいる１つのオブジェクトである。ここで、０以上のオブジェクトは、コレクションのアイテムであり、そのプロパティ内にある。コレクションの”レングス（length）”は、コレクションのアイテムの数である。コレクションは、レングスがゼロの時にクリア（”clear”）されている。クラス”collection”のサブクラスは、そのメンバのアイテムを制限することができる。
コレクションの固有のアトリビュートは、コレクションのレングスである（アトリビュート”length”）。
コレクションの固有のオペレーションは、新しいアイテムとしてオブジェクトを含ませたり（オペレーション”include”）、現存しているアイテムを排除したり（オペレーション”exclude”）、現存している全てのアイテムを排除したり（オペレーション”clear”）、アイテムの点検のための準備をしたり（オペレーション”examine”）、コレクションのアイテムをアイテムとするストリーム（stream）を生成したりする（オペレーション”stream”）。
注：コレクションのレングスは、無制限である。
３．４．４  コレクションエクセプション（Collection Exception）
”コレクションエクセプション（collection exception）”は、本セクションのクラスのメンバにより送出されたプログラミングのエクセプションである。
３．４．５  コンストレインドディクショナリ（Constrained Dictionary）
”コンストレインドディクショナリ（constrained dictionary）”は、コンストレイントを用いてキーが制限されたディクショナリである。ここで、単一のコンストレイントは、全ディクショナリを管理している。
３．４．６  コンストレインドリスト（Constrained List）
”コンストレインドリスト（constrained list）”は、コンストレイントを用いてアイテムが制限されたリストである。ここで、単一のコンストレイントは、全リストを管理している。
３．４．７  コンストレインドセット（Constrained Set）
”コンストレインドセット（constrained set）”は、コンストレイントを用いてアイテムが制限されたセットである。ここで、単一のコンストレイントは、全セットを管理している。
３．４．８  ディクショナリ（Dictionary）
オペレーション（Operations）
0003723572.tif 000041
”ディクショナリ（dictionary）”は、アソシエーション（association）をアイテムとするセットである。クラス”dictionary”のサブクラスは、そのメンバのキー、値、又はそれら両者を、制限することができる。
ディクショナリの固有のオペレーションは、新しいアイテムとして、あるキーとある値との間のアソシエーションを含ませたり（オペレーション”add”）、あるキーについてのアソシエーションを排除したり（オペレーション”drop”）、あるキーに組み合わされた値を検出したり（オペレーション”get”）、あるキーに組み合わされた値を設定したり（オペレーション”set”）、ある値に組み合わされたキーを検出したり（オペレーション”find”）、あるキーを他のキーに置換したり（オペレーション”rekey”）、２つのキーを転置したりする（オペレーション”transpose”）。
３．４．９  ハッシュド（Hashed）
アトリビュート（Attributes）
0003723572.tif 000042
”ハッシュド（hashed）”オブジェクトは、ハッシュファンクションで定義されている他のクラスのメンバである。そのクラスの各メンバは、メンバ自身のハッシュ（インテジャ）を計算する。ここで、２つのメンバが同一であれば、それら２つのメンバのハッシュは同一である。
ハッシュドオブジェクトの固有のアトリビュートは、そのオブジェクトに対するハッシュファンクション（アトリビュート”hash”）である。
注：ディクショナリのキーがハッシュドオブジェクトである場合、ディクショナリのオペレーションの幾つかのオペレーションの遂行において、必ずしも必要ではないが、アトリビュート”hash”を使用することができる。
注：定義済みクラスのインスタンスは、ハッシュドオブジェクトではない。
３．４．１０  レキシコン（Lexicon）
”レキシコン（lexicon）”は、キーが識別子であるコンストレインドディクショナリである。
３．４．１１  リスト（List）
オペレーション（Operations）
0003723572.tif 000043
”リスト（list）”は、アイテムが[１，ｎ]で番号付けされるコレクションである。ここで、”ｎ”はコレクションのレングスである。アイテムの番号は、リスト中のアイテムの”ポジション（position）”である。
リストの固有のオペレーションは、新しいアイテムとしてオブジェクトを含ませたり（オペレーション”add”）、現存しているアイテムを排除したり（オペレーション”drop”）、アイテムの点検のための準備をしたり（オペレーション”get”）、現存しているアイテムを置換したり（オペレーション”set”）、現存しているアイテムのポジションを判断したり（オペレーション”find”）、現存しているアイテムのポジションを変更したり（オペレーション”reposion”）、２つの現在のアイテムを転置したりする（オペレーション”transpose”）。
３．４．１２  オクテットストリング（Octet String）
”オクテットストリング（octet string）”は、アイテムがクラス”Octet”のインスタンスであるコンストレインドリストである。
３．４．１３  セット（Set）
オペレーション（Operations）
0003723572.tif 000044
”セット（set）”は、そのセットのうちの２つのアイテムが、取り入れられた時点においては、同一ではないコレクションである。
セットの固有のオペレーションは、２つのセットの和集合（オペレーション”union”）又は共通集合（オペレーション”intersection”）を計算したり、他のセットのアイテムに等しいアイテムを排除したりする（オペレーション”difference”）。
注：アイテムのサイト（site）における変更は、２つのアイテムを同一のものとして残しておくことがある。
３．４．１４  スタック（Stack）
オペレーション（Operations）
0003723572.tif 000045
”スタック（stack）”は、通常、アイテムが付加された順序と逆の順序に、そのアイテムがドロップ（drop）されるリストである。スタックの”トップ（top）”は、ポジション１であり、スタックの”ボトム（bottom）”のポジションは、スタックのレングスである。
スタックの固有のオペレーションは、トップにオブジェクトを付加したり（オペレーション”push”）、リストのアイテムをトップに付加したり（オペレーション”pushItems”）、トップのアイテムをドロップしたり（オペレーション”pop”）、トップの２つのアイテムを転置したり（オペレーション”swap”）、いくつかの最上位のアイテムをあるポジション数だけロール（roll）したりする（オペレーション”roll”）。
３．４．１５  ストリーム（Stream）
アトリビュート（Attributes）
0003723572.tif 000046
”ストリーム（stream）”は、組み合わされた一連のオブジェクト中のオブジェクト、すなわちストリームの”アイテム”に対して、順次アクセスするためのオブジェクトである。ストリームは、同一のアイテムを２回生成することはなく、最後のアイテムを生成させた後はニル（０）を生じる。
ストリームの固有のアトリビュートは、要求に応じて次のアイテムを生成できるようにしたり（アトリビュート”next”）、生成させた最新のアイテムを再生できるようにしたり（アトリビュート”currnt”）、最後のアイテムが生成されたか否か定めたりできるようにする（アトリビュート”isDone”）。
注：ストリームの任意のアイテム自身がニル（０）である場合、このことを、アトリビュート”next”又はアトリビュート”current”のインタープリートに当たって考慮する必要がある。
３．４．１６  ストリング（String）
オペレーション（Operations）
0003723572.tif 000047
”ストリング（string）”は、クラス”character”のインスタンスをアイテムとするコンストレインドリストである。
ストリングの固有のオペレーションは、サブストリングのコピーを生成する（オペレーション”substring”）。サブストリングは、ストリング内の連続するポジションを占めている０以上のキャラクタの列である。サブストリングは、２つのポジションＰ1及びＰ2によって定義され、サブストリングのアイテムは、ストリングのポジション[Ｐ1，Ｐ2）である。
３．５  クラス定義グループ（Class Definition Group）
0003723572.tif 000048
３．５．１  アトリビュート（Attribute）
アトリビュート（Attributes）
0003723572.tif 000049
”アトリビュート定義（attribute definition）”、すなわちクラス”Attribute”のメンバは、アトリビュートのためのフィーチャの定義である。
アトリビュート定義の固有のアトリビュートは、アトリビュートがどのようにして拘束されるか（アトリビュート”constrint”）、及びそれを設定できるか否か（アトリビュート”isSet”）を定義する。アトリビュート”constrint”は、オペレーション”αGet”のリザルトに影響する。さらに、アトリビュートがセット可能である場合には、アトリビュート”constrint”は、オペレーション”αSet”のアーギュメントにも影響する。
３．５．２  クラス定義（Class Definition）
アトリビュート（Attributes）
0003723572.tif 000050
オペレーション（Operations）
0003723572.tif 000051
”クラス定義（class definition）”は、クラスを定義するオブジェクトである。
クラス定義の固有のアトリビュートは、クラスのインターフェース（アトリビュート”interface”）、インプリメンテーション（アトリビュート”implementation”）、タイトル（アトリビュート”title”）、メジャーエディション（アトリビュート”majorEdition”）及びマイナーエディション（アトリビュート”minorEdition”）を定義する。
クラス定義の固有のオペレーションは、クラス定義のセットが定義する１以上のクラスのセットを生成する（オペレーション”makeClass”）。クラス内において必要とされるリファレンスは、クラスが生成された時に設定される。オペレーションを要求しているプロセスは、そのクラスのオーサーである。
３．５．３  クラスエクセプション（Class Exception）
”クラスエクセプション（class exception）”は、本セクションのクラスのメンバにより送出されたプログラミングのエクセプションである。
３．５．４  フィーチャ（Feature）
アトリビュート（Attributes）
0003723572.tif 000052
”フィーチャ定義（feature definition）”、すなわちクラス”feature”のメンバは、フィーチャ定義がそのインターフェースの一部であるクラスの全メンバの特別なフィーチャを定義するオブジェクトである。
フィーチャ定義の固有のアトリビュートは、フィーチャが、プライベートではなく、パブリックであるか否か（アトリビュート”isPublic”）と、フィーチャのエクセプションがメンバであるクラス（アトリビュート”exceptions”）とを定義する。システムフィーチャは、フィーチャ定義の支配を受けない。
３．５．５  インプリメンテーション（Implementation）
アトリビュート（Attributes）
0003723572.tif 000053
”インプリメンテーション（implementation）”は、選択されたフィーチャ及び変換を実行するオブジェクトである。ここで、フィーチャ及び変換は、そのインプリメンテーションが一部となっているクラスに固有であるもの、又は継承されているものである。
インプリメンテーションの固有のアトリビュートは、インプリメンテーションの直接スーパークラスを特定したり（アトリビュート”superClasses”）、選択されたクラスフィーチャ（アトリビュート”classMethods”）、インスタンスフィーチャ（アトリビュート”instanceMethods”及び”アトリビュートsetMethods”）、他のクラスからの変換（アトリビュート”fromMethods”）及び他のクラスへの変換（アトリビュート”toMethods”）のためのメソッドを提供したり、クラスに対して固有のプロパティを定義したり（アトリビュート”properties”）、インプリメンテーションがユーザ定義クラスを示すために用いる識別子を定義したりする（アトリビュート”vocabulary”）。
３．５．６  インターフェース（Interface）
アトリビュート（Attributes）
0003723572.tif 000054
”インターフェース（interface）”は、インターフェースを有するクラスに固有のフィーチャを定義するオブジェクトである。
インターフェースの固有のアトリビュートは、クラスがアブストラクトであるか否かを定義したり（アトリビュート”isAbstract”）、クラスのイミーディエイトインターフェーススーパークラス（アトリビュート”superclasses”）を特定したり、クラスの固有のクラスフィーチャ（アトリビュート”classFeatures”）及びインスタンスフィーチャ（アトリビュート”instanceFeatures”）を定義したり、そのクラスがシールするインスタンスフィーチャ（アトリビュート”sealedInstanceFeatures”）及びそのクラスフィーチャ（アトリビュート”sealedClassFeatures”）を特定したり、ユーザ定義クラスを表す際にインターフェースが使用する識別子を定義したりする（アトリビュート”vocabulary”）。
３．５．７  メソッド（Method）
アトリビュート（Attributes）
0003723572.tif 000055
”メソッド（method）”は、フィーチャをインプリメントするために使用されるオブジェクトである。
メソッドの固有のアトリビュートは、そのメソッドのプロシージャ（アトリビュート”procedure”）と、そのメソッドの変数の識別子（アトリビュート”valables”）とである。
３．５．８  オペレーション（Operation）
アトリビュート（Attributes）
0003723572.tif 000056
”オペレーション定義（operation definition）”、すなわちクラス”Operation”のメンバは、オペレーションについてのフィーチャ定義である。
オペレーション定義の固有のアトリビュートは、オペレーションのアーギュメントが可変数であるか固定数であるか定義し、固定数であった場合には、どのように各アーギュメントが制約されるかを定義する（アトリビュート”arguments”）。また、アトリビュートは、オペレーションがリザルトを有するか否かを定義し、リザルトを有する場合には、どのようにそのリザルトが制約されるかを定義する（アトリビュート”result”）。
３．６  特定化グループ（Identification Group
0003723572.tif 000057
３．６．１  サイテション（Citation）
アトリビュート（Attributes）
0003723572.tif 000058
”サイテション（citation）”は、テレスクリプトネットワークにおいて、０以上のエディション、例えばクラスを、特定するオブジェクトである。
サイテションの固有のアトリビュートは、エディションがその中に現れるタイトル（アトリビュート”title”）と、オプションとしてそのタイトルのオーサー（アトリビュート”author”）とを定義する。さらに、サイテションの固有のアトリビュートは、オプションとして、エディションのメジャーエディション（アトリビュート”majorEdition”）、エディションのマイナーエディション（アトリビュート”minorEdition”）、又はその両方を定義する。
３．６．２  引用（Cited）
アトリビュート（Attributes）
0003723572.tif 000059
”引用される（cited）”オブジェクトは、割り当てられたサイテションを有するオブジェクトである。２つの引用されたオブジェクトに割り当てられたサイテション内において、割り当てられたテレネームが同等である場合にのみ、２つの引用されたオブジェクトは同等である。
引用されたオブジェクトの固有のアトリビュートは、オブジェクトの割り当てられたサイテション（アトリビュート”citation”）である。
注：クラス及びパッケージは、引用されたオブジェクトである。
３．６．３  名前付き（Named）
アトリビュート（Attributes）
0003723572.tif 000060
”名前付きオブジェクト（named object）”は、割り当てられたテレネームを有するオブジェクトである。２つの名前付きオブジェクトに割り当てられたテレネームが同等である場合にのみ、２つの名前付きオブジェクトは、同等である。
名前付きオブジェクトの固有のアトリビュートは、オブジェクトに割り当てられたテレネームである（アトリビュート”name”）。
注：プロセスは、名前付きオブジェクトである。
３．６．４  テレアドレス（Teleaddress）
アトリビュート（Attributes）
0003723572.tif 000061
”テレアドレス（teleaddress）”は、テレスクリプトネットワークにおいて、０以上のプレイスの位置を決めるオブジェクトである。
テレアドレスの固有のアトリビュートは、プレイスのリージョンと（アトリビュート”provider”）、オプションとしてプレイスのロケーション（アトリビュート”loction”）と、ルーティングアドバイスと（アトリビュート”routingAdvice”）を与える。
３．６．５  テレネーム（Telename）
アトリビュート（Attributes）
0003723572.tif 000062
”テレネーム（telename）”は、ネットワーク中において０以上の名前付きオブジェクトを特定するオブジェクトである。
テレネームの固有のアトリビュートは、名前付きオブジェクトのオーソリティを定義する（アトリビュート”authority”）。さらに、テレネームの固有のアトリビュートは、オプションとして、単一の名前付きオブジェクトのアイデンティティを定義する（アトリビュート”identity”）。
３．７  プロセスグループ（Process Group)
0003723572.tif 000063
３．７．１  コンタクト（Contact）
アトリビュート（Attributes）
0003723572.tif 000064
”コンタクト（contact）”は、他のプロセスと相互作用するプロセスについて表現し記述するオブジェクトである。
コンタクトの固有のアトリビュートは、サブジェクト（アトリビュート”subject”）、サブジェクトの割り当てられたテレネーム（アトリビュート”subjectName”）、サブジェクトのクラスの割り当てられたサイテション（アトリビュート”subjectClass”）、及びオブザーバが保持するオブジェクト（アトリビュート”subjectNotes”）である。エンジンは、サブジェクトアトリビュートがニル（０）であっても、他のアトリビュートの真正さを保証する。
注：典型的には、アトリビュート”subjectNotes”は、オブザーバの観点からの２つのプロセス間の相互作用の状態である。
３．７．２  コンタクティッド（Contacted）
アトリビュート（Attributes）
0003723572.tif 000065
”コンタクトされた（contacted）”オブジェクトは、必然的にプロセスであり、コンタクトのオブジェクトのセットを保つ際に、エンジンの協力を受ける。
コンタクトされたオブジェクトの固有のアトリビュートは、オブジェクトのコンタクトである（アトリビュート”contacts”）。
注：定義済みでないクラスのインスタンスは、コンタクトされるオブジェクトである。
３．７．３  パーミット（Permit）
”パーミット（permit）”は、プロセスに能力を与えるオブジェクトである。
アトリビュート（Attributes）
0003723572.tif 000066
パーミットの固有のアトリビュートは、パーミットのサブジェクトの最大のエージ（アトリビュート”age”）、サイズ（アトリビュート”extent”）、チャージ（アトリビュート”charges”）、プライオリティ（アトリビュート”priority”）及びオーセンティシティ（アトリビュート”authenticity”）を定義するインテジャを含んでいる。
また、パーミットの固有のアトリビュートは、サブジェクトが以下のことを許可することができるブーリアンを含んでいる。（ｉ）オペレーション”charge”（アトリビュート”canCharge”）、オペレーション”go”（アトリビュート”canGo”）、オペレーション”send”（アトリビュート”canSend”）、又はクラス”Process”のサブクラスのオペレーション”new”（アトリビュート”canCreate”）を要求すること。（ｉｉ）あるプロセスのあるパーミットを経た能力を拒絶（アトリビュート”canDeny”）し、又はその能力を許容（アトリビュート”canGrant”）すること。（ｉｉｉ）再スタート（アトリビュート”canStart”）すること。
オペレーション（Operations）
0003723572.tif 000067
パーミットの固有のオペレーションは、２つのパーミットの共通集合をリターンする（オペレーション”intersection”）。
３．７．４  プロセスエクセプション（Process Exception）
”プロセスエクセプション（process exception）”は、本セクションのクラスのメンバによって送出されるプログラミングのエクセプションである。
３．７．５  プロセス（Process）
アトリビュート（Attributes）
0003723572.tif 000068
オペレーション（Operations）
0003723572.tif 000069
”プロセス（process）”は、自律的な演算を構成する名前付きオブジェクトである。
プロセスの固有のアトリビュートは、プロセスのエージ（アトリビュート”age”）、ブランド（アトリビュート”brand”）、チャージ（アトリビュート”charges”）、ローカルパーミット（アトリビュート”localPermit”）、パーミット（アトリビュート”permit”）、プライオリティ（アトリビュート”priority”）、プライベートに所有され使用されるクラス（アトリビュート”privateClasses”）、及びリージョナルパーミット（アトリビュート”regionalPermit”）である。
プロセスの固有のオペレーションは、プロセスの自律的な演算を行ったり（オペレーション”live”）、所定の期間の間、演算処理を遅延させたり（オペレーション”wait”）、プロセス自身に一時的なパーミットを課したり（オペレーション”restrict”）、一時的なパーミット及びレスポンダのオーナーの実効的パーミットをもとにプロシージャを遂行したり（オペレーション”sponsor”）、現在のプロセスが他のプロセスに与えるサービスについて他のプロセスにチャージしたりする（オペレーション”charge”）。
３．７．６  リソース（Resouce）
アトリビュート（Attributes）
0003723572.tif 000070
オペレーション（Operations）
0003723572.tif 000071
”リソース（resouce）”は、オブジェクトであり、特定のプロシージャのプロセスの遂行の間、このオブジェクトについて、プロセスに対してある保証を与えることができる。
リソースの固有のアトリビュートは、リソースの現在の状態（アトリビュート”condition”）と、リソースの可能な状態の識別子（アトリビュート”conditions”）とである。
リソースの固有のオペレーションは、リソースがリソースに対して要求された保証を作り上げたとき、特定のプロシージャを遂行する（オペレーション”use”）。
３．８  エージェント（Agent）及びプレイスグループ（Place Group）
0003723572.tif 000072
３．８．１  エージェント（Agent）
オペレーション（Operations）
0003723572.tif 000073
”エージェント(agent）”は、１つのプレイスから次のプレイスに移動することのできるプロセスである。
エージェントの固有のオペレーションは、エージェントを１つの目的地に（オペレーション”go”）、又は１以上のクローンを複数の目的地に同時に（オペレーション”send”）転送する。
３．８．２  オーセンティケータ（Authenticator）
”オーセンティケータ（authenticator）”は、オブジェクトであり、このオブジェクトを伴って、ネットワークは、例えばエージェントがリージョン間を通過するとき、トリップを開始したエージェントを認証することのできる。
注：クラス”Authenticator”のコンクリートサブクラスは、リージョン特有であり、したがって、ユーザ定義クラスである。
３．８．３  相互変換（Interchanged）
アトリビュート（Attributes）
0003723572.tif 000074
”相互変換された（interchanged）”オブジェクトは、アンチェインジドオブジェクトであり、オブジェクトのオーナーがトリップするときはいつでも、ネットワークは、このアンチェインジドオブジェクトの代わりに同等のオブジェクトを用する
相互変換されたオブジェクトの固有のアトリビュートは、オブジェクトのダイジェストである（アトリビュート”digest”）。
３．８．４  ミーンズ（Means）
”ミーンズ（means）”は、例えば特定の無線通信メディア等の手段を特定するオブジェクトであり、これにより、ネットワークは、ソースからのトリップ、目的地へのトリップ、又はその両方を開始したエージェントを転送することができる
注：クラス”Means”のコンクリートサブクラスは、リージョン特有であり、したがって、ユーザ定義クラスである。
３．８．５  プレイス（Plece）
アトリビュート（Attributes）
0003723572.tif 000075
オペレーション（Operations）
0003723572.tif 000076
”プレイス（place）”は、プロセスであり、このプロセスは、０以上の他のプロセスのための場所である。
プレイスの固有のアトリビュートは、プレイスのアドレス（アトリビュート”adoress”）と、プレイスの公的に所有され使用されるクラス（アトリビュート”publicClasses”）とである。
プレイスの固有のオペレーションは、そのプレイスへのプロセスの進入の申し出に対して判断を下したり（オペレーション”entering”）、そのプロセスからのプロセスのエクシットを記録したり（オペレーション”exiting”）、リクエスタが十分に能力を持ち（リクエスタのパーミットのアトリビュート”canTerminate”）、その占有者と同等である場合には、占有者を強制的に終了させたりする（オペレーション”terminate”）。
３．８．６  チケット（Ticket）
アトリビュート（Attributes）
0003723572.tif 000077
”チケット（ticket）”は、トリップを行うエージェントの観点から見た予定されたトリップを記述するチケットスタッブである。チケットの主な目的は、トリップの目的地を特定することである。
チケットの固有のアトリビュートは、目的地のテレネーム（アトリビュート”destinationName”）、そのテレアドレス（アトリビュート”destinationadrress”）、目的地がメンバであるクラスに対するサイテション（アトリビュート”destinationClass”）、エージェントが目的地において必要とするローカルパーミット（アトリビュート”destinationPermit”）、理想的にトリップが行われるべき時間（アトリビュート”desiredWait”）、及び如何なる状態においてもトリップが正常終了又は異常終了するべき時間（アトリビュート”maximumWait”）である。
３．８．７  チケットスタッブ（TicketStub）
アトリビュート（Attributes）
0003723572.tif 000078
”チケットスタッブ（ticketstab）”は、トリップの結果を記述するオブジェクトである。
チケットスタッブの固有のアトリビュートは、トリップのオリジンへの戻り道（アトリビュート”way”）と、トリップを開始したエージェントが独占的に使用する、チケットに元々存在する情報（アトリビュート”travelNotes”）とである。
３．８．８  トリップエクセプション（Trip Exception）
アトリビュート（Attributes）
0003723572.tif 000079
”トリップエクセプション（trip exception）”は、ネットワークがチケットにより与えられたトリップが異常終了したことを表すエクセプションである。
トリップのエクセプションの固有のアトリビュートは、チケットスタッブ（アトリビュート”ticketStab”）である。
３．８．９  アンムーブ（Unmoved）
”移動しないオブジェクト（アンムーブオブジェクト：unmoved object）”は、プレイスからプレイスに移動することができないオブジェクトである。アンムーブオブジェクトは、移動不可能と記述される場合がある。
アンムーブオブジェクトの移動が試みられた場合には、そのオブジェクトに対するリファレンスは、ボイドされる。
注：プレイスは、移動不可能である。
３．８．１０  ウェイ（Way）
アトリビュート（Attributes）
0003723572.tif 000080
”ウェイ（way）”は、ネットワークが、トリップを開始したエージェントを転送することができるルート（道筋）を特定するオブジェクトである。
ウェイの固有のアトリビュートは、トリップが赴くリージョンのネーム（アトリビュート”name”）と、そのリージョンに進入するために用いられるオーセンティケータ（アトリビュート”authenticator”）とミーンズ（アトリビュート”means”）である。
３．９  ミーティンググループ（Meeting Group）
0003723572.tif 000081
３．９．１  ミーティングエクセプション（Meeting Exception）
”ミーティングエクセプション（meeting exception）”は、ペティションが示すミーティングをミーティングプレイスが取り計らうことができなかったことを表すエクセプションである。
３．９．２  ミーティングプレイス（Meeting Place）
オペレーション（Operations）
0003723572.tif 000082
”ミーティングプレイス（meeting place）”は、占有者の中に含まれる２つのペティションされたオブジェクト間のミーティングを取り計らうプレイスである。
ミーティングプレイスの固有のオペレーションは、ミーティングを開始させたり（オペレーション”meet”）、ミーティングを終了させたり（オペレーション”part”）、リクエスタによって行われた全てのミーティングを終了させたりする（オペレーション”partAll”）。
３．９．３  ペティション（Petition）
アトリビュート（Attributes）
0003723572.tif 000083
”ペティション（petition）”は、ペティショナの観点から見た場合の予定されたミーティングを記述するオブジェクトである。ペティションの主な目的は、ペティショニを特定することである。
ペティションの固有のアトリビュートは、ペティショニのテレネーム（アトリビュート”agentName”）、ペティショニが１つのメンバであるクラスに対するサイテション（アトリビュート”agentClass”）、及びミーティングの試みがどの様な状態のもとにおいても正常終了又は異常終了するべき時間（アトリビュート”maximumWait”）である。
３．９．４  ペティションド（Petitioned）
オペレーション（Operations）
0003723572.tif 000084
”ペティションド（petitioned）”オブジェクトは、必然的にエージェントであり、ミーティングの設立において、ペティショナ又はペティショニの役割を果たすことができる。
ペティションドオブジェクトの固有のオペレーションは、ミーティングの要求について判断を下したり（オペレーション”meeting”）、パーティングについて記録したりする（オペレーション”parting”）。
注：定義済みでないクラスのインスタンスは、ペティションドオブジェクトである。
３．１０  その他のグループ（Miscellanneous Group）
0003723572.tif 000085
３．１０．１  カレンダータイム（Calendar Time）
アトリビュート（Attributes）
0003723572.tif 000086
オペレーション（Operations）
0003723572.tif 000087
”カレンダータイム（calender time）”は、ＵＴＣを用いて、１秒単位で、局地的な日付と時間を特定するオブジェクトである。カレンダータイムは、局地的な時間帯と、その時その場所でＤＳＴが施行されているならばそのＤＳＴについても記憶する。
カレンダータイムの固有のアトリビュートは、時間について、「時」（アトリビュート”hour”）、「分」（アトリビュート”minite”）及び「秒」（アトリビュート”second”）を供与し、日付について、「年」（アトリビュート”year”）、「月」（アトリビュート”month”）及び「日」（アトリビュート”day”）を供与し、「曜日」（アトリビュート”dayOfWeek”）及び１年における「日」（アトリビュート”dayOfYear”）を供与し、そして最後に、時間帯（アトリビュート”zone”）と、及びそこで施行されているＤＳＴについての情報（アトリビュート”dst”）とを供与する。
カレンダータイムの固有のオペレーションは、カレンダータイムをローカライズしたり（オペレーション”localize”）、カレンダータイムをグローバライズしたり（オペレーション”globalize”）、カレンダータイムをノーマライズしたりする（オペレーション”normalize”）。
３．１０．２  種々のエクセプション（Miscellaneous Exception）
”種々のエクセプション（ミセレネアスエクスセプション：miscellaneous  exception）”は、本セクションのクラスのメンバによって送出されたプログラミングのエクセプションである。
３．１０．３  パターン（Pattern）
オペレーション（Operations）
0003723572.tif 000088
”パターン（pattern）”は、ストリングを辞書的に解析するためのオブジェクトである。パターンのテキストは、それ自身ストリングであり、ストリング解析の正確な性質を定める。
パターンの固有のオペレーションは、最初のマッチングサブストリングのためのストリングをサーチし（オペレーション”find”）、又は全てのマッチングサブストリングを変更する（オペレーション”substitute”）。
３．１０．４  ランダムストリーム（Random Stream）
”ランダムストリーム（random stream）”は、ストリームであり、このストリームのアイテムは、疑似ランダムに選択された[０，Ｍ]の範囲の整数である。このアイテムは、同じ間隔における整数、すなわちシード（seed）によって定められる。ランダムストリームは、最後のアイテムを生成しない。この発明の実施例において、”Ｍ”は、ランダムストリームの生成者によって選択され、初期化のパラメータとして特定される。
３．１０．５  実数（Real）
”実数（real）”は、数学上の実数を形成するナンバである。
注：本質的に、エンジンは、有限な精度でのみ、実数を表し、それらを含む算術的なオペレーションを遂行する。したがって、全ての実数が、必ずしもこのクラスのインスタンスであるわけではなく、実数によって行われた算術的なオペレーションのリザルトは、近似的であることがある。
４  テレスクリプトクラスの詳細
テレスクリプトの定義済みクラスは、アペンディックスＡの本セクションにおいてアルファベット順に定義されている。サブセクションは、それぞれのクラスに当てられている。
４．１  規約（Conventions）
クラスの定義は、そのクラスを取り巻くクラス図表の部分的な図により開始される。クラス自身は、アンダーラインで示すものとする。
以上のセクションは、各々の定義済みクラスの説明において、必要である場合に限り記述されている。
クラス（Class）
本セクションは、クラスのフィーチャとは別に、クラスについて記述する。クラスは、形式的には後述するセクション６の規約に従って規定されている。ただし、クラスのフィーチャの定義の部分は省略されている（”...”の部分）。クラスのインターフェースのエンコーダがパラメータ化される場合には、それがどのように成されているかが、プローズ（散文）によって記述される（後述するセクション６を参照すること。）。
構  成（Construction）
本セクションは、オペレーション”initialize”について、それがクラスのメンバに属しているとき、記述する。本セクションが省略されている場合、後述するセクション６に示すように、特別な記述が含まれている。
サブクラス（Subclasses）
本セクションは、クラスの定義済み直接サブクラスの定義を含む。ここで、クラスがクラス”Exception”のサブクラスでない場合にのみ、又はクラスがクラス”Exception”のサブクラスであっても定義済みサブクラスを持たない場合にのみ、本セクションを省略する。
アトリビュート（Attributes）
本セクションは、クラスに対する固有のアトリビュートを定義する。このセクションは分けられ、これらの分けられたセクションは、パブリック（公的）、プライベート（私的）、インターナル（内部的）、及びクラスのインスタンス及びクラス自身の他のシステムアトリビュートに当てられている。ここで、各セクションは、存在しない場合にのみ、省略される。
アトリビュートは、形式的にはセクション６の規約に従って定義される。アトリビュートのセマンティクス（意味：semantics）及びエクセプション（例外：exception）は、非形式的に散文によって定義されている。
オペレーション（Operations）
本セクションは、上述した他のセクションでクラスに対する固有なアトリビュートを定義するのと同様に、クラスに対する固有なオペレーションを定義する。
オペレーションが、そのアーギュメント及びリザルトを保持しているスタックを変更する場合、そのオペレーションのスタックに対する影響は、そのアーギュメントがスタックからポップされ、且つリザルトがまだスタックにプッシュされていないものと仮定して、記述される。
アダプテーション（Adaptations）
本セクションは、クラスが継承したフィーチャをクラスがどのようにインプリメントするかを記述する。クラスがこのようなフィーチャをインプリメントしない場合にのみ、本セクションは省略される。
変  換（Conversions）
本セクションは、クラスのインスタンスを生成する変換について記述する。このような変換がない場合のみ、本セクションは省略される。
個々の変換の定義は、変換元のクラス（ソースクラス：source class）を特定し、ソースクラスのメンバがどの様にして変換後のクラス（サブジェクトクラス：subject class）に変換されるかを記述する。全てのメンバを変換することができない場合には、どのメンバが変換され得るかを示す。また、ある変換のソースクラスが、他の変換のソースクラスのサブクラスである場合には、前者の変換を後者の変換より優先する。ここで、これらの変換は、連鎖的ではない。
注：変換は、１ステップで行われる。したがって、例えば、テレナンバのストリングへの変換、及びストリングからオクテットストリングへの変換が定義されているとしても、テレナンバのオクテットストリングへの変換は定義されていない。
４．２  エージェント（Agent）
0003723572.tif 000089
クラス（Class）
0003723572.tif 000090
プライベートインスタンスオペレーション（Private Instance Operations）
0003723572.tif 000091
チケットの他の条項に従って、チケットによって特定された目的地にレスポンダを転送する（argument”ticket”）。オペレーションは、チケットスタッブをリターンする。
レスポンダがオペレーション”go”を禁止した場合（”PermitViolated”）、レスポンダの状態（state）がオペレーション”go”を妨げている場合（”State Improper”）、又はトリップが異常終了した場合（”TripException”）には、エクセプションが送出される。
0003723572.tif 000092
チケットの他の条項に従って、それぞれの全てのリストされたチケット（アーギュメント”tickets”）によって特定された目的地に、レスポンダのクローンを転送する。レスポンダのアローワンス（allowance）は、チケットがクローンに割り当てる量によって減少される。オペレーションは、レスポンダにニル（０）をリターンし、各クローンにチケットスタッブををリターンする。
クラス”PermitViolated”又はクラス”StateImproper”の何れかのクラスのメンバが、オペレーションを異常終了させた場合、レスポンダは異常終了したことを認識し、如何なるクローンも生成されない。そうでない場合には、レスポンダはオペレーションが正常終了したとこを認識する。そして、個々に独立した各クローンは、クラス”TripException”のメンバにより、そのオペレーションが正常終了又は異常終了したことを認識する。
レスポンダがオペレーション”send”を禁止するパーミットを保持しているか、又はそのアローワンスがリストされたチケットのパーミットのものの合計よりも少ない場合、エクセプション（”PermitViolated”）が送出され、レスポンダの状態（state）がオペレーション”send”を妨げる場合、エクセプション（”StateImproper”）が送出され、トリップが異常終了した場合、エクセプション（”TripException”）が送出される。
４．３  アソシーエーション（Association）
0003723572.tif 000093
クラス（Class）
0003723572.tif 000094
サブジェクトクラスの各メンバーのキー（アーギュメント”keyClass”）および値（アーギュメント”ValueClass”）がそれ自身メンバであるクラスによって、パラメータ化される。
構  成（Construction）
0003723572.tif 000095
レスポンダの固有のアトリビュートを、同じ名前のアーギュメントにする（アーギュメント”key”及びアーギュメント”value”）。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000096
レスポンダのキーである。
0003723572.tif 000097
レスポンダの値である。
アダプテーション（Adaptations）
0003723572.tif 000098
任意のアソシエーションは、それらのキーに従って、他のアソシエーションの後となる。
0003723572.tif 000099
任意のアソシエーションは、それらのキーに従って、他のアソシエーションの前となる。
0003723572.tif 000100
２つのアソシエーションは、それらのキーに従って、同等となる。
４．４  アトリビュート（Attribute）
0003723572.tif 000101
クラス（Class）
0003723572.tif 000102
構  成（Construction）
0003723572.tif 000103
レスポンダのアトリビュートを、同じ名前のアーギュメント（アーギュメント”constraint”、”exceptions”、”isPublic”、”isSet”）とする。アーギュメントがニル（０）である場合、対応するアトリビュートは、初期化パラメータとしてニル（０）を伴ったコンストレイントとされる。これは、クリアされたセットであり、”偽（false）”又は”偽（false）”である。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000104
レスポンダが定義するアトリビュートに対するコンストレイントである。
0003723572.tif 000105
レスポンダが定義するアトリビュートがリードオンリでないか否かである。
アダプテーション（Adaptations）
0003723572.tif 000106
２つのアトリビュートの定義は、フィーチャの定義及びアトリビュートの定義に対して固有なアトリビュートに従って、同等となる。
４．５  オーセンティケイタ（Authenticator）
0003723572.tif 000107
クラス（Class）
0003723572.tif 000108
４．６  ビット（Bit）
0003723572.tif 000109
クラス（Class）
0003723572.tif 000110
アダプテーション（Adaptations）
0003723572.tif 000111
第２のビットが０であり、第１のビットが１である場合にのみ、第１のビットは、第２ビットの後となる。
0003723572.tif 000112
第２のビットが０であり、第１のビットが２である場合にのみ、第１ビットは、第２のビットの前となる。
0003723572.tif 000113
２つのビットは、両方が０である場合にのみ、又は両方が１である場合にのみ、同等となる。
変  換（Conversions）
0003723572.tif 000114
１つのアイテムを有するビットストリングは、そのアイテムに等しいビットを生成する。
0003723572.tif 000115
ブーリアン”偽（false）”及び”真（true）”は、各々、”０”及び”１”を生成する。
0003723572.tif 000116
数字のゼロ（０）及び１（１）は、各々、ゼロ（zero）及び１（one）を生成する。
0003723572.tif 000117
整数のゼロ及び１は、各々、ゼロ及び１を生成する。
0003723572.tif 000118
ビット[０]を除いて、全てのビットがゼロであるオクテットは、そのビットを生成する。
0003723572.tif 000119
ビットに変換可能なオクテットに変換可能なオクテットストリングは、そのビットを生成する。
0003723572.tif 000120
ビットに変換可能なキャラクタに変換可能なストリングは、そのビットを生成する。
４．７  ビットストリング（Bit String）
0003723572.tif 000121
クラス（Class）
0003723572.tif 000122
構  成（Construction）
0003723572.tif 000123
レスポンダを、レスポンダ中のポジションが左から右にかけて増大しているセグメント（アーギュメント”segment”）の連結とする。
アダプテーション（Adaptations）
0003723572.tif 000124
アトリビュートは、シールされている。そのアトリビュート”ofClass”、”classId”、”isInstance”、”isOptional”及び”passage”は、各々、クラス”Bit”、クラス”Bit”の識別子、”真（true）”、”偽（false）”及び”byCopy”である。
0003723572.tif 000125
レングスが短いビットストリングをレングスが長いビットストリングと等しいレングスにするために、十分な”ゼロ（zero）”のビットがレングスが短いビットストリングに最初から予め付加されたかのように、任意のビットストリングが他のビットストリングの後に配される。
0003723572.tif 000126
レングスが短いビットストリングをレングスが長いビットストリングと等しいレングスにするために、十分な”ゼロ（zero）”のビットがレングスが短いビットストリングに最初から予め付加されたかのように、任意のビットストリングが他のビットストリングの前に配される。
変  換（Conversions）
0003723572.tif 000127
ビットは、単一のアイテムだけがそのビットに等しいビットストリングを生成する。
0003723572.tif 000128
ブーリアンは、最初にブーリアンからビットへの変換のリザルトを生成し、次にそのビットからビットストリングへの変換のリザルトを生成する。
0003723572.tif 000129
キャラクタは、最初にキャラクタからオクテットストリングへの変換のリザルトを生成し、次にそのオクテットストリングからビットストリングへの変換のリザルトを生成する。
0003723572.tif 000130
[−２n，２n）の範囲のインテジャ（インテジャ”ｎ”でありこれよりも小さくはない。）は、レングスが”ｎ”のビットストリングを生成する。ここで、２の補数表現が用いられる。ポジション”１”であるビットは、−２nを示す。（１，ｎ]の範囲内にある各ポジション”i”のビットは、２n-1を表す。
0003723572.tif 000131
オクテットは、最初にオクテットからオクテットストリングへの変換のリザルトを生成し、次にそのオクテットストリングからビットストリングへの変換のリザルトを生成する。
0003723572.tif 000132
レングスが”ｎ”であるオクテットストリングは、レングスが”８ｎ”であるビットストリングを生成する。ビットストリング中のポジションが（８ｉ＋ｊ）であるビットは、オクテットストリング中のポジションが”ｉ”であるオクテットのビット（８−ｊ）である。ここで、”ｉ”及び”ｊ”は整数であり、”ｉ”は[０，ｎ）の範囲にあり、”ｊ”は[１，８]の範囲にある。
0003723572.tif 000133
ストリングは、最初にストリングからオクテットストリングへの変換のリザルトを生成し、次にそのオクテットストリングからビットストリングへの変換のリザルトを生成する。
４．８  ブーリアン（Boolean）
0003723572.tif 000134
クラス（Class）
0003723572.tif 000135
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000136
レスポンダとブーリアン（アーギュメント”boolean”）の論理的な結合をリターンする。
0003723572.tif 000137
レスポンダの論理的な否定をリターンする。
0003723572.tif 000138
レスポンダとブーリアン（アーギュメント”boolean”）の論理的な和をリターンする。
アダプテーション（Adaptations）
0003723572.tif 000139
第２のブーリアンが”偽（false）”であり、第１のブーリアンが”真（true）”である場合にのみ、第１のブーリアンは、第２のブーリアンの後となる。
0003723572.tif 000140
第２のブーリアンが”真（true）”であり、第１のブーリアンが”偽（false）”である場合にのみ、第１のブーリアンは、第２のブーリアンより前となる。
0003723572.tif 000141
２つのブーリアンが何れも”偽（false）”又は”真（true）”である場合にのみ、両者は等しくなる。
変  換（Conversions）
0003723572.tif 000142
ビットは、ビットが１であるか否かの指示を生成する。
0003723572.tif 000143
キャラクタは、キャラクタのユニコードがゼロでないか否かの指示を生成する。
0003723572.tif 000144
コレクションは、コレクションのレングスがゼロでないか否かの指示を生成する。
0003723572.tif 000145
エクセプションは、”真（true）”を生成する。
0003723572.tif 000146
ニル（０）は、”偽（false）”を生成する。
0003723572.tif 000147
ナンバは、ナンバがゼロでないか否かの指示を生成する。
0003723572.tif 000148
オクテットは、オクテットのビットの何れかが１であるか否かの指示を生成する。
４．９  カレンダータイム（Calenar Time）
0003723572.tif 000149
クラス（Class）
0003723572.tif 000150
構  成（Construction）
0003723572.tif 000151
レスポンダの固有のアトリビュートをニル（０）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000152
レスポンダが特定する月の「日」、又はニル（０）である。
0003723572.tif 000153
レスポンダが特定する「曜日」、又はニル（０）である。
0003723572.tif 000154
レスポンダが特定する、１年における「日」、又はニル（０）である。
0003723572.tif 000155
レスポンダが特定する、時間帯の一定のずれからの「分」で示される季節的なずれ、又はニル（０）である。
0003723572.tif 000156
レスポンダが特定する「時」、又はニル（０）である。
0003723572.tif 000157
レスポンダが特定する「分」、又はニル（０）である。
0003723572.tif 000158
レスポンダが特定する「月」、又はニル（０）である。
0003723572.tif 000159
レスポンダが特定する「秒」、又はニル（０）である。
0003723572.tif 000160
レスポンダが特定するグレゴリー歴の「年」、又はニル（０）である。
0003723572.tif 000161
レスポンダが特定する、時間帯のＵＴＣからの「分」で示される一定のずれ、又はニル（０）である。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000162
ＵＴＣに対するレスポンダの一定なずれ及び季節的なずれを設定し、特定された絶対的な時点が変化しないようにする。
0003723572.tif 000163
現在位置に対するレスポンダの一定なずれ及び季節的なずれを設定し、特定された絶対的な時点が変化しないようにする。
0003723572.tif 000164
レスポンダを正常化し、レスポンダのアトリビュートの何れかがプロセス内において変化された否かをリターンする。
アダプテーション（Adaptations）
0003723572.tif 000165
２つのカレンダータイムは、その固有のアトリビュートに従って、同等となる。
変  換（Conversions）
0003723572.tif 000166
タイムは、同一の絶対的な時点と、同一の一定なずれ及び季節的なずれとを特定する、正常化されたカレンダータイムを生成する。
４．１０  ケースド（Cased）
0003723572.tif 000167
クラス（Class）
0003723572.tif 000168
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000169
レスポンダの何れかのアイテムが英小文字であるか否か。
0003723572.tif 000170
レスポンダの何れかのアイテムが英大文字であるか否か。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000171
全ての英大文字のアイテムが同等な英小文字に置き換えられている、レスポンダのコピーをリターンする。
0003723572.tif 000172
全ての英小文字のアイテムが同等な英大文字に置き換えられている、レスポンダのコピーをリターンする。
４．１１  キャラクタ（Character）
0003723572.tif 000173
クラス（Class）
0003723572.tif 000174
アダプテーション（Adaptations）
0003723572.tif 000175
ユニコードのコードに従って、任意のキャラクタは、他のキャラクタの後となる。
0003723572.tif 000176
ユニコードのコードに従って、任意のキャラクタは、他のキャラクタの前となる。
0003723572.tif 000177
２つのキャラクタは、ユニコードのコードに従って、同等となる。
変  換（Conversions）
0003723572.tif 000178
ビット”ゼロ（zero）”は、数字の０を生成し、ビット”１”は、数字の１を生成する。
0003723572.tif 000179
［０，６５５３５］の範囲内のインテジャは、ユニコードのコードによりキャラクタを生成する。
0003723572.tif 000180
オクテットは、最初にオクテットからインテジャへの変換のリザルトを生成し、次にそのインテジャからキャラクタへの変換のリザルトを生成する。
0003723572.tif 000181
オクテットストリングは、最初にオクテットストリングからインテジャへの変換のリザルトを生成し、次にそのインテジャからキャラクタへの変換のリザルトを生成する。
0003723572.tif 000182
１つのアイテムを有するストリングは、そのアイテムに等しいキャラクタを生成する。
４．１２  サイテション（Citation）
0003723572.tif 000183
クラス（Class）
0003723572.tif 000184
構  成（Construction）
0003723572.tif 000185
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”author”、”majorEdition”、”minorEdition”、及び”title”）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000186
レスポンダによって特定されたオーサーのテレネームである。ただし、レスポンダが割り当てられていない場合、又はそのようなコンストレイントが課されていない場合には、ニル（０）である。
0003723572.tif 000187
レスポンダによって特定されたメジャーエディションのナンバである。ただし、レスポンダが割り当てられていない場合、又はそのようなコンストレイントが課せられていない場合には、ニル（０）である。
0003723572.tif 000188
レスポンダによって特定されたマイナーエディションのナンバである。ただし、レスポンダが割り当てられていない場合、又はそのようなコンストレイントが課せられていない場合には、ニル（０）である。
0003723572.tif 000189
レスポンダが特定するタイトルの識別子である。
アダプテーション（Adaptations）
0003723572.tif 000190
２つのサイテションの”author”アトリビュートが同等、すなわちそれらのアトリビュート”title”が等しく、第１のサイテションのアトリビュート”majorEdition”が第２のサイテションのアトリビュート”majorEdition”の後にあるか、又は両方のサイテションのアトリビュート”majorEdition”が等しく、そして、第１のサイテションのアトリビュート”minorEdition”が第２のサイテションのアトリビュート”minorEdition”の後にある場合にのみ、第１のサイテションは、第２のサイテションの後になる。
0003723572.tif 000191
２つのサイテションの”author”アトリビュートが同等、すなわちそれぞれのアトリビュート”title”が等しく、第１のサイテションのアトリビュート”majorEdition”が第２のサイテションのアトリビュート”majorEdition”の前にあるか、又は両方のサイテションのアトリビュート”majorEdition”が等しく、そして、第１のサイテションのアトリビュート”minorEdition”が第２のサイテションのアトリビュート”minorEdition”の前にある場合にのみ、第１のサイテションは、第２のサイテションの前になる。
0003723572.tif 000192
２つのサイテションのアトリビュート”author”が同等であり、他の固有のアトリビュートが等しい場合にのみ、２つのサイテションは等しい。
４．１３  サイティド（Cited）
0003723572.tif 000193
クラス（Class）
0003723572.tif 000194
構  成（Construction）
0003723572.tif 000195
レスポンダの固有のアトリビュートを、サイテションにする。ここで、このサイテションのアトリビュート”author”は、現在のプロセスの割り当てられたテレネームであり、それ以外のアトリビュートは、同じ名前のアーギュメント（アーギュメント”majorEdition”、”minorEdition”及び”title”）である。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000196
レスポンダの割り当てられたサイテションである。
４．１４  クラス（Class）
0003723572.tif 000197
クラス（Class）
0003723572.tif 000198
構  成（Construction）
0003723572.tif 000199
エクセプション（”FeatureUnavaliable”）を送出する。
注：クラスは、オペレーション”new”でなく、オペレーション”makeClasses”を用いて生成される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000200
オブジェクト（アーギュメント”source”）のそのクラスへの変換よって生成されたレスポンダのインスタンスを、そのオブジェクトが既にそのクラスのインスタンスではない場合には、リターンする。その他の場合には、そのオブジェクトのコピーをリターンする。
オペレーションは、先ず、ソースのクラスにおいて変換メソッドを探しだし、これに失敗したら、次に、目的地のクラスにおいて探しだす。そのオブジェクトが要求されたように変換されることができない場合には、エクセプション（”ConversionUnavailable”）が送出される。
注：この２つのステップは、特定の変換のためのメソッドをインプリメントするために、ソースのクラス又は目的地のクラスを、後から定義されたものならばどちらでも許容する。
0003723572.tif 000201
オブジェクト（アーギュメント”instance”）がレスポンダのインスタンスであるか否かの表示をリターンする。
0003723572.tif 000202
オブジェクト（アーギュメント、”member”）が、レスポンダのインターフェース（必ずしもインプリメンテーションとは限らない。）のメンバであるか否かの表示をリターンする。
0003723572.tif 000203
クラス（アーギュメント”subclass”）がレスポンダのサブクラスであるか否かの表示をリターンする。
0003723572.tif 000204
初期化パラメータ（アーギュメント”parameters”）によって定められたレスポンダの新しいインスタンスをリターンする。上述のシグニチャ（署名：signature）にもかかわらず、オペレーションのシグニチャは、レスポンダによって定義されたように、オペレーション”initialize”のシグニチャである。
レスポンダがアブストラクトである場合に、エクセプション（”ClassAbstract”）が送出され、クラスに固有の問題が生じた場合に、エクセプション（”Exception”）が送出され、潜在的なオブジェクトがそれ自身のフィーチャを使用する場合に、エクセプション（”ObjectUninitialized”）が送出される。
４．１５  クラス定義（Class Definition）
0003723572.tif 000205
クラス（Class）
0003723572.tif 000206
構  成（Construction）
0003723572.tif 000207
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”implementation”、”interface”、”majorEdition”、”minorEdition”及び”title”）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000208
インプリメンテーションがある場合、レスポンダが定義するクラスのインプリメンテーションであり、その他の場合には、ニル（０）である。
0003723572.tif 000209
レスポンダが定義するクラスのインターフェースである。
0003723572.tif 000210
レスポンダが定義するクラスの割り当てられたサイテションのアトリビュート”majorEdition”である。
0003723572.tif 000211
レスポンダが定義するクラスの割り当てられたサイテションのアトリビュート”minorEdition”である。
0003723572.tif 000212
レスポンダが定義するクラスの割り当てられたサイテションのアトリビュート”title”である。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000213
レスポンダと他のクラス定義（アーギュメント”definitions”）が集合的に定義するクラスのレキシコンをリターンする。それぞれの値は、関連付けられたキーにタイトルが等しいクラスである。
サイテションは、次のように各クラスに割り当てられる。割り当てられたサイテションのアトリビュート”author”は、現在のプロセスの割り当てられたテレネームである。割り当てられたサイテションの他のアトリビュートは、クラスのクラス定義で定義された通りである。
クラスが生成できない場合には、エクセプション（”classException”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000214
２つのクラスの定義は、各々の固有のアトリビュートに従って、同等となる。
４．１６  クラスエクセプション（Class Exception）
0003723572.tif 000215
クラス（Class）
0003723572.tif 000216
サブクラス（subclasses）
0003723572.tif 000217
提案（プロポーズ：propose）された新しいクラスは、シールされた直接スーパークラスを有している。
0003723572.tif 000218
提案された新しいクラスは、定義されていないクラス識別子を使用している。
0003723572.tif 000219
提案された新しいクラスと、そのクラスのインターフェーススーパークラスの１つとは、同一の識別子によって示される固有のフィーチャを有している。
0003723572.tif 000220
提案された新しいクラスは、そのクラスのインターフェーススーパークラスの１つによってシールされたフィーチャをインプリメントしている。
0003723572.tif 000221
提案された新しいクラスは、定義されていないフィーチャ識別子を使用している。
0003723572.tif 000222
提案された新しいクラスは、フレーバが要求されるところで、ミックスインを使用している。
0003723572.tif 000223
提案された新しいクラスは、矛盾したイミディエートスーパークラスを有している。
４．１７  コレクション（Collection）
0003723572.tif 000224
クラス（Class）
0003723572.tif 000225
サブジェクトクラスの各メンバの各アイテム自身がメンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000226
レスポンダのアイテムをオブジェクト（アーギュメント”items”）にする。
提案されたアイテムが不適切である場合に、エクセプション（”ItemInvalid”）が送出される。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000227
レスポンダのレングスである。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000228
全てのアイテムをレスポンダから取り除いて破棄する。
注：このオペレーションは、レスポンダのレングスをゼロに減少させる。
0003723572.tif 000229
そのオブジェクト（アーギュメント”item”）に等しいアイテムが少なくとも１つある場合に、このようなアイテムの１つを、レスポンダ内に残して、そのアイテムをリターンする。その他の場合には、ニル（０）をリターンする。ただし、このようなアイテムが幾つか存在している場合、選択されるアイテムについては定義されていない。
0003723572.tif 000230
そのオブジェクト（アーギュメント”item”）に等しいアイテムが少なくとも１つある場合に、このようなアイテムの１つをレスポンダから除去して、そのアイテムをリターンする。その他の場合には、ニル（０）をリターンする。ただし、このようなアイテムが幾つか存在している場合、選択されるアイテムについては、定義されていない。
0003723572.tif 000231
オブジェクト（アーギュメント”item”）をレスポンダに新しいアイテムとして含ませる。
提案されたアイテムが、上述のようなアイテムとして不適切であればエクセプション（”itemInvalid”）が送出される。
0003723572.tif 000232
アイテムがレスポンダのアイテムであるストリームをリターンする。クラス”Collection”のサブクラスは、ストリームがレスポンダのアイテムを生成する順序を定義することができる。しかし、クラス”Collection”は、その順序を規定されないまま残される。
ストリームが生成された後にレスポンダが変更されたときには、以下に述べる場合にのみ、ストリームは、新しく含められたアイテムを生成する。すなわち、その場合とは、ストリームが以前にそれらを生成しておらず、ストリームが以前生成したものを以外で、新しく除外されたアイテムを生成していない場合である。
注：ストリームがインスタンスであるクラス”Stream”のサブクラスは定義されていない。
アダプテーション（Adaptations）
0003723572.tif 000233
２つのコレクションの各レングスが等しく、それらの各アイテムが対を成しており、対を成したそれらの各アイテムが同一になるようにされている場合にのみ、この２つのコレクションは同等となる。コレクションのサブクラスは、上述のような同一性の定義を狭くすることができるが、広くすることはできない。
４．１８  コレクションエクセプション（collection Exception）
0003723572.tif 000234
クラス（Class）
0003723572.tif 000235
サブクラス（subclasses）
0003723572.tif 000236
セットの提案されたアイテムは、他のアイテムに等しい。
0003723572.tif 000237
コレクションの提案されたアイテムは、コレクションのコンストレイントを満たしていない。
0003723572.tif 000238
ディクショナリの任意の提案されたキーは、他のキーに等しい。
0003723572.tif 000239
ディクショナリの提案されたキーは、ディクショナリのコンストレイントを満足していない。また、ディクショナリ内のキーに等しくなることを目的とするオブジェクトは、デクショナリのコンストレイントを満足していない。
0003723572.tif 000240
ディクショナリの対を成していると考えられるキー及び値が、奇数である。
0003723572.tif 000241
プロシージャ又はリストにおいてあるポジションに等しくなることを意図されているインテジャが、そうなっていない。
0003723572.tif 000242
スタックのレングスが、要求されたスタックの操作を妨げている。
４．１９  コンストレインド（Constrained）
0003723572.tif 000243
クラス（Class）
0003723572.tif 000244
構  成（Construction）
0003723572.tif 000245
レスポンダの固有のアトリビュートがニル（０）でない場合に、そのアトリビュートをコンストレイント（アーギュメント”constraint”）にする。その他の場合には、初期化パラメータをニル（０）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000246
レスポンダのノミネートされたプロパティに対するコンストレイントである。
４．２０  コンストラインドディクショナリ（Constrained Dictionary）
0003723572.tif 000247
クラス（Class）
0003723572.tif 000248
サブジェクトクラスの各メンバの各アイテムの値（アーギュメント”valueClass”）及びキー（アーギュメント”keyClass”）がそれら自身メンバであるクラスによって、パラメータ化される。
構  成（Construction）
0003723572.tif 000249
レスポンダのアイテムを、キーと値の対（アーギュメント”keyAndValues”）の関連（アソシエイション：asociations）にし、レスポンダのアトリビュート”constraint”を、そのコンストレイントにする（アーギュメント”constraint”）。
２つの提案されたキーが等しい場合には、エクセプション（”keyDuplicated”）が送出され、提案されたキーが、キーとして不適切である場合には、エクセプション（”keyInvalid”）が送出され、オブジェクトの数が奇数である場合には、エクセプション（”ObjectUnpaired”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000250
そのコンストレイントを満足するキーのみが含められる。
0003723572.tif 000251
そのコンストレイントは、キーに対応するものである。
0003723572.tif 000252
そのコンストレイントを満足するキーのみが含められる。
0003723572.tif 000253
そのコンストレイントを満足するキーのみが含められる。
0003723572.tif 000254
そのコンストレイントを満足するキーのみが含められる。
４．２１  コンストレインドリスト（Constrained List）
0003723572.tif 000255
クラス（Class）
0003723572.tif 000256
サブジェクトクラスの各メンバの各アイテムがそれ自身メンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000257
レスポンダのアイテムを、左から右にかけてポジションが増大しているそれらのオブジェクト（アーギュメント”items”）にし、レスポンダのアトリビュート”constraint”を、コンストレイント（アーギュメント”constraint”）にする。
提案されたアイテムが不適切であれば、エクセプション（”ItemInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000258
そのコンストレイントを満足するオブジェクトのみが含められる。
0003723572.tif 000259
そのコンストレイントは、アイテムに対するものである。
0003723572.tif 000260
そのコンストレイントを満足するオブジェクトのみが含められる。
４．２２  コンストレインドセット（Cnstrained Set）
0003723572.tif 000261
クラス（Class）
0003723572.tif 000262
サブジェクトクラスの各メンバの各アイテムがそれ自身メンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000263
レスポンダのアイテムを、そのオブジェクト（アーギュメント”items”）にし、レスポンダのアトリビュート”constraint”を、そのコンストレイントにする（アーギュメント”constraint”）。
２つの提案されたアイテムが等しい場合には、エクセプション（”ItemDuplicated”）が送出され、提案されたアイテムが不適切な場合には、エクセプション（”ItemInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000264
そのコンストレイントは、アイテムに対するものである。
0003723572.tif 000265
そのコンストレイントを満足するオブジェクトのみが含められる。
４．２３  コンストレイント（Constraint）
0003723572.tif 000266
クラス（Class）
0003723572.tif 000267
構  成（Construction）
0003723572.tif 000268
レスポンダのアトリビュート”ofClass”をニル（０）にし、レスポンダの他の固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”classId”、”isInstance”、”isOptional”及び”passage”）にする。アーギュメントがニル（０）である場合、それに対応するアトリビュートは、それぞれクラス”Object”、”false”、”false”、”byRef”の識別子とされる。
提案されたパッセージ（passage）が不適切な場合には、エクセプション”PassageInvalid”）が送出される。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000269
レスポンダのサブジェクトがメンバとなるであろうクラスの識別子である。識別子は、レスポンダのコンテキストを供給するインプリメンテーション又はインターフェースのアトリビュート”vocabulary”に従って、インタープレートされる。
0003723572.tif 000270
レスポンダのサブジェクトがアトリビュート”classId”が示すクラスのインスタンス（単なるメンバではない。）となるか否か。
0003723572.tif 000271
アトリビュート”classId”に関わらず、レスポンダのサブジェクトがニル（０）となることが許可されるか否か。
0003723572.tif 000272
ニル（０）でない場合には、レスポンダのサブジェクトがメンバとなるであろうクラスである。
0003723572.tif 000273
レスポンダのサブジェクトが、どのようにパス（pass）されるかを示す識別子である。
提案されたプロセスが不適切である場合は、エクセプション（”PassageInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000274
２つのコンストレイントは、各々の固有のアトリビュートに従って、同等となる。
４．２４  コンタクト（Contact）
0003723572.tif 000275
クラス（Class）
0003723572.tif 000276
構  成（Construction）
0003723572.tif 000277
レスポンダのアトリビュート”subject”及び”subjectNotes”を、同じ名前のアーギュメント（アーギュメント”subject”及び”subjectNotes”）にする。アトリビュート”subject”がプロセスである場合には、レスポンダの他の固有のアトリビュートを、サブジェクトを記述するものとし、その他の場合には、ニル（０）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000278
レスポンダのサブジェクト、又はニル（０）である。
0003723572.tif 000279
アトリビュート”subject”がプロセスである場合は、クラスの割り当てられたサイテション（これは、クラス”Agent”又はクラス”Place”のサブクラスであり、レスポンダのサブジェクトは、これのインスタンスである。）であり、その他の場合には、そのクラスか、又はアトリビュート”subject”がニル（０）ならばニル（０）である。
0003723572.tif 000280
アトリビュート”subject”がプロセスである場合は、レスポンダのサブジェクトの割り当てられたテレネームである。その他の場合には、ニル（０）〔又は、そのテレネーム〕である。
0003723572.tif 000281
レスポンダのオブザーバによって保持されたオブジェクトである。
アダプテーション（Adaptations）
0003723572.tif 000282
２つのコンタクトは、それらの各アトリビュート”subjectName”に従って、同等となる。
４．２５  コンタクティド（Contacted）
0003723572.tif 000283
クラス（Class）
0003723572.tif 000284
構  成（Construction）
0003723572.tif 000285
レスポンダのアトリビュート”contacts”をクリアする。
プライベートインスタンスアトリビュート（Private Instance Attributes）
0003723572.tif 000286
レスポンダが保持しているコンタクトのセットである。
４．２６  ディクショナリ（Dictionary）
0003723572.tif 000287
クラス（Class）
0003723572.tif 000288
サブジェクトクラスの各メンバの各アイテムのキー（アーギュメント”keyClass”）及び値（アーギュメント”ValueClass”）自身がメンバであるクラスによって、パラメータ化される。
構  成（Construction）
0003723572.tif 000289
レスポンダのアイテムを、キーと値の間のアソシエイション（アーギュメント”keyAndValues”）にする。
２つの提案されたキーが等しい場合には、エクセプション（”keyDuplicated”）が送出され、提案されたキーがキーとして不適切な場合には、エクセプション（”keyInvalid”）が送出され、オブジェクトのナンバが奇数である場合には、エクセプション（”ObjectUnapaired”）が送出される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000290
レスポンダに新しいアソシエイションが含まれる。すなわち、第１のオブジェクト（アーギュメント”key”）がアソシエイションのキーとして、第２のオブジェクト（アーギュメント”value”）がアソシエイションの値として、それぞれ含められる。
提案されたキーが不適切な場合、又はレスポンダが既に含んでいるアソシエイション中のキーに等しい場合には、エクセプション（”keyInvalid”）が送出される。
0003723572.tif 000291
キーがそのオブジェクト（アーギュメント”key”）に等しいアソシエイションをレスポンダから除外し、廃棄して、そのアソシエイションの値をリターンする。
表明されたキーが不適切な場合には、エクセプション（”KeyInvalid”）が送出される。
0003723572.tif 000292
値がそのオブジェクト（アーギュメント”value”）に等しいアソシエイションをレスポンダに残し、そのアソシエイションのキーをリターンする。レスポンダが、このようなアソシエイションを幾つか含む場合、選択されるものについては、定義されていない。レスポンダが何も含んでいない場合には、ニル（０）がリターンされる。
0003723572.tif 000293
キーがそのオブジェクト（アーギュメント”key”）に等しいアソシエイションをレスポンダに残し、そのアソシエイションの値をリターンする。
表明されたキーが不適切な場合には、エクセプション（”KeyInvalid”）が送出される。
0003723572.tif 000294
キーが第１のオブジェクト（アーギュメント”currentKey”）に等しいアソシエイションをレスポンダに残し、そのアソシエイションのキーを廃棄し、そして、そのキーに代えて、第２のオブジェクト（アーギュメント”newKey”）を代替する。このオペレーションは、オペレーション”drop”及び”add”を用いたかのように行われる。
表明された又は提案されたキーが不適切であるか、又は提案されたキーがレスポンダに既に含まれているアソシエイション中のキーに等しい場合には、エクセプション（”KeyInvalid”）が送出される。
0003723572.tif 000295
キーが第１のオブジェクト（アーギュメント”key”）に等しいアソシエーションをレスポンダが含む場合には、そのアソシエイションの値に代えて、第２のオブジェクトを代替する（アーギュメント”value”）。
その他の場合には、レスポンダ内に新しいアソシエイションを含める。これは、第１のオブジェクト（アーギュメント”key”）をアソシエーションのキーとして含み、第２のオブジェクトをアソシエーションの値として含むものである。
提案されたキーが不適切な場合には、エクセプション（”KeyInvalid”）が送出される。
0003723572.tif 000296
レスポンダの値を２つのキー（アーギュメント”key 1”及び”key 2”）に置き換える。
表明されたキーが不適切な場合には、エクセプション（”KeyInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000297
ただ１つのアソシエーションのみが含められる。アソシエーションは、アソシエーションに等しい現存のアイテムを排除及び廃棄した後に、新しいアイテムとして含められる。
0003723572.tif 000298
同じキーに対応する値がそれぞれ等しい場合だけ、２つのディクショナリは同等である。
４．２７  エクセプション（Exception）
0003723572.tif 000299
クラス（Class）
0003723572.tif 000300
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000301
レスポンダによりメソッドの異常終了を起こさせることによって、現存のメソッドの遂行を終了する。
アダプテーション（Adaptations）
0003723572.tif 000302
２つのエクセプションは、同一のクラスのインスタンスである場合にのみ、同等となる。
４．２８  エグゼキュート（Executed）
0003723572.tif 000303
クラス（Class）
0003723572.tif 000304
このクラスは、シールされている。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000305
レスポンダを遂行し、レスポンダが正常終了した場合には、ニル（０）をリターンし、エクセプションが供給されたクラス（アーギュメント”exception”）のメンバであった場合には、レスポンダを異常終了させるエクセプションをリターンする。レスポンダは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
レスポンダが供給されたクラスのメンバではないエクセプションを送出した場合には、エクセプション（”Exception”）が送出される。
注：そのクラスは、”Exception”又はそのサブクラスであるべきである。
0003723572.tif 000306
レスポンダを遂行する。レスポンダは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
レスポンダがエクセプションを送出する場合に、エクセプション（”Exception”）が送出される。
0003723572.tif 000307
プレコンディション（アーギュメント”precondition”）が真（true）”である場合には、レスポンダを遂行し、その他の場合には、遂行オブジェクト(アーギュメント”false”）を遂行する。選択された実行オブジェクトは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
選択された実行オブジェクトがエクセプションを送出する場合に、エクセプション（”Exception”）が送出される。
0003723572.tif 000308
プレコンディションが”真（true）”である場合にのみ、レスポンダを遂行する（アーギュメント”precondition”）。レスポンダは、レスポンダ自身のフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
レスポンダがエクセプションを送出する場合に、エクセプション（”Exception”）が送出される。
0003723572.tif 000309
レスポンダを不特定回数遂行し、レスポンダが異常終了したら、続行せずに、エクセプションを送出する。レスポンダは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
レスポンダがエクセプションを送出する場合に、エクセプション（”Exception”）が送出される。
0003723572.tif 000310
要求された回数（アーギュメント”repetitions”）がレスポンダを遂行し、レスポンダが異常終了したら、続行せずに、エクセプションを送出する。インテジャが負数であれば、オペレーションは無効となる。レスポンダは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
このオペレーションは、レスポンダの各遂行の前に、前回の遂行の番号に１を加えたインテジャをスタックにプッシュする。
レスポンダがエクセプシャンを送出する場合に、エクセプシャン（”Exception”）が送出される。
注：このオペレーションは、スタックにプッシュするインテジャをポップすることはない。
0003723572.tif 000311
実行オブジェクト（アーギュメント”precondition”）を繰り返し遂行し、スタックからブーリアンをポップする。そして、そのブーリアンが”真（true）”である場合にのみ、レスポンダを遂行する。そのブーリアンが”偽（false）”である場合には、オペレーションは正常終了する。実行オブジェクトが異常終了した場合には、このオペレーションは、続行せずに、エクセプションを送出する。実行オブジェクトは、レスポンダのフレーム及びプロバティではなく、リクエスタのフレーム及びプロパティにアクセスする。
実行オブジェクトがエクセプションを送出する場合には、エクセプション（”Exception”）が送出され、ポップされるオブジェクトがブーリアンでない場合は、エクセプション（”ResultInvalid”）が送出され、ポップされるべきオブジェクトがスタックに存在しない場合には、エクセプション（”ResultMissing”）が送出される。
４．２９  実行エクセプション（Execution Exception）
0003723572.tif 000312
クラス（Class）
0003723572.tif 000313
サブクラス（subclasses）
0003723572.tif 000314
アーギュメントは、アーギュメントのコンストレイントを満足していない。
0003723572.tif 000315
アーギュメントは、スタックに存在していない。
0003723572.tif 000316
アトリビュートは、リードオンリであるため、セットすることはできない。
0003723572.tif 000317
クラスは、現在のプロセスのアトリビュート”privateClasses”でも、現在のプレイスのアトリビュート”publicClasses”でもない。
0003723572.tif 000318
フィーチャは、不適切にエスカレートされている。
0003723572.tif 000319
識別子は、レスポンダのアクセス可能なフィーチャを示していない。
0003723572.tif 000320
エンジンは、インストラクションを完全にインプリメントすることに失敗している。
0003723572.tif 000321
識別子は、現在のメソッドにアクセス可能なプロパティを示していない。
0003723572.tif 000322
オブジェクトに対するリファレンスは、そのオブジェクトの変更を妨げている。
0003723572.tif 000323
リファレンスは、無効である。
0003723572.tif 000324
スタックがクリアされているときに、フィーチャは、要求されている。
0003723572.tif 000325
リザルトは、そのリザルトのコンストレイントを満たしていない。
0003723572.tif 000326
リザルトは、スタック上に存在していない。
0003723572.tif 000327
識別子は、変数を示していない。
４．３０  フィーチャ（Feature）
0003723572.tif 000328
クラス（Class）
0003723572.tif 000329
このクラスは、シールされる。
構  成（Construction）
0003723572.tif 000330
レスポンダの固有のアトリビュートを、同じ名前のアーギュメンント（アーギュメント（”exceptions”及び”isPublic”）にする。アーギュメントがニル（０）の場合は、対応するアトリビュートはクリアされか、又は”偽（false）”とされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000331
レスポンダが定義するフィーチャによって送出されたエクセプションがメンバであるクラスを示す識別子である。この識別子は、レスポンダを含むインターフェースのアトリビュート”vocabulary”に従ってインプリメントされる。
0003723572.tif 000332
レスポンダが定義するフィーチャがパブリックであるか否か、すなわちプライベートでないか否か。
４．３１  ハッシュド（Hashed）
0003723572.tif 000333
クラス（Class）
0003723572.tif 000334
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000335
レスポンダのハッシュである。
４．３２  識別子（Identifier）
0003723572.tif 000336
クラス（Class）
0003723572.tif 000337
アダプテーション（Adaptations）
0003723572.tif 000338
任意の識別子は、そのテキストに従って、他の識別子の後となる。
0003723572.tif 000339
任意の識別子は、そのテキストに従って、他の識別子の前となる。
0003723572.tif 000340
２つの識別子は、そのテキストに従って、同一となる。
変  換（Conversions）
0003723572.tif 000341
識別子のテキストとして有効なストリングは、その識別子を生成する。
４．３３  インプリメンテーション（Implementation）
0003723572.tif 000342
クラス（Class）
0003723572.tif 000343
構  成（Construction）
0003723572.tif 000344
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”classMethods”、”fromMethods”、”instanceMethods”、”properties”、”setMethods”、”superclasses”、”toMetjods”及び”vocabulary”）とする。アーギュメントがニル（０）であるが、対応するアトリビュートはニル（０）であることが許可されない場合には、対応するアトリビュートはクリアされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000345
レスポンダを組み込んでいるクラスに固有のソリッド、すなわち、許可されないオペレーション”αSet”以外の、オペレーション”αGet”を含むクラスオペレーションのためのメソッドである。各値は、関連付けられたキーが示すオペレーションの遂行のためのメソッドである。
0003723572.tif 000346
レスポンダを組み込んでいるクラスに固有のメソッド、すなわち、他のクラスから変換するためのメソッドである。各値は、関連付けられたキーが示すクラスからの変換のためのメソッドである。
注：クラス”Dictionary”のインプリメンテーションにおいて、特定されたクラスがクラス”List”である場合、その変換は、そのレスポンダがクラス”Dictionary”であり、そのシグニチャが”List: op（list: protected List）Dictionary”である。
0003723572.tif 000347
レスポンダを組み込んでいるクラスに固有のメソッド、すなわち、オペレーション”αSet”以外の、オペレーション”αGet”を含むインスタンスオペレーションのためのメソッドである（アトリビュート”setMethods”参照）。各値は、関連付けられたキーを示すオペレーションを遂行するためのメソッドである。
0003723572.tif 000348
レスポンダを組み込んでいるクラスに固有のプロパティの識別子である。ここで、これらの識別子の順序は、ここに開示されたインストラクションセットのインプリメントにおいて意味を持たない。しかしながら、そのプロパティの順序は、アペンディクスＢに開示されたエンコード則において意味を持つ。
0003723572.tif 000349
インスタンスオペレーション”αSet”のための、レスポンダを組み込んでいるクラスに固有のメソッドである。各値は、関連付けられたキーが示すオペレーションを遂行するためのメソッドである。
0003723572.tif 000350
レスポンダを組み込んでいるクラスのインプリメンテーションイミディエートスーパークラスの識別子である。ただし、それらが、そのクラスのインターフェイスイミディエートスーパークラスと異なっていない場合には、ニル（０）である。クラスの正規の順序は、その識別子の順序であり、最後のクラスはフレーバとなるべきである。
0003723572.tif 000351
他のクラスを変換するための、レスポンダを組み込んでいるクラスに固有のメソッド。各値は、関連付けられたキーが示すクラスに変換するためのメソッドである。
注：クラス”Dictionary”のインプリメンテーションにおいて、特定されるクラスがクラス”List”である場合、その変換は、そのレスポンダがクラス”Dictionary”であり、そのシグニチャが”List: op（）List”である。
0003723572.tif 000352
レスポンダが参照するユーザ定義クラスである。ただし、それらが、クラスのインターフェースが参照するものである場合には、ニル（０）である。各値は、関連付けられたキーが示すクラスに対するサイテションである。アトリビュートは、レスポンダのアトリビュート”fromMethods”、”superClass”及び”toMethods”（他のものではない）のインタープリートを誘導する。
アダプテーション（Adaptations）
0003723572.tif 000353
２つのインプリメンテーションは、その固有のアトリビュートに従って、同一となる。
４．３４  インテジャ（Integer）
0003723572.tif 000354
クラス（Class）
0003723572.tif 000355
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000356
レスポンダの演算の剰余、被除数、及びインテジャ（アーギュメント”divisor”）、すなわち除数をリターンする。前者の符号はリザルトを示す。
除数がゼロである場合には、エクセプション（”DivisionByZero”）が送出される。
0003723572.tif 000357
レスポンダの演算の商、被除数、及びインテジャ（アーギュメント”divisor”）、すなわち除数をリターンする。
除数がゼロである場合には、エクセプション（”divitionByZero”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000358
そのリザルトはインテジャである。
0003723572.tif 000359
アーギュメントが実数である場合、リザルトは実数である。アーギュメントがインテジャである場合、リザルトはインテジャである。
0003723572.tif 000360
アーギュメントが実数である場合、リザルトは実数である。アーギュメントがインテジャであり、リザルトが正しいと思われる場合には、リザルトはインテジャである。その他の場合には、リザルトは実数である。
0003723572.tif 000361
オペレーション”add”について述べたものと同じである。
0003723572.tif 000362
そのリザルトは、インテジャである。
0003723572.tif 000363
オペレーション”add”について述べたものと同じである。
変  換（Conversions）
0003723572.tif 000364
ビット”ゼロ”及び”１”は、各々、ゼロ及び１を生ずる。
0003723572.tif 000365
あるインテジャの変換によって生成されることができるビットストリングは、そのインテジャを生ずる。
0003723572.tif 000366
ブーリアン”偽（false）”及び”真（true）”は、各々、ゼロ及び１を生ずる。
0003723572.tif 000367
キャラクタは、そのキャラクタのユニコードのコードである［０，６５５３５］の範囲のインテジャを生ずる。
0003723572.tif 000368
オクテットは、最初にオクテットのオクテットストリングへの変換のリザルトを生成し、次にそのオクテットストリングのインテジャへの変換のリザルトを生成する。
0003723572.tif 000369
あるインテジャの変換によって生成されることができるオクテットストリングは、そのインテジャを生ずる。
0003723572.tif 000370
実数は、オペレーション”truncate”の遂行のリザルトであるインテジャを生成する。
0003723572.tif 000371
キャラクタテレスクリプトにおける”インテジャ”のトークンのための構文規則に従うストリングは、対応するインテジャを生ずる。
４．３５  インターチェンジド（Interchanged）
0003723572.tif 000372
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000373
レスポンダ、すなわちそのクラスの特定のインスタンスが、相互変換可能である場合には、レスポンダのダイジェストであり、そうでない場合には、ニル（０）である。
４．３６  インターフェース（Interface）
0003723572.tif 000374
クラス（Class）
0003723572.tif 000375
構  成（Construction）
0003723572.tif 000376
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”classFeatures”、”instanceFeatures”、”isAbstract”、”sealedClassFeatures”、”sealedInstanceFeatures”、”superClass”及び”vocabulary”）とする。ここで、対応するアーギュメントがニル（０）であった場合には、アトリビュート”isAbstract”は”偽（faise）”とされ、アトリビュート”superclasses”は、クラス”Object”のみの識別子のリストとされる。又は、そのアトリビュートが、アトリビュート”isAbstract”、”superClasses以外である場合は、そのアトリビュートはクリアされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000377
レスポンダを組み込んでいるクラスに固有のクラスフィーチャである。各値は、その各値に関連付けられたキーが示すフィーチャのフィーチャ定義である。
0003723572.tif 000378
レスポンダを組み込んでいるクラスに固有のインスタンスフィーチャである。各値は、その値に関連付けられたキーが示すフィーチャのフィーチャ定義である。
0003723572.tif 000379
レスポンダを組み込んでいるクラスが、アブストラクトであるか否か。
0003723572.tif 000380
クラスフィーチャの識別子である。この識別子は、レスポンダを組み込んでいるクラスに固有であるか、又はそのクラスによって継承されたものであり、そして、そのクラスによってシールされている。
0003723572.tif 000381
インスタンスフィーチャの識別子である。この識別子は、レスポンダを組み込んでいるクラスに固有であるか、又はそのクラスによって継承されたものであり、そして、そのクラスによってシールされている。
0003723572.tif 000382
レスポンダを組み込んでいるクラスのインターフェースイミーディエートスーパークラスの識別子である。クラスの正規の順序は、それらの識別子の順序であり、最後のクラスはフレーバでなければならない。
0003723572.tif 000383
レスポンダが参照するユーザ定義クラスである。各値は、その値に関連付けられたキーが示すクラスに対するサイテションである。そのアトリビュートは、レスポンダのアトリビュート”superclasses”のインタープリートだけを誘導する。
アダプテーション（Adaptations）
0003723572.tif 000384
２つのインターフェースは、固有のアトリビュートに従って、同等となる。
４  ３７．  カーネルエクセプション（Kernel Exception）
0003723572.tif 000385
クラス（Class）
0003723572.tif 000386
サブクラス（subclasses）
0003723572.tif 000387
オブジェクトの提案されたクラスは、アブストラクトである。
0003723572.tif 000388
オブジェクトの提案された変換は、定義されていない。
0003723572.tif 000389
オブジェクトのプロパティは、コピーされることができない。
0003723572.tif 000390
ループは、中断されているか、又はループがないところに続いている。
0003723572.tif 000391
スタックのアイテムは、マークを含んでいない。
0003723572.tif 000392
オペレーション”initialize”のエスカレート前に、オブジェクトは、そのフィーチャうちの１つを使用することを試みている。
0003723572.tif 000393
オブジェクトの提案された通路は、不適切である。
0003723572.tif 000394
２つのセレクタは、同等である。
４．３８  レキシコン（Lexicon）
0003723572.tif 000395
クラス（Class）
0003723572.tif 000396
サブジェクトクラスの各メンバの各アイテムの値それ自身がメンバであるクラス（アーギュメント”valueClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000397
レスポンダのアイテムを、キーと値の間のアソシエーションとする（アーギュメント”keyAndValues”）。
２つの提案されたキーが等しい場合には、エクセプション（”keyDuplicated”）が送出され、提案されたキーが不適切である場合には、エクセプション（”keyInvalid”）が送出され、オブジェクトのナンバが奇数である場合には、エクセプション（”ObjectsUnpaiered”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000398
そのアトリビュートは、シールされている。そのアトリビュート”ofClass”、”classId”、”isInstance”、”isOptional”及び”passage”は、各々、クラス”Identifier”、クラス”Identifier”の識別子、”真（true）”、”偽（false）”及び”byCopy”を示す。
変  換（Conversions）
0003723572.tif 000399
キーがレキシコンのコンストレイントを満たすディクショナリは、そのレキシコンを生成する。
４．３９  リスト（List）
0003723572.tif 000400
クラス（Class）
0003723572.tif 000401
サブジェクトクラスの各メンバの各アイテム自身がメンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000402
レスポンダのアイテムを、ポジションが左から右にかけて増大するオブジェクト（アーギュメント”items”）とする。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000403
新しいアイテムとして、レスポンダ内にオブジェクト（アーギュメント”item”）を含ませる。このアイテムは、そのポジションが、インテジャ（アーギュメント”position”）に等しいアイテムである。また、含められたアイテムに等しいポジションの各アイテムのポジション、又は含められたアイテムに後続するポジションの各アイテムのポジションは、１つずつ増大する。
提案されたアイテムが、そのようなアイテムとして不適切である場合には、エクセプション（”ItemInvalid”）が送出され、又は提案されたポジションがそのようなものとして不適切である場合には、エクセプション（”PositionInvalid”）が送出される。
0003723572.tif 000404
ポジションがインテジャ（アーギュメント”position”）に等しいアイテムを、レスポンダから除外し、リターンする。除外されたアイテムのポジションに続くポジションの各アイテムのポジションは、１つずつ減少する。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”）が送出される。
0003723572.tif 000405
オブジェクト（”item”）に等しく、そのポジションがインテジャの前ではないアイテムのポジションを、レスポンダに残して、リターンする（”initioalPosition”）。レスポンダが複数のそのようなアイテムを有する場合、それらのポジションの中で最小なものを選択する。レスポンダが上述のようなアイテムを持たない場合には、ニル（０）をリターンする。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”が送出される。
0003723572.tif 000406
ポジションがインテジャ（アーギュメント”position”）に等しいアイテムを、レスポンダに残し、リターンする。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”）が送出される。
0003723572.tif 000407
ポジションが第１のインテジャ（アーギュメント”currentPosition”）に等しいレスポンダのアイテムのポジションを、第２のインテジャ（アーギュメント”newPosition”）に変更する。このオペレーションは、オペレーション”drop”が要求される後ではなくその前に第２のインテジャがインタープリートされることを除いて、オペレーション”drop”及び”add”を用いたかのように、これを選択する。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”）が送出される。
0003723572.tif 000408
ポジションがインテジャ（アーギュメント”position”）に等しい新しいアイテムが存在する場合、すなわち新しいアイテムが付加されていない場合、レスポンダからそのアイテムを除外する。そして、新しいアイテムとしてそのポジションにオブジェクト（アーギュメント”item”）を含める。
表明されたアイテムが不適切な場合には、エクセプション（”ItemInvalid”）が表明され、表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”）が送出される。
0003723572.tif 000409
２つのポジション（アーギュメント”positionl”及び”position2”）を占めるレスポンダのアイテムを転置する。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid"）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000410
そのオペレーションは、除外されたアイテムのポジションの後にある各オブジェクトのポジションを１つだけ減少させる。
0003723572.tif 000411
新しく含められたアイテムのポジションは、そのリストの新しいレングスである。
0003723572.tif 000412
２つのリストは、同じポジションに存在するアイテムが同一である場合に、同一である。
0003723572.tif 000413
ストリームは、ポジションの増大する順序に従って、リストのアイテムを生成する。
変  換（Conversions）
0003723572.tif 000414
プロシージャは、同じレングスのリストを生成する。ここで、それの各アイテムは、プロシージャ内において同じポジションにあるアイテムのコピーである。
４．４０  マーク（Mark）
0003723572.tif 000415
クラス（Class）
0003723572.tif 000416
アダプテーション（Adaptations）
0003723572.tif 000417
２つのマークは、如何なるものでも同等である。
４．４１  ミーンズ（Means）
0003723572.tif 000418
クラス（Class)
0003723572.tif 000419
４．４２  ミーティングのエクセプション（Meeting Exception）
0003723572.tif 000420
クラス（Class）
0003723572.tif 000421
サブクラス（subclasses）
0003723572.tif 000422
そのペティションは、ペティショナに対してミーティングを拒絶している。
0003723572.tif 000423
ペティショナとペティショニは、同一であるか、又は既にミーティングしている。
0003723572.tif 000424
そのコンタクトは、ミーティングを示していない。
0003723572.tif 000425
ペティションは、許容された時間内にミートすることができない。
４．４３  ミーティングプレイス（Meeting Place）
0003723572.tif 000426
クラス（Class）
0003723572.tif 000427
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000428
オペレーションを要求しているエージェントと、ペティション（アーギュメント”petition”）が特定するエージェントとの間のミーティングを開始させる。また、アトリビュート”subject”が後者のものであるコンタクトをリターンする。後者のエージェントも、レスポンダを占有していなければならない。
ミーティングが異常終了した場合には、エクセプション（”MeetingException”）が送出され、レスポンダが現在のプレイスでない場合には、エクセプション（”ProcessNotCurrent”）が送出され、リクエスタの状態（state）が、”ミート（meet）”を妨げている場合には、エクセプション（”StateImProper”）が送出される。
0003723572.tif 000429
そのオペレーションを要求しているエージェントと、コンタクト（アーギュメント”contact”）のサブジェクトとの間のミーティングを終了させる。また、コンタクトのアトリビュート”subject”が既にニル（０）でない場合には、そのアトリビュートをニル（０）に設定する。ここで、サブジェクトもレスポンダを占有していなければならない。
コンタクトがミーティングのコンタクトでない場合には、エクセプション（”MeetingInvalid”）が送出され、レスポンダが現在のプレイスでない場合には、エクセプション（”ProcessNotCurrent”）が送出され、リクエスタの状態（state）がオペレーション”part”を妨げている場合には、エクセプション（”StateImproper”）が送出される。
0003723572.tif 000430
リクエスティングエージェントを含む全てのミーティングを終了し、エージェントをアイソレートする。
レスポンダが現在のプレイスでない場合には、エクセプション（”ProcessNotCurrent”）送出され、リクエスタの状態（state）がオペレーション”partAll”を妨げるる場合には、エクセプション（”StateInproper”）が送出される。
４．４４  メソッド（Method）
0003723572.tif 000431
クラス（Class）
0003723572.tif 000432
構  成（Construction）
0003723572.tif 000433
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”procedure”及び”valiables”）とする。ただし、アーギュメントがニル（０）である場合には、対応するアトリビュートはクリアされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000434
レスポンダのプロシージャである。
0003723572.tif 000435
レスポンタの変数の識別子である。この識別子の順序は、ここで開示されたインストラクションセットのインタープリートにおいては、重要な意味は持たない。ただし、インストラクションセットのアペンディクスＢに示されたエンコード則においては、変数の順序は意味のあるものである。
アダプテーション（Adaptations）
0003723572.tif 000436
２つのメソッドは、固有のアトリビュートに従って、同一となる。
４．４５  その他のエクセプション（Miscellaneous Exception）
0003723572.tif 000437
クラス（Class）
0003723572.tif 000438
サブクラス（subclasses）
0003723572.tif 000439
パターンの提案されたテキストは、構文的に誤っている。
0003723572.tif 000440
ランダムストリームの提案されたシード（seed）が、要求された範囲に存在しない。
４．４６  モディファイヤ（Modifier）
0003723572.tif 000441
クラス（Class）
0003723572.tif 000442
アダプテーション（Adaptations）
0003723572.tif 000443
２つのモディファイアは、各値が同一である場合にのみ同一となる。
４．４７  名前付き（Named）
0003723572.tif 000444
クラス（Class）
0003723572.tif 000445
構  成（Construction）
0003723572.tif 000446
レスポンダのアトリビュート”name”を、現在のプロセスに対等な、新しく割り当てられたテレネームとする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000447
レスポンダの割り当てられたテレネームである。
４．４８  ニル（Nil）
0003723572.tif 000448
クラス（Class）
0003723572.tif 000449
アダプテーション（Adaptations）
0003723572.tif 000450
２つのニル（０）は、如何なるものも同一である。
４．４９  ナンバ（Number）
0003723572.tif 000451
クラス（Class）
0003723572.tif 000452
このクラスはシールされている。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000453
レスポンダの絶対値をリターンする。
0003723572.tif 000454
レスポンダとナンバ（”number”）の算術的な合計をリターンする。
0003723572.tif 000455
レスポンダよりも算術的に大きい又は等しい、最小のインテジャをリターンする。
0003723572.tif 000456
レスポンダの算術的な商、被除数、及びナンバ（アーギュメント”divisor”）、すなわち除数をリターンする。
除数がゼロである場合には、エクセプション（”DivisionByZero”）が送出される。
0003723572.tif 000457
レスポンダよりも算術的に小さい又は等しい、最大のインテジャをリターンする。
0003723572.tif 000458
レスポンダとナンバ（”number”）の算術的な積をリターンする。
0003723572.tif 000459
レスポンダの算術的な負をリターンする。
0003723572.tif 000460
算術的にレスポンダに最も近い１つのインテジャをリターンするか、又は算術的にレスポンダに最も近い２つのインテジャうちの１つのインテジャをリターンする。
0003723572.tif 000461
レスポンダからナンバ（アーギュメント”subtrahend”）を減算した、算術的な差をリターンする。
0003723572.tif 000462
レスポンダを算術的に切り捨て、少数部分を除くことによって形成されたインテジャをリターンする。
アダプテーション（Adaptations）
0003723572.tif 000463
あるナンバは他のナンバに対して、最初のものが第２のものよりも大きい場合にのみ、後になる。
0003723572.tif 000464
あるナンバは他のナンバに対して、最初のものが第２のものよりも小さい場合にのみ、前になる。
0003723572.tif 000465
２つのインテジャは、数学的に等しい場合にのみ、同一となる。
４．５０  オブジェクト（Object）
0003723572.tif 000466
クラス（Class）
0003723572.tif 000467
構  成（Construction）
0003723572.tif 000468
レスポンダ、すなわち潜在的なオブジェクトをイニシアライズし、レスポンダをオブジェクトとする。
0003723572.tif 000469
レスポンダがオペレーション”discard”によって破壊されたときに、要求される。このオペレーションのためのメソッドは、そのメソッドのクラスに関して、オブジェクトを最終化（ファイナライズ：finalize）する。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000470
レスポンダがクラス”Class”でない場合には、レスポンダがインスタンスであるクラスである。また、レスポンダがクラス”Class”である場合には、クラス”Class”である。
0003723572.tif 000471
オクテットでのレスポンダのサイズ、すなわち、レスポンダの破壊により再び請求される記憶容量に近似的な量である。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000472
レスポンダに対するリファレンスだけを用いてオペレーションが要求された場合には、レスポンダをリターンする。その他の場合には、レスポンダのコピーをリターンする。
コピーが使用不可能な場合には、エクセプション（”CopyUnavailable”）が送出される。
0003723572.tif 000473
オブジェクト（アーギュメント”object”）がレスポンダに等しいか否かの表示をリターンする。
レスポンダ又はオブジェクトが、そのメソッドが固有であるクラスのメンバでない場合には、メソッドはオペレーションをエスカレートさせなければならない。クラス”Object”に対する固有のメソッドは、レスポンダとオブジェクトとが同一である場合にのみ、これら２つを等しいと見なす。
0003723572.tif 000474
一対のオブジェクト及び実行オブジェクト（アーギュメント”associations”）から、多くとも１つの実行オブジェクトを選択し遂行する。選択された１つの実行オブジェクトは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
オブジェクトがレスポンダに等しい場合、そのオブジェクトと対となっている実行オブジェクトが選択される。その他の場合において、オブジェクトがニル（０）であれば、そのオブジェクトと対となっている実行オブジェクトが選択される。上述した以外の場合には、如何なる実行オブジェクトも選択されない。
選択された実行オブジェクトがエクセプションを送出する場合には、エクセプション（”Exception”）が送出され、実行オブジェクトと対をなす２つのオブジェクトが同等の場合には、エクセプション（”SelectorDupulicated）が送出される。
インターナルインスタンスオペレーション（Internal Instance Operations）
0003723572.tif 000475
識別子（アーギュメント”identifier”)によって示されるレスポンダのアトリビュートをリターンする。アトリビュートは、アトリビュートについて規定されたパッセージに従う。
識別子のクエリファイヤが示すクラスが存在しない場合には、エクセプション（”ClassUnavailable”）が送出され、リクエスタにアクセス可能なレスポンダのアトリビュートを識別子が示していない場合には、エクセプション（”FeatureUnavailble”）が送出される。
0003723572.tif 000476
識別子（”identifier”）が示すクラスを現在のメソッドにリターンする。
クラスが存在しない場合には、エクセプション（”ClassUnavailable”）が送出される。
0003723572.tif 000477
識別子（アーギュメント”identifier”）によって示され、現在のメソッドが固有であるクラスに対して固有である、レスポンダのプロパティをリターンする。レスポンダが保護されている場合にのみ、リターンされるリファレンスは、保護されている。
識別子が不適切な場合には、エクセプション（”PropertyUndefined”）が送出される。
0003723572.tif 000478
識別子（アーギュメント”identifier”）が示す現在のメソッドの変数をリターンする。
識別子が不適切な場合には、エクセプション（”VariableUndefiend”）が送出される。
0003723572.tif 000479
オブジェクト（アーギュメント”attribute”）を、識別子（アーギュネント”identifier”）によって示されるレスポンダのアトリビュートにする。アトリビュートが存在する場合には、オペレーションは、最初にアトリビュートを廃棄する。オブジェクトは、アトリビュートについて規定されたパッセージに従う。
オブジェクトが、アトリビュートのコンストレイントを侵害した場合には、エクセプション（”ArgumentInvalid”）が送出され、アトリビュートがリードオンリである場合には、エクセプション（”AttributeReadOnly”）が送出され、識別子のクエリファイヤが表すクラスが存在しない場合には、エクセプション（”ClassUnavailable”）が送出され、識別子がリクエスタにアクセス可能なレスポンダのアトリビュートを示していない場合には、エクセプション（”FeatureUnavailable”）が送出される。
0003723572.tif 000480
オブジェクト（アーギュメント”property”）を、レスポンダのプロパティにする。ここで、このレスポンダのプロパティは、識別子（アーギュメント”identifier”）によって示され、現在のメソッドが固有のクラスに対して固有である。このオペレーションは、プロパティが存在する場合には、最初にプロパティを廃棄する。
識別子が不適切な場合には、エクセプション（”PropertyUndefined”）が送出される。
0003723572.tif 000481
オブジェクト（アーギュメント”variable”）を、識別子（アーギュメント”identifier”）が示す現在のメソッドの変数にする。オペレーションは、変数が存在する場合には、最初に変数を廃棄する。
識別子が不適切である場合には、エクセプション（”VariableUndefined”）が送出される。
４．５１  オクテット（Octet）
0003723572.tif 000482
クラス（Class）
0003723572.tif 000483
アダプテーション（Adaptations）
0003723572.tif 000484
２つのオクテットにおいて、同じビット番号の各ビットが等しくなく、且つ、第１のオクテットの最も高いビット番号のビットが第２のオクテットの最も高いビット番号のビットの後にある場合のみ、第１のオクテットは第２のオクテットの後となる。
0003723572.tif 000485
２つのオクテットにおいて、同じビット番号の各ビットが等しくなく、且つ、第１のオクテットの最も高いビット番号のビットが第２のオクテットの最も高いビット番号のビットの前にある場合のみ、第１のオクテットは、第２のオクテットの前となる。
0003723572.tif 000486
２つのオクテットは、どちらも他のオクテットの前にない場合にのみ、同一となる。
変  換（Conversions）
0003723572.tif 000487
ビットは、ビット［０］がそのビットに等しく、そのビット［１］〜［７］がゼロであるオクテットを生成する。
0003723572.tif 000488
ユニコードのコードが［０、１２７］の範囲内のインテジャであるキャラクタは、そのインテジャを変換することによりオクテットを生成する。
0003723572.tif 000489
［−１２８、１２７］の範囲内にあるインテジャは、そのインテジャの２の補数表現を形成するオクテットを生成する。ここで、ビット［７］は−１２８を表し、一方、ビット”ｎ”は、［０、６］の範囲内にある各”ｎ”について、２nを表す。
0003723572.tif 000490
１つのアイテムを有するオクテットストリングは、その１つのアイテムに等しいオクテットを生成する。
４．５２  オクテットストリング（Octet String）
0003723572.tif 000491
クラス（Class）
0003723572.tif 000492
構  成（Construction）
0003723572.tif 000493
レスポンダを、レスポンダ中のポジションが左から右にかけて増大するセグメントの連鎖（アーギュメント”segments”）にする。
アダプテーション（Adaptations）
0003723572.tif 000494
そのアトリビュートは、シールされている。そのアトリビュートのアトリビュート”ofClass”、”classId”、”isInstane”、”isOptional”及び”passage”は、各々、クラス”Octet”、”Octet”、”true”、”false”及び”byCopy”の識別子である。
0003723572.tif 000495
あるオクテットストリングは、より短いオクテットストリングのレングスをより長いオクテットストリングのものと同じにするために、全てゼロのオクテットが予め考慮されたかのように、他のオクテットストリングの後となる。
0003723572.tif 000496
あるオクテットストリングは、より短いオクテットストリングのレングスをより長いオクテットストリングのものと同じにするために、全てゼロのオクテットが予め考慮されたかのように、他のオクテットストリングの前となる。
変  換（Conversions）
0003723572.tif 000497
ビットは、最初にビットをオクテットに変換し、次にそのオクテットをオクテットストリングに変換することにより、オクテットストリングを生成する。
0003723572.tif 000498
レングスが”ｎ”であるビットストリングは、レングスが”ｉ”であるオクテットストリングを生成する。ここで、”ｎ”は、［８ｉ、８ｉ＋７］の範囲内にある。オクテットストリングのポジション”ｋ”にあるオクテットのビット”ｊ”が、（８ｋ−ｊ）≦ｎである場合には、オクテットのビット”ｊ”は、ビットストリングのポジション”（８ｋ−ｊ）”に存在するビットに等しい。そうでない場合には、オクテットのビット”ｊ”は、ゼロである。
0003723572.tif 000499
レングス２であるオクテットストリングの変換によって生成されることができるキャラクタは、そのオクテットストリングを生成する。
0003723572.tif 000500
［−２8n-1、２8n-1）の範囲内にあるインテジャ（インテジャ”ｎ”でありこれよりも小さくはない。）は、レングスが”ｎ”であるオクテットストリングを生成する。２の補数表現が用いられ、ポジションが１であるオクテットのビット［７］は−２8n-1を表し、オクテットストリングにおいてポジション”ｉ”にある他の全てのビット”ｊ”は２8(n-1)+jを表す。
0003723572.tif 000501
オクテットは、１つのアイテムだけがそのオクテットに等しいオクテットストリングを生成する。
0003723572.tif 000502
ストリングは、バイナリ（２進）テレスクリプトにおいて、ストリングをエンコードするための、”キャラクタ（characters）”トークンを生成する。
４．５３  オペレーション（Operation）
0003723572.tif 000503
クラス（Class）
0003723572.tif 000504
構  成（Construction）
0003723572.tif 000505
レスポンダのアトリビュートを、同じ名前のアーギュメント（アーギュメント”arguments”、”exceptions”、”isPublic”及び”result”）にする。ただし、アーギュメント”exceptions”又は”isPublic”がニル（０）であれば、対応するアトリビュートは、それぞれ、クリアされるか、又は”偽（false）”とされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000506
レスポンダが定義するオペレーションの０以上のアーギュメントに対するコンストレイントである。
ただし、それらが、数が変化する場合には、ニル（０）である。このとき、それぞれのものは、リファレンスによってパスされ、マーク以外の如何なるオブジェクトでもあり得る。リストの最初のアイテムは、スタックのトップにあるアーギュメントをコンストレインする。
0003723572.tif 000507
オペレーションがリザルトを有する場合には、レスポンダが定義するオペレーションのリザルトに対するコンストレイントである。その他の場合には、ニル（０）である。
アダプテーション（Adaptations）
0003723572.tif 000508
２つのオペレーションの定義は、オペレーション定義とフィーチャに固有のそれらのアトリビュートに従って、同一となる。
４．５４  オーダー（Ordered）
0003723572.tif 000509
クラス（Class）
0003723572.tif 000510
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000511
レスポンダがオブジェクト（アーギュメント”object”）の後にあるか否かの表示をリターンする。
そのレスポンダ又はそのオブジェクトが、メソッドが固有であるクラスのメンバでない場合に、そのメソッドはこのオペレーションをエスカレートする。
0003723572.tif 000512
レスポンダがオブジェクト（アーギュメント”Object”）の前にあるか否かの表示をリターンする。
そのレスポンダ又はそのオブジェクトが、メソッドが固有であるクラスのメンバでない場合に、そのメソッドはオペレーションをエスカレートする。
0003723572.tif 000513
レスポンダがオブジェクト（アーギュメント”object”）の後にある場合には、レスポンダをリターンする。その他の場合には、そのオブジェクトをリターンする。
0003723572.tif 000514
レスポンダがオブジェクト（アーギュメント”object”）の前にある場合には、レスポンダをリターンする。その他の場合には、そのオブジェクトをリターンする。
４．５５  パッケージ（Package）
0003723572.tif 000515
クラス（Class）
0003723572.tif 000516
構  成（Construction）
0003723572.tif 000517
レスポンダのアイテムをクラス（アーギュメント”items”）にして、レスポンダのアトリビュート”citation”をサイテションにする。このサイテションのアトリビュート”author”は、現在のプロセスの割り当てられたテレネームであり、サイテションの他のアトリビュートは、同じ名前のアーギュメント（アーギュメント”majorEdition”、”minorEdition”及び”title”）である。
２つのクラスが同一である場合には、エクセプション（”ItemDuplicated”）が送出され、現在のプロセスがクラスの仲間でない場合には、エクセプション（”ProcessNotPeer”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000518
そのアトリビュートは、シールされている。そのアトリビュートのアトリビュート”ofClass”、”clssId”、”isInstance”、”isOptional”及び”passage”は、クラス”Class”、”true”、”false”及び”byCopy”の識別子である。
４．５６  パターン（Pattern）
0003723572.tif 000519
クラス（Class）
0003723572.tif 000520
構  成（Construction）
0003723572.tif 000521
レスポンダのテキストをストリング（アーギュメント”text”）にする。提案されたテキストが不適切である場合には、エクセプション（”PatternInvalid”）が送出される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000522
レスポンダにマッチ（match）する最も長い可能な最初のサブストリングに対して、ストリングをサーチする（アーギュメント”string”）。このサーチは、インテジャが供給された場合には、所定のポジション（アーギュメント”position”）から開始される。その他の場合には、ポジション１から開始される。
オペレーションがマッチを見いだせない場合には、ニル（０）をリターンする。その他の場合には、２つのインテジャのリストをリターンする。ここで、２つのインテジャのリストをリターンする場合、第１のインテジャは、マッチしたストリング中の最初のキャラクタのポジジョンである。また、第２のインテジャは、マッチしたストリング中の最後のキャラクタのポジションに１を加えたものである。
提案されたポジションが不適切な場合、すなわちゼロ以下であった場合には、エクセプション（”PositionInvalid”）が送出される。
注：リスト中の２つのインテジャは、オペレーション”substring”のアーギュメントとして適切である。
0003723572.tif 000523
レスポンダにマッチする最も長い可能なサブストリングに対して、ポジションが１のところから始まる第１のストリング（アーギュメント”string”）をサーチする。そして、そのストリングを、各マッチを第２のストリング（アーギュメント”replacement”）のコピーに置換することによって、修正する。
このオペレーションは、インテジャ（アーギュメント”repetitions”）がゼロである場合には、全てのマッチを見いだし、そうでない場合には、そのインテジャと同数のマッチを見いだす。連続するマッチは、重なり合わない。あるマッチのレングスがゼロであれば、その次のマッチのサーチは、次のポジションで始まる。このオペレーションは、実際に見いだされたマッチの数をリターンする。
代替ストリング（replacement string）は、各々の個々の代替のために、仕立てられることができる。
直前に逆スラッシュ（”＼”）が置かれることなく、代替ストリング中にアンド記号（”＆”）が現れた場合、代替されるサブストリングのコピーは、それ自身、アンド記号（”＆”）に変えられ、修正された代替ストリングは、サブストリングに変えられる。
アダプテーション（Adaptations）
0003723572.tif 000524
２つのパターンは、それらのテキストに従って、同一となる。
変  換（Conversions）
0003723572.tif 000525
パターンのテキストとして適切なストリングは、そのパターンを生成する。
４．５７  パーミット（Permit）
0003723572.tif 000526
クラス（Class）
0003723572.tif 000527
構  成（Construction）
0003723572.tif 000528
レスポダのアトリビュートを、同じ名前のアーギュメント（アーギュメント”age”、”charges”及び”extent”）にする。アトリビュートがブーリアンである場合には、レスポンダの他の全ての固有なアトリビュートを”真（true）”とし、その他の場合には、ニル（０）とする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000529
最大値が課せられている場合には、レスポンダのサブジェクトにおいて、秒で計測された、許可された最大のエージである。その他の場合には、ニル（０）である。
0003723572.tif 000530
最大値が課せられている場合には、レスポンダのサブジェクトにおいて、許可された最大のオーセンティシティである。その他の場合には、ニル（０）である。
0003723572.tif 000531
最大値が課せられている場合には、レスポンダのサブジェクトにおいて、テレクリップで測定された、許可された最大のチャージである。その他の場合には、ニル（０）である。
0003723572.tif 000532
最大値が課せられている場合には、レスポンダのサブジェクトにおいて、オクテットで測定された、許可された最大のサイズである。その他の場合には、ニル（０）である。
0003723572.tif 000533
最大値が課せられている場合には、レスポンダのサブジェクトにおいて、許可された最大のプライオリティである。その他の場合には、ニル（０）である。
0003723572.tif 000534
レスポンダのサブジェクトがオペレーション”charge”を要求することが許可されるか否か。
0003723572.tif 000535
レスポンダのサブジェクトがクラス”Process”のサブクラスの”オペレーション”new”を要求することが許可されるか否か。
0003723572.tif 000536
レスポンダのサブジェクトが、仲間のプロセス（peer process）の能力を減少させるように、仲間のプロセスのアトリビュート”nativepermit”をセットすることが許可されるか否か。
また、他の方法でレスポンダのサブジェクトにそのような権利が与えられている場合には、レスポンダのサブジェクトが、プロセスのアトリビュート”regionalPermit”又は”localPermit”をセットすることが許可されているか否か。
0003723572.tif 000537
レスポンダのサブジェクトがオペレーション”go”を要求することが許可されているか否か。
0003723572.tif 000538
レスポンダのサブジェクトが、仲間のプロセスの能力を増大させるように、仲間のプロセスのアトリビュート”nativePermit”をセットすることが許可されているか否か。
また、他の方法でレスポンダのサブジェクトにそのような権利が与えられている場合には、レスポンダのサブジェクトが、プロセスのアトリビュート”regionalPermit”又は”localPermit”をセットすることが許可されているか否か。
0003723572.tif 000539
レスポンダのサブジェクトが再スタートすることが許可されているか否か。
0003723572.tif 000540
レスポンダのサブジェクトがオペレーション”send”を要求することが許可されているか否か。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000541
レスポンダとアーギュメント（アーギュメント”permit”）の論理積をリターンする。
アダプテーション（Adaptations）
0003723572.tif 000542
２つのパーミットが同一でなく、第１のパーミットの固有のアトリビュートが第２のパーミットの固有のアトリビュートの前にあるのではなく、且つ第１のパーミットの少なくとも１つの固有のアトリビュートが第２のパーミットの固有のアトリビュートの後にある場合にのみ、第１のパーミットは、第２のパーミットの後になる。
0003723572.tif 000543
２つのパーミットが同一でなく、第１のパーミットの固有のアトリビュートが第２のパーミットの固有のアトリビュートの後にあるのではなく、且つ第１のパーミットの少なくとも１つの固有のアトリビュートが第２のパーミットの固有のアトリビュートの前にある場合にのみ、第１のパーミットは、第２のパーミットの前になる。
0003723572.tif 000544
２つのパーミットは、それらの固有のアトリビュートに従って同一となる。
４．５８  ペティション（Petition）
0003723572.tif 000545
クラス（Class）
0003723572.tif 000546
構  成（Construction）
0003723572.tif 000547
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”agentClass”、”agentName”及び”maximumWait”）とする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000548
レスポンダが定義するミーティングのペティショニーがメンバであるクラス”agente”のサブクラスであるクラスに対するサイテションである。ただし、そのようなコンストレイントが課せられていない場合は、ニル（０）である。
0003723572.tif 000549
レスポンダが定義するミーティングのペティショニのテレネームである。ただし、そのようなコンストレイントが課せられていない場合は、ニル（０）である。
0003723572.tif 000550
レスポンダが定義するミーティングが取り計られるべき時間と、ミーティングが要求された時間との間の、秒で示される、最大の許容される差である。ただし、そのようなコンストレイントが課せられていない場合は、ニル（０）である。ここで、インテジャが供給される場合、そのインテジャは、負数ではない。
アダプテーション（Adaptations）
0003723572.tif 000551
２つのペティションは、固有のアトリビュートに従って同一となる。
４．５９  ペティションド（Petitioned）
0003723572.tif 000552
クラス（Class）
0003723572.tif 000553
システムインスタンスオペレーション（System Instance Operations）
0003723572.tif 000554
コンタクト（アーギュメント”contact”）のサブジェクトがペティション（アーギュメント”petition”）を用いてレスポンダにミートする前に、正常に遂行される。このオペレーションが遂行されている間、コンタクトのサブジェクトのアトリビュートはニル（０）であり、オペレーションが正常終了した場合にのみ、その”サブジェクト”とされる。
ミーティングが拒絶された場合には、エクセプション（”MeetingDenied”）が送出される。クラスに固有のこのオペレーションのメソッドは、エクセプションを送出する。
0003723572.tif 000555
コンタクト（アーギュメント”contact”）のサブジェクトがレスポンダにミートした後に要求される。このオペレーションが要求される前に、エンジンは、コンタクトのアトリビュート”subject”をニル（０）にする。クラス”Petitioned”に固有のメソッドは、無効である。
４．６０  プレイス（Place）
0003723572.tif 000556
クラス（Class）
0003723572.tif 000557
構  成（Construction）
0003723572.tif 000558
レスポンダのアトリビュート”address”を、現在のプロセスのものの仲間である、新しく割り当てられたテレネームとし、レスポンダのアトリビュート”publicClasses”をクリアする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000559
レスポンダの割り当てられたテレアドレスである。
0003723572.tif 000560
パッケージ、クラスのセット、又はそれらの両方であり、これによって、レスポンダは、それの占有者に対してアクセス可能にする。リクエスタがプレイスである場合には、アトリビュートは、保護されないリファレンスである。その他の場合には、アトリビュートは、保護されたリファレンスである。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000561
割り当てられたテレネーム（アーギュメント”occupant”）を有するレスポンダの如何なる占有者をも終了させ、そのようなプロセスが存在したか否かの表示をリターンする。プロセスは、プロセスのネイティブパーミットを強制的に使い果すことによって終了される。
レスポンダが現在のプレイスでない場合には、エクセプション（”ProcessNotCurrent”）が送出され、現在のプロセスが占有者の仲間でない場合には、エクセプション（”ProcessNotPeer”）が送出され、リクエスタの状態（state）がオペレーション”terminate”を妨げる場合には、エクセプション（”StateImproper”）が送出される。
システムインスタンスオペレーション（System Instance Operations）
0003723572.tif 000562
コンタクト（アーギュメント”contact”）のサブジェクトがレスポンダを占有する前に正常に遂行される。コンタクトのアトリビュート”subject”は、オペレーションが要求される場合には、ニル（０）である。ただし、オペレーションが正常終了した場合にのみ、コンタクトのアトリビュート”subject”は、サブジェクトとされる。
チケット共に到着するエージェントが供給される場合には、サブジェクトは、そのチケット（アーギュメント”ticket”）と共に到着するエージェントである。また、ニル（０）が供給される場合には、サブジェクトは、レスポンダにおいて、生成されているプロセスである。
パーミット（アーギュメント”permit”）は、サブジェクトの提案された初期ローカルパーミットである。
このオペレーションが正常終了した後、レスポンダがコンタクトされるオブジェクトである場合にのみ、エンジンは、レスポンダのアトリビュート”Contacted”内にコンタクトを含ませる。
コンタクトのサブジェクトが占有を拒絶される場合には、エクセプション（”OcupancyDenied”）が送出される。クラスに固有のオペレーションのためのメソッドは、エクセプションを送出する。
注：チケットが供給された場合、そのパーミットは、同一であり、これにより、そのパーミットは、チケットのアトリビュート”destinationPermit”を複写する。
0003723572.tif 000563
コンタクトのサブジェクト（アーギュメント”contact”）は、１度要求されたら、もはやレスポンダを占有しない。このオペレーションが要求されたとき、コンタクトのアトリビュート”subject”は、ニル（０）である。クラスに固有のこのオペレーションのためのメソッドは、無効である。
エージェントが供給された場合、サブジェクトは、チケット（アーギュメント”ticket”）と共にレスポンダを去るエージェントである。また、ニル（０）が供給された場合、レスポンダ内において破壊されるプロセスである。パーミット（アーギュメント”permit”）は、サブジェクトの現在のローカルパーミットである。
このオペレーションが遂行された後、レスポンダがコンタクトされるオブジェクトである場合にのみ、エンジンは、レスポンダのアトリビュート”contacted”からコンタクトを除外する。
４．６１  プリミティブ（Primitive）
0003723572.tif 000564
クラス（Class）
0003723572.tif 000565
このクラスはシールされる。
構  成（Construction）
0003723572.tif 000566
エクセプション（”FeatureUnavailable”）を送出する。
４．６２  プリミティブエクセプション（Primitive Exception）
0003723572.tif 000567
クラス（Class）
0003723572.tif 000568
サブクラス（subclasses）
0003723572.tif 000569
除数は、ゼロである。
４．６３  プロシージャ（Procedure）
0003723572.tif 000570
クラス（Class）
0003723572.tif 000571
アダプテーション（Adaptations）
0003723572.tif 000572
２つプロシージャのレングスが等しく、且つ同じポジションにあるアイテムが同一である場合にのみ、２つプロシージャは、同一である。
変  換（Conversions）
0003723572.tif 000573
アイテムが実行オブジェクトであるリストは、同じレングスのプロシージャを生成する。ここで、それの各アイテムは、同じポジションにあるアイテムのコピーである。
0003723572.tif 000574
バイナリ（２進）テレスクリプトであるオクテットストリングは、プロシージャを生成する。ここで、このプロシージャは、プロシージャのアイテムがバイナリテレスクリプトによりエンコードされるオブジェクトである。
0003723572.tif 000575
キャラクタテレクリプトであるストリングは、プロシージャを生成する。ここで、このプロシージャは、プロシージャのアイテムがキャラクタテレスクリプトによりエンコードされるオブジェクトである
４．６４  プロセス（Process）
0003723572.tif 000576
クラス（Class）
0003723572.tif 000577
このクラスは、シールされる。
構  成（Construction）
0003723572.tif 000578
レスポンダのアトリビュート”name”を、新しく割り当てられたテレネームである現在のプロセスの仲間にし、レスポンダのアトリビュートを、同じ名前のアーギュメント（アーギュメント”nativePermit”）にし、レスポンダの”privateClasses”アトリビュートを、アーギュメントがニル（０）でない場合には、同じ名前のアーギュメント（アーギュメント”privateClasses”）にし、その他の場合には、現在のプロセスと同じように特定されたアトリビュートにする。上述以外の場合は、レスポンダのコンタクトアトリビュートをクリアされたセットにする。
現在のプロセス内の実効的パーミットがオペレーション”new”を禁止し、そのパーミットが、その他の点で不適切である場合、又はオペレーション”entering”が異常終了した場合に、エクセプション（”PermitViolated”）が送出される。
注：クラス”Process”のサブクラスに固有のこのオペレーションのためのメソッドは、生成されたプロセスではなく、生成しているプロセスを、現在のプロセスとして見なす。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000579
レスポンダのブランドである。
現在のプロセスがレスポンダの仲間でない場合には、エクセプション（”ProcessNotPeer”）が送出される。
0003723572.tif 000580
レスポンダのローカルパーミットである。
リクエスタがレスポンダでなくレスポンダが占有するプレイスでもない場合には、エクセプション（”FeatureUnavailable”）が送出され、プロセスモデルと合致しない方法でアトリビュートを設定する試みがなされた場合には、エクセプション（”PermitViolated”）が送出される。
0003723572.tif 000581
レスポンダのネイティブパーミットである。
リクエスタがレスポンダでなくレスポンダの仲間でもない場合には、エクセプション（”FeatureUnavailable”）が送出され、プロセスモデルと合致しない方法でアトリビュートを設定する試みがなされた場合には、エクセプション（”PermitViolated”）が送出される。
0003723572.tif 000582
レスポンダの実効的パーミットである。
0003723572.tif 000583
レスポンダのリージョナルパーミットである。
リクエスタがレスポンダでなくエンジンプレイスでもない場合には、エクセプション（”FeatureUnavailable”）が送出され、プロセスモデルと合致しない方法でアトリビュートを設定する試みがなされた場合には、エクセプション（”PermitViolated”）が送出される。
0003723572.tif 000584
レスポンダが保持するクラスのセット、パッケージのセット、又はその両者のセットである。
現在のプロセスがレスポンダの仲間でない場合には、エクセプション（”ProcessNotPeer”）が送出される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000585
インテジャの量（アーギュメント”charges”）に従って、レスポンダの実際のチャージを増大させる。
レスポンダの実効的パーミットが使い尽くされた場合には、エクセプション（”PermitInadequate”）が送出され、現在のパーミットがオペレーション”charge”を禁止する場合には、エクセプション（”PermitViolated”）が送出される。
0003723572.tif 000586
プロシージャのチャージが生じた結果の現在のプロセスの実効的パーミット及び一時的なパーミット（アーギュメント”permit”）をもとに、プロシージャ（アーギュメント”procedure”）を遂行する。
プロシージャがエクセプションを送出する場合には、エクセプション（”exception”）が送出され、プロシージャの遂行が上述した実効的パーミットを侵害する場合には、エクセプション（”PermitViolatd”）が送出され、リクエスタが現在のプロセスでない場合には、エクセプション（”ProcessNotCurrent”）が送出される。
0003723572.tif 000587
プロシージャのチャージが生じた結果のレスポンダのオーナーの実効的パーミット及び一時的なパーミット（”permit”）をもとに、プロシージャ（アーギュメント”procedure”）を遂行する。プロシージャは、レスポンダのレフ−ム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
プロシージャが、エクセプションを送出する場合には、エクセプション（”Exception”）が送出され、プロシージャの遂行が上述した実効的パーミットを侵害している場合には、エクセプション（”PermitViolatd”）が送出され、リクエスタが現在のプロセスでない場合には、エクセプション（”ProcessNotCurrent”）が送出される。
プライベートインスタンスアトリビュート（Private Instance Attributes）
0003723572.tif 000588
秒で示された、レスポンダの実際のエージである。
0003723572.tif 000589
テレクリック（teleclick）で示された、レスポンダの実際のチャージである。
0003723572.tif 000590
レスポンタの実際のプライオリティ、すなわち、レスポンダの選択されたプライオリティである。
プライベートインスタンスオペレーション（Private Instance Operations）
0003723572.tif 000591
要求された秒数（アーギュメント”seconds”）が経過するまでレスポンダをブロックする。その秒数が負数である場合には、そのオペレーションは無効となる。
システムインスタンスオペレーション（System Instance Operations）
0003723572.tif 000592
レスポンダの生成の後、そのレスポンダを開始させるためにニル（０）（アーギュメント”cause”）を伴って、要求される。レスポンダが保持するパーミットのアトリビュート”canRestart”が”真（true）”である場合には、このオペレーションは、レスポンダがエクセプションのために異常終了したときに、レスポンダを再スタートさせるために上記エクセプション（アーギュメント”cause”）を伴って要求される。
レスポンダが、エクセプションを正常にキャッチすることができなかった場合には、エクセプション（”Exception”）が送出される。
0003723572.tif 000593
レスポンダのアトリビュート”nativePermit”、”refionalPermit”又は”localPermit”が一度設定された後に、レスポンダの能力を減少させるように再び設定される場合に要求される。その識別子（アーギュメント”permit”）は、上述した３つのアトリビュートのうちの何れかが設定されたものである。そのオペレーションのリザルトがニル（０）でない場合、エンジンは、レスポンダのスレッドにそのリザルトを送出する。このクラスに固有のメソッドは、単にニル（０）をリターンする。
ブーリアン（アーギュメント”isRelocated”）は、エンジンがそのオペレーションを要求するように導いたイベントが、レスポンダが占領しているプレイス以外のプレイス、或いは、オペレーション”go”又は”send”の遂行中にそのオペレーションが要求された場合にはレスポンダの目的地以外のプレイス（例えば、パーガトリ）に、エンジンがレスポンダを転送するようにも導いているか否かを指示する。
後者の場合、すなわちオペレーション”go”又は”send”の遂行中にオペレーションが要求された場合には、オペレーション”go”又は”send”は、現在のオペレーションのリザルトを、それがニル（０）でなければ、送出する。
注：レスポンダの新しく設定されたパーミットが著しく制限的である場合、このオペレーションを遂行するレスポンダの能力は、プロセス終了のルールによって制限される。
アダプテーション（Adaptations）
0003723572.tif 000594
”Copy Unavailable”のメンバが送出される。
４．６５  プロセスエクセプション（Process Exception）
0003723572.tif 000595
クラス（Class）
0003723572.tif 000596
サブクラス（subclasses）
0003723572.tif 000597
あるプロセスは、他のプロセスに対して、他のプロセスの実効的パーミットを使い尽くすように指示することを試みている。
0003723572.tif 000598
プロセスは、リソースを独占的に使用することなくリソースの状態を操作している。
0003723572.tif 000599
リソースの状態を示すことを意図した識別子は、リソースの状態を示していない。
0003723572.tif 000600
プロセスは、プロセスが保持するパーミットを使い尽くしている。
0003723572.tif 000601
プロセスは、プロセスが保持するパーミットを侵害している。
0003723572.tif 000602
プロセスは、クラスの現在のメンバ以外のフィーチャを要求している。
0003723572.tif 000603
オブジェクトは、オブジェクトの仲間ではないプロセスを操作している。
0003723572.tif 000604
リソースの使用は、要求された秒数においては、取得することができない。
0003723572.tif 000605
プロセスは、要求を妨げる状態にあるとき、フィーチャを要求している。
４．６６  プログラミングエクセプション（Programming Exception）
0003723572.tif 000606
クラス（Class）
0003723572.tif 000607
４．６７  有資格識別子（Qualified Identifier）
0003723572.tif 000608
クラス（Class）
0003723572.tif 000609
４．６８  ランダムストリーム（RandomStream）
0003723572.tif 000610
クラス（Class）
0003723572.tif 000611
構  成（Construction）
0003723572.tif 000612
レスポンダのシードをインテジャ（アーギュメント”seed”）とし、レスポンダのアトリビュート”current”をニル（０）とし、レスポンダのアトリビュート”next”を定義されないままにしておく。
提案されたシードが不適切な場合には、エクセプション（”SeedInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000613
このアトリビュートは、インテジャである。
0003723572.tif 000614
このアトリビュートは、ニル（０）ではなくインテジャである。
４．６９  実数（Real）
0003723572.tif 000615
クラス（Class）
0003723572.tif 000616
アダプテーション（Adaptations）
0003723572.tif 000617
そのリザルトは、実数である。
0003723572.tif 000618
そのリザルトは、実数である。
0003723572.tif 000619
そのリザルトは、実数である。
0003723572.tif 000620
そのリザルトは、実数である。
0003723572.tif 000621
そのリザルトは、実数である。
0003723572.tif 000622
そのリザルトは、実数である。
変  換（Conversions）
0003723572.tif 000623
ビットは、最初にそのビットのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する。
0003723572.tif 000624
ビットストリングは、最初にそのビットストリングのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する
0003723572.tif 000625
ブーリアンは、最初にそのブーリアンのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する。
0003723572.tif 000626
キャラクタは、最初にそのキャラクタのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する。
0003723572.tif 000627
インテジャは、そのインテジャに算術的に等しい実数を生成する。
0003723572.tif 000628
オクテットは、最初にそのオクテットのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する。
0003723572.tif 000629
オクテットストリングは、最初にそのオクテットストリングのインテジャへの変換のリザルトを生成し、次にそのインテジャの実数への変換のリザルトを生成する。
0003723572.tif 000630
ストリングは、キャラクタテレスクリプトにおける実数のトークンのための構文規則に従い、対応する実数を生成する。
４．７０  リファレンスド（Referenced）
リファレンスド（Referenced）
クラス（Class）
0003723572.tif 000631
このクラスは、シールされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000632
レスポンダに対するリファレンスが保護されているか否か。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000633
レスポンダに対するリファレンスが全く残っていない場合にのみ、レスポンダを破壊する。
0003723572.tif 000634
リファレンスされたオブジェクト（アーギュメント”reference”）がレスポンダであるか否か。
0003723572.tif 000635
保護されたリファレンスをレスポンダにリターンする。
0003723572.tif 000636
そのオペレーションを要求するために用いられたリファレンス自体が保護されている場合にのみ、レスポンダに対する２つの保護されたリファレンスをスタックにプッシュする。
４．７１  リソース（Resource）
0003723572.tif 000637
クラス（Class）
0003723572.tif 000638
構  成（Construction）
0003723572.tif 000639
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”conditon”及び”conditons”）とする。この２つのアーギュメントのうちの何れかがニル（０）である場合、２つのアーギュメントは、両方ともニル（０）でなくてはならない。この場合、アトリビュート”conditions”は、アトリビュート”condition”に等しい１つの識別子を含む。ここで、問題の識別子は、定義されていない。
個別の条件（コンデション：condition）、すなわちアトリビュート”Condition”が、セット内にない場合、すなわちアトリビュート”Conditions”内にない場合には、エクセプション（”ConditionUndefined”）が送出される。
プブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000640
レスポンダのコンデションのための識別子である。
現在のプロセスがアトリビュートを設定しようと試み、レスポンダの排他的な使用の権利が欠如している場合には、エクセプション（”ConditionUnvailable”）が送出される。
0003723572.tif 000641
レスポンダの可能なコンデションのための識別子である。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000642
レスポンダの使用の権利を取得し、プロシージャ（アーギュメント”procedure”）を遂行し、そして、そのプロシージャが異常終了したとしても、レスポンダを放棄する。そのプロシージャは、レスポンダのフレーム及びプロパティではなく、リクエスタのフレーム及びプロパティにアクセスする。
ブーリアン（アーギュメント”exclusive”）が存在し、そのブーリアンが”真（true）”である場合にのみ、レスポンダの使用の権利は排他的となる。ニル（０）でない識別子のセット（アーギュメント”conditions”）が供給される場合にのみ、レスポンダが識別子が示す状態にあるときに、レスポンダの使用が許可される。
インテジャ（アーギュメント”maximumWait”）が供給された場合、そのオペレーションは、そのインテジャが示す秒数を超えない時間分だけ、レスポンダの使用の権利を待つ。また、インテジャの代わりにニル（０）が供給された場合、オペレーションは、要求される時間だけ、又は永久に待機する。前者の場合、すなわち、要求される時間だけ待機する場合、そのオペレーションのリザルトは、指示された秒数の後に、レスポンダが利用できない状態のままであるか否かを示す。
コンデションのセットが、クリアされているか、又はレスポンダのアトリビュート”conditions”のサブセットに等しくない場合には、エクセプション（”ConditionUndefined”）が送出され、プロシージャがエクセプションを送出する場合には、エクセプション（”Exception”）が送出され、レスポンダの使用の権利を要求された数秒間に取得できない場合には、エクセプション（”ResourceUnavailable”）が送出される。
４．７２  セレクタ（Selector）
0003723572.tif 000643
クラス（Class）
0003723572.tif 000644
アダプテーション（Adaptations）
0003723572.tif 000645
２つの値が同一である場合にのみ、２つのセレクタは同等となる。
４．７３  セット（Set）
0003723572.tif 000646
クラス（Class）
0003723572.tif 000647
サブジェクトクラスの各メンバの各アイテム自身メンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
構  成（Construction）
0003723572.tif 000648
レスポンダのアイテムをオブジェクト（アーギュメント”items”）とする。
２つの提案されたアイテムが同等である場合には、エクセプション（”ItemDuplicated”）が送出され、提案されたアイテムが不適切である場合には、には、エクセプション（”ItemInvalid”）が送出される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000649
セットのアイテムに等しい全てのアイテム（アーギュメント”set”）をレスポンダから除外して廃棄する。
0003723572.tif 000650
セットにアイテムに等しくない全てのアイテム（アーギュメント”set”）をレスポンダから除去し廃棄する。
0003723572.tif 000651
レスポンダの現存するアイテムに等しくないセット（アーギュメント”set”）の各アイテムに対するリファレンスをレスポンダ内に含める。
アダプテーション（Adaptations）
0003723572.tif 000652
オブジェクトに等しい現存するアイテムを排除して廃棄することにより、そのオブジェクトを新しいアイテムとしてセットに含める。
0003723572.tif 000653
セットのアイテムのうちの２つのアイテムが同等でない場合にのみ、セットは整合性がある。
４．７４  スタック（Stack）
0003723572.tif 000654
クラス（Class）
0003723572.tif 000655
サブジェクトクラスの各メンバの各アイテム自身がメンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000656
トップアイテムを、レスポンダから除去し、リターンする。
レスポンダがクリアされている場合には、エクセプション（”StackDepleted”）が送出される。
0003723572.tif 000657
オブジェクト（アーギュメン”item”）を新しいアイテムとしてレスポンダのトップに付加する。
0003723572.tif 000658
リストのアイテム（アーギュメント”items”）に対するリファレンスを、レスポンダにプッシュする。リストのポジション１におけるアイテムに対するリファレンスを、レスポンダのトップに置く。
0003723572.tif 000659
レスポンダの最上番目（topmost）のアイテムをシフトする。
そのシフトに関連するアイテムの数（”Ｉ”）は、負数でないインテジャ（アーギュメント”items”）で与えられる。関連する各アイテムがシフトされるポジションのナンバ（”Ｐ”）は、正数でも負数でもよい他のインテジャ（アーギュメント”shifts”）により、与えられる。ここで、”Ｐ”は、その与えられた他のインテジャの絶対値である。この２番目のインテジャが正数である場合には、シフトされる各アイテムは、レスポンダのトップ方向にシフトされ、そうでない場合には、レスポンダのボトム方向にシフトされる。
レスポンダのトップ方向にポジションを１だけ各アイテムをシフトさせることは、最上番目のアイテムのポジションを”Ｉ”に変化させ、最上番目のアイテム以外の他のアイテムの各ポジションを１だけ減少させることである。
また、レスポンダのボトム方向にポジションを１だけ各アイテムをシフトさせることは、ポジションが”Ｉ”であるアイテムを１番上にし、他のアイテムの各ポジションを１増大させることである。
この”Ｉ”が負数であるインテジャが与えられた場合には、エクセプション（”ArgumentInvalid”）が送出され、レスポンダのレングスが”Ｉ”よりも短い場合には、エクセプション（”StackDepleted”）が送出される。
0003723572.tif 000660
レスポンダのポジション１及び２にあるアイテムを転置する。レスポンダのレングスが２より短い場合には、エクセプション（”StackDepleted”）が送出される。
４．７５  ストリーム（Steam）
0003723572.tif 000661
クラス（Class）
0003723572.tif 000662
サブジェクトクラスの各メンバの各アイテム自身メンバであるクラス（アーギュメント”itemClass”）によって、パラメータ化される。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000663
レスポンダのアトリビュート”next”が問い合わされたが、ニル（０）がリターンされず、全てのレスポンダのアイテムが生成された場合には、レスポンダが最後に生成したアイテムである。その他の場合には、ニル（０）である。
0003723572.tif 000664
レスポンダが全てのアイテムを生成したか否か。
0003723572.tif 000665
レスポンダがアイテムの全てをまだ生成していない場合には、レスポンダの次のアイテムである。その他の場合には、ニル（０）である。このオペレーションが要求される度に、レスポンダは、他のアイテムを生成する。
レスポンダが保護されている場合には、エクセプション（”Referencepretected”）が送出される。
４．７６  ストリング（string）
0003723572.tif 000666
クラス（Class）
0003723572.tif 000667
構  成（Construction）
0003723572.tif 000668
レスポンダを、レスポンダ内においてポジションが左から右に増大しているセグメント（アーギュメント”segments”）の連鎖にする。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000669
その範囲（”initialPosition”,”beyondFinalPosition”）に含まれるポジションにおいて、キャラクタを含んでいるレスポンダのサブストリングのコピーをリターンする。
表明されたポジションが不適切な場合には、エクセプション（”PositionInvalid”）が送出される。
アダプテーション（Adaptations）
0003723572.tif 000670
アトリビュートは、シールされる。アトリビュート”Constraint”のアトリビュート”ofClass”、”classId”、”isInstance”、”isOptional”及び”passage”は、それぞれ、クラス”Character”、クラス”character”、”true”、”false”及び”byCopy”の識別子である。
0003723572.tif 000671
レングスが短いストリングのレングスをレングスが長いストリングのレングスに等しくするのに充分なキャラクタが、レングスが短いストリングに付加されたかのように、あるストリングが他のストリングの後となる。ここで、付加された各キャラクタは、それらのユニコードのコードがインテジャ”ゼロ”であるキャラクタである。
0003723572.tif 000672
レングスが短いストリングのレングスをレングスが長いストリングのレングスに等しくするのに充分なキャラクタが、レングスが短いストリングに付加されたかのように、あるストリングが他のストリングの前となる。ここで、付加された各キャラクタは、それらのユニコードのコードがインテジャ”ゼロ”であるキャラクタである。
変  換（Conversions）
0003723572.tif 000673
ストリングに変換し得るキャラクタに変換し得るビットは、そのストリングを生成する。
0003723572.tif 000674
カレンダータイムは、そのカレンダータイムにより示される時間を記述するストリングを生成する。
0003723572.tif 000675
キャラクタは、１つのアイテムだけがキャラクタに等しいストリングを生成する。
0003723572.tif 000676
識別子は、その識別子のテキストに等しいストリングを生成する。
0003723572.tif 000677
インテジャは、キャラクタテレスクリプトにおける”インテジャ”トークンのための構文規則に従うストリングを生成する。
0003723572.tif 000678
パターンは、そのパターンのテキストに等しいストリングを生成する。
0003723572.tif 000679
実数は、キャラクタテレスクリプトにおける”実数”トークンのための構文規則に従うストリングを生成する。
0003723572.tif 000680
テレナンバは、プラスサイン（”＋”）、テレナンバの国のアトリビュート、スペース（”  ”）、及びテレナンバのアトリビュート”telephone”の連鎖を生成する。
0003723572.tif 000681
タイムは、最初にそのタイムのカレンダータイムへの変換のリザルトを生成し、次にそのカレンダータイムのストリングへの変換のリザルトを生成する。
４．７７  テレアドレス（Teleaddress）
0003723572.tif 000682
クラス（Class）
0003723572.tif 000683
構  成（Construction）
0003723572.tif 000684
レスポンダのアトリビュート”routingAdvice”をクリアし、その他の固有のアトリビュートを同じ名前のアーギュメント（アーギュメント”location”及び”provider”）にする。ただし、アーギュメント”provider”がニル（０）である場合は、アトリビュート”provider”は、現在のプレイスの割り当てられたテレアドレスのアトリビュートとされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000685
レスポンダによって示されるプレイスのロケーションを示しているストリングである。ただし、これは、レスポンダが割り当てられているか、又はそのようなコンストレイントが課されている場合であり、その他の場合には、ニル（０）である。
0003723572.tif 000686
テレネームのアトリビュート”authority”と同様に、レスポンダが示すプレイスを含んでいるリージョンのプロバイダを示している、オクテットストリングである。
0003723572.tif 000687
アトリビュート”provider”と同様に、また、優先順位の低い順序に並べられた、移動先のリージョン（transit region）のプロバイダを示している、オクテットストリングである。
アダプテーション（Adaptations）
0003723572.tif 000688
２つのテレアドレスは、各々の固有のアトリビュートに従って、同一となる。
４．７８  テレネーム（Telename）
0003723572.tif 000689
クラス（Class）
0003723572.tif 000690
構  成（Construction）
0003723572.tif 000691
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”authority”及び”identity”）にする。ただし、前者のアーギュメントがニル（０）である場合は、アトリビュート”authority”が現在のプロセスの割り当てられたテレネームのアトリビュートにされる。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000692
レスポンダが示す名前付きオブジェクトのオーソリティを示しているオクテットストリングである。
0003723572.tif 000693
レスポンダによって示された名前付きオブジェクトのアイデンティティを示しているオクテットストリングである。ただし、これは、レスポンダが割り当てられているか、又はそのようなコンストレントが課された場合であり、その他の場合には、ニル（０）である。
アダプテーション（Adaptations）
0003723572.tif 000694
２つのテレネームは、各々の固有のアトリビュートに従って、同一となる。
４．７９  テレナンバ（Telenumber）
0003723572.tif 000695
クラス（Class）
0003723572.tif 000696
構  成（Construction）
0003723572.tif 000697
レスポンダのアトリビュート”extension”を、同じ名前のアーギュメント（アーギュメント”extension”）とし、レスポンダの他の固有のアトリビュートを、アーギュメント”countryAndTelephone”に変換可能なテレナンバのアトリビュートにする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000698
レスポンダが示すものについて、国又は他の地理的な領域に対してＣＣＩＴＴが割り当てるコードが配される。ここで、ストリングの各キャラクタは、数字（”０”〜”９”）である。
0003723572.tif 000699
レスポンダが示すものを明瞭に特定するテレホンの内線である。ただし、これは、レスポンダのアトリビュート”country”及び”telephone”が、それら自身ではそのように機能しない場合であり、その他の場合にはニル（０）である。ここで、ストリングの各キャラクタは、数字（”０”〜”９”）、ハイフン（”−”）又はスペース（””）である。
0003723572.tif 000700
アトリビュート”country”が示す国又は他の地理的な領域によって、レスポンダが示すものについて、割り当てられた番号である。ここで、ストリングの各キャラクタは、数字（”０”〜”９”）、ハイフン（”−”）又はスペース（”  ”）である。
アダプテーション（Adaptations）
0003723572.tif 000701
２つのテレナンバは、全てのハイフン（”−”）及びスペース（”  ”）が最初に２つのテレナンバから除かれたかのように、２つのテレナンバの固有のアトリビュートに従って同等となる。
変  換（Conversions）
0003723572.tif 000702
テレナンバの変換よって生成されることができるストリングは、そのテレナンバを生成する。ここで、そのテレナンバのアトリビュート”Extension”は、ニル（０）である。
４．８０  チケット（Ticket）
0003723572.tif 000703
クラス（Class）
0003723572.tif 000704
構  成（Construction）
0003723572.tif 000705
レスポンダの”desiredWait”及び”destinationPermit”アトリビュートをニル（０）にし、レスポンダの他のアトリビュートを同じ名前のアーギュメント（アーギュメント”destinationAddress”、”destinationClass”、”destinationName”、”maximumWait”、”travelNotes”及び”way”）にする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000706
レスポンダが規定するトリップが完了されるべき時間と、トリップが要求される時間との時間差において、所望される負数でない秒数の最大値に対してコンストレイントが課せられた場合、その最大値である。そうでない場合は、ニル（０）である。
0003723572.tif 000707
レスポンダが定義するトリップの目的地のテレアドレスに対してコンストレイントが課せられた場合、そのテレアドレスである。そうでない場合には、ニル（０）である。
0003723572.tif 000708
レスポンダが定義するトリップの目的地がメンバであるクラス”place”のサブクラスに対するサイテションに対してコンストレイントが課せられた場合、そのサイテションである。そうでない場合には、ニル（０）である。
0003723572.tif 000709
レスポンダが定義するトリップの目的地のテレネームに対してコンストレイントが課せられた場合、そのテレネームである。そうでない場合には、ニル（０）である。
0003723572.tif 000710
ローカルパーミットがエージェントの現在の一時的なパーミットと相違している場合には、レスポンダを使用しているエージェントが、エージェントの目的地において持つであろうローカルパーミットであり、エージェントがそれを持っていないときは、エージェントのネイティブパーミットである。その他の場合には、ニル（０）である。
0003723572.tif 000711
レスポンダが定義するトリップが終了すべき時間と、トリップが要求する時間との時間差において、秒で表した最大のパーミットされる時間差に対してコンストレイントが課せられた場合には、その時間差である。そうでない場合には、ニル（０）である。インテジャが供給される場合、そのインテジャは、負数ではないものとする。
アダプテーション（Adaptations）
0003723572.tif 000712
２つのチケットは、チケットに対して固有のアトリビュート及びチケットのスタッブに従って同等である。
４．８１  チケットスタッブ（Ticket Stub）
0003723572.tif 000713
クラス（Class）
0003723572.tif 000714
構  成（Construction）
0003723572.tif 000715
レスポンダの固有のアトリビュートを、同じ名前のアーギュメント（アーギュメント”travelNotes”及び”way”）とする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000716
レスポンダを保持するエージェントの独占的な使用のためのオブジェクトである。
0003723572.tif 000717
トリップの目的地に向かって取るべき進路（way）である。ただし、そのようなコンストレイントが課せられていない場合には、ニル（０）である。チケットスタッブ内は、トリップのオリジンに向かう戻る方向の進路である。
アダプテーション（Adaptations）
0003723572.tif 000718
２つのチケットスタッブは、各々の固有のアトリビュートに従って同等である。
４．８２  タイム（Time）
0003723572.tif 000719
クラス（Class）
0003723572.tif 000720
構  成（Construction）
0003723572.tif 000721
レスポンダを現在の時間、すなわち、現在のプレイスにおいての現在の時間とする。
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000722
時間をリターンする。ここで、時間は、レスポンダの後に要求された秒数（アーギュメント”seconds”）であり、同一の一定なずれ及び季節的なずれを特定する。
注：インテジャが負数であれば、リターンされる時間は、レスポンダに先行する。
0003723572.tif 000723
被減数であるレスポンダと、減数である時間（アーギュメント”subtrahend”）との、秒で表された差をリターンする。
注：そのリザルトは、２つの絶対時間の違いを表す。
アダプテーション（Adaptations）
0003723572.tif 000724
任意の時間が他の時間の次になるのは、他の時間が特定する絶対時間点に、任意の時間が特定する絶対時間点が後続する場合にのみ生ずる。
0003723572.tif 000725
任意の時間が他の時間の前になるのは、他の時間が特定する絶対時間点よりも、任意の時間が特定する絶対時間点が先行する場合にのみ生ずる。
0003723572.tif 000726
２つの時間は、どちらも他の時間の前にない場合にのみ同等である。
構  成（Construction）
0003723572.tif 000727
カレンダータイムは、同一の時点を表す時間と同一な一定及び季節的なずれとを生ずる。
４．８３  トリップエクセプション（Trip Exception）
0003723572.tif 000728
クラス（Class）
0003723572.tif 000729
構  成（Construction）
0003723572.tif 000730
レスポンダの固有のアトリビュートを同じ名前のアーギュメント（アーギュメント”ticketStub”）とする。
サブクラス（subclasses）
0003723572.tif 000731
ネットワークが区画されているため、トリップの目的地には到達不可能である。したがって、そのトリップの目的地は、将来到達されうるかもしれない目的地である。
0003723572.tif 000732
トリップの目的地は特定できないため、到達不可能である。
0003723572.tif 000733
トリップの目的地は、エージェントの占有を拒絶する。したがって、到達をも拒絶する。
0003723572.tif 000734
トリップのためのチケットの”maximumWait”アトリビュートが要求した秒数内で、トリップの目的地には到達することができない。
0003723572.tif 000735
トリップの出発点は、トリップに対して要求された進路が欠けている。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000736
正常終了しなかったトリップの結果として生じたチケットスタッブである。
アダプテーション（Adaptations）
0003723572.tif 000737
２つのトリップのエクセプションは、各々の固有のアトリビュートに従って同等である。
４．８４  アンチェンジド（Unchanged）
0003723572.tif 000738
クラス（Class）
0003723572.tif 000739
アダプテーション（Adaptations）
0003723572.tif 000740
アンチェンジドオブジェクトのコピーは、オリジナルである。
４．８５  アネクスペクティッドエクセプション（Unexpected Exception）
0003723572.tif 000741
クラス（Class）
0003723572.tif 000742
構  成（Construction）
0003723572.tif 000743
レスポンダの固有のアトリビュートを同じ名前のアーギュメントとする。（アーギュメント”Exception”）
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000744
フィーチャが宣言しなかったにもかかわらず送出したレスポンダの原因であるエクセプションである。
４．８６  アンムーブド（Unmoved）
0003723572.tif 000745
クラス（Class）
0003723572.tif 000746
0003723572.tif 000747
４．８７  ベリファイド（Verified）
0003723572.tif 000748
クラス（Class）
0003723572.tif 000749
パブリックインスタンスオペレーション（Public Instance Operations）
0003723572.tif 000750
レスポンダがコンシステントであるか否かの指示をリターンする。
４．８８  ウェイ（Way）
0003723572.tif 000751
クラス（Class）
0003723572.tif 000752
構  成（Construction）
0003723572.tif 000753
レスポンダの固有のアトリビュートを同じ名前のアーギュメント（アーギュメント”authenticator”、”means”及び”name”）とする。
パブリックインスタンスアトリビュート（Public Instance Attributes）
0003723572.tif 000754
ウェイが通過するリージョンに進入するために用いられるオーセンティケータータである、ただし、ウェイが通過するリージョンへの進入に対してコンストレイントが課せられていない場合には、ニル（０）である。
0003723572.tif 000755
ウェイが通過するリージョンをアクセスするべきミーンズ（手段）である。ただし、ウェイが通過するリージョンへのアクセスに対してコンストレイントが課せられていない場合には、ニル（０）である。
0003723572.tif 000756
ウェイが通過するリージョンのテレネームである。ただし、ウェイが通過するリージョンのテレネームに対してコンストレイントが課せられていない場合には、ニル（０）である。
アダプテーション（Adaptations）
0003723572.tif 000757
２つのウェイは、各々の固有のアトリビュートに従って同等である。
５．  テレスクリプトシンタックス（TELESCRIPT SYNTAX）
”テレスクリプト（telescript）”は、プロジージャのエンコードである。汎用的なテレスクリプトの抽象構文と、特にキャラクタ及びバイナリのテレスクリプトの具象構文とが、このアペンディックスの本セクションにおいて定義される。
注：キャラクタテレスクリプトは、人によって使用される。バイナリテレスクリプトは、機械によって使用され、例えば、オブジェクトをオブジェクト間に転送する際に用いられる。バイナリテレスクリプトは、機能的に同等のキャラクタテレスクリプトよりも常に著しく長さが短いオクテットである。
５．１  テレスクリプト（Telescript）
テレスクリプトは、第１にプリフェースを、そして、第２にテレスクリプトがエンコードするプロシージャを含む一連のトークンである。プリフェースは、テレスクリプトが適合するインストラクションセットのメージャーバージョン及びマイナーバージョンを特定する。
テレスクリプトは、以下に示すシンタックティックルール及びシンタックティックルールに付随したセマンティックルールに従う。ＢＮＦで表した規則は、ブラケットによって任意のトークンを囲む（”［”及び”］”）。
0003723572.tif 000758
0003723572.tif 000759
テレスクリプトは、コメントを含むことができる。これは、シンタックティックルールにおいて考慮された規定である。”コメント（comment）”は、テレスクリプトがエンコードするプロシージャに影響しないストリングである。１以上のコメントは、スクリプトの最初のトークンの前、スクリプトの最後のトークンの後、及び任意の２つの隣接したトークンの間に記載することができる。
注：通常、コメントは、人に対してテレスクリプトの様相を記述する。
注：アペンディックスＡに規定されたインストラクションセットのメジャーバージョン及びマイナーバージョンは、各々、ゼロ”（０）”及び八（”８”）により特定される。
５．２  キャラクタテレスクリプト（Character Telescript）
”キャラクタテレスクリプト（character telescript）”は、ストリングとしてエンコードされたプロシージャである。汎用的なテレスクリプトのための抽象構文規則は、本セクションにおいて、特にキャラクタテレスクリプトのための具象的なものとされる。
キャラクタテレスクリプト中の各トークンは、１以上のキャラクタである。キャラクタテレスクリプトは、トークンを連鎖させることによって、又はそのキャラクタによって、又はトークン間にキャラクタを挿入することによって得られるものである。
ブレークキャラクタは、スペース（”  ”）、水平タブ又は改行（ラインフィード：line feed）である。１以上の上述のようなキャラクタは、最初のトークンの前、最後のトークンの後又は２つの隣接した任意のトークンの間に現れうる。２つの隣接した任意のトークンの間に１以上の上述のようなキャラクタが現れた場合、２つの隣接したトークンがどちらも”BinDigit”又は”hexDigitPair”である場合を除いて、これら２つのトークンが数字（”０”〜”９”）及び文字を含む場合には少なくとも１つのキャラクタが現れなければならない。
キーワード”telescript”及び番号記号（”＃”）で始まるターミナルは、大小文字区別をしない。このアペンディックスでは、アッパーケース（大文字）キャラクタが表れるのに対して、プログラミングにおいては、ローアーエース（小文字）キャラクタ又はアッパーケース（大文字）キャラクタ、又はそれら２つのものの混合が使用されうる。
５．２．１プリフェースとコメント（Preface and Comment）
プリフェース（Preface）
プリフェースは、以下の規則に従う。
0003723572.tif 000760
第１の”numerals”は、キャラクタテレスクリプトが従うインストラクションセットのメジャーバージョンを特定し、第２の”numerals”は、マイナーバージョンを特定する。
コメント（Comment）
コメントは、以下の規則に従う。
0003723572.tif 000761
注：コメントのためのシンタックスルールは、Ｃ＋＋プログラミング言語のものである。
５．２．２  実行オブジェクト（Executed Objects）
ビット（Bit）
ビットは、ビットの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000762
ビットストリング（BitString）
ビットストリングは、以下の規則に従う。
0003723572.tif 000763
ｉ番目の”BinDigit”は、ビットストリングのポジション”ｉ”においてのビットを表す。
ブーリアン（Boolean）
ブーリアンは、ブーリアンの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000764
キャラクタ（Character）
キャラクタは、以下の規則に従う。
0003723572.tif 000765
”characters”は、１つのキャラクタを表すものとする。各キャラクタは、キャラクタ自身を表し、クラス”String”に対して規定したエクセプションがある。
識別子（Identifier）
識別子は、以下の規則に従う。
0003723572.tif 000766
”Identifier”は、識別子のテキストである。右角括弧（”］”）は、オペレーション”new”を表す。
インテジャ（Integer）
インテジャは、以下の規則に従う。
0003723572.tif 000767
マーク（Mark）
マークは、以下の規則に従う。
0003723572.tif 000768
注：左角括弧（”［”）は、規約により、右角括弧（”］”）と共に使用されるように供与される。（上記のトークン”identifier”参照のこと。）
モディファイヤ（Modifier）
モディファイヤは、モディファイヤの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000769
0003723572.tif 000770
ニル（Nil）
ニルは、以下の規則に従う。
0003723572.tif 000771
オクテット（Octet）
オクテットは、以下の規則に従う。
0003723572.tif 000772
”hexDigitPair”のＭＳＢは、オクテットのビット［７］を表し、ＬＳＢは、ビット［０］を表す。
オクテットストリング（OctetString）
オクテットストリングは、以下の規則に従う。
0003723572.tif 000773
第１の”hexDigitPair”は、オクテットストリングのポジション１においてのオクテットを表し、第２の”hexDigitPair”は、オクテットストリングのポジション２においてのオクテットを表し、以下同様である。各々の”hexDigitPair”のＭＳＢは、オクテットのビット［７］を表し、ＬＳＢは、オクテットのビット［０］を表す。
プロシージャ（Procedure）
プロシージャは、以下の規則に従う。
0003723572.tif 000774
有資格識別子（QualifiedIdentifier）
有資格識別子は、以下の規則に従う。
0003723572.tif 000775
第１の”identifier”は、テキストを表し、第２の”identifier”は、そのクエリファイヤを表わす。
実数（Real）
実数は、以下の規則に従う。
0003723572.tif 000776
実数のインテジャ部分が存在している場合には、実数のインテジャ部分は”Number”の”Integer”である。そうでない場合には、ゼロである。実数の分数部分が存在している場合には、実数の分数部分は、”numerals”である。そうでない場合には、ゼロである。”Exponent”中に”Integer”が存在している場合には、”Exponent”中の”Integer”は、１０の累乗である。
セレクタ（Selector）
セレクタは、セレクタの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000777
ストリング（String）
ストリングは、以下の規則に従う。
0003723572.tif 000778
”characters”は、ゼロ以上のキャラクタを表す。各キャラクタは、キャラクタ自身を表す。ただし、例外として、逆スラッシュ（”＼”）と４つの１６進デジット（０”〜”９”，”Ａ”〜”Ｆ”）とでキャラクタが示される。ここで、このキャラクタのユニコードのコードは、それらのデジットが表す符号無しインテジャである。指示キャラクタとなるキャラクタの対について表Ａ．６に示す。
0003723572.tif 000779
５．２．３  他の非ターミナル（Other Non-terminals）
キャラクタ（characters）
ゼロ以上のキャラクタであり、それぞれは、文字のキャラクタ又はスペース（”  ”）である。引用符（”）の前には、逆スラッシュ（”＼”）が配される。逆スラッシュは、上述したトークン”String”の所で説明した表中のキャラクタ列の一部分であるか、又は４つの１６進デジットに先行するものとする。
コメント１（comment1）
スラッシュに後続されたアステリスク（”＊／”）を含まない、ゼロ以上のキャラクタである。
注：”comment1”は、特別な意味無しに”／＊”又は”／／”を包括することができる。したがって、”comment2”を包括することができる。
コメント２（comment2）
改行を含まないゼロ以上のキャラクタである。
注：”comment2”は、特別な意味無しに”／＊”、”＊／”又は”／／”を包括することができる。したがって、”comment1”を包括することができる。”comment2”は、同じ行に他のトークンを後続することはできない。これは、”comment2”がこれらを含むものと見なされるからである。
１６進デジットの対（hexDigitPair）
１６進デジットの対（”０”〜”９”，”Ａ”〜”Ｆ”）である。
識別子（Identifier）
識別子のテキストと同様に、コンストレインされたキャラクタである。
数字（nemerala）
１つ以上の数字（”０”〜”９”）である。
５．３  バイナリテレスクリプト（Binary Telescript）
”バイナリテレスクリプト（binary telescript）”は、オクテットストリングとしてエンコードされたプロシージャである。汎用的なテレスクリプトのための抽象構文規則は、本セクションにおいて、特にバイナリテレスクリプトのための具象的なものとされる。
バイナリテレスクリプト中の各トークンは、１以上のオクットである。バイナリテレスクリプトは、トークンを連鎖させることによって、すなわち、オクテットを連鎖させることによって得られる。
５．３．１  プリフェースとコメント（Preface and Comment）
プリフェース（Preface）
プリフェースは、以下の規則に従う。
0003723572.tif 000780
第１及び第２の”unsignedNumber”は、キャラクタテレスクリプトが従うインストラクションセットのメジャーバージョン及びマイナーバージョンを各々特定する。
コメント（Comment）
コメントは、以下の規則に従う。
0003723572.tif 000781
”unsignedNumber”は、キャラクタとして認識されるべきオクテットのナンバである。
５．３．２  エグセキューティドオブジェクト（Excecuted Object）
ビット（Bit）
ビットは、ビットの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000782
ビットストリング（BitString）
ビットストリングは、以下の規則に従う。
0003723572.tif 000783
第１の”unsignedNumber”は、最後のオクテットのビットストリングの各ビットの［１，８］範囲中のナンバである。このオクテット中の他のビットは、意味を持たないため定義されない。第２の”unsignedNumber”は、トークンオクテット中のトークン”Octets”の発生回数”ｎ”である。オクテットが［１，ｎ］範囲内で番号付けされていれば、ビットストリング中のそのポジションが”ｉ”であるビットは、（１＋（ｉ−１）／８）の番号を有するオクテットのビット［（７−（（ｉ−１）ｍｏｄ  ８）］である。
ブーリアン（Boolean）
ブーリアンは、ブーリンの値を個別にエンコードする以下の規則従う。
0003723572.tif 000784
キャラクタ（Characters）
キャラクタは、以下の規則に従う。一般的な及び特別なエンコードが規定されている。特別なエンコードは、８ビットのキャラクタについて用いる。
0003723572.tif 000785
１又は２のオクテットは、キャラクタのユニコードのコードであるインテジャをサインされないままエンコードする。特別なエンコードにおいては、インテジャのＭＳＢ及びＬＳＢは、各々、オクテットのＭＳＢ及びＬＳＢである。一般的なエンコードにおいては、インテジャのＭＳＢ及びＬＳＢは、各々、第１のオクテットのＭＳＢ及び第２のオクテットのＬＳＢである。
識別子（Identifier）
識別子は、以下の規則に従う。１つの一般的なエンコード及び２つの特別なエンコードが規定されている。２つの特殊なエンコードのうちの１つは、識別子のテキストが定義済みクラス又はフィーチャの識別子のテキストに等しい場合にのみ使用する。
0003723572.tif 000786
一般的なエンコードにおいて、”unsignedNumber”及び”characters”は、直接テキストを表す。”unsignedNumber”は、”characters”として認識されるべきオクテットの数である。特別のエンコードにおいて、”unsignedNumber”は、後述するセクション５．４に示す表中から引き出されるコードによって、識別子のテキストを関節的に表している。
インテジャ（Integer）
インテジャは、以下の規則に従う。１つの一般的なエンコード及び幾つかの特別なエンコードが規定されている。特別なエンコードは、−１、０及び＋１で用いられる。
0003723572.tif 000787
サインドナンバ（signedNumber）は、インテジャである。
マーク（Mark）
マークは、以下の規則に従う。
0003723572.tif 000788
モディファイヤ（Modifier）
モディファイヤは、モディファイヤの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000789
ニル（Nil）
ニルは、以下の規則に従う。
0003723572.tif 000790
オクテット（Octet）
オクテットは、以下の規則に従う。
0003723572.tif 000791
”オクテット（octet）”のＭＳＢは、そのオクテットのビット［７］を表し、、ＬＳＢは、ビット［０］を表す。
オクテットストリング（OctetString）
オクテットストリングは、以下の規則に従う。
0003723572.tif 000792
”unsignedNumber”は、”Octet”中の”octet”の発生回数である。”Octets”中の第１の”octet”は、オクテットストリングのポジション１におけるオクテットを表し、第２の”octet”は、ポジション２におけるオクテットを表し、以下同様である。各々の”octet”のＭＳＢは、そのオクテットのビット［７］を表し、各々の”octet”のＬＳＢは、そのオクテットのビット［０］を表す。
プロシージャ（Procedure）
プロシージャは、以下の規則に従う。
0003723572.tif 000793
”unsignedNumber”は、”Body”中の”ExecutedObject”の発生回数をエンコードする。ここで、”Body”は、各々プロシージャのアイテムをエンコードする。アイテムは、プロシージャにおいて増大するポジションの順序で示されている。
有資格識別子（QualifiedIdentifier）
有資格識別子は、以下の規則に従う。
0003723572.tif 000794
第１の”Identifier”は、テキストを表わし、第２の”Identifier”は、クエリファイヤを表す。
実数（Real）
実数は、以下の規則に従う。
0003723572.tif 000795
第１の”signedNumber”は、仮数（”ｍ”）を表し、第２の”signedNumber”は、指数（”ｅ”）を表す。実数は、ｍ×１０eである。
セレクタ（Selector）
セレクタは、セレクタの値を個別にエンコードする以下の規則に従う。
0003723572.tif 000796
ストリング（String）
ストリングは、以下の規則に従う。
0003723572.tif 000797
”unsignedNumber”は、キャラクタとして認識されるべきオクテットの数である。オクテットのシンタックス及びセマンティックスは、ISO/IEC10646[10646]コンパクション・メソッド５に従うが、例外として、これらによって表されたキャラクタは、ユニコードのキャラクタに制限される。
注：ストリングが、ＡＳＣＩＩキャラクタだけを含む場合には、”characters”は、そのＡＳＣＩＩ表現を１オクテットにつき１キャラクタで表す。この時、各々のオクテットのビット［７］は、ゼロである。
５．３．３  他の非ターミナル（Other Non-terminals）
キャラクタ（characters）
ゼロ以上のオクテットである。
ナンバ（number）
１から５（”Ｎ”）は、インテジャ（”Ｉ”）をエンコードするオクテットである。ナンバの使用が、”Ｉ”は負数ではないとしている場合には、”Ｉ”のエンコード（”Ｅ”）は、符号無しであり、その他の場合には、２の補数である。与えられた”Ｉ”、”Ｎ”は、できるだけ小さくされる。
”Ｅ”は、以下のようにして定められる。
・  最初のオクテットの値が［０、ＢＦ16］の範囲であれば、”Ｎ”は、１であり、”Ｅ”のＭＳＢ及びＬＳＢは、その単一のオクテットのビット［７］及び［０］である。
・  第１のオクテットがＥＯ16、Ｅ２16、Ｅ４16又はＥ６16である場合には、”Ｎ”は、２、３、４又は５である。また、”Ｅ”のＭＳＢ及びＬＳＢは、第１オクテットが００16とされた場合に、最初のオクテットのビット［７］及び最後のオクテットのビット［０］となる。
・  最初のオクテットがＥ１16、Ｅ３16、Ｅ５16又はＥ７16であった場合には、Ｎは、２、３、４又は５である。また、”Ｅ”のＭＳＢ及びＬＳＢは、第１オクテットがＦＦ16とされた場合に、最初のオクテットのビット［７］及び最後のオクテットのビット［０］となる。
注：［Ｃ０16、ＤＦ16］及び［Ｅ８16、ＦＦ16］の各範囲内の第１のオクテットの値は、留保されている。
オクテット（octet）
１つのオクテットである。
サインナンバ（signedNumber）
”ナンバ（number）”である。ここで、”Ｉ”は正又は負であることができ、したがって、”Ｅ”は、符号を持つ（上記参照のこと。）。
注：”Ｎ”が１であれば、”Ｉ”は[-64,127]の範囲内にある。
”Ｎ”が２であれば、”Ｉ”は[-128,127]の範囲内にある。
”Ｎ”が３であれば、”Ｉ”は[-32768,32767]の範囲内にある。
”Ｎ”が４であれば、”Ｉ”は[-8388608,8388607]の範囲内にある。
”Ｎ”が５であれば、”Ｉ”は[-2147483648,2147483647]の範囲内にある。
タグ（tag）
”signedNumber”である。そのタグの意味は、次のセクションで与えられる。
サインドナンバ（unsignedNumber）
”（number）”である。ここで、”Ｉ”は負数ではなく、したがって、”Ｅ”は符号を持たない（上記参照のこと。）。
注：”Ｎ”が１であれば、”Ｉ”は、[0,191]の範囲内にある。
”Ｎ”が２であれば、”Ｉ”は、[0,255]の範囲内にある。
”Ｎ”が３であれば、”Ｉ”は、[0,65535]の範囲内にある。
”Ｎ”が４であれば、”Ｉ”は、[0,16777215]の範囲内にある。
”Ｎ”が５であれば、”Ｉ”は、[0,4294967295]の範囲内にある。
５．４  数値コード（Numeric Codes）
バイナリテレスクリプトは、以下の数値コードを使用する。
５．４．１  プレデファインディドクラス（Predefined Classes）
表Ａ．７は、クラス”Executed”の定義済みサブクラスに対する識別コードの割当を表したものである。
0003723572.tif 000798
表Ａ．８は、他の定義済みメジャークラスに対する識別コードの割当を表したものである。
0003723572.tif 000799
0003723572.tif 000800
0003723572.tif 000801
0003723572.tif 000802
表Ａ．９は、定義済みマイナークラスへの識別コードの割当を表したものである。
0003723572.tif 000803
0003723572.tif 000804
0003723572.tif 000805
５．４．２  プレデファインディドフィーチャーズ（Predefined Features）
表Ａ．１０は、定義済みオペレーションに対する識別コードの割当を表したものである。
0003723572.tif 000806
0003723572.tif 000807
0003723572.tif 000808
0003723572.tif 000809
表Ａ．１１は、定義済みアトリビュートに対する識別コードの割当を表したものである。
0003723572.tif 000810
0003723572.tif 000811
0003723572.tif 000812
0003723572.tif 000813
0003723572.tif 000814
表Ａ．１２は、経路の形式に対するコードの割当を表したものである。
0003723572.tif 000815
５．４．３  エグゼキューティドオブジェクトエンコーディング（Executed Object Encodings）
表Ａ．１３は、汎用のエンコードに対するコードの割当を表したものである。
0003723572.tif 000816
表Ａ．１４は、基本的な性質の特殊な目的のエンコードに対するコードの割当を表したものである。
0003723572.tif 000817
表Ａ．１５は、モディファイヤの特別な目的のエンコードに対するコードの割当を表したものである。
0003723572.tif 000818
表Ａ．１６は、セレクタの特別な目的のエンコードに対するコードの割当を表したものである。
0003723572.tif 000819
６．  モジュールのシンタックス（Syntax of Module）
”モジュール（module）”は、ここで使用される用語としては、１以上のインタフェースをエンコードするストリングと、これらのインタフェースが一部分であるクラスの識別子と、そして最後に、モジュール自身の識別子とを示す。
”識別子（Identifier）という用語は、セクション６全体を通じて、クラス”Identifier”のインスタンス全体ではなく、そのインスタンスのテキストを示すものとする。
注：後述するように構成されたモジュールは、ハイテレスクリプトのモジュールでもある。この表現を偽とする下記の規則は、ドキュメンテーションの誤りである。
６．１  一般的な構造（General Structure）
モジュールは、後述する構文上の規則及びそれに付随する意味上の規則に従う一連のトークンである。ＢＮＦで表した場合、これらの規則は、オプションのトークンをブラケットで囲んでいる（”[”及び”]”）。また、モジュールは、キャラクタテレスクリプトにおいて許可されたコメントも含むことができる。このようなコメントに対する規定は、モジュールを支配する構文規則（シンタクティックルール）に含まれると考えられる。
各々のトークンは、１以上のキャラクタである。モジュールは、トークンを連鎖状にすることによって、すなわちキャラクタを連鎖状にすることによって、或いは、キャラクタテレスクリプトにおいて許可されたブレークキャラクタをトークン間に挿入することによって得られる。
キーワード、例えば、”module”は、大小文字区別される。英大文字キャラクタは、一般に、モジュールを表すために用いられる。英小文字キャラクタは、本アペンディックス全体及びセクション７を通じて、モジュールを作成するために用いられる。
６．２  詳細な構造（Detailed Structure）
モジュールは、以下の詳細な構造を表す。
６．２．１  モジュール（Module）
モジュール（module）
モジュールは、以下の規則に従う。
0003723572.tif 000820
モジュールは、モジュールを開始させる識別子によって示され、インタフェースをエンコードする。このインタフェースは、識別子がその識別子の直前にあるクラスのインタフェースである。
どのインタフェースも、インタフェースの特定のクラスのメンバに属するオペレーション”initialize”を定義することができる。また、何も明記されていなくても、ある定義が含まれている。すなわち、その定義とは、問題のクラスがミックスイン（mix-in）の場合には、”initialize:op();”であり、その他の場合には、クラスのインタフェーススーパークラスの中のフレーバ（flavor）の定義である。
６．２．２  インターフェース（interface）
インターフェース（Interface）
インターフェースは、以下の規則に従う。
0003723572.tif 000821
インタフェースのエンコードは、パラメータ化することができる。このエンコードにおいて、各々の識別子である１以上の”formal class parameters”が、導入される。また、このような識別子は、インタフェースがクラス識別子に要求する多くのプレイスにおいて使用することができる（尚、これに関しては、後述するトークン”ClassSpecifier”参照のこと。）したがって、インタフェースは、クラス”object”の識別子の代わりに用いられたかのようになる。同様に定義された仮のクラスパラメータは、その導入によってグループ化される。
各々識別子によって示されたゼロ以上のフィーチャは、シール又は定義される。同じ様にシール又は定義されたフィーチャの識別子はグループ化される。第１の上述のようなグループに、”Access”又は”Responder”が存在しない場合、”PRIVATE”又は”INSTANCE”は、各々第１のグループに存在しているものと見なされる。”Access”又は”Responder”が第１のグループより後の何れかのグループに存在しない場合、第１のグループより前のグループに存在するキーワードは、第１のグループより後のグループに存在すると見なされる。
インタフェースは、以下の通りである。”classFeatures”又は”instanceFeatures”アトリビュートは、各々、”CLASS”又は”INSTANCE”のグループで定義されたフィーチャーを含む”isAbstract”アトリビュートは、”ABSTRACT”が存在している場合のみ”真（true）”である。”sealedClassFeatures”又は”sealedInstanceFeatures”アトリビュートは、各々、”CLASS”と”INSTANCE”を有するグループの識別子、又は”SEALED”と”INSTANCE”を有するグループの識別子を含む”superclasses”アトリビュートは、トークン”Superclasses”が存在する場合には、トークン”Superclasses”が定める識別子を含み、その他の場合には、クラス”Object”のみの識別子を含む。クラスのアトリビュートのポジションは、記述した順序が左から右に移るに従って減少する。”vocabulary”アトリビュートは、クリアされる。
インタフェースは、”SEALED”が存在している場合にのみシールされる。
６．２．３  フィーチャ（Feature）
フィーチャ（Feature）
フィーチャは、以下の規則に従う。
0003723572.tif 000822
アトリビュート（Attribute）
アトリビュートは、以下の規則に従う。
0003723572.tif 000823
アトリビュート定義は、以下の通りである。”constraint”アトリビュートは、与えられたコンストレイントである。”exceptions”アトリビュートは、”THROWS”が存在する場合には、存在する識別子を含み、その他の場合には、如何なる識別子も含まない。”isPublic”アトリビュートは、アトリビュート定義を含む定義グループのためのキーが”PUBLIC”又は”CLASS”である場合にのみ”真（True）”である。”isSet”アトリビュートは、”READONLY”が存在しない場合にのみ、真である。
アトリビュート定義の上述したモジュールエンコードは、それが定義するアトリビュートのシグニチャとも言われる場合がある。
オペレーション（Operation）
オペレーションは、以下の規則に従う。
0003723572.tif 000824
オペレーション定義はこれである。アトリビュート”arguments”は示された通りである。アトリビュート”exceptions”は、”THROWS”が存在している場合には、識別子が存在し、その他の場合には、識別子を含まない。ただし、”UNPROTECTED”が存在している場合にのみ、そのアトリビュートは、クラス”Reference Protected”の識別子を付加的に含む。これは、レスポンダを変更するオペレーションがレスポンダの保護されたリファレンスを使用して要求された場合に送出される。アトリビュート”isPublic”は、オペレーション定義を含む定義グループが”PUBLIC”又は”CLASS”である場合にのみ、”真（true）”である。（なお、これに関しては、上述したトークン”Interface”を参照のこと。）アトリビュート”result”は、存在している場合には、コンストレイントであり、その他の場合には、ニル（０）である。
オペレーション定義のモジュールのエンコードは、オペレーション定義が定義するオペレーションのシグニチャと呼ばれる場合もある。
アーギュメントアトリビュート（ArgumentsAttribute）
アーギュメントアトリビュートは、以下の規則に従う。
0003723572.tif 000825
ゼロ以上のアーギュメントは、これらのアーギュメントのコンストレイントによって記述される。このような各アーギュメントは、識別子によって表される。同じ様にコンストレインされるアーギュメントの識別子は、グループ化される。１以上のアーギュメントグループと省略符号（…）の両方が存在していれば、最後のグループは、ただ１つのアーギュメントを含むものとされるが、ゼロ以上のアーギュメントを含むものと見なされる。
”arguments”アトリビュートは、省略符号（…）が存在している場合には、ゼロ以上の記述されたアーギュメントに対するコンストレイントのリストであり、その他の場合には、ニル（０）である。記述されるアーギュメントに対するコンストレイントのリスト中のポジションは、アーギュメントの識別子が左から右に移動するにつれて増大する。
６．２．４  コンストレイント（Constraint）
コンストレイント（Constraint）
コンストレイントは、以下の規則に従う。
0003723572.tif 000826
コンストレイントは、以下の通りである。”classId”アトリビュートは、トークン”ClassSpecifier”が定める識別子である。”isInstance”アトリビュートは、感嘆符（”！”）がトークン”ClassSpecifier”と共に存在している場合にのみ、”真（true）”である。（尚、これに関しては、下記参照のこと。）”isOptional”アトリビュートは、”NIL”が存在している場合にのみ、”真（true）”である。”ofClass”アトリビュートは、ニル（０）である。”passage”アトリビュートは、”COPIED”、”PROTECTED”又は”UNPROTECTED”が存在していない場合には、”byCopy”、”byProtectedRef”又は”byUnprotectedRef”となり、又はこれらの何れのものも存在していない場合には、”byRef”となる。
クラススペシファイヤ（ClassSpecifier）
クラススペシファイヤは、以下の規則に従う。
0003723572.tif 000827
この識別子は、仮のクラスパラメータの識別子、又はクラス（”Ｃ”）の識別子である。後者の場合、”Ｃ”のインタフェースのエンコード（”Ｅ”）がパラメータ化された場合にのみ、ブラケット（”[”及び”]”）の間において、”Ｃ”が有する仮のクラスパラメータと同数の実際のクラスパタメータが続けられる。ここで、この実際のクラスパラメータは、各クラススペシファイヤである。”Ｃ”のこの特定の使用は、”Ｅ”内の仮のクラスパラメータの各使用が、対応して位置付けられた実際のクラスパラメータの使用であるかのように行なわれる
６．２．５  他の非ターミナル（identifier）
0003723572.tif 000828
クラス”Identifier”のインスタンスのテキストとして拘束されたキャラクタである。
７．プレデファインドモジュール（PREDEFINED MODULE）
定義済みクラスのインタフェースは、以下に詳細に示されるモジュール、及び本アペンディックスを通じて断片的に示されるモジュールによって定義される。インストラクションセットの内部フィーチャは、モジュールには現れない。
参照として供与される本セクション、すなわちセクション７は、本アペンディックスの他のセクションに見られる記述と重複する部分がある。
注：定義済みのインタフェースの定義は、ハイテレスクリプトモジュールを形成する。これを可能とするために、いくつかのローテレスクリプト識別子は、”＿ｘ”が後置され、ハイテレスクリプトにおいて予約されている識別子と重ならないようにされている。
0003723572.tif 000829
0003723572.tif 000830
0003723572.tif 000831
0003723572.tif 000832
0003723572.tif 000833
0003723572.tif 000834
0003723572.tif 000835
0003723572.tif 000836
0003723572.tif 000837
0003723572.tif 000838
0003723572.tif 000839
0003723572.tif 000840
0003723572.tif 000841
0003723572.tif 000842
0003723572.tif 000843
0003723572.tif 000844
0003723572.tif 000845
0003723572.tif 000846
0003723572.tif 000847
0003723572.tif 000848
0003723572.tif 000849
0003723572.tif 000850
0003723572.tif 000851
0003723572.tif 000852
0003723572.tif 000853
0003723572.tif 000854
0003723572.tif 000855
0003723572.tif 000856
0003723572.tif 000857
0003723572.tif 000858
0003723572.tif 000859
0003723572.tif 000860
0003723572.tif 000861
0003723572.tif 000862
0003723572.tif 000863
0003723572.tif 000864
0003723572.tif 000865
0003723572.tif 000866
0003723572.tif 000867
0003723572.tif 000868
８．プレデファインドクラスグラフ（PREDEFINED CLASS GRAPH）
以下の図表は、定義済みクラスを含むクラス図表の一部分を示している。クラスのイミディエーイトサブクラスは、その直ぐ下に字下げして記載されている。アンダーラインが引かれたクラスは、アブストラクトクラスである。括弧（”（”及び”）”）は、ミックスインを囲んでいる。
0003723572.tif 000869
0003723572.tif 000870
0003723572.tif 000871
0003723572.tif 000872
0003723572.tif 000873
アペンディックスＢ
著作権  ジェネラル・マジック社1991、1992、1993。複製を禁ず。
以下の目次は、読者がアペンディックスＢの構成を理解し、その情報を検索するために役立てるものである。
目  次
1.  序文
1.1  構成
1.2  参考文献
2.  エンコードのコンセプト
2.1  テレパーセル（Teleparcel）
2.2  オブジェクトのエンコード（Object Encoding）
2.2.1  形式（Forms）
2.2.2  規則（Rules）
2.2.3  パレット（Palettes）
2.2.4  エンコードされたクラス（Encoding Casses）
2.2.5  エンコードされたアトリビュート（Encoding Attributes）
2.3  アトリビュートのエンコード（Attributes Encoding）
2.3.1  形式（Forms）
2.3.2  規則（Rules）
2.4  リファレンスのエンコード（Reference Encoding）
2.4.1  形式（Forms）
2.4.2  規則（Rules）
3.  エンコードされたスペシフィケーション
3.1  コンバーション（Convertions）
3.2  テレパーセル（Teleparcel）
3.3  オブジェクトのエンコード（Object Encoding）
3.3.1  実行オブジェクト（Executed Object）
3.3.2  プレデファインドオブジェクト（Predefined Object）
3.3.3  ユーザデファインドオブジェクト（User-defined Object）
3.3.4  プロテクティドオブジェクト（Protected Object）
3.3.5  パレット（Palette）
3.4  アトリビュートのエンコード（Attribute Encoding）
3.4.1  ブーリアン（Boolean）
3.4.2  ダイアルストリング（Dial String）
3.4.3  インテジャ（Integer）
3.4.4  アイテム（Item）
3.4.5  リスト（List）
3.4.6  オクテットストリング（Octet String）
3.4.7  スタック（Stack）
3.4.8  ストリング（String）
3.5  リファレンスのエンコード（Reference Encoding）
3.5.1  ゼネラルリファレンス（General Reference）
3.5.2  ボイディドリファレンス（Voided Referencece）
3.5.3  インターチェンジリファレンス（Interchange Reference）
3.5.4  クラスリファレンス（Class Reference）
3.5.5  プロシージャリファレンス（Procedure Reference）
4.  エンコードされたクラスとアトリビュート
4.1  コンベンションズ（Conventions）
4.2  エンコードされたグループ（Encoding Group）
4.2.1  キャッチフレーム（Catch frame）
4.2.2  コレクションストリーム（Collection Stream）
4.2.3  ダイヤルストリング（Dial string）
4.2.4  フレーム（Frame）
4.2.5  ゴーフレーム（Go frame）
4.2.6  プレデファインドフレーム（Predefined Frame）
4.2.7  プロシージャフレーム（Procedure Frame）
4.2.8  リピートフレーム（RepeatFrame）
4.2.9  レストリクトフレーム（Restrict Frame）
4.2.10  センドフレーム（Send Frame）
4.2.11  ユースフレーム（Use Frame）
4.2.12  ユーザデファインドフレーム（User-defined Frame）
4.2.13  ホワイルフレーム（While Frame）
4.3  エンコードされたアトリビュート（Encoding Attributes）
4.3.1  エージェント（Agent）
4.3.2  キャッチフレーム（Catch Frame）
4.3.3  コレクション（Collection）
4.3.4  コレクションストリーム（Collection Stream）
4.3.5  ディクショナリ（Dictionary）
4.3.6  リスト（List）
4.3.7  パターン（Pattern）
4.3.8  プロシージャフレーム（Procedure Frame）
4.3.9  ランダムストリーム（Random Stream）
4.3.10  リピートフレーム（Repeat Frame）
4.3.11  レストリクトフレーム（Restrict Frame）
4.3.12  センドフレーム（Send frame）
4.3.13  スタック（Stack）
4.3.14  タイム（Time）
4.3.15  ユースフレーム（Use Frame）
4.3.16  ユーザデファインドフレーム（User-defined Frame）
4.3.17  ホワイルフレーム（While Frame）
5.  エンコードされたパレット
5.1  コンベンションズ（Conventions）
5.2  ランゲージクラス（alnguage Classes）
5.2.1  エージェント（Agent）
5.2.2  アソシエーション（Association）
5.2.3  アトリビュート（Attribute）
5.2.4  カレンダタイム（Calendar Time）
5.2.5  サイテション（Citation）
5.2.6  クラス（Class）
5.2.7  クラスデフィニション（Class definition）
5.2.8  コレクション（Collection）
5.2.9  コンストレイントディクショナリ（Constrained Dictionary）
5.2.10  コンストレイントリスト（Constrained List）
5.2.11  コンストレインセット（Constrained Set）
5.2.12  コンストレイント（Constraint）
5.2.13  コンタクト（Contact）
5.2.14  ディクショナリ（Dictionary）
5.2.15  インプリメーション（Implementatio）
5.2.16  インターフェース（Interface）
5.2.17  レキシコン（Lexicon）
5.2.18  リスト（List）
5.2.19  メソッド（Method）
5.2.20  ミックスイン（Mix-in）
5.2.21  オペレーション（Operation）
5.2.22  パッケージ（Package）
5.2.23  パターン（Pattern）
5.2.24  パーミット（Permit）
5.2.25  ペティション（Petition）
5.2.26  ランダムストリーム（Random Stream）
5.2.27  リソース（Resorce）
5.2.28  セット（Set）
5.2.29  スタック（Stack）
5.2.30  テレアドレス（Teleaddress）
5.2.31  テレネーム（Telename）
5.2.32  テレナンバ（Telenumber）
5.2.33  チケット（Ticket）
5.2.34  チケットスタッブ（Ticket Stub）
5.2.35  タイム（Time）
5.2.36  トリップエクセプション（Trip Exception）
5.2.37  アンエクスペクティドエクセプション（Unexpected Exception）
5.2.38  ウェイ（way）
5.3  エンコードされたクラス（Encoding Classes）
5.3.1  キャッチフレーム（Catch Frame）
5.3.2  コレクションストリーム（Collection Stream）
5.3.3  プレデファインドフレーム（Predefined Frame）
5.3.4  リピートフレーム（Repeat Frame）
5.3.5  レストリクトフレーム（Restrict Frame）
5.3.6.  センドフレーム（Send Frame）
5.3.7  ユースフレーム（Use Frame）
5.3.8  ユースデファインドフレーム（User-defined Frame）
5.3.9  ホワイルフレーム（While Frame）
１．序  文
この開示のアペンデックスＡのセクション１は、本発明の主な要素を紹介し、その説明は、引用によってここで具体化される。アペンディックスＡのセクションの１．４．３に示されたコンベンションは、アペンディックスＢでも同じように用いられている。
１．１  構  成
アペンディックスＢは、３つのセクションに分けられる。セクション１は、アペンディックスＢの序文である。セクション２では、エンコード則（エンコードルール）の主なコンセプトを紹介する。セクション３は、命令（インストラクション：instruction）セットで用いられているものの他に、エンコードで用いられている定義済み（プリデファインド：predefined）クラス及びアトリビュートを定義する。
１．２  参考文献
アペンディックスＢは、以下の文書に依存している。
[10646]
Information technology--Universal Coded Character Set（UCS）, ISO/IEC DIS10646, International Organization for Standardization and International Electrotechnical Commission, 1990.
[Telescript]
この開示のアペンディックスＡ。
[Unicode]
The Unicode Standard: Worldwide Character Encoding,Volume 1, Version 1.0, The Unicode Consortium, Addison-Wesley, 1991.
２．エンコードのコンセプト
テレパーセルは、アペンディックスＢの本セクションにおいて説明される。サブセクションは、テレパーセル、オブジェクト、アトリビュート及びリファレンスのエンコードに対して各々当てられる。
２．１  テレパーセル（Teleparcel）
”テレパーセル（teleparcel）”は、テレパーセルの”subject”であるオブジェクト、そのサブジェクトのコンポーネント及びこれらのものの全てのコンポーネントを回帰的にエンコードする。サブジェクト又はコンポネーントのクラスは、定義済みであっても、ユーザ定義（ユーザデファインド：user-defined）であってもよい。
注：テレパーセルは、標準形式においてのテレスクリプトオブジェクトである。
注：テレパーセルは、オブジェクトを２つのエンジン間で転送する手段である。ソースエンジンは、オブジェクトをテレパーセルに変換し、そのテレパーセルを目的地（デスティネーション：destination）のエンジンに転送する。目的地のエンジンは、テレパーセルをオブジェクトに変換することにより、ソースで使い尽くされたオブジェクトと同じオブジェクトを目的地において生成する。
注：テレパーセルのサブジェクトは、たとえ排他的ではなくても、典型的にはエージェントである。このような場合、テレパーセルは、エージェントと、エージェントが所有する全てのオブジェクトと、エージェントの現在の実行状態を形成するものを含めて包括する。
２．２  オブジェクトのエンコード（Object Encoding）
”オブジェクトのエンコード（object encoding）”は、オブジェクトと、そのオブジェクトに対するリファレンスとをエンコードする。
２．２．１  形  式（Forms）
オブジェクトのエンコードは、以下の形式の内のどれか１つを取る。
実  行（エクスキューティド：Executed）
”executed object encoding”は、実行オブジェクトをエンコードする。
プリディファインド（Predefined）
”predefined object encoding”は、クラスが定義済みであり、実行されていないオブジェクトをエンコードする。
ユーザディファインド（User-defined）
”user-defined object encoding”は、クラスがユーザ定義オブジェクトをエンコードする。
プロテクティッド（Protected）
”protected object encoding”は、任意のオブジェクトをエンコードする。
オブジェクトのエンコードは、そのオブジェクトに対するリファレンスもまたエンコードする。オブジェクトが変更され、又はオブジェクトのエンコード形式が保護されている（purotected）場合にのみ、リファレンスは保護される。
２．２．２  規  則（Rules）
オブジェクト及びリファレンスに対するオブジェクトのエンコードの形式は、以下の規則に従って選択されるものとする。これらの規則は、以下に示した順序で適用される。
１．リファレンスが保護され、オブジェクトが変更されない場合に、プロテクティッドオブジェクトエンコード（protected object encoding）が選択される。
２．オブジェクトが実行される場合に、実行されるオブジェクトのエンコード（executed object encoding）が選択される。
３．オブジェクトのクラスが定義済みの場合に、定義済みオブジェクトのエンコード（predefined object encoding）が選択される。
４．（その他の場合には、）ユーザ定義オブジェクトのエンコード（user-defined object encoding）が選択される。
２．２．３  パレット（Palettes）
オブジェクトのエンコードは、”encoding palette”に依存することができる。この”encoding palette”とは、オブジェクトのエンコードに含めることを要求する定義済みアトリビュート及び規則のセットである。
定義済みオブジェクト又はユーザ定義オブジェクトのエンコードは、”primary”パレットに依存する。この”primary”パレットとは、例えば、”Ｏ”が見本（example）であるエンコードされたオブジェクトの定義済みクラスにより定められたものである。オブジェクトが定義済みクラスのインプリメンテーションメンバであるが、定義済みサブクラスのインプリメンテーションメンバではない場合のみ、そのオブジェクトは、定義済みクラス”example”である。
ユーザ定義オブジェクトのエンコードは、”Ｏ”が見本（example）であるる定義済みクラスのインスタンスが引用、制約又は名前付けもされていない場合で、”Ｏ”が引用、制約又は名前付けされている場合にのみ、”secondary”パレット（このアペンディックスのセクション５．２．２０に定める）に依存する。
パレットにおいて、各々の定義済みアトリビュートは、命令的（mandatory）又は選択的（optional）と示される。”mandatory”アトリビュートは、パレットに依存するエンコードにおいて表される。”optional”アトリビュートは、パレットに依存するエンコードにおいて表されてもよいが、必ずしもその必要はない。エンコードの目的のために、ナンバは、各々の選択的なアトリビュートに割り当てられる。
注：如何なるオブジェクトもミックスインではない。
２．２．４  エンコードされたクラス（Encoding Classses）
エンコードされたパレットは、アペンディックスＢのセクション４．２で後述するように、エンコードされたクラスを容認する。”encoding class”は、この開示のアペンディックスＡに記述されたクラスである”language classes”を越えるものであり、定義済みクラスである。また、”encoding class”は、エンコードの目的のためにインストラクションセットを指示するが、インストラクションセットの一部ではない。
注：エンコードされたクラスの唯一の目的は、エンコードの特性を定義することである。このようなクラスは、イニシャライゼーションパラメータ、オペレーション、アダプテーション又は変更を有さない。
２．２．５  エンコードされたアトリビュート（Encoding Attributes）
エンコードされたパレットは、アペンディックスＢのセクション４．３で後述するエンコードされたアトリビュートを容認する。”encoding attribute”は、この開示のアペンディックスＡに記述された”language attributes”を超えるものであり、定義済みアトリビュートである。また、”encoding attribute”は、エンコードの目的のためのインストラクションセットを指示するが、インストラクションセットの一部ではない。各々のエンコードされたアトリビュートは、システムインスタンスアトリビュートである。
注：エンコードアトリビュートは、ユーザ定義クラスのインターフェースが同一の識別子をアトリビュートに与えることを妨げない。
２．３  アトリビュートのエンコード（Attributes Encoding）
”attribute encoding”は、定義済みアトリビュートと、このアトリビュートのリファレンスをエンコードする。
２．３．１  形  式（Forms）
アトリビュートのエンコードは、次の形式のいずれかを取る。
ブーリアン（Boolean）
”boolean attribute encoding”は、クラス”Boolean”のインスタンスをエンコードする。
ダイアルストリング（Dial String）
”dial string attribute encoding”は、クラス”Dial Sting”のインスタンスをエンコードする。
インテジャ（Integer）
”integer attribute encoding”は、クラス”Integer”のインスタンスをエンコードする。
項  目（アイテム：Item）
”Item attribute encoding”は、オブジェクト又はオブジェクトに対するリファレンスをエンコードする。
リスト（List）
”list attribute encoding”は、クラス”List”のインスタンスをエンコードする。
オクテットストリング（Octet String）
”octet string attribute encoding”は、クラス”Octet String”のインスタンスをエンコードする。
スタック（Stack）
”stack sttribute encoding”は、クラス”Stack”のインスタンスをエンコードする。
ストリング（String）
”string attribute encoding”は、クラス”String”のインスタンスをエンコードする。
２．３．２  規  則（Rules）
アトリビュートに対するアトリビュートのエンコードの形式は、以下の規則に従って選択され、これらの規則は、以下の順序で適用される。
１．アイテムアトリビュートのエンコード（Item attribute encoding）以外のアトリビュートのエンコードは、アトリビュートが必要なクラスのインスタンスである場合に選択される。
２．（他の場合には、）アイテムアトリビュートのエンコード（Item attribute encoding）が選択される。
２．４  リファレンスのエンコード（Reference Encoding）
”リファレンスのエンコード（reference encoding）”は、オブジェクトのエンコードによってエンコードされるオブジェクトに対するリファレンスをエンコードする。
２．４．１  形  式（Forms）
リファレンスのエンコードは、以下の形式のうちの１つを取る。
一般化（General）
”general reference encoding”は、リファレンスのエンコードの開始からオブジェクトのエンコードの開始まで、オクテットで表した”offset”によってオブジェクトを表すリファレンスをエンコードする。このリファレンスは、保護される又は保護されない（unprotected）リファレンス臣芁苣芀苣閃苣莃菣꾁胣ꪂ菣뢂苣꾂菣꺁苣뎃苣벃菣貁菣閃苣것菣릂臣ꢂ菣뎂菣覃臣貾臣ꪁ苣讁藥ꮁ臣讂臣ꮁ뻥ꎁ臣膀郥薀胣ꎭ迥꾁단ꢁ臣讂胣鎁臣ꞁ胣ꪂ菣뮂菣袃臣ꂲ臣鞁胣ꎭ臣ꪂ菣뮂菣袃臣鶿귥閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鲃苣螃菣覃볯嚈楯敤覼⼼㹵戼㹲鶀潶摩摥爠晥牥湥散攠据摯湩鶀臣膀菣ꒂ菣閁苣讂菣閃苣것菣릂苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꒂ菣뾂菣膃苣뎃苣袼湉整捲慨杮覼⼼㹵戼㹲鶀湩整捲慨杮⁥敲敦敲据⁥湥潣楤杮胢꾁胣ꪂ菣뢂苣꾂菣꺁菣ꒂ苣Ꞃ苣袃臣膀苣隃苣Ꞃ苣袃臣ꒂ菣릂苣뎃苣ꞁ臣讂苣ꦃ苣ꮁ꿥馁苣떂苣蚃苣ꞃ菣ꮁ苣ꎁ臣膀苣뎃苣벃菣Ꞃ菣뢂菣袼湩整捲慨杮摥볯ꪂ菣뢂苣꾂菣銂ꇨ馁菣閃苣것菣릂苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ胢掝慬獳爠晥牥湥散攠据摯湩鶀臣膀苣ꦃ苣貁껥ꦾ룦뾁臣뒠郥ꮁ臣膀苣ꦃ苣꺁闦ꒀ苣벃菣ꮁ苣ꎁ臣꾂菣릂苣ꢡ臣ꪃ菣ꆂ菣뎃苣銂苣뎃苣벃菣馁苣芀臣龁胣꾂菣릂臣ꚃ菣뚂껥ꦾ臣뒠郥ꮁ臣膀苣ꦃ苣ꮁ꿥馁苣떂苣蚃苣ꞃ菣ꮁ苣ꎁ臣꾂菣릂苣ꢡ臣ꪃ菣ꆂ菣뎃苣銂苣뎃苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣궃苣벃苣ꎃ볯傈潲散畤敲볯㲉甯㰾牢ਾ胢炝潲散畤敲爠晥牥湥散攠据摯湩鶀臣膀菣궃苣벃苣ꎃ臣뺯臣讂菣閃苣것菣릂苣ꢂ菣뎂菣覃臣讂胣鎁臣鞃菣랂菣뢂菣꾁胣ꚃ菣뚂껥ꦾ苣ꦃ苣꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣ꮁ臣讂菣궃苣벃苣ꎃ臣芁苣芀菣궃苣벃苣ꎃ菣閃苣것菣릂臣ꢂ菣뎂菣覃臣膀껥ꦾ룦뾁菣것菣ꂃ볯꺁胢炝潲散畤敲胢ꊂ菣ꪃ菣ꖃ菣袃臣뾁苣ꢂ菣뎂菣覃臣讂臣膂臣ꢔ臣覂苣讂臣趁臣芁苣芀菣궃苣벃苣ꎃ菣閃苣것菣릂臣ꢂ菣뎂菣覃臣膀胢ꚼ胢貁苣ꒂ菣ꂃ臣芁苣鶀牦浡獥胢ꊂ菣ꪃ菣ꖃ菣袃臣鶀볯鶀臣뒛룤ꮁ臣蒁臣膀菣궃苣벃苣ꎃ菣것菣ꂃ胢ꊼ胢꺁胢炝潲散畤敲胢ꊂ菣ꪃ菣ꖃ菣袃룤꺁菣궃苣벃苣ꎃ臣趽뷧袼菣뢂苣ꞃ菣骼潰楳楴湯볯銂苣뎃菣뢂菣ꮁ苣ꎁ臣ꢡ迧馁苣芀苣뎃菣뢂菣貁볯ꮁ귧鞁臣讁볯袂苣Ꞥ臣蒁ꃥ袐臣膀臣꺁苣뎃菣뢂菣꾁胣鶃苣랂菣뎃蟨ꮺ臣芁苣芀臣貂믤隤臣뒠郥ꮁ臣膀臣꺁苣뎃菣뢂菣꾁胣麝룦낕臣芁苣鶃苣랂菣뎃臣膀룦낕臣芁苣ꚼ臣鶀潰楳楴湯胢ꊂ菣ꪃ菣ꖃ菣袃臣꺁럥ꒀ臣醼苣ꂊ臣龁胥ꮁ귧鞁臣芀戼㹲㰊⁵浸湬㩳灪∽瑨��⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₒ辦†觥袼畒敬覼⼼㹵戼㹲ꪂ菣뢂苣꾂菣ꮁ꿥馁苣ꪃ菣ꆂ菣뎃苣꺁菣閃苣것菣릂苣뎃苣벃菣꺁뷥込臣膀믤许臣ꮃ菣ꮃ臣鎾臣ꚁ臩麊臣貂苣节臣ꢁ臣膀臣貂苣꺁ꛨ螉臣膀믤许臣몤臣龁ꃩ辺臣ꦁ铧閁苣讂苣꺁臣馁苣芀戼㹲醼볯鲃苣覃臣貂臣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣袼潶摩摥爠晥牥湥散攠据摯湩覼臣膀菣閃苣것菣릂臣鲃苣覃臣閁苣龁ꃥ袐臣膀臩麊臣貂臣辁臣꾁臣覂臣蒁胣㲂牢ਾ볯躼苣隃苣Ꞃ苣袃臣骮뻧袸臣꾂菣릂臣芁苣뒠郥膀苣ꦃ苣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣袼汣獡⁳敲敦敲据⁥湥潣楤杮볯銂臩麊臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲鎼볯ꪂ菣뢂苣꾂菣貁菣것菣벃苣ꮃ臣꺛髧난臣颭鳥鞁臣蒁苣ꢁ軦骮臣貂苣꺁臣ꪁ臣膀菣것菣벃苣ꮃ臣肸菩蚈臣鞁臣ꢂ菣뎂菣覃臣貂臣蒁苣뒠郥膀룤겈髧ꪁ菣閃苣것菣릂臣ꢂ菣뎂菣覃볯枈湥牥污爠晥牥湥散攠据摯湩覼苣뢁諦馁苣芀戼㹲钼볯ꪂ菣뢂苣꾂菣貁胣ꚃ菣뚂껥ꦾ苣ꦃ苣袏臣꾂菣릂苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꺁菣궃苣벃苣ꎃ臣芁苣뒠郥膀郥薀胣꾂菣릂菣閃苣것菣릂臣ꢂ菣뎂菣覃볯授慬獳爠晥牥湥散攠据摯湩覼迥꾁菣궃苣벃苣ꎃ菣閃苣것菣릂臣ꢂ菣뎂菣覃볯炈潲散畤敲爠晥牥湥散攠据摯湩覼苣뢁諦馁苣芀戼㹲閼볯袼臣꺁믤꺁ꃥ袐臣膀볯ꒂ菣뾂菣膃苣뎃苣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣袼湩整捲慨杮⁥敲敦敲据⁥湥潣楤杮볯銂臩麊臣讂胣㲂牢ਾ돦骼苣隃苣Ꞃ苣袃臣蚃菣醃菣뮂菣꺁鯧蒚鳥ꮁ귥ꢜ臣ꚁ臣讂臣ꢎ껥閁苣讂臣ꞁ臣ꪁ臣膀菣것菣벃苣ꮃ臣肸菩蚈臣鞁臣ꢂ菣뎂菣覃臣貂臣蒁苣뒠郥ꮁ臣뾁胣誸뿨鞁臣辦觥꺁볯躼臣ꦁ铧閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯₎ꢂ菣뎂菣覃臣貂臣릂菣랂菣ꎂ苣벃苣ꞃ菣㲳甯㰾牢ਾ菣것菣벃苣ꮃ臣膀苣骃菣螃苣莃苣릂볯꺁鳦뮂苣랂菣뎃臣誁臣ꚁ껥ꦾ臣貂苣芀苣隃苣꾂苣ꞃ菣꾁胣蚃菣醃菣뮂菣膀苣隃苣Ꞃ苣袃胣ꊂ菣ꪃ菣ꖃ菣袃迥뎁菣閃苣것菣릂臣ꢂ菣뎂菣覃臣鎽臣覂苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼†苣뎃菣뎃苣ꞃ菣袼潃癮湥楴湯覼⼼㹵戼㹲蚃菣醃菣뮂菣꾁胣蒐胣貁苣궃믤誸臣ꪂ苣蚃菣袃臣芁苣肸胩꺁菣벃苣뎃臣芁苣芀菣것菣벃苣ꮃ臣膀菣벃苣뎃苣ꎀ軩隌臣讂臣ꢁ臣袂臣ꚁ뻥覂苣龁苣꾂菣莃菣릂菣ꪃ菣낂臣芁苣芀戼㹲蚃菣醃菣뮂菣꾁胣许꣨꺁苣뎃苣꾂菣ꎂ菣꾂菣벃菣誏臣颻髩馁苣뮂菣뎃菣ꎂ菣꾂菣벃菣ꮁ뻥蚁胣ꊼ볯ꚼ볯䊈捡畫⵳慎牵胣袏臣膀慂正獵渠牯慭⁬潦浲볯ꮁ룤袁苣貂臣辦觥꾁胣뮻蓦꺁菣벃苣뎃苣겋볥袼胢뮼胢誏臣鶀볯鶀볯ꮁ苣ꎁ臣늛苣芀戼㹲��볯躼볯꾁胣ꪂ菣뢂苣꾂菣誏臣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣꺁뷥込臣꺁苣벃菣꺁觥鎽苣ꢡ臣龁苣꺁臣芁苣芀臣貂苣꺁苣벃菣꾁胣许꣨꺁苣꾂苣ꞃ菣ꮁ臣蒁臣뾂苣ꢁ臣ꚁ铧蒁苣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜸㰴愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯銼†菣것菣벃苣ꮃ볯咈汥灥牡散覼⼼㹵戼㹲蚃菣醃菣뮂菣꾁胣ꆬ臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㔷⼼㹡⼼䥄㹖견볯誏臣견볯꺁胢疝獮杩敮乤浵敢鶀臣膀菣것菣벃苣ꮃ臣ꦁ郥馁苣ꢂ菣뎂菣覃ꛨ螉臣ꆃ苣뢂菣벃菣벃苣ꞃ菣誏臣麃苣誃菣邃菣뢂菣뎃臣誃菣邃苣蒐胣ꢂ菣뎂菣覃臣讂胣鶀扏敪瑣胢꾁胣蚃菣醃菣뮂菣꺁苣隃苣Ꞃ苣袃臣膀苣隃苣Ꞃ苣袃臣뎂菣鶃菣趃菣袃臣銂苣뎃苣벃菣馁苣芀戼㹲ꢳ볯ꊂ菣뎃菣ꎂ菣꾂苣ꊼ臣骮뻧馁苣ꢂ菣뎂菣覃ꛨ螉臣ꆃ菣뢂菣벃菣벃苣ꞃ菣誏臣麃苣誃菣邃菣뢂菣뎃臣誃菣邃臣膀郥薀胣邼迥뎁볯ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯鎼†苣隃苣Ꞃ苣袃臣ꢂ菣뎂菣覃볯侈橢捥⁴湅潣楤杮볯㲉甯㰾牢ਾ苣隃苣Ꞃ苣袃臣ꢂ菣뎂菣覃臣膀껥ꦾ臣貂臣ꊽ볥貁迥ꂘ臣讂믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㘷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₑ龮ꇨꪂ菣뢂苣꾂菣袼苣꾂苣궂菣벃菣ꎂ菣ꪂ菣뢂苣꾂菣骼硅捥瑵摥传橢捥覼⼼㹵戼㹲龮ꇨꪂ菣뢂苣꾂菣袼苣꾂苣궂菣벃菣ꎂ菣ꪂ菣뢂苣꾂菣骼硅捥瑵摥传橢捥覼臣ꢂ菣뎂菣覃臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯膀볯躼볯ꮁ뿨릁臣辦觥ꮁ뻥蚁胣㲂牢ਾ胢䖝數畣整佤橢捥鶀臣견볯袃菣꾂菣ꞁ臣讂苣낂臣膀껥財苣隃苣Ꞃ苣袃苣릉껥鞁胣꾂菣릂臣뎂菣覃苣銼鯥ꢂ菣뎂菣覃臣讂臣ꢁ臣袂臣ꚁ胣ꪂ菣뢂苣꾂菣꺁苣ꦃ苣銂飦몢臣馁苣芀戼㹲ꢳ볯龮ꇨꪂ菣뢂苣꾂菣꾁胣邃苣誃菣蚃菣릂苣ꪃ菣袃臣貐꟦ꮁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯鎼볯銼†菣것菣閃苣ꒂ菣覃苣隃苣Ꞃ苣袃볯傈敲敤楦敮⁤扏敪瑣볯㲉甯㰾牢ਾ껥ꦾ룦뾁苣隃苣Ꞃ苣袃볯鞃菣螃菣ꆂ苣뎃菣ꪂ菣뢂苣꾂菣骼牐摥晥湩摥传橢捥覼臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㜷⼼㹡⼼䥄㹖뾂苣貁苣隃苣Ꞃ苣袃苣骮뻧袸臣꺁苣꺁臣鞁臣릉껥鞁胣꾂菣릂臣뎂菣覃苣銼鯥ꢂ菣뎂菣覃臣讂臣ꢁ臣袂臣ꚁ胣ꪂ菣뢂苣꾂菣꺁苣ꦃ苣銂飦몢臣馁苣芀胢傝污瑥整胢꾁胣ꪂ菣뢂苣꾂菣貁ꛨ겜볯斈慸灭敬볯ꞁ臣讂苣ꦃ苣ꮁ臣蒁臣膀볯ꆬ髧ꮁ苣뎃苣벃菣閁苣��菣것菣袃臣鶾귥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₓ袼菣벃苣螃菣ꆂ苣뎃菣ꪂ菣뢂苣꾂菣骼獕牥搭晥湩摥传橢捥覼⼼㹵戼㹲ꚃ菣뚂껥ꦾ苣隃苣Ꞃ苣袃볯ꚃ菣뚂菣閃苣ꒂ菣覃苣隃苣Ꞃ苣袃볯喚敳⵲敤楦敮⁤扏敪瑣볯꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜸㰸愯㰾䐯噉ਾ곧醼臣鶀慴鶀臣膀苣ꦃ苣꺁苣벃菣꺁볯趀臣醼苣ꂊ臣龁苣벃菣銂苣뎃苣벃菣馁苣鎁臣ꮁ苣誂胣ꪂ菣뢂苣꾂菣貁ꛨ겜볯斈慸汭汰覼臣芁苣꾂菣릂苣躘ꋧꮁ臣讂胣㲂牢ਾ곧醼臣鶀瑉浥胢꾁胣ꪂ菣뢂苣꾂菣꺁苣ꦃ苣銂苣뎃苣벃菣鞁胣견볯꺁胢䦝整鶀臣膀臣꺁苣ꦃ苣꺁菣벃苣骮뻧ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃苣벃菣벃苣ꦃ苣ꮁ꿥鞁臣馨뫦蒚臣蚠뫥ꞁ苣ꒂ菣ꂃ臣뺯뿥鞁臣蒁苣ꪃ苣袃苣ꢂ菣뎂菣覃臣讂胣蒐胣꺁苣ꒂ菣ꂃ蟨ꮺ臣膀菣릂菣膀臣ꪁ苣ꆁ胣꾂菣릂苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꺁胢炝潲数瑲敩鶀苣袃菣鎃菣벃菣꺁귨ꖈ귥꺁ꃩ辺臣袂臣ꚁ胣ꊂ苣蚃菣貁꿥鲿臣讂苣ꦃ苣ꮁ鯥覜臣ꒂ菣릂苣뎃苣꺁菣궃菣蚃苣꺁菣릂菣ꞁ臣讂胣肜뻥꺁볯ꖻ룤꺁菣궃菣蚃苣꾁胣膜闧馁苣鎁臣貁臣趁胣鶁臣뒠郥ꮁ臣膀菣ꮃ볯邼볯貁郥뺁苣讂胣㲂牢ਾ곧醼臣鶀慐敬瑴鶀臣膀볯ꆬ髧ꮁ苣뎃苣벃菣閁苣龁菣것菣袃臣鶾귥鞁胣鶀楍楸獮胢貁귥ꢜ臣讂ꃥ袐臣뾁귥ꢜ臣讂胣견볯꺁胢傝污瑥整胢꾁胣ꪂ菣뢂苣꾂菣貁ꛨ겜볯斈慸灭敬볯ꞁ臣讂苣ꦃ苣ꮁ臣蒁臣膀볯ꆬ菣것菣袃臣鶾귥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₔ鞃菣蚃苣蚃苣覃苣隃苣Ꞃ苣袃볯傈潲整瑣摥传橢捥覼⼼㹵戼㹲鶿귨閁苣龁苣隃苣Ꞃ苣袃볯鞃菣蚃苣蚃苣覃苣隃苣Ꞃ苣袃볯傚潲整瑣摥传橢捥覼臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㤷⼼㹡⼼䥄㹖鶀慴鶀臣膀뿤랭臣貂苣ꪃ菣ꆂ菣뎃苣銂觧骮臣讂胣鶀硅捥瑵摥扏敪瑣胢膀胢傝敲敤楦敮佤橢捥鶀迥꾁胢喝敳䑲晥湩摥扏敪瑣胢꾁胣鎁臣ꪂ菣뢂苣꾂菣銂苣뎃苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ醃菣莃菣袼慐敬瑴覼⼼㹵戼㹲ꢂ菣뎂菣覃臣貂臣醃菣莃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠸㰰愯㰾䐯噉ਾ곧醼臣鶀瑁牴扩瑵獥胢꾁胣醃菣莃菣銂껥ꦾ臣讂ꇨꮁ菣릂菣閁苣ꚁ臣讂ꃩ辺臣膀菣것菣袃臣趸迥ꂬ臣ꎮ꣨馁苣벂菣ꖻ룤꺁苣袃菣鎃菣벃菣銂苣뎃苣벃菣馁苣芀臣꺁ꇨ꾁胣鶀瑁牴扩瑵獥胢꺁駧龔鯥낕苣몛껥閁臣讂胣㲂牢ਾ菣것菣袃臣膀苣袃菣鎃菣벃菣꺁臣貂臣銂믤辄臣芁苣ꢁ껥肨臣龁ꃥ袐臣��뾁胣鶀慍歳胢誏臣견볯꺁胢䆝瑴楲畢整鶀臣颭鳥馁苣芀곧銼臣鶀瑁牴扩瑵獥胢꾁胣벂菣ꖻ룤꺁믤辄臣ꊂ菣ꪃ菣ꖃ菣袃苣ꢂ菣뎂菣覃臣讂胣鶀慍歳胢꾁胣鶀瑁牴扩瑵獥胢꺁駧龔鯥낕苣몛껥馁苣芀戼㹲鶀慍歳胢꾁胣ꦁ臣뮻蓦꺁苣袃菣鎃菣벃菣貁곧銼臣鶀瑁牴扩瑵獥胢銂苣뎃苣벃菣馁苣讁苣몤臣ꒂ菣蚃苣ꎃ苣ꢂ菣뎂菣覃臣讂胣醃菣莃菣꺁ꇨ꾁胣뮼볯貼뷯붼臣蒯鯥궸臣뮻蓦꺁苣袃菣鎃菣벃菣꺁菣뎃菣銂껥膂苣芀곧銼臣鶀瑁牴扩瑵獥胢꾁胣ꒂ菣蚃苣ꎃ臣ꢡ迧銼猼灵砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰椾ㄭ⼼畳㹰苣ꂊ蟩鞁臣鎃菣袃臣醼臣ꪁ苣뒠郥꺁臣膀菣뎃菣鶀뷯鶀臣ꊂ菣ꪃ菣ꖃ菣袃臣ꢂ菣뎂菣覃苣ꮐ苣芀껥鮚臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀胢覽胢꺁ꋥꞤ臣讂ꃩ辺臣膀곧銼臣鶀瑁牴扩瑵獥胢궸臣ꢡ苣讂胣鶀뷯鶀臣袂苣隫郧蒚臣薿ꛨꢁ臣貂苣貁胣鶀慍歳胢讁苣ꦉ郧蒚臣趸鳥ꞁ臣讂菣莃菣꾁胣벂菣ꢁꛨꪁ臣貂苣芀觧蚐髧ꮁ귥ꢜ臣ꚁ臣讂臣膀ꯨ蚐髧ꮁ뿥膦臣閁苣ꪁ臣鎃菣袃臣膀蓧隦臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₔꊂ菣ꪃ菣ꖃ菣袃臣ꢂ菣뎂菣覃볯䆈瑴楲畢整⁳湅潣楤杮볯㲉甯㰾牢ਾ苣袃菣鎃菣벃菣꺁苣뎃苣벃菣꾁胣骮뻧閁苣龁뷥込苣趏飦馁苣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠸㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯钼볯醼†菣벃菣ꊂ菣袼潂汯慥覼⼼㹵戼㹲隃菣ꪃ苣뎃苣袃菣鎃菣벃菣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠸㰲愯㰾䐯噉ਾ菣벃菣ꊂ菣貁胢璝畲鶀臣뒠郥꺁臣膀菣벃菣ꊂ菣ꊂ菣ꪃ菣ꖃ菣袃臣ꢂ菣뎂菣覃臣颭鳥馁苣芀戼㹲ꢳ볯ꢂ菣뎂菣覃臣颭鳥꾁胣鶁臣ꢂ菣뎂菣覃苣늶뻧馁苣麃苣꾂臣袂臣ꚁꓧ閁苣讂胣㲂牢ਾ돦骼臣龁臣ꎁ臣膀菣것菣袃臣隃菣ꪃ苣뎃苣袃菣鎃菣벃菣꾁胣薿蓧蒚臣뮻蓦ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯钼볯銼†菣ꒂ苣ꮃ苣袃菣뎃苣袼楄污匠牴湩覼⼼㹵戼㹲肃苣ꊂ菣릂菣ꪃ菣낂臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㌸⼼㹡⼼䥄㹖鶀捏整却牴湩鶀臣膀菣ꒂ菣ꮃ苣袃菣뎃苣鶀볯鶀臣袂臣ꚁꃩꆬ껥膂苣貂臣肸菩蚈볯讃菣ꮃ볯溚扩汢獥볯꺁菣릂菣鶀볯鶀臣袂臣ꚁ껥膂苣貂臣ꪂ苣蚃菣袃苣袃菣뎃苣鶀볯鶀苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ胢겼胢꺁菣隃菣꾁胣貐臣鶃苣랂菣뎃臣芁苣鶀볯鶀臣궂菣ꦃ苣뾂臣袂臣ꚁ껥膂苣貂臣뮼볯貼볯钼볯꺁꿧늛룤꺁苣뎃菣뢂菣銂苣벃菣ꪁ臣ꞁ苣뎃苣벃菣馁苣芀菣뎃菣袼胢��胢銈胢馼胢覼臣膀볯銈볯銂胣肃菣랂菣袼胢銈胢覼臣膀볯鎼苣骮苣膀苣骃菣릂볯鶀†胢覼臣膀볯钼苣骮苣讂胣鶃苣랂菣뎃볯覽裢醼迥꾁볯覽臣芁苣鶀볯鶀臣讃菣ꮃ臣膀菣뢂苣ꞃ菣鶀뷯鶀臣鶀볯鶀臣ꪂ苣蚃菣袃臣誁臣ꚁ胣蒐胣膀菣莃菣뮼볯붼裢뮼볯붼迥꾁菣莃菣뮼볯붼裢뮼볯붼苣ꂍ苣讂胣鎁臣ꞁ胣鶀뷯鶀臣膀냥ꪁ臣ꢁ苣醼臣芁苣芀菣莃菣뮼볯붼迥꾁볯鎼볯꾁胣蒐胣궼볯ꊼ臣芁苣膀菣莃菣뮼볯붼迥꾁볯邼볯꾁胣蒐胣겼볯ꊼ臣芁苣芀胢꒼胢꺁菣뎃苣릂뻥ꎁ臣鶀볯鶀臣螥闦ꞁ臣讂ꃥ袐臣뾁胣鶀볯鶀臣肜뻥꺁苣꾂菣莃菣꺁菣莃菣뮼볯붼裢뮼볯붼臣膀郥颁雦閳臣醼볯銂苣뎃苣벃菣馁苣芀戼㹲ꢳ볯鞁臣貁臣ꚁ胣肃苣ꒃ菣릂菣ꪃ菣낂臣膀菣ꒂ菣ꪃ볯늀闦袼볯ꎼ볯覼臣ꊽ臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₓꒂ菣蚃苣ꎃ볯䦈瑮来牥볯㲉甯㰾牢ਾ苣뎃菣뢂菣ꊂ菣ꪃ菣ꖃ菣袃臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㐸⼼㹡⼼䥄㹖鶀楳湧摥畎扭牥胢꾁胣ꒂ菣蚃苣ꎃ苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ돦骼臣貂臣膀苣뎃菣뢂菣꺁菣ꒂ菣ꪃ菣것苣꾂菣鞃菣꺁苣뎃苣벃菣ꞁ臣讂臣膀뻤隤臣鞁臣膀苣뎃苣벃菣銂苣뎃菣뢂菣꺁룤겈髧ꪁ苣뎃苣벃菣ꢁ臣ꚁ觧骮臣讂鳦鶈臣袃菣꾂菣꾁귥ꢜ臣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₔꊂ苣蚃菣袼瑉浥볯㲉甯㰾牢ਾ苣ꒂ菣ꂃ苣袃菣鎃菣벃菣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠸㰵愯㰾䐯噉ਾ胢依橢捥鶀迥꾁胢劝晥牥湥散胢꾁胣蒐胣膀苣隃苣Ꞃ苣袃迥꾁苣隃苣Ꞃ苣袃臣뺯臣讂菣閃苣것菣릂苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯钼볯閼†菣릂菣袼楌瑳볯㲉甯㰾牢ਾ菣릂菣ꊂ菣ꪃ菣ꖃ菣袃臣뎃苣벃菣ꎂ菣낂臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㘸⼼㹡⼼䥄㹖鶀湵楳湧摥畎扭牥胢誏臣鶀瑉浥鶀臣膀郥芙臣ꪃ苣袃苣ꢂ菣뎂菣覃臣讂胣鶀湵楳湧摥畎扭牥胢꾁胣鶀瑉浥胢꺁駧龔鯥낕苣ꢂ菣뎂菣覃臣膀胢䦝整鶀臣膀ꋥꞤ臣讂菣뢂苣ꞃ菣꺁ꃩ辺臣鎾臣ꚁ菣릂菣궸臣ꊂ苣蚃菣銂苣뎃苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₖꪂ苣蚃菣袃苣袃菣뎃苣袼捏整⁴瑓楲杮볯㲉甯㰾牢ਾ苣꾂菣莃菣릂菣ꪃ菣낂苣袃菣鎃菣벃菣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠸㰷愯㰾䐯噉ਾ胢疝獮杩敮乤浵敢鶀迥뎁胢依瑣瑥鶀臣膀臣꺁雩몤臣ꊂ菣뎃菣��菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯躼볯ꮁ껥ꦾ臣貂臣ꪂ苣蚃菣袃苣袃菣뎃苣銂苣뎃苣벃菣馁苣芀戼㹲ꢳ볯鎁苣꾁胣ꪂ苣蚃菣袃苣袃菣뎃苣꺁菣ꒂ菣ꪃ菣것苣꾂菣鞃菣꺁苣뎃苣벃菣ꞁ臣讂臣膀뻤隤臣鞁臣膀苣꾂菣莃菣릂菣ꪃ菣낂臣ꢂ菣뎂菣覃臣鞁臣ꢂ菣뎂菣覃苣릉껥馁苣肜裥꺁菣벃苣뎃臣颭鳥鞁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯钼볯鞼†苣뾂菣꾂볯厈慴正볯㲉甯㰾牢ਾ苣뾂菣꾂苣袃菣鎃菣벃菣꺁苣뎃苣벃菣꾁胣ꪃ苣袃苣袃菣鎃菣벃菣꺁苣뎃苣벃菣ꢁ郥肸臣辦觥ꮁ뻥蚁臣膀뻤隤臣鞁臣膀苣뾂菣꾂臣ꊂ苣蚃菣꾁胣鶃苣랂菣뎃臣鮸냥馁苣蚠뫥ꞁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯钼볯颼†苣袃菣뎃苣袼瑓楲杮볯㲉甯㰾牢ਾ苣袃菣뎃苣ꊂ菣ꪃ菣ꖃ菣袃臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㠸⼼㹡⼼䥄㹖鶀湵楳湧摥畎扭牥胢誏臣鶀档牡捡整獲胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯꺁苣꾂苣ꞃ菣閼볯鎼볯銼臣骮뻧閁苣龁苣袃菣뎃苣銂郥芙臣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ돦骼臣貂臣膀苣袃菣뎃苣꺁菣ꒂ菣ꪃ菣것苣꾂菣鞃菣꺁苣뎃苣벃菣ꞁ臣讂臣膀뻤隤臣鞁臣膀苣뎃苣벃菣銂苣袃菣뎃苣꺁苣뎃苣벃菣ꢁ臣ꚁ觧骮臣讂鳦鶈臣袃菣꾂菣꾁귥ꢜ臣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₕꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣袼敒敦敲据⁥湅潣楤杮볯㲉甯㰾牢ਾ菣閃苣것菣릂臣ꢂ菣뎂菣覃臣膀껥ꦾ臣貂臣ꊽ볥銂迥ꂘ臣讂믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㤸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₑ벂菣ꦃ菣ꪃ菣ꆂ菣뎃苣袼敇敮慲⁬敒敦敲据覼⼼㹵戼㹲肸裨蒚臣ꪃ菣ꆂ菣뎃苣袼苣趃菣ꮃ菣閃苣것菣릂볯䞚湥牥污删晥牥湥散볯꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀뿤랭臣貂臣蒁菣閃苣것菣릂臣뺯臣ꚁ臣膀믤辄臣ꢂ菣뎂菣覃臣骮뻧閁苣膀뿤랭臣貂苣ꪃ菣ꆂ菣뎃苣ꮁ꿥鞁臣꾁胣隻臣ꢂ菣뎂菣覃臣骮뻧閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰〹⼼㹡⼼䥄㹖鶀慴鶀臣膀룤겈髧ꪁ菣閃苣것菣릂苣鶁臣袂臣ꪁ苣꺁臣鞁臣릉껥鞁胣뺁臣膀뿤랭臣貂臣蒁迥꾁뿤랭臣貂苣ꪃ菣ꆂ菣뎃苣ꢁ臣ꚁ觧骮臣讂胣鶀楳湧摥畎扭牥胢꾁胣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣讁苣ꪃ菣ꆂ菣뎃苣閁苣讂苣隃苣Ꞃ苣袃臣ꢂ菣뎂菣覃臣ꞁ胣ꪂ菣뮂菣袃苣ꢂ菣뎂菣覃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯閼볯銼†菣ꒂ菣ꎂ菣ꪃ菣ꆂ菣뎃苣袼潖摩摥删晥牥湥散볯㲉甯㰾牢ਾ菣ꒂ菣閁苣龁菣閃苣것菣��볯鲃苣螃苣覃菣閃苣것菣릂볯嚚楯敤⁤敒敦敲据覼臣ꢂ菣뎂菣覃臣膀믤许臣辦觥ꮁ뻥蚁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰ㄹ⼼㹡⼼䥄㹖鶀慴鶀臣膀菣ꒂ菣閁苣龁菣閃苣것菣릂苣鶁臣袂臣ꪁ苣꺁臣鞁臣릉껥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₓꒂ菣뾂菣膃苣뎃苣ꪃ菣ꆂ菣뎃苣袼湉整捲慨杮⁥敒敦敲据覼⼼㹵戼㹲ꒂ菣뾂菣膃苣뎃苣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰲愯㰾䐯噉ਾ胢璝条胢꾁胣ꒂ菣뾂菣膃苣뎃苣ꪃ菣ꆂ菣뎃苣銂臣꺁苣蚁臣节臣ꢁ臣ꚁ觧骮臣讂胣견볯꺁胢䦝整鶀臣膀苣뎃苣벃菣Ꞃ菣뢂菣ꪂ菣뢂苣꾂菣꺁苣ꦃ苣ꮁ꿥馁苣떂苣蚃苣ꞃ菣銂苣뎃苣벃菣馁苣芀곧銼臣鶀瑉浥胢꾁胣ꒂ菣뾂菣膃苣뎃苣覃苣隃苣Ꞃ苣袃臣肃苣뢂苣릂菣銂苣뎃苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₔ꾂菣릂菣閃苣것菣릂볯䎈慬獳删晥牥湥散볯㲉甯㰾牢ਾ苣ꦃ苣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀껥ꦾ룦뾁苣ꦃ苣ꮁ꿥鞁臣꾁胣뮻蓦꺁苣뎃苣벃菣貁껥ꦾ臣貂胣ꚃ菣뚂껥ꦾ苣ꦃ苣ꮁ꿥鞁臣꾁胣隻臣ꢂ菣뎂菣覃臣骮뻧閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㌹⼼㹡⼼䥄㹖鶀慴鶀臣膀苣ꦃ苣ꪃ菣ꆂ菣뎃苣銂臣꺁苣蚁臣节臣ꢁ臣ꚁ觧骮臣膀臣龁胣꾂菣릂苣骮뻧袸臣袏臣ꚃ菣뚂껥ꦾ臣鞁臣릉껥馁苣芀苣ꦃ苣貁껥ꦾ룦뾁臣뒠郥ꮁ胣鶀湵楳湧摥畎扭牥胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯躼볯袏臣许꣨꺁ꇨꊼ볯銼臣궸臣꾂菣릂臣늉苣鎽臣覂苣讂苣벃菣ꮁ苣뎃苣벃菣閁苣讂胣꾂菣릂臣ꚃ菣뚂껥ꦾ臣뒠郥꾁胣鶀瑉浥胢꾁胣꾂菣릂臣떂苣蚃苣ꞃ菣銂苣뎃苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ鞃菣랂菣뢂菣ꪃ菣ꆂ菣뎃苣袼牐捯摥牵⁥敒敦敲据覼⼼㹵戼㹲鞃菣랂菣뢂菣ꪃ菣ꆂ菣뎃苣꺁苣뎃苣벃菣꾁胣ꖻ룤꺁ꛨ螉臣鎾臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰴愯㰾䐯噉ਾ胢璝条胢꾁胣鞃菣랂菣뢂菣ꪃ菣ꆂ菣뎃苣銂臣꺁苣蚁臣节臣ꢁ臣ꚁ觧骮臣讂胣鶀楳湧摥畎扭牥胢꾁胣誸뿨鞁臣袂臣ꮁ菣궃苣벃苣ꎃ臣鶃苣랂菣뎃苣릉껥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼苣뎃苣벃菣閁苣龁苣ꦃ苣ꢁ苣袃菣鎃菣벃菣㲈甯㰾牢ਾ菣것苣꾂菣鞃菣꺁苣뎃苣벃菣꾂菣릂迥뎁苣袃菣鎃菣벃菣꾁胣ꊂ菣뎃菣ꎂ菣꾂苣ꊼ臣겜苣꾂苣ꞃ菣ꞁ껥ꦾ臣貂臣蒁苣芀苣隃苣꾂苣ꞃ菣꾁胣뺁臣膀苣ꦃ苣꺁苣뎃菣뎂菣覃臣膀臣躁臣膀苣袃菣鎃��벃菣꺁苣뎃苣벃菣ꮁ胣蒐胣膀뷥ꚁ苣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₑ뎂菣馃菣랂菣뎃苣袼潃癮湥楴湯覼⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣뎃苣벃菣閁苣龁苣ꦃ苣袼湅潣楤杮䌠慬獳獥볯㲉甯㰾牢ਾ苣뎃苣벃菣閁苣龁苣ꦃ苣꾁胣낂菣벃菣銂뷥邈臣讂胣鎁臣낂菣벃菣銂껥ꦾ臣讂믤许臣뮂苣랂菣뎃臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯꺁苣뎃菣뎃苣ꞃ菣ꮁ뻥蚁胣㲂牢ਾꇨꊼ볯銼臣膀苣뎃苣벃菣閁苣龁苣ꦃ苣뢁臣颭裥邭臣뎂菣覃臣늉뷥銂ꇨ鞁臣节臣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㠰㔹⼼㹡⼼䥄㹖ꢳ볯꾂菣릂胢䚝慲敭胢誏臣鶀牐捯摥牵⁥牆浡鶀臣膀諦ꆱ髧袼苣隃苣袃菣꾂菣骼扡瑳畲瑣볯ꞁ臣讂臣膂胣뎂菣覃苣薿ꛨꢁ臣ꪁ臣芀苣ꦃ苣鶀楄污匠牴湩鶀臣貼臣꺁苣뎃苣뾂菣릂臣ꒂ菣릂苣뎃苣ꪇ뫨꺁苣뎃苣벃菣銂鳦馁苣龁苣膀苣벃菣銂뿥膦臣鞁臣蒁胣㲂牢ਾ돦骼苣뎃苣벃菣閁苣龁苣ꦃ苣꺁铥醼臣꺁鯧蒚臣膀苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣銂껥ꦾ臣讂臣ꢁ臣芁苣龁苣膀鳦ꊂ菣뎃菣ꎂ菣꾂苣꾁胣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣鶁臣袂臣ꪁ苣꾂苣ꞃ菣ꞁ臣讂苣꺁胣设臣낁胣뮂苣랂菣뎃볯躼볯銂郥薀臣肨ꫨ꾂菣릂臣鎽臣ꚁ臣讂臣节臣讁苣覂臣膀郥薀臣ꢂ菣뎂菣覃臣貂臣꾂菣릂臣뮸臣뮂苣랂菣뎃苣鎽臣ꚁ臣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣뎃苣벃菣閁苣龁苣袃菣馃菣벃菣袼湅潣楤杮䄠瑴楲畢整覼⼼㹵戼㹲ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣讂꣨麪迥뎁苣뎃苣벃菣閁苣龁苣ꦃ苣ꮁ鯥覜臣芁苣芀苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣銂껥ꦾ臣讂믤许臣뮂苣랂菣뎃臣膀臣꺁苣蚁臣ꊂ菣ꪃ菣ꖃ菣袃臣뺯臣ꚁ鯥覜臣芁苣蒐胣꺁껥ꦾ룦뾁苣ꦃ苣ꮁ苣隃苣꾂苣ꞃ菣銂뷥ꚁ臣蒁苣芀臣貂苣꺁苣ꦃ苣꾁胣ꊂ菣閃苣馃菣袃ꃩ辺臣莀臣覂苣讂胣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣骮뻧꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯꺁苣꾂苣ꞃ菣钼볯醼臣骮苣龁苣뎃菣뎃苣ꞃ菣ꮁ뻥蚁胣㲂牢ਾ돦骼귨ꖈ귥꺁苣벃菣膀苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣ꮁ觥誂뷥ꚁ苣貂苣薿ꛨ꾁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼†苣뎃苣벃菣閁苣龁苣ꮃ菣鞃볯䖈据摯湩⁧片畯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰶愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼볯醼†苣ꎃ菣膃菣것菣ꂃ볯䎈瑡档䘠慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰷愯㰾䐯噉ਾ胢掝��档映慲敭胢꾁胣鶁臣떂菣뢂苣꾂菣ꆃ苣莃菣貁胢掝瑡档胢꺁臣膂臣ꆃ苣莃菣ꞁ臣誂胣뺁臣膀臣꺁胢炝潲散畤敲胢꺁苣袃菣鎃菣벃菣貁苣骃菣벃苣ꞃ菣꺁뿥钭臥袼菣릂菣뎃菣骼敲灳湯敤覼臣节臣讂껥ꦾ룦뾁菣것菣ꂃ臣芁苣芀戼㹲궂菣莃菣閃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀苣骃菣벃苣ꞃ菣꺁苣벃苣ꖃ菣뎃菣ꞁ臣讂苣ꦃ苣ꞁ臣讂胣袼苣袃菣鎃菣벃菣鶀硥散瑰潩鶀볯芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₒ뎂菣꾂苣ꞃ菣릂菣ꪃ菣ꂃ볯䎈汯敬瑣潩⁮瑓敲浡볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰸愯㰾䐯噉ਾ胢掝汯敬瑣潩⁮瑳敲浡胢꾁胣릂菣ꪃ菣ꂃ臣ꊂ苣蚃菣貁苣것苣랂菣뎃臣ꊂ苣蚃菣ꞁ臣讂苣袃菣벃菣ꞁ臣讂胣㲂牢ਾ苣것苣랂菣뎃苣袃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀苣袃菣벃菣꺁苣벃苣袼苣袃菣鎃菣벃菣鶀潳牵散胢覼迥뎁苣袃菣벃菣꺁迧ꢜ臣鶃苣랂菣뎃볯ꊂ菣ꪃ菣ꖃ菣袃胢炝獯瑩潩鶀볯ꞁ臣讂胣鶀潳牵散胢꾁胣鶁臣ꊂ苣蚃菣貁苣것苣랂菣뎃苣袃菣벃菣ꮁ苣ꎁ臣龔臣讂臣蒁臣뎂菣꾂苣ꞃ菣ꞁ臣讂胣鶀畣牲湥⁴潰楳楴湯胢꾁胣뎂菣꾂苣ꞃ菣릂菣ꪃ菣ꂃ臣붂菣릂苣ꢂ菣뎂菣覃臣讂苣袃菣鎃菣벃菣鶀瑩浥鶀룤꺁菣뢂苣ꞃ菣ꞁ臣讂胣㲂牢ਾ苣것苣랂菣뎃苣袃菣벃菣꾁胣릂菣ꪃ菣ꂃ臣뺏鳥꺁菣뢂苣ꞃ菣꺁觥릖臣鶃苣랂菣뎃臣誁臣ꚁ胣閽귧꺁苣ꒂ菣ꂃ苣뎍臣龔裦鞁臣誁苣膀苣袃菣벃菣꺁迧ꢜ臣鶃苣랂菣뎃臣誁臣ꚁ胣鶁臣ꊂ苣蚃菣銂鳦貾臣龔裦馁苣芀臣鞁臣貼迧ꢜ臣鶃苣랂菣뎃臣貾雦꺁菣뢂苣ꞃ菣ꮁ臣蒁臣꾁胣閁苣ꮁ胣ꖈ臣ꊂ苣蚃菣銂臣貂臣覂铧邈臣讂胣㲂牢ਾ돦骼苣것苣랂菣뎃苣袃菣벃菣꾁胣鶀瑳敲浡胢ꪂ菣것菣랂菣뎃臣뎂菣꾂苣ꞃ菣ꮁ苣ꎁ臣芁ꇨ閁苣龁駦꺁胣鶀瑳敲浡胢ꪂ菣것菣랂菣뎃臣ꪃ苣ꮃ菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯钼볯鎼†菣ꒂ菣ꮃ苣袃菣뎃苣袼楄污匠牴湩覼⼼㹵戼㹲鶀菣ꒂ菣ꮃ苣袃菣뎃苣袼楤污猠牴湩覼胢꾁胣蒐胣꺁苣ꒂ菣ꂃ臣낕귥袼胢邼胢銈胢馼胢覼胣较苣閃菣袼胢銈胢覼迥꾁苣骃菣릂볯鶀†胢覼臣閽苣讁臣芁苣릂菣ꪃ菣낂臣芁苣芀戼㹲ꢳ볯肃苣ꒃ菣릂菣ꪃ菣낂臣膀菣것菣뎃菣ꮁ臣蒁臣ꢔ臣覂苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼볯钼†菣것菣ꂃ볯䚈慲敭볯㲉甯㰾牢ਾ胢閃菣벃菣袼牦浡覼胢꾁胣骮뻧袸臣袏臣ꚃ菣뚂껥ꦾ菣붂菣覃胣閃菣벃菣꺁胢玝扵敪瑣洠瑥潨鶀臣芁ꇨ꺁迧ꢜ臣뚊藦銂꣨늌臣讂苣隃苣Ꞃ苣袃臣芁苣芀戼㹲㰊⁵��湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ뒂菣閃菣벃菣袼潇䘠慲敭볯㲉甯㰾牢ਾ胢뒂菣閃菣벃菣袼潧映慲敭볯鶀臣膀菣ꪃ菣鞃苣財臣蚁臣ꢁ苣늪臣讂菣것菣ꂃ臣芁苣芀臣꺁菣붂菣覃臣膀苣骃菣벃苣ꞃ菣鶀潧胢袏臣鶀敳摮胢꺁臣膂臣骮뻧袸臣ꆃ苣莃菣ꞁ臣誂胣ꪂ菣것菣랂菣뎃胢枝鶀臣膀臣꺁苣ꦃ苣꺁苣뎃苣뾂菣릂臣뒠郥ꞁ臣誂胣ꪂ菣것菣랂菣뎃胢玝湥鶀臣膀臣꺁苣ꦃ苣꺁苣隃苣ꦃ苣꺁苣뎃苣뾂菣릂臣뒠郥ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼볯隼†菣것菣閃苣ꒂ菣覃菣것菣ꂃ볯傈敲敤楦敮⁤牆浡覼⼼㹵戼㹲鶀菣것菣閃苣ꒂ菣覃菣것菣ꂃ볯炈敲敤楦敮⁤牦浡覼胢꾁胣鶁臣떂菣뢂苣꾂菣ꆃ苣莃菣貁껥ꦾ룦뾁臣芁苣膀臣龁臣ꎁ臣膀臣꺁菣궃苣벃苣ꎃ臣鶁臣ꆃ苣莃菣ꞁ臣ꪁ臣鞃菣랂菣뢂菣閃菣벃菣ꞁ臣讂胣鎁臣꾂菣릂臣ꒂ菣릂苣뎃苣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣膀苣骃菣벃苣ꞃ苣뎃胢撝鶀胣鶀楥桴牥胢膀胢榝鶀胣鶀潬灯胢袏臣鶀敳敬瑣胢꺁臣膂臣ꆃ苣莃菣ꞁ臣讂胣㲂牢ਾ돦骼룤낿臣ꪂ菣것菣랂菣뎃臣薆臣ꦁ苣貁臩ꢔ臣貂苣讁臣膀臣꺁껥財臣袂臣ꚁ苣骃菣벃苣ꞃ菣貁ꛨ花臣貂臣颭裥邭苣鲤鿦馁苣鎁臣ꮁ苣ꎁ臣骮苣覂苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼볯鞼†菣궃苣벃苣ꎃ菣것菣ꂃ볯傈潲散畤敲䘠慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤸㰹愯㰾䐯噉ਾ胢鞃菣랂菣뢂菣閃菣벃菣袼牰捯摥牵⁥牦浡覼胢꾁胣鞃菣랂菣뢂菣꺁臩財苣늪臣讂菣것菣ꂃ臣芁苣芀戼㹲鞃菣랂菣뢂菣閃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臩財臣貂臣蒁苣鞃菣랂菣뢂菣袼苣袃菣鎃菣벃菣鶀牰捯摥牵鶀볯ꢁ胣鞃菣랂菣뢂菣꺁迧ꢜ臣鶃苣랂菣뎃볯ꊂ菣ꪃ菣ꖃ菣袃胢炝獯瑩潩鶀볯ꞁ臣讂胣鞃菣랂菣뢂菣꺁胢掝牵敲瑮瀠獯瑩楴湯胢꾁胣ꢂ菣뢂菣貁胣뺏鳥芁ꇨ궸臣芁苣ꊂ苣蚃菣꺁迧ꢜ臣鶃苣랂菣뎃臣芁苣芀戼㹲ꢳ볯鞃菣랂菣뢂菣꾁胣떂菣뢂苣꾂菣꺁苣袃菣鎃菣벃菣鶀牰捯摥牵鶀臣芁苣讁胣ꆃ苣莃菣貁苣뎃菣ꪃ菣뎃菣馁苣閃苣벃菣ꎃ臣것苣鶃菣肃臣芁苣讁胣袏臣閃苣벃菣ꎃ臣ꊂ菣꺂菣ꆃ菣袃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₘꪃ菣벃菣閃菣벃菣袼敒数瑡䘠慲敭볯㲉甯㰾牢ਾ苣袃菣鎃菣벃菣袼瑁牴扩瑵獥볯㲉牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰〰⼼㹡⼼䥄㹖鶀菣钃菣袃菣것菣ꂃ볯犈灥慥整映慲敭볯鶀臣膀臣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣ꪂ菣것菣랂菣뎃胢犝灥慥整胢꺁臣膂臣ꆃ苣莃菣ꞁ臣誂胣鶁臣ꊂ��ꪃ菣ꖃ菣袃胢炝潲散畤敲胢貁胣鶁臣ꪂ菣것菣랂菣뎃臣것苣鶃菣肃臣芁苣骮뻧袸臣閃菣벃菣ꞁ臣讂胣㲂牢ਾ菣钃菣袃菣것菣ꂃ臣몛鳦꺁苣袃菣鎃菣벃菣꾁胣讖꟥閁苣龁迧ꢜ臣芁ꇨ袼苣袃菣鎃菣벃菣鶀敲数楴楴湯即䙯牡胢覼胣誏臣ꊂ苣袃苣莃菣ꞁꛨ花臣貂臣誃菣邃볯ꊂ菣ꪃ菣ꖃ菣袃胢犝灥瑥瑩潩獮胢覼苣ꮐ苣閃菣벃菣ꊂ菣ꪃ菣ꖃ菣袃胢炝潲散畤敲胢꺁臩財臣誃菣邃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₙ것苣袃菣꾂菣閃菣벃菣袼敒瑳楲瑣䘠慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰱愯㰾䐯噉ਾ胢것苣袃菣꾂菣閃菣벃菣袼敲瑳楲瑣映慲敭볯鶀臣膀臣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣ꪂ菣것菣랂菣뎃胢犝獥牴捩鶀臣龁苣꺁菣붂菣覃臣芁苣膀臣꺁苣袃菣鎃菣벃菣鶀牰捯摥牵鶀臣膀臣꺁苣骃菣벃苣ꞃ菣꺁苣벃苣ꖃ菣뎃菣ꞁ臣讂껥ꦾ룦뾁菣것菣ꂃ臣芁苣芀戼㹲것苣袃菣꾂菣閃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀苣隃苣Ꞃ苣袃菣붂菣覃臣ꢂ菣뢂菣ꮁ苣讂臩財臣讖꟥芙臣膀苣隃苣Ꞃ苣袃臣膌臣龁菣벃菣莃菣袼苣袃菣鎃菣벃菣鶀数浲瑩胢覼臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯邼†苣뎃菣閃菣벃菣袼敓摮䘠慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰲愯㰾䐯噉ਾ胢뮂菣覃菣것菣ꂃ볯厈湥⁤牆浡覼胢꾁胣鶁臣떂菣뢂苣꾂菣ꆃ苣莃菣貁胣ꪂ菣것菣랂菣뎃胢玝湥鶀臣龁苣꺁껥ꦾ룦뾁菣붂菣覃臣芁苣뒂菣閃菣벃菣ꞁ臣讂胣㲂牢ਾ苣뎃菣閃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀鳦鶈臣ꪂ菣것菣랂菣뎃臣ꊂ菣꺂菣ꆃ菣袃臣芁臣龁볯ꖻ룤꺁菣놂菣袃볯ꊂ菣ꪃ菣ꖃ菣袃胢璝捩敫獴胢覼苣ꮐ苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯醼†菣벃苣閃菣벃菣袼獕⁥敆浡覼⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣袃菣鎃菣벃菣袼瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌰⼼㹡⼼䥄㹖鶀菣벃苣閃菣벃菣袼獵⁥牦浡覼胢꾁胣鶁臣떂菣뢂苣꾂菣ꆃ苣莃菣貁胣ꪂ菣것菣랂菣뎃胢疝敳胢꺁菣붂菣覃臣芁苣膀臣꺁苣袃菣鎃菣벃菣鶀牰捯摥牵鶀臣ꪂ菣것菣랂菣뎃臣ꊂ菣꺂菣ꆃ菣袃臣醼臣ꞁ臣讂껥ꦾ룦뾁菣것菣ꂃ臣芁苣芀戼㹲ꚃ菣몂菣것菣ꂃ臣몛鳦꺁苣袃菣鎃菣벃菣꾁胣ꪂ菣것菣랂菣뎃臣것苣鶃菣肃볯ꊂ菣ꪃ菣ꖃ菣袃胢犝獥畯捲鶀볯ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼볯醼볯ₒꚃ菣뚂菣螃菣ꆂ苣뎃菣��菣벃菣袼獕牥搭晥湩摥映慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰴愯㰾䐯噉ਾ胢ꚃ菣뚂菣螃菣ꆂ苣뎃菣閃菣벃菣袼獵牥搭晥湩摥映慲敭볯鶀臣膀臣꺁菣궃苣벃苣ꎃ臣膀菣것菣ꂃ臣떂菣뢂苣꾂菣ꆃ苣莃菣꺁菣궃苣벃苣ꎃ臣芁苣鞃菣랂菣뢂菣閃菣벃菣ꞁ臣讂胣떂菣뢂苣꾂菣ꆃ苣莃菣꾁胣ꚃ菣뚂껥ꦾ臣芁苣膀뿥뚄髧ꮁ胣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣ꊂ菣ꪃ菣ꖃ菣袃胢榝獮慴据䵥瑥潨獤胢袏臣鶀敳䵴瑥潨獤胢꺁胥ꞁ臣讂胣㲂牢ਾ菣벃苣骮뻧閃菣벃菣꺁鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁菣붂菣覃臣것苣鶃菣肃볯ꊂ菣ꪃ菣ꖃ菣袃胢犝獥潰摮牥胢覼胣릂苣莃苣袼苣袃菣鎃菣벃菣鶀瑳捡鶀볯膀迥뎁ꓥ낕볯ꊂ菣ꪃ菣ꖃ菣袃胢皝牡慩汢獥胢覼臣芁苣膀苣袃菣鎃菣벃菣鶀慶楲扡敬鶀臣膀菣붂菣覃臣ꊂ菣ꪃ菣ꖃ菣袃胢皝牡慩汢獥胢ꮁ臣蒁臣꺁귨ꖈ귥꺁ꃩ辺臣鎾臣芀戼㹲것苣鶃菣肃臣膀菣벃苣骮뻧閃菣벃菣貁苣ꒂ菣ꂃ臣芁苣芀臣꺁苣袃菣鎃菣벃菣鶀牦浡獥胢꺁苣벃苣Ꞃ菣袃臣芁苣芀戼㹲ꢳ볯閃菣벃菣꺁苣袃菣鎃菣벃菣鶀牐捯摥牵鶀룤꺁苣ꒂ菣ꂃ臣颭鳥馁苣ꪁ苣낁胣鶁臣ꊂ苣蚃菣銂胢ꦼ胢ꢁ믤骮臣讂胣ꢂ菣뢂苣뎃菣꺁苣袃菣鎃菣벃菣鶀牦浡獥胢궸臣ꚃ菣뚂껥ꦾ菣것菣ꂃ臣许臣ꊂ苣蚃菣貁귥ꢜ臣讂臣覂臣膀臣꺁苣ꒂ菣ꂃ苣鶀볯鶀臣꺻껥馁苣芀觧ꮁ胣鶀볯鶀苣膀苣袃菣鎃菣벃菣鶀牐捯摥牵鶀룤꺁菣뢂苣ꞃ菣貁胢ꊼ胢꺁苣袃菣鎃菣벃菣鶀潰楳楴湯胢ꞁ臣讂苣ꒂ菣ꂃ臣꺻껥馁苣芀胢ꦼ胢꾁볯膽볯颭鳥鮁臣膀苣隃苣Ꞃ苣袃菣붂菣覃臣膀苣骃菣벃苣ꞃ菣鶀楬敶胢꺁臣膂臣节臣ꞁ臣誂胣袼뷯覼菣螃苣閃苣ꒂ菣鶀敳䅴瑴楲畢整胢ꮁ苣ꎁ臣袅ꇨ閁苣讂귨ꖈ귥ꞁ臣誂胣떂菣뢂苣꾂菣ꆃ苣莃菣꾁胣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣ꊂ菣ꪃ菣ꖃ菣袃胢玝瑥敍桴摯鶀룤꺁胥ꞁ臣誂胣袼뷯覼臣꺁苣蚁臣袅ꇨ閁苣ꪁ臣颭裥邭臣芁苣膀臣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣膀苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꺁苣袃菣鎃菣벃菣鶀湩瑳湡散敍桴摯鶀룤꺁胥ꞁ臣誂胣袏臣袼뷯覼苣것苣뾂胢斝捳污瑡鶀臣芁苣膀苣隃苣Ꞃ苣袃菣붂菣覃臣膀룤風볯芽볯袏臣袼뷯覼臣몤臣龁胩誂臣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯鎼†菣꾃苣ꮃ菣것菣ꂃ볯垈楨敬䘠慲敭볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰵愯㰾䐯噉ਾ胢鮃菣ꒂ菣閃菣벃菣袼桗汩敬映慲敭볯鶀臣膀臣꺁苣隃苣Ꞃ苣袃菣붂菣��覃臣ꪂ菣것菣랂菣뎃胢瞝楨敬胢꺁臣膂臣ꆃ苣莃菣ꞁ臣誂胣鶁臣ꊂ菣ꪃ菣ꖃ菣袃胢炝潲散畤敲胢貁胣鶁臣ꪂ菣것菣랂菣뎃臣것苣鶃菣肃臣芁苣骮뻧袸臣閃菣벃菣ꞁ臣讂胣㲂牢ਾ菣꾃苣ꮃ菣것菣ꂃ臣몛鳦꺁苣袃菣鎃菣벃菣꾁胣ꪂ菣것菣랂菣뎃臣ꊂ菣꺂菣ꆃ菣袃볯ꊂ菣ꪃ菣ꖃ菣袃胢炝敲潣摮瑩潩鶀볯ꞁ臣讂껥財苣隃苣Ꞃ苣袃臣膀菣릂菣뎃菣ꢁ꣨蚁苣誂臣肂臣趂苣벃苣ꖃ菣뎃菣貁臩財臣貂臣蒁苣讁郥讁볯ꊂ菣ꪃ菣ꖃ菣袃胢榝偳敲潣摮瑩潩鶀볯銂飦몢臣馁苣芀菣꾃苣ꮃ菣것菣ꂃ臣ꊂ菣ꪃ菣ꖃ菣袃胢炝獯瑩潩鶀臣膀볯ꒁ臣鞃菣랂菣뢂菣꺁蛥꺁臣ꆁ苣讁臩財臣貂臣蒁苣릖臣肉뇥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₓꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃볯䖈据摯湩⁧瑁牴扩瑵覼⼼㹵戼㹲ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀믤许臣袂臣ꮁ껥ꦾ臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₑꢂ菣뢂苣뎃菣袼杁湥覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰶愯㰾䐯噉ਾ菣릂菣뎃菣꺁뛧骶룤꺁菣것菣ꂃ胣鲃菣ꂃ臣閃菣벃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣膀苣骃菣벃苣ꞃ菣鶀楬敶胢꺁臣膂臣ꚃ菣뚂껥ꦾ菣붂菣覃臣芁苣芀菣莃菣閃菣벃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣膀苣骃菣벃苣ꞃ菣鶀潧胢袏臣鶀敳摮胢꺁臣膂臣袺苣馂臣覂苣龁볯抈極瑬椭覼菣붂菣覃臣芁苣芀苣궃믤誸臣閃菣벃菣貁믤ꮁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㜰⼼㹡⼼䥄㹖趃苣蚃苣隃菣벃菣莃菣貁胣것苣鶃菣肃臣鶿賦馁苣醃菣龃菣袃臣낕臣ꎁ臣蒁苣뒠郥ꮁ臣膀菣릂菣뎃菣꺁鯥覜臣醃菣龃菣袃볯趃苣蚃苣隃菣벃菣莃菣骼慮楴敶瀠牥業覼臣芁苣膀臣꺁믤꺁ꃥ袐臣꾁胣讃菣袼볯覼臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₒ궂菣莃菣閃菣벃菣袼慃捴⁨牆浡覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰸愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃苣芁ꇨ鞁臣蒁苣꾂菣릂볯꾂菣릂胢䖝捸灥楴湯胢覼迥꾁臣꺁苣隃苣ꦃ苣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯鎼†苣것苣랂菣뎃볯䎈汯敬瑣潩覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰〹㰹愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣ꒂ菣ꂃ臣芁苣芀觧骮臣貂苣ꊂ苣蚃菣꺁菣��苣ꞃ菣꾁胣ꦁ苣节껥ꦾ臣貂臣蒁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯钼†苣것苣랂菣뎃苣袃菣벃菣袼潃汬捥楴湯匠牴慥覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰ㄹ㰰愯㰾䐯噉ਾ菣릂菣뎃菣貁뷤节铧邈臣ꚁ臣蒁ꃥ袐臣꾁胣袏臣鶁臣ꊂ苣蚃菣꺁藥ꚁ苣龔裦鞁臣ꪁ臣뒠郥ꮁ臣膀菣릂菣뎃菣궸臣뺏鳥꺁菣뢂苣ꞃ菣ꞁ臣誂胣鶁臣ꞁ臣蒁ꃥ袐臣膀菣ꮃ볯邼볯ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰ㄱ⼼㹡⼼䥄㹖것苣鶃菣肃臣膀臣꺁苣ꒂ菣ꂃ臣ꢅ臣銂铧邈臣ꚁ臣ꪁ臣뒠郥ꮁ臣膀菣릂菣뎃菣꺁苣벃苣ꞁ臣誂胣鶁臣ꞁ臣蒁ꃥ袐臣꾁胣讃菣袼볯覼臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ螃苣꾂苣ꞃ菣ꪃ볯䒈捩瑩潩慮祲볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈱⼼㹡⼼䥄㹖것苣鶃菣肃臣ꊂ苣蚃菣銂뷥邈臣讂苣벃迥뎁胥ꞁ臣讂胣ꪃ苣袃臣鶃苣랂菣뎃볯覽裢醼迥뎁볯覽臣芁苣ꊂ苣蚃菣꾁胣蒐胣膀苣벃臣鶁臣蒵臣袐苣閁苣龁胥ꞁ臣讂胣릉껥閁苣龁苣벃臣뺯臣鶃苣랂菣뎃臣膀껥ꦾ臣貂臣蒁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯隼†菣릂菣袼楌瑳볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌱⼼㹡⼼䥄㹖것苣鶃菣肃臣ꊂ苣蚃菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯鞼†菣뾂菣뎃볯炈瑡整湲볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐱⼼㹡⼼䥄㹖것苣鶃菣肃臣蚃苣릂菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯颼†菣궃苣벃苣ꎃ菣것菣ꂃ볯傈潲散畤敲䘠慲敭볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㔱⼼㹡⼼䥄㹖것苣鶃菣肃臣ꊂ菣ꪃ菣ꖃ菣袃胢炝潲散畤敲胢궸臣뺏鳥꺁菣뢂苣ꞃ菣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㘱⼼㹡⼼䥄㹖것苣鶃菣肃臣龮ꇨ銂ꫨ馁苣鞃菣랂菣뢂菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯馼†菣뎃菣ꂃ苣袃菣벃菣袼慒摮浯匠牴慥覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰��㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰ㄹ㰷愯㰾䐯噉ਾ菣릂菣뎃菣貁ꛥ閽臣讂苣ꒂ菣ꂃ苣龔裦鞁臣蒁臣蒁ꃥ袐臣꾁胣것苣鶃菣肃臣랂菣覃臣芁苣膀臣蚁臣ꪁ臣뒠郥ꮁ臣膀菣릂菣뎃菣貁鳦貾臣龔裦鞁臣ꊂ苣蚃菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯醼볯ₐꪃ菣벃菣閃菣벃菣袼敒数瑡䘠慥敭볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠱⼼㹡⼼䥄㹖ꪂ菣것菣랂菣뎃胢犝灥慥鶀臣ꊂ菣꺂菣ꆃ菣袃苣讻臣龁菣릂菣뎃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣ꒁ臣ꚁꛨ花臣貂臣것苣鶃菣肃臣ꊂ菣ꪃ菣ꖃ菣袃胢炝潲散畤敲胢貁臩財臣貂臣麛闦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㤱⼼㹡⼼䥄㹖鎁苣뺁臣ꮁ雩讧臣貂臣뺏鳥꺁臩財苣ꮐ苣ꚁ菣릂菣뎃菣꺁苣袃菣鎃菣벃菣鶀牰捯摥牵鶀臣芁ꇨ閁苣龁鯥낕臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯醼†菣릂菣ꪃ苣袃菣것菣ꂃ볯劈獥牴捩⁴牆浡覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㈹㰰愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣芁ꇨ꺁雩讧駦ꮁ臣蒁臣膀苣隃苣Ꞃ苣袃臣鶿賦鞁臣醃菣龃菣袃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯銼†苣뎃菣閃菣벃菣袼敓摮䘠慲敭볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰ㄲ⼼㹡⼼䥄㹖것苣鶃菣肃臣떂菣뢂苣꾂菣ꆃ苣莃菣꺁苣벃苣ꖃ菣뎃菣ꢁ臣ꚁ뻤ꚵ臣貂臣ꪃ苣袃룤꺁볯ꖻ룤꺁菣놂菣袃臣芁苣芀觧骮臣貂臣膃苣莃菣꺁臣꺁菣뢂苣ꞃ菣节껥ꦾ臣貂臣蒁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯醼볯ₓ릂苣莃苣袼瑓捡覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㈹㰲愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣ꒂ菣ꂃ臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯钼†苣ꒂ菣袼楔敭볯㲉甯㰾牢ਾ곦ꮁꓧ馁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌲⼼㹡⼼䥄㹖꾂菣릂胢璝浩鶀臣鶀敮鶀苣膦뇦鞁胣鶁臣ꚁ胣鶁臣ꪃ苣ꮃ菣銂苣것菣肃苣ꒂ菣ꮁꓥ鮏臣讂臣ꢁ臣袂臣ꚁ菣릂菣뎃菣貁铧邈臣貂臣芙迥꾁ꃥ肉臣膀铧邈臣貂臣蒁臣ꞁ臣趂臣ꮂ菣뎃菣뾂苣ꂃ臣ꊂ菣ꪃ菣��菣袃胢撝瑳胢ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐲⼼㹡⼼䥄㹖것苣鶃菣肃臣馁苣꺁臣貐꟦ꮁ胣뾂苣ꂃ臣貐臣뚵꿥릂胢뒼胢銂ꇨ馁귦뢸賥閁苣ꚁ臣ꪁ臣ꮂ菣뎃菣뾂苣ꂃ臣뮂苣뎃菣ꊂ菣ꪃ菣ꖃ菣袃胢厝捥湯⁤䄢瑴楲畢整≳臣芁苣芀뷤鞁胣鶁臣뮂苣뎃菣ꊂ菣ꪃ菣ꖃ菣袃臣醁臣벂菣ꮁ苣莃菣閁苣ꚁ臣龁ꃥ袐臣꾁胣뾂苣ꂃ胢뒼猼扵砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰〾⼼畳㹢胢銂ꇨ辂臣芀戼㹲ꢳ볯뒼猼扵砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰〾⼼畳㹢臣膀룦骮臣貂苣ꢅ臣꺁駦鎖臣ꊖ胩馁苣뾂苣ꂃ臣芁苣芀볯㲴畳⁢浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢㰰猯扵꾁胣낂菣뒂菣벃髦風臣貀裥趀臣讖꟥ꮁ룤뒇臣讂胣鞁臣貁臣ꚁ胣鎁臣ꊂ菣ꪃ菣ꖃ菣袃臣膀볯銂볯㲴畳⁢浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢㰰猯扵讁苣钚臣讂꟧낕臣芁苣芀臣꺁苣袃菣鎃菣벃菣꾁胣뎎꿥ꮁ臣膀苣ꒂ菣貁볯㲴畳⁢浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢㰰猯扵꺁뻥ꮁ臣讂ꃥ袐臣꾁귦膀觥ꮁ臣讂ꃥ袐臣꾁단ꮁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㔲⼼㹡⼼䥄㹖꾂菣릂胢璝浩鶀臣鶀敮鶀苣膦뇦鞁胣鶁臣ꪃ苣ꮃ菣銂苣것菣肃苣ꒂ菣ꮁꓥ鮏臣讂臣ꢁ臣袂臣ꚁ菣릂菣뎃菣貁铧邈臣貂臣芙迥꾁ꃥ肉臣膀铧邈臣貂臣蒁臣ꞁ臣趂臣ꮂ菣뎃菣뾂苣ꂃ臣ꊂ菣ꪃ菣ꖃ菣袃胢窝湯鶀臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯閼†菣벃苣閃菣벃菣袼獕⁥牆浡覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㈹㰶愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃苣芁ꇨ馁苣ꪃ苣벃苣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯醼볯ₖꚃ菣뚂菣閃苣ꒂ菣覃菣것菣ꂃ볯喈敳⵲敤楦敮⁤牆浡覼⼼㹵戼㹲ꆬ臣꺁苣뎃苣벃菣閁苣龁苣袃菣鎃菣벃菣꾁胣鎁臣꾂菣릂臣몛鳦ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㜲⼼㹡⼼䥄㹖것苣鶃菣肃臣떂菣뢂苣꾂菣ꆃ苣莃菣꺁菣릂菣뎃菣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠲⼼㹡⼼䥄㹖것苣鶃菣肃臣떂菣뢂苣꾂菣ꆃ苣莃菣꺁苣뾂菣꾂臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㈹㰹愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣隃苣Ꞃ苣袃菣붂菣覃臣覤闦ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼볯醼볯ₗ鮃菣ꒂ菣閃菣벃菣袼桗汩⁥牆浡覼⼼㹵戼㹲ꆬ臣몤臣ꢂ菣뎂菣覃臣貂臣ꊂ菣ꪃ菣ꖃ菣袃臣膀臣꺁苣ꦃ苣ꮁ鯥覜臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㌹㰰愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣袃菣鎃菣벃菣鶀牰捯摥牵鶀��ꪁ臣膀菣릂菣뎃菣꺁苣袃菣鎃菣벃菣鶀牰捥湯楤楴湯胢貁臩財臣貂臣蒁苣讁郥讁臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㌹㰱愯㰾䐯噉ਾ苣骃菣벃苣ꞃ菣鶀敲数瑡胢꺁苣벃苣ꖃ菣뎃菣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯ꢂ菣뎂菣覃臣貂臣醃菣莃菣㲈甯㰾牢ਾ菣것苣꾂菣鞃菣꺁苣뎃苣벃菣閁苣龁菣것菣袃臣膀苣骃菣螃苣莃苣릂臣겜苣꾂苣ꞃ菣ꮁ臣蒁臣骮뻧閁苣ꚁ臣讂胣芁苣뮂苣랂菣뎃臣肨ꫨ꺁苣ꦃ苣ꮁ胣뺁臣膀裥꺁苣꾂苣ꞃ菣꾁苣뎃苣벃菣閁苣龁苣ꦃ苣ꮁ郥薀裥讁苣ꚁ臣讂胣趃菣袃菣벃苣꺁藥ꚁ臣ꢂ菣뢂菣꾁胣ꖻ룤꺁臣ꢁ臣ꒁ臣ꚁ룤뒇臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲袼뷯覼觥誂뷥ꚁ苣貂臣蚃菣ꊂ菣것苣꺁苣袃菣鎃菣벃菣鶀牰癯摩牥胢貁臩麊臣貂苣ꆃ苣莃菣芀戼㹲袼뷯覽볯늉苣鎽臣覂苣龁菣것菣벃菣꺁苣袃菣鎃菣벃菣鶀畡桴牯瑩鶀臣뢁諦閁苣讂菣붂菣覃胣㲂牢ਾ臣貂苣꺁菣붂菣覃臣蚁臣꺁볯ꒁ臣龮雦设臣膀臣꺁雩몤臣麃苣꾂菣閃苣ꮃ菣ꊂ菣뎃菣ꎂ菣꾂苣Ꞽ臣ꮐ臣貂臣뎂菣钃菣벃苣붂菣袃苣Ꞃ苣ꮁ苣뎃菣ꪃ菣뎃菣閁苣ꚁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯醼†苣뎃菣뎃苣ꞃ菣몂볯䎈湯敶瑮潩獮볯㲉甯㰾牢ਾꧧꞁ臣蒁볯溈湯攭灭祴볯꺁볯ꆬ菣것菣袃苣ꢔ臣ꚁ胣鶁臣讦鳦袼硥浡汰獥볯貁苣뎃苣벃菣閁苣龁郥骮뻧袸臣閃菣벃菣벃臣뺯臣ꚁ胣떂菣뮂苣랂菣뎃臣ꖻ룤꺁苣蚁臣鎽臣覂苣讂胣견볯ꮁ胣肨ꫨ閃菣벃菣벃臣ꆬ臣ꢂ菣뎂菣覃臣貂臣閃菣벃菣벃臣ꊂ菣閃苣馃菣袃ꃩ辺臣鲤꣨閁苣讂胣龃菣꾂苣ꒂ菣ꢁꇩ閁苣龁뷤蚈臣떂菣뮂苣랂菣뎃臣膀臣꺁볯ꒁ臣貺곦醃菣莃菣ꮁ뷥ꚁ苣貂苣芀戼㹲蒐菣것菣袃臣Ꞥ菩蚈臣膀苣ꦃ菣貁믤许臣袂臣ꮁ菣馃菣閁苣膀臣鞁臣膀臣꺁ꇨ貁껥ꦾ룦뾁苣袃菣鎃菣벃菣銂껥ꦾ臣讂ꇨ銂铧蒁臣骮뻧閁苣讂胣㲂牢ਾ菣₻㰠⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯㲃甯躼苣袃菣鎃菣벃菣貁釥꒻髧ꞁ臣貂臣鶀볯鶀臣芁苣膀苣袃菣鎃菣벃菣貁믤辄髧ꞁ臣貂臣膀苣袃菣鎃菣벃菣ꮁ觥誂뷥ꚁ苣貂臣낕귥ꞁ臣讂胣㲂牢ਾ菣₻㰠⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢瑁牴扩瑵㱥甯⸾苣袃菣鎃菣벃菣꺁귨ꖈ귥ꞁ臣讂胣㲂牢ਾ菣₻㰠⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢敓摮牥⼼㹵볯ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯躼볯꺁菣벃菣벃苣ꞃ菣銂铧蒁臣骮뻧閁苣龁苣袃菣鎃菣벃菣꺁뷥込臣芁苣芀臣꺁뷥込臣鶀潂汯慥鶀臣芁苣膀臣꺁볯ꒁ臣ꒂ菣릂苣뎃苣꺁蛥꺁볯ꒁ臣뾁臣醃菣龃菣袃臣貂苣뒠郥ꮁ臣膀胢䊝潯敬湡胢꺁믤辂苣ꮁ胢龜볯璈畲覼胢袏臣鶀臥袼��獬覼胢貁ꇨ辂苣讂胣㲂牢ਾ菣₻㰠⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢敒散癩牥⼼㹵볯膀蟥鞁臣蒁苣ꢂ菣뢂菣貁苣뎃苣벃菣讁苣ꊂ菣ꪃ菣ꖃ菣袃苣꒙臣ꪁ臣뒠郥꾁胣肃菣랂菣袼胢銈胢覼臣芁苣膀胩몇臣ꚁ臣讂苣뎃苣뎃臣膀苣袃菣鎃菣벃菣銂駩辁ꃥ袐臣膀迥ꆿ臣讂苣뎃苣뎃臣鮾뗧馁苣릁臣ꊽ볥꺁苣뎃苣뾂菣릂臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₒꦃ菣늂菣뢂苣ꦃ苣袼慌杮慵敧䌠慬獳獥볯㲉甯㰾牢ਾ꣨麪苣ꦃ苣꺁臣膂臣ꢂ菣뎂菣覃臣貂臣醃菣莃菣꾁胣ꖻ룤꺁苣蚁臣骮뻧閁苣讂胣㲂牢ਾ돦骼觧骮臣肨ꫨ꾂菣릂臣膀鳦뮂苣랂菣뎃臣趸鳥ꞁ臣讂臣蒁臣鎁臣꾁胣ꆬ臣袂臣ꮁꫨ躘臣貂苣芀苣隃苣Ꞃ苣袃臣ꊂ菣ꪃ菣ꖃ菣袃甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰挾慬獳⼼㹵迥뎁甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰椾偳潲整瑣摥⼼㹵臣膀苣뎃苣벃菣ꢁ臣ꚁꇨ辂臣貂苣貁胣ꊂ菣ꪃ菣ꖃ菣袃臣鞁臣꾁ꇨ辂臣貂臣蒁胣ꪂ菣뢂苣꾂菣꾁胣ꊂ菣ꪃ菣ꖃ菣袃甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰猾穩㱥甯銂꣨鞮臣讂胣鞃菣벃苣꾁꟧開臣趁臣膀臣龁臣ꎁ臣膀苣뎃苣벃菣閁苣ꪁ臣芀菣궃苣릂臣꾂菣릂臣膀臣꺁菣궃苣릂臣ꢂ菣뢂苣뎃菣袏臣꾂菣릂臣ꪁ臣邙苣膀菣벃苣骮뻧ꢁ臣貂臣蒁胣릂菣ꪃ菣ꂃ菣낂臣膀苣袃菣鎃菣벃菣鶀畣牲湥鶀胣鶀獩潄敮胢誏臣鶀敮瑸胢銂꣨鞮臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼†苣벃苣Ꞃ菣袃볯䆈敧瑮볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯꺁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₒꊂ苣랂苣벃苣ꞃ菣袼獁潳楣瑡湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㌹㰳愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鎼†苣袃菣鎃菣벃菣袼瑁牴扩瑵覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯閼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₔꮂ菣뎃菣뾂苣ꂃ볯䎈污湥慤⁲楔敭볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㌹㰵愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯閼†苣ꒂ菣랂菣뎃볯䎈瑩瑡潩覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鞼臣몤臣龁볯��菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㘳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₖ꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㌹㰷愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鞼†苣ꦃ苣螃菣ꎂ菣랂菣뎃볯䎈慬獳䐠晥湩瑩潩覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯馼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₘ뎂菣꾂苣ꞃ菣袼潃汬捥楴湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯邼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㤳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₙ뎂菣릂菣것苣뎃菣螃苣꾂苣ꞃ菣ꪃ볯䎈湯瑳慲湩摥䐠捩楴湯牡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₐ뎂菣릂菣것苣뎃菣ꪃ苣袃볯䎈湯瑳慲湩摥䰠獩覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₑ뎂菣릂菣것苣뎃菣뮂菣袃볯䎈湯瑳慲湩摥匠瑥볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯鎼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈴⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯銼†苣뎃苣袃菣ꒂ菣袃볯䎈獮牴楡瑮볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯钼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌴⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯鎼†苣뎃苣꾂菣袼潃瑮捡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰴愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₔ螃苣꾂苣ꞃ菣ꪃ볯䒈捩楴湯牡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣��ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰵愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₕꒂ菣鞃菣ꆃ菣蚃苣랂菣뎃볯䦈灭敬敭瑮瑡潩覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰶愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₖꒂ菣뾂菣閃苣벃苣袼湉整晲捡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯醼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰷愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯醼볯ₗ것苣랂苣뎃볯䲈硥捩湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣꾂菣릂胢䒝捩楴湯牡鶀臣讦鳦袼硥浡汰覼臣ꢂ菣뎂菣覃臣貂苣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲ꢳ볯것苣랂苣뎃臣ꊂ菣ꪃ菣ꖃ菣袃胢掝湯瑳慲湩鶀臣膀苣뎃苣袃菣꾂苣ꞃ菣뮂菣袃臣袂臣ꚁ鯥骮臣貂臣蒁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯颼†菣릂菣袼楌瑳볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯馼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠴⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯馼†菣붂菣覃볯䶈瑥潨覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㐹㰹愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₐ龃菣꾂苣ꒂ菣袼楍⵸湩볯㲉甯㰾牢ਾ볯ꆬ菣것菣袃臣膀ꇨꊼ볯銼볯꺁苣꺁臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₑꪂ菣것菣랂菣뎃볯侈数慲楴湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯銼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰ㄵ⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯銼†菣莃苣벃苣袼慐正条覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰲愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₓ醃苣벃菣袼慐瑴牥覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵��楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰳愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₔ醃菣龃菣袃볯傈牥業覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰴愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₕ骃菣ꎂ苣ꞃ菣袼敐楴楴湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯隼룤꺁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㔵⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯隼†菣뎃菣ꂃ苣袃菣벃菣袼慒摮浯匠牴慥覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰶愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₗꪃ苣벃苣袼敒潳牵散볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯颼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㜵⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯颼†苣莃菣袼敓覼⼼㹵戼㹲肸곦醃菣莃菣銂뷤ꢔ臣ꚁ胣鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣ꢂ菣뎂菣覃臣貂苣芀臣龁胣鎁臣肸곦醃菣莃菣ꢁ藥ꮁ胣꾂菣릂胢䎝汯敬瑣潩鶀臣讦鳦袼硥浡汰覼臣膀苣뎃苣벃菣閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯銼볯ₙ릂苣莃苣袼瑓捡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯銼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰸愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鎼볯ₐ蚃菣ꊂ菣것苣袼敔敬摡牤獥覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鎼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㔹㰹愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鎼볯ₑ蚃菣趃菣ꂃ볯咈汥湥浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鎼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㘹㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鎼볯ₒ蚃菣誃菣邃볯咈汥湥浵敢覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鎼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㘹㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯銼볯鎼볯ₓ膃苣��莃菣袼楔正瑥볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯鎼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈶⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯钼†菣놂菣袃苣뾂菣隃볯咈捩敫⁴瑓扵볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯钼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌶⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯閼†苣ꒂ菣袼楔敭볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯閼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐶⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯隼†菣ꪃ菣鞃苣낂苣鞃苣ꞃ菣袼牔灩䔠捸灥楴湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯隼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㔶⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯鞼†苣뎃苣꾂苣骃苣蚃苣覃苣꾂苣鞃苣ꞃ菣袼湕硥数瑣摥䔠捸灥楴湯볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯鞼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㘶⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯颼†苣Ꞃ苣袼慗覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鎼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㘹㰷愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼†苣뎃苣벃菣閁苣龁苣ꦃ苣袼湅潣楤杮䌠慬獳獥볯㲉甯㰾牢ਾ苣뎃苣벃菣閁苣龁苣ꦃ苣꺁臣膂臣ꢂ菣뎂菣覃臣貂臣醃菣莃菣꾁胣ꖻ룤ꮁ껥ꦾ臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₑ궂菣莃菣閃菣벃菣袼慃捴⁨牆浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯鎼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㘹㰸愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼볯銼†苣것苣랂菣뎃苣袃菣벃菣袼潃汬捥楴湯匠牴慥覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯钼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㘹㰹愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼볯鎼†菣것菣閃苣ꒂ菣覃菣것菣ꂃ볯傈敲敤楦敮⁤牆浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨ��볯钼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼볯钼†菣钃菣袃菣것菣ꂃ볯劈灥慥⁴牆浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯钼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼볯閼†菣릂菣ꪃ苣袃菣것菣ꂃ볯劈獥牴捩⁴牆浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯钼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰲愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯鎼볯隼†苣뎃菣閃菣벃菣袼敓摮䘠慲敭볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯钼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㌷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₗꚃ菣릂菣것菣ꂃ볯喈敳䘠慲敭볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯閼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₘꚃ菣릂菣閃苣ꒂ菣覃菣것菣ꂃ볯喈敳䐭晥湩摥䘠慲敭볯㲉甯㰾牢ਾ臣꺁苣ꦃ苣꺁ꛨ겜볯斈慸灭敬볯꾁胣ꢡ볯躼볯隼臣몤臣龁볯ꆬ菣것菣袃苣ꢔ臣ꚁ苣뎃苣벃菣閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㔷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₙ鮃菣ꒂ菣閃菣벃菣袼桗汩⁥牆浡覼⼼㹵戼㹲鎁臣꾂菣릂臣讦鳦袼硥浡汰覼臣膀ꇨꊼ볯钼볯ꮁꓧ鞁臣醼곦醃菣莃菣銂铧蒁臣ꢂ菣뎂菣覃臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰶愯㰾䐯噉ਾ苣骃菣螃苣莃苣릂볯㲣牢ਾ釨鲽꣦₩뢂苣趃菣ꮃ菣麃苣莃苣뺤㤱㈹胣ㆁ㤹芀ꓨ붣苣膦臣芀戼㹲ꖻ룤꺁鯧ꆬ臣膀ꫨ薀臣ꊂ菣뎃菣ꎂ菣꾂苣ꎼ臣讧裦銂郧ꎧ臣膀臣꺁菦놠苣鲤듧馁苣龁苣ꮁ뷥讫臣讂苣꺁臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢鯧₮ꆬ⼼㹵戼㹲ㄊ‮辺雦㲇牢ਾꛦ뎦戼㹲讧裦㲐牢ਾ볥ꢔ戼㹲㈊‮ꒂ菣뾂菣閃苣벃苣꺁ꛦ떿戼㹲㈊ㄮ†菣것菣벃菣袼敔敬慮敭볯㲉牢ਾ⸲′趃菣袃菣벃苣袼敎睴牯覼戼㹲㈊㌮†苣뎃苣뎃볯䖈杮湩覼戼㹲㈊㐮†菣ꦃ菣莃菣閃苣벃菣袼汐瑡潦浲볯㲉牢ਾ⸲‵ꪃ菣뢂菣뎃볯劈来潩覼戼㹲㈊㘮†苣Ꚃ菣鶃苣袃볯侈瑵潰瑳볯㲉牢ਾ⸲‷覃菣ꒂ菣袼潄慭湩볯㲉牢ਾ⸲‸袃菣뎃苣閃苣袼牔湡晳牥볯㲉牢ਾ⸲‹袃菣뎃苣閃苣ꚃ菣莃菣袼牔湡晳牥唠楮��戼㹲㈊ㄮ‰蚃苣蚃苣趃菣랂菣뎃볯䒈獥楴慮楴湯볯㲉牢ਾ⸲ㄱ†菣ꦃ菣릂菣ꆂ苣ꮃ菣鞃볯咈慲獮敦⁲片畯覼戼㹲㈊ㄮ′Ꚃ苣ꒂ볯垈祡볯㲉牢ਾ⸲㌱†菣벃菣몂볯䶈慥獮볯㲉牢ਾ⸲㐱†菣뚂菣ꒂ苣ꞃ菣袼敒敳癲瑡潩覼戼㹲㈊ㄮ‵ꦃ菣꾂볯劈湡覼戼㹲㌊‮骀뿤꾂菣릂戼㹲㌊ㄮ†菣뚂菣ꒂ苣ꞃ菣袼敒敳癲瑡潩覼戼㹲㌊㈮†菣뚂菣邃菣ꮃ菣벃菣몂볯劈獥癥扡敬䴠慥獮볯㲉牢ਾ⸳″낼볯뒼볯龃菣뎃苣袼卐乔䴠慥獮볯㲉牢ਾ⸳‴ꢂ苣뢂苣蚃苣뎃苣뎂菣꾂苣ꞃ菣龃菣뎃苣㲺牢ਾ볯䖈楸瑳湩⁧潃湮捥楴湯䴠慥獮볯㲉牢ਾ⸴†菣것苣꾂菣鞃菣ꮁ臣醁苣ꒂ菣뾂菣閃苣벃苣㲹牢ਾ⸴‱ꢂ菣뢂菣袼湅楧敮볯㲉牢ਾ⸴′鞃菣莃菣閃苣벃菣袼汐瑡潦浲볯㲉牢ਾ⸴″螃苣蚃苣趃菣랂菣뎃볯䒈獥楴慮楴湯볯㲉牢ਾ⸴‴閃苣ꒂ菣벃볯䚈楡畬敲볯㲉牢ਾ⸵†菣벃菣ꎂ菣낂볯劈問䥔䝎볯㲉牢ਾ菣벃菣ꎂ菣낂苣ꮃ苣ꪃ苣ꂃ戼㹲㘊‮ꎼ볯讼臣誁臣讂苣뎃苣벃菣Ꞃ菣릂戼㹲ꒂ菣뾂菣閃苣벃苣꺁꣨낿戼㹲뾂苣꾂戼㹲䌊⁉汃獡㱳牢ਾ⸷†菣것苣꾂菣鞃菣꺁苣뎃苣벃菣Ꞃ菣릂苣隃苣Ꞃ苣袃戼㹲㜊ㄮ†苣뎃苣벃菣Ꞃ菣릂臣辦듧㲄牢ਾ⸷′吠䍳慨慲瑣牥戼㹲㜊㌮†獔敄瑳湩瑡潩㱮牢ਾ⸷‴吠䑳獥楴慮楴湯楌瑳戼㹲㜊㔮†獔硅獩楴杮潃湮捥楴湯敍湡㱳牢ਾ⸷‶吠䥳瑮来牥戼㹲㜊㜮†獔湉整敧䱲獩㱴牢ਾ⸷‸吠䵳慥獮戼㹲㜊㤮†獔扏卪数楣楦牥戼㹲㜊ㄮ‰吠佳瑣瑥戼㹲㜊ㄮ‱吠佳瑣瑥㱳牢ਾ⸷㈱†獔卐乔敍湡㱳牢ਾ⸷㌱†獔敒敳癲扡敬敍湡㱳牢ਾ⸷㐱†獔敒敳癲瑡潩㱮牢ਾ⸷㔱†獔瑓楲杮戼㹲㜊ㄮ‶吠味汥慥摤敲獳戼㹲㜊ㄮ‷吠味汥湥浡㱥牢ਾ⸷㠱†獔敔敬畮扭牥戼㹲㜊ㄮ‹吠坳祡戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼†뫥₏螖⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꛦ₂뎦⼼㹵戼㹲鎁臣ꊂ菣뎃菣ꎂ菣꾂苣꾁胣蚃菣릂苣ꪃ菣袃苣뎃苣뎃臣龮ꇨ閁苣讂菣ꦃ菣袃菣벃菣讁苣膀菣것苣꾂菣鞃菣ꢂ菣뢂菣貁뻥讂臣ꢁ臣ꞁ臣讂胢骀뿤떂菣鎃苣鶀苣骮뻧馁苣芀볯ꒁ臣ꢂ菣뢂菣꾁胣蚃菣릂苣ꪃ菣袃臣ꪂ菣것菣랂菣뎃胢枝鶀迥뎁胢玝湥鶀臣袂臣ꚁꛨ花臣貂臣ꢁ臣膀볯ꒁ臣ꢂ菣뢂菣꺁볯ꒁ臣鞃菣ꒂ苣讁苣ꖈ臣ꢂ菣뢂菣꺁裥꺁菣것苣릂臣鶀条湥鶀臣ꢡ迧銂믨膀臣鮁苣龁苣ꮁ胣鎁苣覂臣떂菣鎃苣銂뷤ꢔ臣讂胣㲂牢ਾ臣꺁苣骃菣螃苣莃苣릂臣膀룤ꮁ볯ꒁ臣ꢃ裥讁苣邈苣芀곧醼臣膀苣뎃苣뎃臣鞃菣莃菣閃苣벃菣꺁雩꺁苣뎃苣벃菣Ꞃ菣릂臣風뿨ꮁ菣것苣꾂菣鞃菣銂铧蒁苣鮚臣膀菣것苣꾂菣鞃菣ꢂ菣뢂菣貁郧隫髧ꮁ뿥膦臣馁苣骀뿤떂菣鎃苣ꮁ臣蒁臣風뿨馁苣芀곧銼臣膀臣貂苣꺁苣벃菣릂苣邏뻤馁苣ꎼ볯讼胢ꊂ菣ꪃ苣벃苣ꞃ菣뮃菣궃苣ꦃ菣뎃苣뮃苣뎃苣벃菣Ꞃ菣릂胢袼볯낼볯覼臣ꒁ臣ꚁ꣨낿臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦㲐甯㰾牢ਾ臣꺁苣��菣螃苣莃苣릂臣鞼臣꺁苣꾂苣ꞃ菣ꮁ裥醁苣貂苣芀苣꾂苣ꞃ菣醼臣膀臣鎁臣風볨閁苣ꚁ臣讂뫥ꞁ臣讂胣뮂苣랂菣뎃볯ꞁ臣膀苣뎃苣벃菣Ꞃ菣릂臣몟鳦蒚臣뎂菣뮂菣袃臣ꒁ臣ꚁ꣨낿臣讂胣뮂苣랂菣뎃볯ꞁ臣膀臣辁臣讁臣붿諥閁苣讂菣것苣꾂菣鞃菣꾂菣릂臣ꒁ臣ꚁ꣨낿臣讂胣뮂苣랂菣뎃볯ꞁ臣膀菣것苣꾂菣鞃菣꺁苣뎃苣벃菣Ꞃ菣릂臣ꒁ臣ꚁ꣨낿臣讂胣뮂苣랂菣뎃볯ꞁ臣膀믨膀臣ꒁ臣ꚁ룤꒱ꧨ내臣겪飦馁苣芀苣꾂苣ꞃ菣隼臣꾁胣ꒂ菣뾂菣閃苣벃苣銂껥財臣讂볯讼볯ꆼ볯ꦼ臣ꒁ臣ꚁ꣨낿臣讂胣뮂苣랂菣뎃볯ꞁ臣膀臣꺁볯낼볯ꮁ臣蒁臣뾽铧閁苣讂菣것苣꾂菣鞃菣꾂菣릂臣ꎼ볯讼臣꺁ꇨ뺏臣ꒁ臣ꚁ꣨낿臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼†铧㲨甯㰾牢ਾ臣꺁苣骃菣螃苣莃苣릂臣膀鳦躘듧뢛臣讖ꓧ閁苣讂苣骃菣螃苣莃苣릂볯ꮁ뻤颭臣ꚁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯₎ꒂ菣뾂菣閃苣벃苣꺁ꛦ떿⼼㹵戼㹲鎁臣ꊂ菣뎃菣ꎂ菣꾂苣꺁臣꺁苣꾂苣ꞃ菣ꞁ臣膀菣것苣꾂菣鞃菣뎂菣讃菣놂菣랂菣뎃迥뎁苣龃菣ꖃ苣벃苣ꞃ菣ꒂ菣뾂菣閃苣벃苣꺁鿥겜髧ꪁ苣뎃苣鞃菣ꮁ臣蒁臣風뿨馁苣芀臣鎁臣風뿨閁苣讂苣隃苣Ꞃ苣袃臣骤臣꾁胣蚃菣릂苣ꪃ菣袃臣붑믤袼苣뎃苣袃菣꾂苣ꞃ菣骼湩瑳畲瑣潩覼苣莃菣ꮁ臣蒁臣膀迥꾁苣뎃苣뎃臣뎂菣讃菣놂菣랂菣뎃苣뎃苣벃菣Ꞃ菣릂臣誁臣ꚁ胣뒛軦ꮁꇨ뺏臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₑ蚃菣趃菣ꂃ볯咈汥湥浡覼⼼㹵戼㹲蚃菣릂苣ꪃ菣袃臣膀菣것苣릂雩꺁胣릉臣ꢂ菣뢂菣鎖臣ꪂ菣뢂苣꾂菣꺁꟧開苣떂菣벃菣馁苣芀菣것苣꾂菣鞃菣꺁룤貕臣誁臣ꚁ胣蒐菣것苣릂臣꾁胣ꖈ胣꺁胢蚃菣趃菣ꂃ볯咈汥湥浡覼胢貁觥誂뷥ꚁ苣貂臣蒁苣芀菣것菣벃菣꾁胣銼臣꺁苣袃菣鎃菣벃菣膀臣ꪁ苣ꆁ胢憝瑵潨楲祴胢ꢁ胢榝敤瑮瑩鶀苣膌臣芀戼㹲蚃菣릂苣ꪃ菣袃臣膀菣것菣벃菣銂苣鶃菣袃臣讂胣鎁臣蚃菣趃菣ꂃ臣꾁胣늉苣鎽臣覂苣龁菣것菣벃菣膀臣ꪁ苣ꆁ胢ꊂ苣ꒂ菣覃菣것菣벃菣袼獡楳浧摥琠汥湥浡覼胢ꢁ胣늉苣鎽臣覂苣ꚁ臣ꪁ臣蚃菣趃菣ꂃ胣馁臣辂臣鶀菣뎃苣떂苣뎃菣蚃菣趃菣ꂃ胢ꢁ臣芁苣芀戼㹲蚃菣릂苣ꪃ菣袃苣뎃苣뎃臣袂臣ꚁ苣隃苣Ꞃ苣袃臣蒵臣袐苣閁苣龁苣떂苣뎃菣蚃菣趃菣ꂃ臣膀룥ꮁ苣벃苣ꪃ菣ꎂ臣颭裥薃ꃥ袼苣ꒂ菣뎃菣ꎂ菣ꎂ볯榚敤瑮瑩覼臣ꆸ雦銂郥鎂臣蒁苣芀菣뎃苣떂苣뎃菣蚃菣趃菣ꂃ臣膀菣것苣꾂菣鞃菣꺁볯ꖻ룤꺁苣隃苣Ꞃ苣袃苣릉껥馁苣鎁臣銂蓦뎛臣ꚁ��讂胣馁臣辂臣膀菣뎃苣떂苣뎃菣蚃菣趃菣ꂃ臣膀臣꺁菣것菣벃菣ꮁ鯥覜臣ꊂ菣ꪃ菣ꖃ菣袃苣膜闧馁苣鎁臣貁臣趁胣鎁臣ꢁ臣膀臣꺁菣것菣벃菣꾁臣辁臣讁臣ꪂ菣뢂苣꾂菣銂觧骮臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯銼†菣莃菣꾃菣꾂볯予瑥潷歲볯㲉甯㰾牢ਾ菣것苣꾂菣鞃菣꺁胢趃菣袃菣벃苣袼敎睴牯覼胢꾁胣醼믤誸臣ꪃ菣뢂菣뎃볯颠鿥覼苣ꮐ苣芀菣莃菣꾃菣꾂臣膀臣꺁菣벃苣ꞃ菣꺁藥ꚁ苣貮藥ꮁ鯧銺軦骶臣趁苣ꢁ臣邙苣骁胣鎁苣覂臣ꪃ菣뢂菣뎃臣뮻蓦꺁볯ꒁ臣鎖臣誁臣ꚁ胣薃ꃥ鶀볯난苧鎖믨膀볯炈楯瑮琭ⵯ潰湩⁴牴湡晳牥볯鶀臣膀迥붃臣꾁臣蒁臣ꢁ臣芁苣蚁苣芀臣讁臣膀菣莃菣꾃菣꾂臣뮻蓦꺁볯ꒁ臣ꪃ菣뢂菣뎃雩ꮁ臣蒁臣膀菦놠臣鶀鏨趩뫤鮏믨膀볯玈潴敲愭摮昭牯慷摲琠慲獮敦覼胢貁臣趁苣讨뫥ꮁ臣膀郥ꪃ菣뢂菣뎃臣뢛뫤ꖎ뛧閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯鎼†苣뎃苣뎃볯䖈杮湩覼⼼㹵戼㹲鶀苣뎃苣뎃볯䖈杮湩覼胢꾁胣蚃菣릂苣ꪃ菣袃臣ꒂ菣릂菣ꦃ苣랂菣뎃苣莃菣꺁諦ꆱ賥銂껥뺏臣讂苣뎃菣ꖃ菣뾂菣궃苣릂臣芁苣芀苣뎃苣뎃臣膀믤꺁苣뎃苣뎃臣骀뿤馁苣鎁臣ꮁ苣ꎁ臣膀菩蚈髧ꮁ胣鎁苣銂ꇨꪁ臣芀苣뎃苣뎃臣膀苣떂苣뎃菣蚃菣趃菣ꂃ臣袂臣ꚁꇨ閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯钼†菣ꦃ菣袃菣ꦂ菣ꂃ볯傈慬晴牯覼⼼㹵戼㹲鶀菣ꦃ菣袃菣ꦂ菣ꂃ볯傈慬晴牯覼胢꾁胣醼믤誸臣ꢂ菣뢂菣銂苣鶃菣袃臣讂菣벃菣Ꚃ苣ꊂ迥뎁苣閃菣Ꚃ苣ꊂ臣蚛臣誂臣芁苣芀菣ꦃ菣袃菣ꦂ菣ꂃ臣膀苣뎃苣뎃臣膀郥肸臣鞃菣莃菣閃苣벃菣誸臣芁苣ꢂ菣뢂菣蒂胣鶁臣鞃菣莃菣閃苣벃菣ꢁ軦骶臣貂臣隻臣鞃菣莃菣閃苣벃菣誸臣芁苣ꢂ菣뢂菣ꢁ胩ꆿ臣讂臣ꢁ苣꾏菨ꮁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯閼†菣벃苣ꞃ菣袼敒楧湯볯㲉甯㰾牢ਾ胢ꪃ菣뢂菣뎃볯劈来潩覼胢꾁胣讀뫤袏臣ꎛ뷤ꮁ苣ꎁ臣趓뷤閁苣讂菣ꦃ菣袃菣ꦂ菣ꂃ臣ꢂ菣뢂菣銂郥肂胣㲂牢ਾ볯ꒁ臣ꪃ菣뢂菣뎃臣膀臣꺁菣벃苣ꞃ菣貁郥鎂臣蒁苣鞃菣莃菣閃苣벃菣銂껥ꢅ臣뢛뫤ꖎ뛧馁苣芀臣龁臣ꎁ臣膀菣벃苣ꞃ菣꾁胣鎁臣袂臣ꪁ菣ꦃ菣袃菣ꦂ菣ꂃ臣뮻蓦꺁볯ꒁ臣鎖臣誁臣ꚁ胣薃ꃥ꺁볯난苧鎖믨膀苣꾏菨ꮁ臣讂胣蒐菣벃苣ꞃ菣꾁胣ꪃ菣뢂菣뎃臣꺁苣꾂苣릂迥뎁菣벃苣ꞃ菣讁苣꺁鯩뮎臣꾏菨ꪁ볯ꖻ룤꺁菣ꦃ菣袃菣ꦂ菣ꂃ苣ꮐ苣芀臣꺁苣蚁臣鞃菣莃菣閃苣벃菣ꮁ苣ꎁ臣膀郥ꪃ菣뢂菣뎃臣뢛뫤ꖎ뛧閁苣ꚁ볯ꒁ臣趃菣袃菣벃苣銂뷥邈臣讂胣ꪃ菣뢂菣뎃臣膀��覜臣ꊂ菣ꪃ菣ꖃ菣袃臣膜闧閁苣龁菣것菣벃菣ꮁ苣ꎁ臣ꢡ臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₖꊂ苣袃菣릂菣袼畏灴獯覼⼼㹵戼㹲ꪃ菣뢂菣뎃臣膀믤꺁菣벃苣ꞃ菣薆臣ꊂ苣袃菣릂菣銂鳦鞁臣讂胣鶀苣Ꚃ菣鶃苣袃볯侈瑵潰瑳볯鶀臣膀菣벃苣ꞃ菣薆臣鞃菣ꒂ苣ꞁ臣誂胣芁苣ꪃ菣뢂菣뎃臣覂胣鶁臣ꊂ苣袃菣릂菣貁臣讂菣벃苣ꞃ菣뢁臣ꊻ胩꺁뗧꾷臣ꪁ苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₗ覃菣ꒂ菣袼潄慭湩볯㲉甯㰾牢ਾ胢覃菣ꒂ菣袼潄慭湩볯鶀臣膀菣벃苣ꞃ菣ꞁ臣讂胣龁臣鞁胣隻臣ꪃ菣뢂菣뎃蛥ꮁ臣讂臣꺁菣벃苣ꞃ菣꺁藥ꚁ臣ꊂ苣袃菣릂菣节郥肂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯颼†菣ꦃ菣릂菣ꆂ볯咈慲獮敦覼⼼㹵戼㹲鶀菣ꦃ菣릂菣ꆂ볯咈慲獮敦覼胢꾁胣芁苣ꢂ菣뢂菣膀臣ꪁ苣ꆁ胢ꊻ胩莅苣뎃苣뎃볯玈畯捲⁥湥楧敮볯鶀臣覂胣隻臣ꢂ菣뢂菣膀臣ꪁ苣ꆁ胢ꊻ胩袅苣뎃苣뎃볯撈獥楴慮楴湯攠杮湩覼胢뢁臣膀菣ꦃ菣릂菣ꆂ菣讃菣袃臣鶼胩ꞁ臣讂胣㲂牢ਾ菣ꦃ菣릂菣ꆂ菣讃菣袃臣膀菣ꦃ菣릂菣ꆂ苣ꮃ菣蚃苣뎃苣馁苣龁苣ꮁ铧蒁苣鎁臣貁臣趁苣鶀菣릂菣ꎂ菣벃苣ꞃ菣袼敤瑳湩瑡潩覼胢銂觧骮臣讂胣閁苣ꮁ胣袃菣뎃苣閃苣꺁臣膂臣뾽铧閁苣讂胣鶀菣ꦃ菣릂菣벃菣袼牴湡灳牯覼胢誏臣ꮃ菣袃臣놽鿩銂룤袁苣Ꚃ苣ꒂ苣궨臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯馼†菣ꦃ菣릂菣ꆂ菣讃菣袃볯咈慲獮敦⁲湕瑩볯㲉甯㰾牢ਾ胢袃菣뎃苣閃苣ꚃ菣莃菣袼牔湡晳牥唠楮覼胢꾁胣袃菣뎃苣閃苣꺁髩ꮁ胣ꢂ菣뢂菣鎖臣鶼胩閁苣讂胣袃菣뎃苣閃苣ꚃ菣莃菣꾁胣ꪂ苣莃菣릂菣ꪃ菣낂臣螃苣蚃苣趃菣랂菣뎃臣覂裦讂胣鎁苣覂臣膀苣뎃苣뎃雩ꮁ臣蒁臣鶼胩閁苣讂铥肸臣螃菣뾂ꃩ꺛볯螃菣뾂苣ꒂ菣ꂃ볯撚瑡⁡瑩浥볯ꞁ臣讂胣략苧ꢁ臣讂菣ꦃ菣袃菣ꦂ菣ꂃ臣꺁菣ꦃ菣릂菣ꆂ苣릉껥馁苣鮚臣膀迥뎁鯧蒚鳥袼菣릂菣ꎂ菣벃苣ꞃ菣骼敄瑳湩瑡潩覼臣誁臣ꚁ菣ꦃ菣릂菣ꆂ苣鞏臣讂髩ꮁ胣뒛臣隻臣螃菣뾂臣벑臣몇臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯邼†菣릂菣ꎂ菣벃苣ꞃ菣袼敄瑳湩瑡潩覼⼼㹵戼㹲鶀菣릂菣ꎂ菣벃苣ꞃ菣袼敄瑳湩瑡潩覼胢꾁胣袃菣뎃苣閃苣ꚃ菣莃菣꺁鳦芵髧ꪁ鯧蒚鳥銂ꇨ馁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯ₑ袃菣뎃苣閃苣낂菣벃菣袼牔湡晳牥䜠潲灵볯㲉甯㰾牢ਾ苣骃菣螃苣莃苣릂볯ꮁ꣨覼臣貂苣蚃菣릂苣ꪃ菣袃臣ꪂ菣것菣랂菣뎃胢玝湥鶀臣膀菣뚂菣袃臣鞁臣膀郥肸臣ꪂ苣蚃菣袃苣袃菣뎃苣銂臣辁臣讁臣꺛髧난臣鶼胩馁苣��芀胢袃菣뎃苣閃苣낂菣벃菣袼牔湡晳牥䜠潲灵볯鶀臣膀菣ꦃ菣릂菣ꆂ菣讃菣袃臣鶁苣ꮁ雩ꎀ臣龁菣릂菣ꎂ菣벃苣ꞃ菣꺁鯩袐臣膀볤膀臣貂臣蒁苣ꪂ苣蚃菣袃苣袃菣뎃苣꺁볯ꒁ臣뎂菣벃臣ꞁ臣讂胣㲂牢ਾ菣ꦃ菣릂菣ꆂ苣ꮃ菣鞃臣膀ꯨ蚐髧ꮁ臣膀臣꺁ꛨꂴ臣芁苣袃菣뎃苣閃苣ꚃ菣莃菣銂ꇨ鞁臣蒁苣芀菣ꦃ菣袃菣ꦂ菣ꂃ臣膀跥肸臣袃菣뎃苣閃苣낂菣벃菣銂胣螤闦꺁苣誂냥閁臣袃菣뎃苣閃苣낂菣벃菣誏臣込迥꾁跥肸臣袃菣뎃菣ꆂ菣讃菣袃臣蚈꟨馁苣鎁臣貁臣趁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯銼†苣Ꞃ苣袼慗覼⼼㹵戼㹲鶀苣Ꞃ苣袼慗覼胢꾁胣醼臣꺁菣벃苣ꞃ菣袏臣ꢂ菣뢂菣ꢁ胣鶁臣ꪃ菣뢂菣뎃迥꾁苣뎃苣뎃臣骀뿤馁苣讉껦ꢁ胣鶁臣骀뿤꺁臣膂臣鶀ꫨ벨菦놠볯憈瑵敨瑮捩瑡湩⁧湩潦浲瑡潩覼胢ꢁ苣릉껥馁苣芀戼㹲ꢂ菣뢂菣讁苣몇苣袃菣뎃苣閃苣꾁胣袃菣뎃苣閃苣꺁ꛨ花苣骮뻧馁苣Ꚃ苣ꒂ胣馁臣辂臣鶀苣Ꞃ苣ꊂ苣袃볯瞈祡漠瑵볯鶀苣릉껥馁苣芀裥ꖝ臣讂菣ꦃ菣릂菣ꆂ臣膀鳦鶈臣ꊻ胩莅臣醐臣蚁곦꺁菣ꦃ菣릂菣ꆂ臣誁臣ꚁ苣Ꞃ苣ꊂ苣袃臣鞁臣뾽铧馁苣鎁臣貁臣趁苣Ꚃ苣ꒂ胣馁臣辂臣鶀苣Ꞃ苣邃菣꾂볯瞈祡戠捡覼胢銂胣ꢂ菣뢂菣ꮁ뻤躸臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯ₓ龃菣뎃苣袼敍湡覼⼼㹵戼㹲鶀菣벃菣몂볯䶈慥獮볯鶀臣膀뻤袁臣覜럧蒂蓧骷菣莃菣꾃菣꾂臣袂臣ꪁ胣袃菣뎃苣閃苣ꮁ뷤ꢔ臣貂苣鶼胩ꊽ볥銂觧骮臣讂胣龃菣뎃苣꾁胣鶀苣벃菣릂鏥ꪳ볯熈慵楬祴漠⁦敳癲捩覼胢꺁菣ꦃ菣벃苣蒂胣鶀藥蚡鯩놩뛧袼볯뎼볯꺼볯鶀臣ꖎ뛧꺁臣膂臣뮛ꧨꪕ迥꺁苣蚁臣膀볤膀臣龁苣꺁觧骮臣螃菣뾂苣覜臣讂胣㲂牢ਾ胢ꪃ苣벃菣隃菣龃菣뎃苣袼敲敳癲扡敬洠慥獮볯鶀臣膀菣뚂菣ꒂ苣ꞃ菣貁臩ꢔ臣貂苣鶼胩ꊽ볥銂觧骮臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯ₔꪃ苣馃苣랂菣뎃볯劈獥牥慶楴湯볯㲉甯㰾牢ਾ胢ꪃ苣馃苣랂菣뎃볯劈獥牥慶楴湯볯鶀臣膀菣ꦃ菣릂菣ꆂ臣ꪃ苣ꮃ菣ꢁ臣ꚁ菣ꦃ菣袃菣ꦂ菣ꂃ臣袂臣ꚁꋧ讫臣貂臣뎂菣꾂苣ꞃ菣貁胣芁苣肸껥꺁駦鎖뿤膌臣貂苣鎁臣銂뇦膂苣膦뇦ꞁ臣讂胣ꪃ苣馃苣랂菣뎃臣膀볯ꒁ臣뎂菣꾂苣ꞃ菣貁ꓥ趇臣袃菣뎃苣閃苣ꮁ뷤ꢔ臣貂苣鎁臣銂꣨릮臣讂髩꺁臣ꎁ臣醁臣ꪁ苣芀戼㹲ꪃ苣馃苣랂菣뎃臣膀菣ꦃ菣릂菣ꆂ臣ꪃ苣벃菣隃菣龃菣뎃苣銂鳦馁苣Ꚃ苣ꒂ苣릉껥馁苣ꢁ臣ꮁ臣醁胣辄釥銂賦ꒁ胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯ₕꦃ菣꾂볯劈湡覼⼼㹵戼㹲袃菣뎃苣閃苣꾁胣鶀꣦邙볯炈楲楶敬��覼胢銂胨꺅臣讂臣ꢁ臣ꞁ臣讂胣鶀菣뎃苣袼慒歮볯鶀臣ꦨ駩꺁ꇨ몤臣芁苣芀菣뎃苣꾁胣뒕闦ꞁ臣誂胣ꒀ臣邼臣뒠郥꾁꣦邙臣ꪁ臣鎁臣銂蓦뎑臣讂胣邼믤隤臣ꒀ臣辄釥꾁胣蒐菣벃苣ꞃ菣ꮁ鯥覜臣节臣ꞁ臣讂胣ꪃ菣뢂菣뎃雩꺁菣ꦃ菣릂菣ꆂ臣誁臣ꚁ胣ꦃ菣꾂臣膀ꓥ뒛迥꾁蓧隦臣讂臣ꢁ臣ꞁ臣讂苣꺁臣讦臣馁臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯₎骀뿤꾂菣릂⼼㹵戼㹲鎁臣뮂苣랂菣뎃臣꾁胣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣風볨閁苣ꚁ臣ꪁ臣蚃菣릂苣ꪃ菣袃苣ꦃ苣銂껥ꦾ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼†菣뚂菣ꒂ苣ꞃ菣袼敒敳癲瑡潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰷愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣隃菣莃苣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃볯傈扵楬⁣湉瑳湡散䄠瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㜹㰹愯㰾䐯噉ਾ菣ꦃ菣袃菣ꦂ菣ꂃ臣袂臣ꚁ铧邈臣貂臣ꪃ苣馃苣랂菣뎃臣ꒁ臣ꚁ臣颭裥邭臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₒꪃ苣벃菣隃菣龃菣뎃苣袼敒敳癲扡敬䴠慥獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰〸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠹㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣袃菣鎃菣벃菣袼畐汢捩䤠獮慴据⁥瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈸⼼㹡⼼䥄㹖鞃菣莃菣閃苣벃菣ꮁ苣ꎁ臣龔裦閁苣龁菣뚂菣ꒂ苣ꞃ菣ꮁ臣蒁臣꺁귨ꖈ귥ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯鎼†볯뎼볯꺼菣벃菣몂볯傈呓⁎敍湡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠹㰳愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣隃菣莃苣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃볯傈扵楬⁣湉瑳湡散䄠瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠹㰵愯㰾䐯噉ਾ臣꺁菣ꪃ菣鞃臣龁苣ꮁ뷤ꢔ臣貂苣蚃菣鮃菣誃菣邃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₔꢂ苣뢂苣蚃苣뎃苣뎂菣꾂苣ꞃ菣龃菣뎃苣袼硅獩楴杮䌠湯敮瑣湯䴠慥獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㘸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㠹㰷愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰��睷⹷灪⹯潧樮≰醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣袃菣鎃菣벃菣袼畐汢捩䤠獮慴据⁥瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㠸⼼㹡⼼䥄㹖뎂菣꾂苣ꞃ菣銂觧骮臣讂臣膂臣鞃菣莃菣閃苣벃菣貁뷤ꢔ臣讂臣ꢁ臣ꞁ臣讂귨ꖈ귥ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯₎蚃菣릂苣ꪃ菣袃臣誁臣讂苣뎃苣벃菣Ꞃ菣릂⼼㹵戼㹲鎁臣뮂苣랂菣뎃臣誁臣ꚁ胣ꢂ菣뢂菣ꢁ菣ꦃ菣袃菣ꦂ菣ꂃ臣鎖臣ꒂ菣뾂菣閃苣벃苣꾁胣芁臣讁苣ꆸ雦ꢁ苣蚃菣릂苣ꪃ菣袃苣隃苣Ꞃ苣袃臣芁苣讁臣袂臣ꮁ觧骮臣貂苣芀볯龁臣鞁胣龮髩ꮁ臣鶁臣ꞁ臣蒁胣覼臣꺁껥ꦾ臣膀뇦ꢔ胦銂胨꺅臣龁苣꺁臣芁苣芀臣ꪁ苣ꆁ胣鎁臣ꞁ臣骮뻧꾁胣ꢂ菣뢂菣誏臣鞃菣莃菣閃苣벃菣銂苣뎃菣ꪃ菣뎃菣馁苣龁苣ꮁ뷤ꢔ臣貂苣릉裥꺁菣궃苣ꦃ菣뎃苣肨ꫨꢁ臣ꆄ雩芿臣ꪁ苣袂臣ꮁ蓦뎛臣貂臣蒁苣芀戼㹲ꖻ룤꺁菣것苣꾂菣鞃菣꺁苣ꦃ苣骮뻧꾁胣鎁臣ꒂ菣뾂菣閃苣벃苣ꮁ臣蒁臣ꢔ臣覂苣讂胣鎁苣覂臣骮뻧ꮁ臣蒁臣꾁胣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ迥뎁臣꺁苣骃菣螃苣莃苣릂臣뮂苣랂菣뎃볯銂迥ꞅ臣讂臣ꢁ胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㤸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₑꢂ菣뢂菣袼湅楧敮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰〹⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣袃菣鎃菣벃菣袼畐汢捩䤠獮慴据⁥瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㈹⼼㹡⼼䥄㹖ꢂ菣뢂菣ꮁ胣颍룤꺁菣ꦃ菣閃苣낂菣벃菣ꮁ雩ꎀ臣龁볯ꖻ룤꺁菣ꦃ菣릂菣ꆂ菣讃菣袃臣鶼胩閁苣讂胣袃菣뎃苣閃苣ꚃ菣莃菣膀苣꾂菣莃菣膀菣릂菣ꎂ菣벃苣ꞃ菣誏臣ꦃ菣꾂臣袂臣ꚁꇨ閁苣讂胣Ꚃ苣ꒂ菣莃苣袼苣벃苣ꖃ菣뎃菣鶀慷鶀볯꾁胣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢銂臩財臣龁苣뎃苣뎃臣蚃菣趃菣ꂃ苣ꮐ苣ꞁ臣讂胣鎁臣Ꚃ苣ꒂ菣莃苣꾁胣뮈臣ꚁ臣讂菣ꪃ菣鞃臣뾽铧ꞁ臣讂迧颭臣ꚁ臣讂軦骶触떮볯뎂菣꾂苣ꞃ菣龃菣뎃苣骼潣湮捥楴湯洠慥獮볯銂뻤躸臣讂胣㲂牢ਾ苣벃苣ꖃ菣뎃菣鶀楴敭摁番瑳胢꾁胣莅臣ꪁ苣鞃菣莃菣閃苣벃菣꺁駦袨臣ꊻ胩袅臣鞃菣莃菣閃苣벃菣꺁駦袨臣钯臣ꚁ臩貂臣蒁苣銧闦ꞁ臣讂胣鲿귧뒁볯것苣鶃菣肃볯犚獥潰摮牥볯꾁胣ꊻ胩莅臣ꢂ菣뢂菣꺁駦袨臣鎾臣ꚁ껥膂苣貂臣芙雩銂ꫨ뒕臣讂臣膂臣膀臣꺁菦놠苣뾽铧馁苣鎁臣貁臣趁苣芀戼㹲��ꢂ菣뢂菣貁菣ꦃ菣릂菣ꆂ菣讃菣袃苣鞏臣讂臣ꢁ臣ꞁ臣ꪁ臣뒠郥ꮁ臣膀苣꾂苣鞃苣ꞃ菣袼胢咝慲獮敦䥲䙮楡敬鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰳愯㰾䐯噉ਾ苣뎃苣뎃臣膀跥肸臣袃菣뎃苣閃苣낂菣벃菣ꮁ雩ꎀ臣讂볯ꖻ룤꺁ꓥ鞕臣龁菣ꦃ菣릂菣ꆂ菣讃菣袃臣鶼胩閁苣讂胣鎁臣ꪂ菣것菣랂菣뎃臣龁苣꺁菣ꦃ菣벃苣꾁胣ꪂ菣것菣랂菣뎃胢璝慲獮敦䥲鶀臣节臣ꢁ郥颁臣芁苣貁胣놤闦꺁軥ꂛ볯ꊂ菣꺂菣ꆃ菣袃胢暝楡畬敲胢覼臣颻諥閁苣讂胣袃菣뎃苣閃苣낂菣벃菣꺁믨膀藥꺁苣뎃苣뎃臣誁臣ꚁ胢璝慲獮敦佲瑵潃灭敬整胢貁迥醁迥覂苣讂觥ꮁ胣ꪂ菣것菣랂菣뎃胢璝慲獮敦䙲楡敬鶀臣龔臣讂臣ꢁ臣覜苣鞾苣芀戼㹲鶀慦汩牵鶀臣鶀湩慶楬䵤慥獮胢꺁ꃥ袐胣것苣鶃菣肃臣膀迥붃臣覂臣膀믨膀藥꺁苣뎃苣뎃臣芁苣芀戼㹲놤闦鞁臣袃菣뎃苣閃苣ꚃ菣莃菣銂菣릂菣뎃菣貁迥醁苣鎁臣貁臣趁臣蒁ꃥ袐臣꾁胣ꢂ苣뮂菣랂菣뎃볯鶀牴湡晳牥慆汩摥慆汩摥胢覼臣膀蟥閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㐹⼼㹡⼼䥄㹖袃菣뎃苣閃苣낂菣벃菣꺁臣ꆁ臣醼믤誸臣袃菣뎃苣閃苣ꚃ菣莃菣袼苣벃苣ꖃ菣뎃菣鶀牧畯䥰鶀볯貁ꓥ鞕臣ꚁ臣讂胣놤闦꺁軥ꂛ臣膀苣벃苣ꖃ菣뎃菣鶀敲獡湯胢ꮁ룤袁苣貂苣芀ꓥ鞕臣龁菣ꦃ菣릂菣ꆂ菣讃菣袃臣膀苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣芁ꇨꮁ臣蒁臣躸臣覂苣龁鯧蒚鳥꺁藥薀臣ꪃ苣袃臣뺯臣讂闦낕胥꺁苣뎃菣莃苣릂菣릂菣袼苣벃苣ꖃ菣뎃菣鶀慦汩牵鶀볯ꮁ苣ꎁ臣膀觧骮臣貂苣芀臣꺁菣릂菣꾁볯ꞁ꟥뺁苣膀臣貂臣袃菣뎃苣閃苣ꚃ菣莃菣肜裥꺁菣讃菣袃苣릉껥馁苣芀戼㹲ꪃ苣袃臣躸臣覂苣ꪁ臣뒠郥膀臣ꪁ苣ꆁ苣벃苣ꖃ菣뎃菣鶀慦汩牵鶀臣ꒀ臣讃菣袼볯覼臣뒠郥膀苣ꮃ菣鞃룤꺁藥ꚁ臣袃菣뎃苣閃苣꾁ꓥ鞕臣ꚁ臣讂胣鎁苣꾁胣낂菣벃菣꺁藥ꚁ臣ꚃ菣莃菣銂裥馌臣讂菣릂菣ꮁ鯧鎽臣讂胣㲂牢ਾ菣릂菣뎃菣貁胣ꊂ菣꺂菣ꆃ菣袃胢枝潲灵䑉胢ꮁ苣ꎁ臣ꢡ臣貂苣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢銂믤趉臣膀臩財臣ꚁ臣ꪁ臣ꎁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湕湫睯呮慲獮敦䝲潲灵胢覼臣膀蟥閁苣讂胣袏胣ꊂ菣꺂菣ꆃ菣袃胢暝楡畬敲胢꺁ꃩ꺛볯ꊂ苣蚃菣骼瑩浥볯貁胣鎁臣袃菣뎃苣閃苣낂菣벃菣ꮁ臣蒁臣꺁鯧蒚鳥꺁菣릂菣뢁臣ꦁ裥ꪁ苣뎃菣莃苣릂臣ꪁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湕湫睯呮慲獮敦啲楮鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰵愯㰾䐯噉ਾ觧骮臣袃菣뎃苣閃苣낂菣벃菣袼苣벃苣ꖃ菣뎃菣鶀牧��䥰鶀볯ꮁ臣蒁臣꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣貮뫤鞁臣鎁臣銂ꓧ馁胣릉臣鎁臣낂菣벃菣ꮁ臣蒁臣膀鯦ꪁ苣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵慆汩摥胢꾁臣誂臣ꪁ臣芀臣꺁苣ꮃ菣鞃臣ꊖ臣ꚁ胣袃菣뎃苣閃苣ꚃ菣莃菣ꮁ雩ꎀ臣讂藥ꚁ臣ꪃ苣벃苣꾁胣ꎧ铦閁苣讂胣㲂牢ਾ菣릂菣뎃菣貁胣ꊂ菣꺂菣ꆃ菣袃胢枝潲灵䑉胢ꮁ苣ꎁ臣ꢡ臣貂苣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢ꖻ觥ꮁ胣銂臩財臣ꚁ臣ꪁ臣ꎁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湕湫睯呮慲獮敦䝲潲灵胢覼臣膀蟥閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼†菣ꦃ菣袃菣ꦂ菣ꂃ볯傈慬晴牯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰶愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㤰㜹⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰸愯㰾䐯噉ਾ郥趉臣颻臣覂苣龁苣뎃苣뎃볯ꊂ菣꺂菣ꆃ菣袃胢斝杮湩鶀볯ꮁ苣ꎁ臣뾽铧閁苣讂菣릂菣뎃菣銂苣讃苣ꎃ菣ꒂ苣膀臣ꪁ苣ꆁ裥龜賥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣隃菣莃苣ꒂ菣릂苣뎃苣ꪂ菣것菣랂菣뎃볯傈扵楬⁣湉瑳湡散传数慲楴湯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠〰㤹㰹愯㰾䐯噉ਾ苣벃苣ꖃ菣뎃胢澝瑣瑥鶀胣鶀敤瑳湩瑡潩獮胢膀胢犝湡鶀臣袂臣ꚁ껥ꦾ臣貂臣袃菣뎃苣閃苣낂菣벃菣銂胣醼믤誸臣꺛髧난臣ꢂ菣뢂菣ꮁ믨膀臣讂臣ꢁ苣膦뇦馁苣芀苣ꮃ菣鞃臣낂菣벃菣ꦼ볯袼苣벃苣ꖃ菣뎃菣鶀牧畯䥰鶀볯ꮁ苣ꎁ臣릉껥閁苣讂胣鎁臣ꪂ菣것菣랂菣뎃臣邵黦膀뛧蒁臣財苣貂苣ꪂ菣것菣랂菣뎃胢璝慲獮敦䥲鶀胣鶀牴湡晳牥畏䙴楡敬鶀胣鶀牴湡晳牥慆汩摥胢꺁臣ꆁ臣醼臣ꮁ臣蒁臣膀臣꺁苣ꮃ菣鞃苣讧裦馁苣蒐菣ꦃ菣릂菣ꆂ菣讃菣袃臣芏藧閁苣讂胣㲂牢ਾ菣뎃苣袼苣벃苣ꖃ菣뎃菣鶀慲歮胢覼臣膀臣꺁菣ꦃ菣릂菣ꆂ臣릉꣦銂賦ꒁ臣Ꚑ臣銂觧骮臣讂胣㲂牢ਾ苣벃苣ꖃ菣뎃菣鶀慷鶀臣膀菣ꮃ볯邼볯ꞁ臣讂ꃥ袐臣꾁胣袃菣뎃苣閃苣銂菣벃菣ꎂ菣낂臣讂臣膂臣뾽铧閁苣讂胣㲂牢ਾ菣ꦃ菣릂菣ꆂ臣鮜臣鞁臣膌뛧芙雩꾁胣銧闦袼苣벃苣ꖃ菣뎃菣鶀敤楳敲䑤牵瑡潩鶀볯ꞁ觧骮臣貂苣芀臣貂臣袃菣뎃苣閃苣꺁鳦뺁臣蒁鳦랕賦骶駦鎖臣芁苣芀鳦뺁臣蒁賦骶駦鎖臣ꒀ臣鶀볯鶀臣芁苣鎁臣꾁胣鎁臣袃菣뎃苣閃苣ꮁ臣鮜臣鞁臣膌뛧芙雩貁꣨骮臣貂臣蒁臣蒁臣ꢁ苣辄釥馁苣芀戼㹲袃菣뎃苣閃苣ꮁ꣨릮臣貂苣肜闩膌뛧芙雩꾁胣銧闦袼苣벃苣ꖃ菣뎃菣鶀慭楸畭䑭牵瑡潩鶀볯ꞁ觧骮臣貂��芀臣貂臣袃苣뎃苣閃苣ꮁ꣨꾏臣貂苣肜闩膌뛧芙雩ꞁ臣讂胣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢꺁뻥膀臣꺁꟧낕臣鎖臣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵潃灭敬整胢貁뗨趁臣讁臣龁ꃥ袐臣膀臣꺁苣ꮃ菣鞃臣ꒁ臣ꚁ苣骃菣벃苣ꞃ菣鶀慦汩牔湡晳牥胢貁臩財臣貂臣뒠郥ꢁ郥颁뗧鲞臣ꪁ苣芀鳦랕賦骶駦鎖臣ꒀ臣鶀볯鶀臣芁苣鎁臣꾁胣鎁臣袃菣뎃苣閃苣ꮁ臣肜闩膌뛧芙雩貁꣨骮臣貂臣蒁臣蒁臣ꢁ苣辄釥馁苣芀戼㹲꺛髧난臣ꪃ苣袃臣趸臩螈臣芁苣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湩慶楬䑤獥楴慮楴湯胢覼臣膀蟥閁苣膀迥膀苣벃苣ꖃ菣뎃菣鶀慷鶀臣鮾뗧閁苣ꚁ臣讂臣膀菣ꮃ볯邼볯ꞁ臣蒁苣袃菣鎃菣벃菣銂賦ꎁ臣蒁臣蒁ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣袼胢榝癮污摩慷鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〰㰰愯㰾䐯噉ਾ苣ꮃ菣鞃볯꒼볯ꊂ菣꺂菣ꆃ菣袃胢枝潲灵䑉胢覼臣袂臣ꚁ觧骮臣貂臣袃菣뎃苣閃苣낂菣벃菣ꮁ臣蒁臣膀뛧骶룤꺁藥ꚁ臣袃菣뎃苣閃苣ꚃ菣莃菣貁ꓥ鞕臣讂苣蚁臣膦뇦馁苣芀戼㹲龁臣鞁胣袃菣뎃苣閃苣낂菣벃菣꺁藥ꚁ臣袃菣뎃苣閃苣ꚃ菣莃菣貁ꓥ鞕臣讂臣꾁駩覂臣蒁胣鎁臣ꪂ菣것菣랂菣뎃臣邵黦ꢁ臣ꚁꓥ鞕臣芵苣ꎁ臣袃菣뎃苣閃苣ꚃ菣莃菣꾁胣醼믤誸臣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵慆汩摥胢ꢁ臣貂臣骶臣鶀牴湡晳牥潃灭敬整胢ꢁ苣龔臣讂胣㲂牢ਾ觥麛臣鶀牴湡晳牥畏鶀臣誁臣ꚁ苣ꮃ菣鞃볯꒼臣뾽铧閁苣ꪁ臣ꎁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湕湫睯呮慲獮敦䝲潲灵胢覼臣膀蟥閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㄰⼼㹡⼼䥄㹖膌뛧芙雩袼苣벃苣ꖃ菣뎃菣鶀畤慲楴湯胢覼臣낖臣ꪁ菣뚂菣ꒂ苣ꞃ菣銂菣뾂菣뎃臣讂胣ꪃ苣馃苣랂菣뎃臣膀곦꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣龁苣ꮁ菣뚂菣邃菣ꮃ菣벃菣몂臣誁臣ꚁ菣뚂菣ꒂ苣ꞃ菣貁뷤ꢔ臣貂苣뒠郥膀듦Ꞁ賥袼捡楴敶볯馁苣芀戼㹲ꪃ苣馃苣랂菣뎃臣芙雩貁臩躁臣芙胣ꪃ苣馃苣랂菣뎃臣节臣蒂鳦릊臣ꪁ臣ꪁ苣膀臣꺁菣뚂菣馃苣랂菣뎃苣뾽铧鞁苣蚁臣馁苣袃菣뎃苣閃苣꾁ꓥ鞕臣讂胣㲂牢ਾ菣뚂菣ꒂ苣ꞃ菣꾁胣节臣蒂뿥膦臣閁苣ꪁ臣ꪁ臣龁駦ꮁ胣ꪂ菣것菣랂菣뎃胢犝獥瑥敒敳癲瑡潩鶀臣袂臣ꚁ迥誂뛦馁臣趁臣芁苣芀菣ꦃ菣袃菣ꦂ菣ꂃ臣膀鳦뾽铧꺁菣뚂菣ꒂ苣ꞃ菣ꮁ꿥鞁臣肜闩颭뛧龜雩銂ꫨ馁苣鎁臣貁臣趁苣芀戼㹲것苣鶃菣肃臣ꪃ苣벃菣ꒂ苣ꞃ菣銂뻤躸臣趁臣蒁ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣鶀慃湮瑯敒敳癲鶀臣膀蟥閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈰⼼㹡⼼䥄㹖뺏��꺁菣뚂菣ꒂ苣ꞃ菣袼苣벃苣ꖃ菣뎃菣鶀敲敳癲瑡潩鶀볯꺁賦骶駦鎖臣銧闦貁ꓥ뒛臣貂苣芀臣꺁苣骃菣벃苣ꞃ菣貁釥뎁蟥閁苣龁駦ꮁ菣뚂菣ꒂ苣ꞃ菣貁듦Ꞁ臣芁苣뒠郥꾁胣낖臣蒁賦骶駦鎖臣ꪃ苣벃菣ꒂ苣ꞃ菣銂볤ꎁ臣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢貁ꇨꪁ苣貂臣ꢁ臣ꢁ郥颁뗧鲞臣ꪁ苣芀戼㹲膌뛧芙雩銂胢邼胢ꮁ苣莃菣馁苣ꢁ胣ꪃ苣馃苣랂菣뎃臣随苣袶臣貂苣芀迥誂뛦閁苣龁菣뚂菣馃苣랂菣뎃臣节臣蒂鳦릊臣꾁臣辁臣讂胣ꪃ苣馃苣랂菣뎃臣ꖻ觥ꮁꇨ辂苣龁苣骃菣벃苣ꞃ菣鶀慭敫敒敳癲瑡潩鶀臣袂臣ꚁ뻥覂苣龁苣꺁臣ꪁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀湵湫睯剮獥牥慶楴湯胢覼臣膀蟥閁苣膀迥膀菣뚂菣ꒂ苣ꞃ菣貁苣꾁苣覜諥ꞁ臣蒁ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣袼胢榝癮污摩敒敳癲瑡潩鶀볯貁胩몇臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₓ螃苣螃苣趃菣랂菣뎃볯䒈獥楴慮楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㌰⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〰㰴愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔰⼼㹡⼼䥄㹖것苣鶃菣肃臣몛鳦꺁苣袃菣鎃菣벃菣銂胣貐臣趐觥꺁苣벃苣ꖃ菣뎃菣袼苣벃苣ꖃ菣뎃菣鶀慮敭胢膀胢憝摤敲獳胢膀胢撝瑡鶀볯ꮁ꣨骮臣讂胣㲂牢ਾ菣릂菣ꎂ菣벃苣ꞃ菣꺁藥ꚁ臣ꊂ菣ꪃ菣ꖃ菣袃臣讃菣袼볯覼臣뒠郥膀臣꺁菣릂菣ꎂ菣벃苣ꞃ菣꾁룤ꦁ裥ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞃菣ꒂ菣벃菣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃볯傈楲慶整䤠獮慴据⁥瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘰⼼㹡⼼䥄㹖螃苣螃苣趃菣랂菣뎃臣ꊂ菣것苣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜰⼼㹡⼼䥄㹖袃菣뎃苣閃苣뮃菣讃菣袃臣蒵臣袐苣閁苣龁胣ꢂ菣뢂菣꺁觧骮菣벃苣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㠰⼼㹡⼼䥄㹖螃苣蚃苣趃菣랂菣뎃臣趃菣ꂃ臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₔ閃苣ꒂ菣벃볯䚈楡畬敲볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤰⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㄰㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞃菣ꒂ菣벃菣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃볯傈楲慶整䤠獮慴据⁥瑁牴扩瑵獥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱ㄱ⼼㹡⼼䥄㹖袃菣뎃苣閃苣꺁ꓥ鞕臣蚐铧ꞁ臣讂胣鎁臣蚐铧꾁��ꢡ볯躼볯ꮁꓧ馁闦낕臣鞈臣鞁臣ꢡ臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㄰㰲愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰閼볯₎ꮃ菣蚃苣뎃苣袼佒呕义覼⼼㹵戼㹲袃菣뎃苣閃苣ꚃ菣莃菣꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣膀藥讞髧ꮁ臣膀믤꺁苣뎃苣뎃臣誁臣ꚁ胣鎁臣ꚃ菣莃菣ꮁ臣蒁臣꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥湉胢銂铧颁苣芀菣ꦃ菣릂菣ꆂ臣ꊻ胩莅臣鞃菣莃菣閃苣벃菣ꮁ臣蒁臣놤闦鞁臣뒠郥膀臣꺁菣ꦃ菣릂菣ꆂ臣膀믨膀藥꺁苣뎃苣뎃臣誁臣讂苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏䙴楡敬鶀苣뒼臣ꚁꓥ鞕臣讂胣袃菣뎃苣閃苣ꚃ菣莃菣꾁胣ꊻ胩莅臣鞃菣莃菣閃苣벃菣讁苣꺁菣ꦃ菣릂菣ꆂ臣邈諥鞁臣貁胣꺛髧난臣ꢂ菣뢂菣ꮁ臣蒁臣ꪂ菣것菣랂菣뎃胢璝慲獮敦䥲鶀臣ꎭ룥ꮁ諥辂苣ꪁ臣ꎁ臣뒠郥膀臣꺁菣ꦃ菣릂菣ꆂ臣膀苣骃菣벃苣ꞃ菣鶀牴湡晳牥慆汩摥胢銂볤ꎁ臣놤闦馁苣芀戼㹲袃菣뎃苣閃苣낂菣벃菣꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣膀臣꺁꟦邈ꛨꂴ臣芁苣袃菣뎃苣閃苣ꚃ菣莃菣꺁볯讀臣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢ꢁꯨ蚐髧ꮁ郥覭臣芁苣芀菣뎃苣꺁胥膀鳦뺁臣蒁賦骶駦鎖胣놨껥閁苣讂鳦랕賦骶駦鎖胣誏臣Ꚃ苣ꒂ臣膀臣貂苣ꢅ臣꺁菣ꦃ菣릂菣ꆂ臣ꒁ臣ꚁ郥肸臣芁苣芀鯧蒚鳥꺁菣릂菣ꮁ뻥ꎁ臣膀볯ꖻ룤꺁鯧蒚鳥꺁苣뎃苣뎃臣誁臣ꚁ苣骃菣벃苣ꞃ菣鶀牴湡晳牥湉胢貁铧颁苣芀戼㹲뢅黥蒚臣꾁胣鞃菣莃菣閃苣벃菣꾁胣낂菣벃菣ꮁ臣蒁臣꺛髧난臣ꪃ苣袃苣鲤鿦鞁胣꺛髧난臣ꢂ菣뢂菣ꮁ臣醁苣ꪂ菣것菣랂菣뎃胢璝慲獮敦楲鶀臣낕臣肜냥ꢁ臣讂苣蚁臣ꚃ菣莃菣銂藩膀臣袂臣ꢁꧨ뾁苣芀臣貂臣膀郥肸臣ꢂ菣뢂菣뢁郥讁臣袺껥꺁菣ꦃ菣릂菣ꆂ菣讃菣袃臣膀볯ꒁ臣낂菣벃菣ꢁ臣ꚁ믨膀臣貂藩膀臣貂苣鎁臣銂蓦뎑臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꮃ菣蚃苣뎃苣ꊂ菣뒂菣몂菣袼潒瑵湩⁧汁潧楲桴覼⼼㹵戼㹲ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢꺁臩財臣誁臣ꚁ苣Ꞃ苣貁뻤躸臣貂臣뒠郥膀菣ꦃ菣袃菣ꦂ菣ꂃ臣膀臣꺁苣Ꞃ苣銂菣ꦃ菣릂菣ꆂ臣ꮃ菣蚃苣뎃苣꺁臣膂臣뾽铧馁苣芀苣Ꞃ苣貁뻤躸臣貂臣讁臣龁ꃥ袐胣鞃菣莃菣閃苣벃菣꾁鯧蒚鳥꺁苣뎃苣뎃苣骮苣ꪁ臣貂臣ꪁ苣ꪁ臣芀菣ꦃ菣릂菣ꆂ菣讃菣袃臣蒵臣袐苣閁苣龁菣벃菣誏臣ꊂ菣것苣ꮁ뻥ꎁ臣膀鯧蒚鳥꺁苣뎃苣뎃苣骮苣讂臣膂臣릂菣莃菣꾁곦꺁胩誂臣芁苣芀戼㹲鲼雩讧볯㲞牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㌱⼼㹡⼼䥄㹖鲼菣벃菣銂뷤ꢔ臣讂볯骼戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰��㌲㜵⸲楴쉦゠㄰㄰㰴愯㰾䐯噉ਾ볯ꊂ菣것苣銂뷤ꢔ臣讂볯骼戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㄰㰵愯㰾䐯噉ਾ볯놤闦馁苣麼볯㲚牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘱⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯讼볯ꮁ臣醁苣ꒂ菣뾂菣閃苣벃苣㲹甯㰾牢ਾ臣꺁苣꾂苣ꞃ菣ꞁ臣膀苣뎃苣뎃臣鞃菣莃菣閃苣벃菣꺁苣뎃苣벃菣Ꞃ菣릂臣ꒁ臣ꚁ臣ꎼ볯讼苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣銂꣨낿臣讂胣鎁臣ꒂ菣뾂菣閃苣벃苣꾁胣뮂苣랂菣뎃볯꺁菣것苣꾂菣鞃菣閻꟦ꮁ铧ꖝ臣讂胣㲂牢ਾ臣鎁臣邏ꓧ閁苣讂苣뎃苣벃菣Ꞃ菣릂臣膀뿥뚄髧ꮁ胣뺏鳥꺁菣것苣꾂菣鞃菣ꢂ菣뢂菣꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꺁臣趂臣趂臣颧鯧銂迥ꂘ臣ꚁ臣讂胣릉臣膀볯讼볯ꆼ볯ꦼ臣膀룤겈髧ꪁ苣뎃苣벃菣Ꞃ菣릂臣꾁迧貂臣蒁苣蚁臣膀苣뎃苣뎃룤꺁苣骃菣벃苣ꞃ菣銂郥鎂臣蒁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣뎃苣벃菣Ꞃ菣릂臣風뿨㲰甯㰾牢ਾ苣뎃苣뎃苣隃苣Ꞃ苣袃臣膀볯讼볯꺁苣ꦃ苣鶀볯ꦼ胢ꮁ苣ꎁ臣ꢡ臣貂苣芀苣뎃苣뎃苣隃苣Ꞃ苣袃룤꺁苣骃菣벃苣ꞃ菣꾁胣ꎼ볯꺁菣뎃菣꺁ꧦ붃臣鞁臣鮾룤閁苣讂胣㲂牢ਾ菣ꦃ菣袃菣ꦂ菣ꂃ苣隃苣Ꞃ苣袃臣膀볯ꦼ臣떂菣꾂菣릂臣袂臣ꚁꇨ閁苣讂胣鞃菣莃菣閃苣벃菣꺁菣궃菣ꒂ菣꾁胣ꎼ볯꺁苣隃苣ꦃ苣ꞁ臣誂胣鞃菣莃菣閃苣벃菣꺁苣骃菣벃苣ꞃ菣銂ꇨ馁볯ꦼ臣꺻菦蒚臣龩菨銂苣뎃菣ꪃ菣뎃菣馁苣芀戼㹲ꢂ菣뢂菣誏臣鞃菣莃菣閃苣벃菣誸臣ꪂ菣것菣랂菣뎃臣뺯臣讂菣ꦃ菣벃苣ꢁ臣ꚁꇨ貂苣蚃菣릂苣ꪃ菣袃苣隃苣Ꞃ苣袃臣膀菣것苣꾂菣鞃菣ꪂ菣뢂苣꾂菣꺁ꇨ뺏苣龮迧馁苣蒁臣ꒁ臣꺁볯讼볯꺁苣ꦃ苣ꮁ苣ꎁ臣膀ꇨ뺏臣貂苣芀뻤袁臣膀胢咝䥳瑮来牥胢貁볯낼볯ꮁꇨ貂苣芙臣꾁臣ꒁ臣节胣蚃菣릂苣ꪃ菣袃胢䦝瑮来牥胢銂ꇨ馁苣ꦃ苣鶀獔湉整敧鶀臣颭鳥馁苣芀臣꺁苣蚁臣膀菣것苣꾂菣鞃菣꺁苣뎃苣벃菣Ꞃ菣릂臣ꊖ臣讂苣隃苣Ꞃ苣袃臣겪飦꾁胣鎁臣ꊂ菣뎃菣ꎂ菣꾂苣꺁곦꺁苣꾂苣ꞃ菣ꮁ臣蒁臣ꪁ臣貂苣芀戼㹲鎁臣ꒂ菣뾂菣閃苣벃苣꺁菣것苣꾂菣鞃菣ꢡ迧ꮁ臣蒁臣릉껥閁苣讂苣꾂苣鞃苣ꞃ菣꾁胣ꢂ菣뢂菣誏臣鞃菣莃菣閃苣벃菣誸臣꺁藥ꚁ臣ꪂ菣것菣랂菣뎃臣覂菣뾂菣뎃臣貂苣鞈賦讞臣鞁臣膀볯낼볯ꮁ臣蒁臣ꚇ郧閁苣讂胣㲂牢ਾ苣뎃苣뎃臣鞃菣莃菣閃苣벃菣꺁雩ꮁ뫤辂臣貂臣螃菣뾂臣膦듧ꮁ臣蒁臣꺁꣨늌臣膀苣骃菣벃苣ꞃ菣꺁釥뎁蟥鞁臥ꮁ苣ꎁ臣膀触覜臣貂苣芀臣꺁꣨늌臣膀苣骃菣벃苣ꞃ菣貁껥蚺臣龁臣趁��趆臣讫뇦閁苣讂臣ꢁ臣芁苣芀臣貂臣뺯臣讂铥肸臣ꢂ苣뮂菣랂菣뎃臣膀苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣芁苣芀苣뎃苣뎃臣膀꿥鲿臣讂苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏䍴浯汰瑥鶀臣芁ꇨ貁裦閁苣讂臣ꞁ胣袃菣뎃苣閃苣ꊂ苣袃臣膦듧銂蛥뎁ꯨ花臣讂臣ꢁ臣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣릂苣袼慔歳覼⼼㹵戼㹲ꢂ菣뢂菣꾁胣ꪨ迥誂룤꾏苣놂苣ꖃ菣ꦃ苣뒼臣ꚁ裥ꊛ臣龁苣것菣覃臣鞁臣龮ꇨ馁苣骤蟩꺁跥뾪黥뾂苣꾂臣鞁臣膀苣뎃菣ꪃ菣뎃菣閁苣讂胣꾂菣릂胢ꎼ볯鶀臣ꒂ菣릂苣뎃苣꾁胣ꢂ菣뢂菣ꮁ臣蒁臣膀볯ꒁ臣릂菣莃菣ꢁ臣ꚁ뗨讂胣꾂菣릂胢ꎼ볯鶀臣떂菣꾂菣릂臣膀雩낕胢涝楡⡮鶀苣鮾룤馁苣芀臣꺁雩낕臣膀룤ꚺ釥뎁蟥閁苣龁苣膀菣ꦃ菣袃菣ꦂ菣ꂃ룤ꞁ苣骃菣벃苣ꞃ菣貁苣鶃菣袃臣貂臣辁臣ꎁ臣뒠郥ꮁ臣醁菣뾂菣뎃臣讂胣㲂牢ਾ뛧骶룤꺁苣骃菣벃苣ꞃ菣鶀牴湡晳牥湉胢貁臣蒁ꃥ袐臣膀雩낕胢涝楡⡮鶀臣膀苣뎃苣뎃苣놂苣ꖃ菣ꦃ臣ꚇ郧銂귨讂臣ꢁ臣龜뻥閁苣讂胣ꊖ闦鶀慭湩⤨胢꾁胣ꊖ闦鶀慷瑩⤨胢銂釥뎁蟥馁臣ꢁ臣袂臣ꚁ臣貂苣財臣蚁胣ꊖ闦鶀慷瑩⤨胢꾁胣ꎼ볯貁귨趂臣ꢁ臣ꚁ臣讂菣ꪃ꟧颍뷤꺁駦鎖苣ꊂ菣꺂菣ꆃ菣袃臣鞁臣鞏臣随苣芀藥讞髧ꮁ臣膀苣뎃苣뎃臣膀냥ꪁ臣ꢁ苣鎁臣芙雩貁뗧躁臣讂臣ꞁ臣膀볯ꦼ臣뾂苣꾂苣趆苣놂苣ꖃ菣ꮃ臣讂臣ꢁ臣ꪁ臣芀雩낕胢瞝楡⡴鶀臣꺁苣벃苣ꖃ菣뎃菣鶀볯鶀臣膀볯ꦼ臣膀蟥蚐苣늭臣ꚁ臣蒁苣貁胣ꢂ菣뢂菣릂苣뢂菣벃菣ꮁ苣ꎁ臣ꞁ臣讂臣醁韦辁蛥릂苣뢂菣벃菣閁苣讂臣ꢁ苣鮜苣ꞁ臣讂臣ꢁ苣辄釥鞁臣蒁苣芀戼㹲ꊖ闦鶀慷瑩⤨胢뢁臣ꊂ菣꺂菣ꆃ菣袃胢銈볯鶀臣膀볯ꦼ臣膀蓧龜駩ꮁ蟥蚐苣궸雦馁苣鎁臣銂鳦鎂臣蒁苣ꢁ臣蚁臣ꢁ苣辄釥鞁臣蒁苣芀臣꺁臣趁胣ꎼ볯貁蛥릂苣뢂菣벃菣閁苣讂臣ꢁ苣鮜苣ꪁ苣낁胣ꎼ볯꾁苣뎃苣뎃룤ꮁ雩낕胢玝瑡獩祦⤨胢銂釥뎁蟥閁臣醁苣낁臣覂臣蒁胣ꊖ闦鶀慳楴晳⡹鶀臣膀苣뎃苣뎃臣릂菣莃菣銂苣놂苣ꖃ菣ꮃ臣讂臣뒛臣ꮁ胣궸雦鞁臣蒁臣릂菣莃菣꺁껥財苣趆雩閁臣讂胣鎁臣貾胨꺁뻤꾁胣낖臣ꪁ胩ꆿ臣膦뇦貁臣讁臣龁臣趁臣膀鷩貐鳦蒚臣ꒂ菣뎃菣ꢁ臣ꚁ뻤躸臣貂臣ꎼ볯ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣誁臣ꚁ臩螈臣芁苣蚁胣㲂牢ਾ臣龁胣ꪂ菣것菣蚃苣뎃苣랂苣蚃菣ꮁ苣ꎁ臣꾁胣ꎼ볯ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀苣뎃苣뎃苣놂苣ꖃ菣ꦃ臣ꚇ郧銂귨誂胣閃苣ꒂ菣螃苣릂苣ꪃ菣뾂臣隺若뚊藦ꮁ臣ꎁ臣芙臣趆苣놂苣ꖃ菣ꮃ臣貂苣鎁臣銂鳦肂臣��节臣貂臣蒁胣ꪂ菣것菣랂菣뎃胢瞝楡晴鶀臣膀뻥龩臣讂菣ꆂ苣ꮃ菣ꎂ苣꾂菣鞃苣銂觧骮臣讂胣뺁臣膀苣骃菣벃苣ꞃ菣鶀慷瑩摦胢꾁胣뾂苣ꂃ苣Ꚃ菣ꢁ臣节臣骤蟩閃苣ꒂ菣螃苣릂苣ꪃ菣뾂臣ꒁ臣ꚁ苣것苣袃臣讂臣膂臣膀雩낕胢瞝楡⡴鶀臣놅臣뾽铧閁苣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀臣芁ꇨ꾁胣벑臣몇臣龁菣것苣꾂菣鞃菣鞃菣뮂苣꺁苣것菣覃臣誁臣ꚁ껥財臣貂苣节臣ꞁ臣誂胣ꎼ볯뾂苣꾂臣릂菣莃菣ꮁ臣蒁臣財臣辂苣讂臣ꞁ臣ꪁ臣芀戼㹲ꢂ菣뢂菣誏臣鞃菣莃菣閃苣벃菣誸臣ꪂ菣것菣랂菣뎃臣膀뿥膦臣覂臣鶁臣貾臣릂苣뢂菣벃菣閁苣讂뷤궥臣薾臣財裥銂뷤誂胣钯볨蒚胩蒂臣ꮁ껥財臣貂臣낁臣覂臣蒁胣ꢂ菣뢂菣誏臣鞃菣莃菣閃苣벃菣꾁胣랕駦鎖臣辂臣ꎁ臣궸雦馁苣릁臣ꞁ臣ꪁ臣芀戼㹲떥ꯧꪁꃥ袐臣꾁胣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢꺁菣ꪃ菣벃菣貁胣ꎼ볯ꮁ苣ꎁ臣鮾룤閁苣龁菣莃菣ꆂ菣뎃苣銂룤麛苣鎁臣貁臣讂胣鎁臣袂臣ꪁ臣趁胣鶁臣ꎼ볯꾁胣ꊖ闦鶀瑳灯⤨胢銂釥뎁蟥馁臣ꢁ臣ꞁ臣讂胣鎁臣ꊖ闦鶀瑳灯⤨胢꾁胣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢뢁臣ꢅ臣꺁鯦ꪁ苣벑臣몇臣銂ꛥ銁苣릊黦銂賦ꒁ胣鶁臣ꚁ胣ꆬ臣膀雩낕胢玝慴瑲⤨胢銂釥뎁蟥馁臣ꢁ臣袂苣膀迥붃臣覂臣膀룤궖臣邵黦ꢁ臣ꚁ臥ꊭ臣鮁苣貂臣蒁臣ꢂ菣뢂菣꺁苣릂苣銂蛥릂苣뢂菣벃菣鞁臣膀蟥鮊苣趆雩馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯ꦼ苣ꦃ苣袼䥃䌠慬獳볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜱⼼㹡⼼䥄㹖낖臣蒁볯ꦼ苣隃苣Ꞃ苣袃苣讧裦馁苣芀胢溝浡鶀臣膀臣꺁볯ꦼ苣뾽铧馁苣ꢂ菣뢂菣꺁菣것菣벃菣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㠱⼼㹡⼼䥄㹖鎁臣ꎼ볯銂苣ꎃ菣袃菣Ꚃ菣鞁ꃧ誣臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤱⼼㹡⼼䥄㹖ꎼ볯꺁菣ꒂ菣ꮃ菣鞃臣芁苣芀臣貂臣膀꟦邈뻥膀臣낁苣辁臣ꚁ臣覂釥뎁蟥閁苣讂胣鎁臣ꊖ闦貁껥財臣貂臣蒁苣鎖胣ꎼ볯꾁胣设臣낁胢瞝楡⡴鶀苣뒼臣ꚁ胣ꢂ菣뢂菣ꮁ蟥蚐苣늭苣릁臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꢂ菣뢂菣ꪂ菣것菣랂菣뎃볯䖈杮湩⁥灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〲⼼㹡⼼䥄㹖醼믤誸臣袃菣뎃苣閃苣ꚃ菣莃菣銂苣뎃苣뎃臣ꊻ胩馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈰㰱愯㰾䐯噉ਾ볯ꖻ룤꺁ꓥ鞕臣龁菣ꦃ菣릂菣ꆂ菣讃菣袃苣ꢂ菣뢂菣ꮁ菣ꦃ菣릂菣ꆂ臣讂胣��牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈲⼼㹡⼼䥄㹖鎁臣ꢂ菣뢂菣讁苣꺁菣ꦃ菣릂菣ꆂ臣芁苣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢꺁臩財臣놤闦鞁臣醼믤誸臣袃菣뎃苣閃苣ꚃ菣莃菣銂觧骮臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㌲⼼㹡⼼䥄㹖袃菣뎃苣閃苣낂菣벃菣袼苣벃苣ꖃ菣뎃菣鶀牧畯䥰鶀볯꺁菣ꦃ菣릂菣ꆂ臣貮뫤鞁臣鎁臣銂ꇨ馁胣鎁臣낂菣벃菣薆臣ꢅ臣꺁菣ꦃ菣릂菣ꆂ菣讃菣袃臣ꊖ胩馁苣風賩꾁胣趆臣讫뇦閁苣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞃菣莃菣閃苣벃菣ꪂ菣것菣랂菣뎃볯傈慬晴牯⁭灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㐲⼼㹡⼼䥄㹖鎁臣袃菣뎃苣閃苣낂菣벃菣薆臣袃菣뎃苣閃苣ꚃ菣莃菣銂臣貂臣貂臣꺛髧난볯ꊂ菣꺂菣ꆃ菣袃胢撝獥䱴獩鶀볯ꮁ믨膀臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔲⼼㹡⼼䥄㹖鎁臣袃菣뎃苣閃苣낂菣벃菣袼苣벃苣ꖃ菣뎃菣鶀牧畯䥰鶀볯ꮁ雩馁苣ꢅ臣꺁菣ꦃ菣릂菣ꆂ菣讃菣袃苣놤闦閁臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘲⼼㹡⼼䥄㹖螌껥閁苣龁賦骶駦鎖볯ꊂ菣꺂菣ꆃ菣袃胢撝牵瑡潩鶀볯銂볤ꎁ臣膀雦鞁臣ꪃ苣馃苣랂菣뎃볯ꊂ菣꺂菣ꆃ菣袃胢犝獥牥慶楴湯胢覼苣膦뇦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈰㰷愯㰾䐯噉ਾ菣뚂菣ꒂ苣ꞃ菣꺁賦骶駦鎖苣낖臣蒁賦骶駦鎖볯ꊂ菣꺂菣ꆃ菣袃胢撝牵瑡潩鶀볯ꮁ菣뮂菣袃臣讂胣膌뛧芙雩鶀볯鶀臣膀菣뚂菣ꒂ苣ꞃ菣銂迥誂뛦馁諥鲞苣膌臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈰㰸愯㰾䐯噉ਾ胢涝敳鶀菣ꪃ꟧꺁雩膀迧ꢜ臣ꢂ菣뢂菣꺁苣것菣覃苣躘臣ꆸ臣芀臣꺁雩낕臣膀臣꺁苣것菣覃臣趆苣놂苣ꖃ菣ꮃ臣貂臣芙臣ꪃ苣벃菣閁苣讂胣ꊂ菣꺂菣ꆃ菣袃胢涝敳鶀臣鶀볯鶀臣뒠郥꾁胣ꢂ菣뢂菣꺁苣놂苣ꖃ菣ꪃ菣낂臣릖蟩貁꣨릮臣讂駩誂胣ꞁ臣讂臣醁韦辁苣것菣覃苣趆苣놂苣ꖃ菣ꮃ臣讂胣ꊂ菣꺂菣ꆃ菣袃胢涝敳鶀臣鶀裢醼胢꺁ꃥ袐臣膀룤風臣鶀慳楴晳⡹鶀臣벑臣몇臣貂苣讁胣袏臣鶀慷瑩摦⤨胢ꮁ賦骮臣貂臣閃苣ꒂ菣螃苣릂苣ꪃ菣뾂臣隺若뚊藦ꢁ臣讂臣ꞁ胣鶀慷瑩⤨胢꾁菣뾂菣뎃臣貂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤲⼼㹡⼼䥄㹖ꎼ볯릂菣莃菣貁胢瞝楡⡴鶀臣袂臣ꚁ룤궖臣貂臣蒁苣뒠郥膀볯ꦼ苣것菣覃苣趆苣놂苣ꖃ菣ꮃ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〳⼼㹡⼼䥄㹖骶臣ꚁꇨ辂苣讂苣벃菣鶀慷瑩⤨胢貁胣鶀慭歳胢ꮁ苣ꎁ臣螌껥閁苣讂苣蚁臣궪臣벾臣袏臣뢛臣벾臣��ꮁ臣蒁臣閃苣ꒂ菣螃苣릂苣ꪃ菣뾂胢暝鶀뫦馂諧讅臣ꪁ臣龁ꃥ袐臣膀菣뾂菣뎃臣貂苣袂臣ꮁ賦骮臣讂胣鶀慭歳胢꾁胣ꒀ胢傝䱏䥌鶀迥꾁胥鶀佐䱌問鶀臣袂臣ꚁ꟦邈臣貂臣鎃菣袃菣릂苣ꞁ臣讂胣鎁臣ꞁ胣ꒀ胢傝䱏䥌鶀迥뎁胥鶀佐䱌問鶀臣膀臣貂臣貂胣궪臣벾臣꾏菨誏臣뢛臣벾臣꾏菨銂ꓧ馁菣ꆂ苣ꮃ菣ꎂ苣꾂菣鞃苣銂臩麊臣讂胣鶀慭歳胢貁胢邼胢ꞁ臣讂臣ꢁ臣膀臣꺁菣ꆂ苣ꮃ菣ꎂ苣꾂菣鞃苣貁苣骃菣벃苣ꞃ菣鶀慷瑩⤨胢ꮁ苣꾁苣놽鿩馁臣趁臣ꪁ臣鎁臣銂蓦뎑臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱ㄳ⼼㹡⼼䥄㹖趉鯥꺁苣벃菣鶀慷瑩⤨胢貁껥財臣貂臣蒁苣鎖胣閃苣ꒂ菣螃苣릂苣ꪃ菣뾂胢暝鶀臣隺若떮髩ꮁ臣ꎁ臣蒁苣讁臣ꒈ雦ꮁ뷤ꢔ臣貂苣鎃菣袃菣릂苣銂菣뾂菣뎃臣讂胣鎃菣袃胢傝䱏䥌鶀迥뎁胢傝䱏佌呕胢貁胢瞝楡晴⡤鶀臣誁臣ꚁ賦骮臣貂臣誁苣膀臣貂臣貂胣閃苣ꒂ菣螃苣릂苣ꪃ菣뾂臣궪臣벾臣誏臣뢛臣벾臣ꮁ臣蒁臣隺若뚊藦ꢁ臣ꎁ臣蒁苣낁胣鎁臣ꪃ苣ꮃ菣꾁胣鎃菣袃胢傝䱏䥌鶀迥뎁胢颀佐䱌問鶀臣뮂菣袃苣膌臣鎃菣袃菣릂苣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈳⼼㹡⼼䥄㹖ꢂ菣뢂菣ꮁ胣鎁臣ꎼ볯ꮁ臣蒁臣꺁藥ꚁ臣ꪂ菣것菣랂菣뎃胢璝慲獮敦佲瑵胢銂諦뚈臣鮁苣芀菣것苣꾂菣鞃菣꺁苣벃苣Ꞃ菣袃臣ꪂ菣것菣랂菣뎃胢枝鶀苣鶀敳摮胢꺁껥財苣讖꟥馁苣袂臣ꪁ雦龁臣袃菣뎃苣閃苣꾁胣鎁臣ꎼ볯ꮁ꿥鞁臣膦뇦閁苣ꪁ臣ꪁ苣芀볯ꦼ臣膀믤꺁菣ꦃ菣릂菣ꆂ苣薾臣財裥ꢁ臣讂臣ꢁ臣袂臣ꚁ菣벃苣銂ꓥꎁ臣뒠郥ꮁ臣醁胣鎁臣ꪂ菣것菣랂菣뎃苣벑臣몇臣릁臣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㌳⼼㹡⼼䥄㹖节臣蒂苣骃菣벃苣ꞃ菣銂諦뚈臣讂臣趁臣꾁臣蒁臣ꢁ苣ꢂ菣뢂菣ꮁ胩놠臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯₎蚃菣릂苣ꪃ菣袃臣ꒂ菣뾂菣閃苣벃苣ꪂ菣뢂苣꾂菣㲈甯㰾牢ਾ믤꺁菣것苣꾂菣鞃菣ꢂ菣뢂菣蒂胣蚃菣릂苣ꪃ菣袃臣몟臣蒁臣蒁臣蒁믤꺁胩ꆿ苣릂菣ꂃ臣袂臣ꪁꓥꢃ苣릂菣ꂃ臣꺁胩ꆿ苣꾏菨ꮁ臣讂臣膂胣蚃菣릂苣ꪃ菣袃苣뎃苣뎃臣膀菣것苣꾂菣鞃菣ꢂ菣뢂菣ꪇ뫨ꮁ鿥ꖁ臣龁苣骃菣벃菣ꎂ菣낂苣릂菣ꂃ迥꾁菣ꦃ菣袃菣ꦂ菣ꂃ臣袂臣ꚁ뻤ꚵ臣貂苣骀뿤떂菣鎃苣ꮁ鿥ꖁ臣ꚁ臣ꪁ臣貂臣ꪁ苣ꪁ臣芀臣貂苣꺁苣벃菣릂臣ꊂ苣뮂苣馁苣龁苣ꮁ胣蚃菣릂苣ꪃ菣袃苣뎃苣뎃臣膀菣것苣꾂菣鞃菣꺁諦ꆱ賥ꮁ菦놠臣ꖅ臣龁苣몇臣誂臣讂臣ꢁ苣꾏菨ꢁ臣讂臣膂臣ꆃ苣讃苣ꂃ苣떂菣벃菣鞁��蒁臣醁苣낁臣覂臣蒁胣릉臣膀臣꺁菣ꮂ菣몂菣꾁胣蚃菣릂苣ꪃ菣袃苣隃苣Ꞃ苣袃臣膀臣貂苣꺁苣隃苣Ꞃ苣袃臣뺯뿥鞁鿥꒛臣ꪁ苣뎂菣ꖃ菣놂菣랂菣뎃苣벃菣릂臣ꢁ臣ꚁꗥꦁ臣ꢡ迧ꢁ臣鎖臣覤迦銂迥붃臣馁苣节臣ꞁ臣辁臣꾁臣覂臣蒁胣㲂牢ਾ菣것苣꾂菣鞃菣ꢂ菣뢂菣ꒂ菣뾂菣閃苣벃苣꾂菣릂臣膀臣꺁ꛨ花苣薅臣馁苣蚁臣膀볯讼볯꾂菣릂臣뮂菣袃臣ꒁ臣ꚁ臣붊뇨蒚볯ꊂ菣릂菣ꦃ苣袃볯憚獢牴捵覼臣骮뻧銂迦鮾臣讂胣ꎼ볯讼苣ꦃ苣꾁胣ꢅ臣銂껥ꦾ臣ꚁ臣讂臣ꞁ臣ꪁ臣膀菣것苣꾂菣鞃菣ꢂ菣뢂菣꺁ꧦ붃룤ꞁ臣肜냥邙臣膦뇦ꢁ臣蚁ꛨ릂臣몟臣蒁臣蒁苣꺁臣膀臣鎁臣邏뻤閁苣讂껥ꦾ臣ꊂ菣릂菣ꦃ苣袃臣芁苣芀鿥꒛臣ꪁ苣骀뿤떂菣鎃苣ꢁ臣ꊖ뿤蒂蛥ꢃ髧ꪁ菣ꮂ菣몂菣ꮁ臣蒁臣꾁胣貮藥ꪁ蟨놔臣꾂菣릂臣鲽裦薀臣钧臣覂苣ꚁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯醼†苣뎃苣벃菣Ꞃ菣릂臣辦듧㲄甯㰾牢ਾ菣것苣꾂菣鞃菣ꢂ菣뢂菣ꒂ菣뾂菣閃苣벃苣꾂菣릂臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀苣ꦃ苣ꒂ菣뾂菣閃苣벃苣銂믤馁苣螃菣뾂苣ꒂ菣ꂃ臣뾽铧ꮁ雩馁苣辦듧ꮁ뻥辂臣낁臣覂臣蒁胣鎁苣覂臣辦듧꾁胣ꪂ菣誃菣랂菣鞃臣ꮃ菣ꮃ臣뎦苧ꞁꇨ뺏臣貂苣芀臣鎁臣ꪂ菣誃菣랂菣鞃臣膀룤袁苣貂臣螃菣뾂苣覤鯦馁苣ꦨ裥誏臣鶁苣銂ꃧ誣臣讂단뮻臣鞁臣骮뻧閁苣讂胣㲂牢ਾ믤ꮁ賦骮臣ꪁ臣貂臣膀菣것苣꾂菣鞃菣ꢂ菣뢂菣ꒂ菣뾂菣閃苣벃苣꾂菣릂臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀곦꺁苣뎃苣벃菣Ꞃ菣릂臣辦듧ꮁ뻥辂臣낁臣覂臣蒁胣㲂牢ਾ菣₻ꪃ菣ꆂ菣뎃苣袏臣鶃苣뎃苣ꊂ菣꺂菣ꆃ菣袃苣鞏臣随苣ꢅ臣꺁雩낕臣ꒁ臣ꚁ胣ꪃ菣ꆂ菣뎃苣袏臣鶃苣뎃苣貁ꓧ馁菣벃苣꺁苣벃菣벃苣莃菣꾁胣벑臣몇臣龁臥讁苣벑臣몇臣貂臣ꪂ菣뢂苣꾂菣ꮁ꟧開臣讂胣鶁臣龁苣膀臣꺁苣隃苣Ꞃ苣袃臣膀臩螈臣芙臣螃菣뾂苣뒠ꏥ馁苣겲믤誏臣鶁臣螃菣뾂苣覤鯦馁苣ꦨ裥銂賦ꒁ胣㲂牢ਾ菣₻ꪃ菣ꆂ菣뎃苣袏臣鶃苣뎃苣꺁胥銂뿨馁藥ꚁ臣ꊖ闦ꮁ臣蒁臣膀菣閃苣것菣릂迥꾁菣ꒂ菣뾂臣몤臣螃菣뾂臣ꪂ菣誃菣랂菣鞃臣膀釥뎁蟥閁苣龁苣隃苣Ꞃ苣袃臣袂臣ꚁ뿤膌臣貂苣芀臣讁臣膀苣隃苣Ꞃ苣袃臣膀苣隃苣Ꞃ苣袃苣覤鯦馁苣鎁臣貁臣趁苣ꊖ闦뢁臣ꆬ臣벑臣몇臣貁臣閁苣讂臣ꞁ臣膀菣閃苣것菣릂迥꾁菣ꒂ菣뾂臣몤臣螃菣뾂臣覤鯦閁苣ꪁ臣鎁臣銂뿤벨臣讂胣㲂牢ਾ菣₻ꪂ菣뢂苣꾂菣꾁胣뒠ꏥ閁苣龁駦膀苣벃菣벃苣莃菣銂鳦馁苣ꢅ臣꺁菣벃苣銂ꃧ誣��讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯銼†獔桃牡捡整㱲甯㰾牢ਾ胢咝䍳慨慲瑣牥胢讞臣骮뻧꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ臣蒁臣骮뻧閁苣讂苣蚁臣膀菣것苣꾂菣鞃菣꺁苣ꎃ菣꾂苣꾂菣릂臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣鮾룤馁苣芀戼㹲鶀獔桃牡捡整鶀黥꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣ꢅ臣꺁볯뎼볯ꦼ볯궂菣ꦃ苣뾂苣ꮐ苣鎁臣貁臣趁苣鎁臣貁ꛨ花臣貂苣芀臣ꂁ臣膀臣貂臣肜냥邙臣膦뇦ꞁ臣誂胣鶀獔桃牡捡整鶀黥꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣ꢅ臣꺁菣讃苣벃菣궂菣ꦃ苣뾂苣ꮐ苣鎁臣貁臣趁苣鎁臣貁ꗥ뺁臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯鎼†獔敄瑳湩瑡潩㱮甯㰾牢ਾ苣ꦃ苣鶀獔敄瑳湩瑡潩鶀臣膀臣꺁苣骃菣螃苣莃苣릂臣뮂苣랂菣뎃볯ꮁ껥ꦾ臣貂苣袂臣ꪁ胣蚃菣릂苣ꪃ菣袃臣螃苣蚃苣趃菣랂菣뎃苣ꦃ苣꺁볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣꾂菣릂胢咝䑳獥楴慮楴湯胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节곦꺁ꧦ붃苣鮾룤馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌰㰴愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔳⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢銂꟦邈臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘳⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢꺁菣것苣覃菣릂臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢뢁臣鶃苣뎃苣芀迥꾁胣螃苣蚃苣趃菣랂菣뎃苣隃苣Ꞃ苣袃臣蚃菣ꊂ菣것苣꺁胥銂賦龁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜳⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀臣蚃菣趃菣ꂃ臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢뢁臣鶃苣뎃苣芀迥꾁胣螃苣蚃苣趃菣랂菣뎃苣隃苣Ꞃ苣袃臣蚃菣趃菣ꂃ臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌰㰸愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣螃苣蚃苣趃菣랂菣뎃苣隃苣Ꞃ苣袃臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣꺁菣ꒂ菣뾂胣袏臣膀菣릂菣ꎂ菣벃苣ꞃ菣ꪂ菣뢂苣꾂菣貁菣릂菣ꎂ菣벃苣ꞃ菣螃菣뾂臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꃧ₴蒣볯䒈獥牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤳⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣��膌臣ꢅ臣꺁菣벃苣ꢁ臣뒠ꏥ閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰螃菣뾂苣꾂苣릂볯䒈瑡⁡捁散獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣蚃菣ꊂ菣것苣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀菣릂菣ꎂ菣벃苣ꞃ菣ꪂ菣뢂苣꾂菣貁菣것苣覃菣릂臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱ㄴ⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣蚃菣趃菣ꂃ臣ꒀ臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣螃苣蚃苣趃菣랂菣뎃苣隃苣Ꞃ苣袃臣蚃菣趃菣ꂃ臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣螃苣蚃苣趃菣랂菣뎃菣벃苣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀菣릂菣ꎂ菣벃苣ꞃ菣ꪂ菣뢂苣꾂菣貁菣릂菣ꎂ菣벃苣ꞃ菣螃菣뾂臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯钼†獔敄瑳湩瑡潩䱮獩㱴甯㰾牢ਾ苣ꦃ苣鶀獔敄瑳湩瑡潩䱮獩鶀臣膀苣ꦃ苣鶀敤瑳湩瑡潩鶀臣ꪂ菣뢂苣꾂菣銂迥릮臣讂苣蚁臣骮苣覂苣龁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ臣蒁臣骮뻧閁苣龁菣것苣꾂菣鞃菣꾂菣릂胢䲝獩鶀臣ꎼ볯讼臣꺁ꇨ뺏苣鮾룤馁苣芀苣ꦃ苣鶀獔敄瑳湩瑡潩䱮獩鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂뻤躸臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐰㰳愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㐴⼼㹡⼼䥄㹖목臣ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩䱮獩鶀苣讧裦馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꃧ₴蒣볯䒈獥牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩䱮獩鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯楌瑳胢ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣膌臣ꢅ臣꺁菣벃苣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐰㰶愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢꺁뷥꺁볯ꒁ臣螃苣蚃苣趃菣랂菣뎃苣膀苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯楌瑳胢薆臣ꮐ臣貂苣螃苣蚃苣趃菣랂菣뎃臣ꪃ苣袃臣颻諥馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐰㰷愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢薆臣螃苣��蚃苣趃菣랂菣뎃臣ꪃ苣袃臣颻諥閁苣讂菣릂菣ꎂ菣벃苣ꞃ菣銂볤袁苣ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣꺁菣ꒂ菣뾂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㠴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣ꊽ臣螃苣蚃苣趃菣랂菣뎃臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣讁胣袏臣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣ꊖ闦鶀敮瑸獥楴慮楴湯⤨胢꾁胣骤蟩꺁釥뎁蟥鞁苣骀臣ꚁ胣ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩䱮獩鶀臣ꮐ臣貂苣醼뗧꺁菣릂菣ꎂ菣벃苣ꞃ菣銂胣鶁苣覂臣躏껥閁苣ꚁ臣讂ꃩ辺臣ꪃ苣벃菣馁苣芀鳦貾臣螃苣蚃苣趃菣랂菣뎃臣ꪃ苣벃菣閁苣龁뻥膀雩낕胢犝獥瑥胢貁釥뎁蟥閁苣讂臣ꞁ臣膀雩낕胢溝硥整瑳湩瑡潩⡮鶀臣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤴⼼㹡⼼䥄㹖ꊖ闦鶀敮䑸獥楴慮楴湯⤨胢貁곦ꮁ釥뎁蟥閁苣龁苣膀苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯楌瑳胢薆臣ꮐ臣貂苣肜裥꺁菣릂菣ꎂ菣벃苣ꞃ菣銂菣뾂菣뎃臣讂苣蚁臣閁臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〵⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩䱮獩鶀蛥ꮁ迧ꢜ郥뺁苣ꚁ臣讂菣릂菣ꎂ菣벃苣ꞃ菣꺁闦銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯閼†獔硅獩楴杮潃湮捥楴湯敍湡㱳甯㰾牢ਾ苣ꦃ苣鶀獔硅獩楴杮潃湮捥楴湯敍湡鶀臣膀臣꺁苣骃菣螃苣莃苣릂臣뮂苣랂菣뎃볯ꮁ臣蒁臣骮뻧閁苣讂苣蚁臣膀菣것苣꾂菣鞃菣꾂菣릂胢咝䕳楸瑳湩䍧湯敮瑣潩䵮慥獮胢꺁볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣꾂菣릂胢咝䕳楸瑳湩䍧湯敮瑣潩䵮慥獮胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节곦꺁ꧦ붃苣鮾룤鞁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱ㄵ⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔰㰲愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔硅獩楴杮潃湮捥楴湯敍湡鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔰㰳愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔硅獩楴杮潃湮捥楴湯敍湡鶀臣릂菣醃菣꾂菣릂胢咝剳獥牥慶汶䵥慥獮胢꺁꟦邈ꛨꂴ臣ꪃ苣馃苣랂菣뎃臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢뢁臣ꪃ菣ꆂ菣뎃苣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㐵⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝䕳楸瑳湩䍧湯敮瑣潩䵮慥獮胢꺁苣趃苣랂菣뎃臣颭裥邭臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣꺁菣ꒂ菣뾂臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꃧ₴蒣볯䒈獥牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔵⼼㹡⼼䥄㹖��菣뢂苣꾂菣鶀獔硅獩楴杮潃湮捥楴湯敍湡鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝䕳楸瑳湩䍧湯敮瑣潩䵮慥獮胢ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣膌臣ꢅ臣꺁菣벃苣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔰㰶愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䕳楸瑳湩䍧湯敮瑣潩䵮慥獮胢ꮁ郥뺁苣讂苣趃苣랂菣뎃臣颭裥邭臣ꒀ臣꺁菣ꒂ菣뾂臣ꪃ苣벃菣閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯隼†獔湉整敧㱲甯㰾牢ਾ胢咝䥳瑮来牥胢讞臣骮뻧꾁胣蚃菣릂苣ꪃ菣袃臣꾂菣릂胢䦝瑮来牥胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂룤袁苣芀戼㹲鶀獔湉整敧鶀黥꺁蟥蚐臣꾁胣銈볯醼볯鞼볯颼볯隼볯颼胣讼볯醼볯鞼볯颼볯隼볯鞼臣蒯鯥ꮁ臣讂胥銂뿤膌臣讂臣ꢁ臣ꞁ臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₗ吠䥳瑮来牥楌瑳⼼㹵戼㹲꾂菣릂胢咝楳瑮来牥楌瑳胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ껥ꦾ臣貂臣膀苣ꦃ苣鶀湩整敧鶀臣ꪂ菣뢂苣꾂菣銂迥릮臣讂苣蚁臣骮苣覂苣龁菣것苣꾂菣鞃菣꺁苣ꦃ苣鶀楌瑳胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣꾂菣릂胢咝䥳瑮来牥胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节곦꺁ꧦ붃苣鮾룤鞁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜵⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔰㰸愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔湉整敧䱲獩鶀苣讧裦馁苣芀戼㹲鎁臣讧裦꺁뻥膀雩낕胢憝灰湥䥤瑮来牥⤨胢貁釥뎁蟥閁苣讂臣ꞁ胣낖臣辁铧邈臣貂臣ꒂ菣蚃苣ꎃ菣릂菣꾁ꧧꢁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔰㰹愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䥳瑮来牥楌瑳胢銂ꃧ誣臣讂胣㲂牢ਾ苣隃苣Ꞃ苣袃胢咝䥳瑮来牥楌瑳胢ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣膌臣ꢅ臣꺁菣벃苣ꢁ臣뒠ꏥ閁苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〶⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔湉整敧䱲獩鶀臣ꊽ臣醼臣꺁苣뎃菣뢂菣銂胣ꪂ菣뢂苣꾂菣鶀獔湉整敧䱲獩鶀臣ꮐ臣貂臣ꒂ菣蚃苣ꎃ臣ꪃ苣袃臣颻諥馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘰㰱愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䥳瑮来牥楌瑳胢ꮁ郥뺁苣讂苣뎃菣뢂菣ꪃ苣袃臣颻諥閁苣讂苣뎃菣뢂菣꺁胥ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈶⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔湉整敧鶀臣ꊽ볥ꮁ臣蒁臣膀苣뎃菣뢂菣뢁��鶃苣뎃苣銂菣뾂菣뎃臣讂臣膀迥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣ꊖ闦鶀敮瑸湉整敧⡲鶀臣膀맧誂뿨鞁釥뎁蟥閁苣ꚁ胣ꪂ菣뢂苣꾂菣鶀獔湉整敧䱲獩鶀臣ꮐ臣貂苣ꒂ菣蚃苣ꎃ臣뮂菣袃苣膀臣貂苣貁迥릮臣貂臣蒁苣蚠臣ꪃ苣벃菣馁苣芀鳦貾臣ꒂ菣蚃苣ꎃ臣ꪃ苣벃菣閁苣龁뻥膀雩낕胢犝獥瑥胢貁釥뎁蟥閁苣讂臣ꞁ臣膀雩낕胢溝硥䥴瑮来牥⤨胢꾁볯떼볯겼菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘰㰳愯㰾䐯噉ਾ雩낕胢溝硥䥴瑮来牥⤨胢貁곦ꮁ釥뎁蟥閁苣龁苣膀苣隃苣Ꞃ苣袃胢咝䥳瑮来牥楌瑳胢ꮁ郥뺁苣讂鳦鶈臣ꒂ菣蚃苣ꎃ苣ꪃ苣벃菣馁苣袂臣ꮁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㐶⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔湉整敧䱲獩鶀臣뺏鳥ꮐ臣貂臣蒁苣ꒂ菣蚃苣ꎃ臣낕苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₘ吠䵳慥獮⼼㹵戼㹲꾂菣릂胢咝䵳慥獮胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ껥ꦾ臣貂臣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀敍湡鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣鮾룤馁苣芀苣ꦃ苣鶀獔敍湡鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂뻤躸臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘰㰵愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘶⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝䵳慥獮胢銂꟦邈臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜶⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝䵳慥獮胢꺁菣벃菣몂苣ꒂ菣꺁胥銂賦骮臣讂裥ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘰㰸愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䑳獥楴慮楴湯胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔敄瑳湩瑡潩鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘰㰹愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝䵳慥獮胢꺁菣벃菣몂苣ꒂ菣꺁胥銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯馼†獔扏卪数楣楦牥⼼㹵戼㹲鶀獔扏卪数楣楦牥胢꾁胣蒐胣貁볯ꒁ臣鞃菣袃苣ꮃ苣ꢡ臣ꚁ臣誂胣鎁臣鞃菣袃苣ꮃ苣隻臣鞃菣袃苣ꮃ臣覂賥ꖈ臣讂苣隃苣Ꞃ苣袃臣꾂菣릂臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣躸臣讂胣设臣낁胣鶀獔扏卪数楣楦牥胢ꮁ苣ꎁ臣ꢡ臣貂苣꾂菣릂臣醼臣꺁菣뎃菣꾁胣뮂苣ꖃ菣蚃苣銂룤袁苣龁苣꺁觧骮臣��臣꺁雦閳苣ꢡ臣袂臣ꮁ뷤ꢔ臣讂臣ꢁ臣ꞁ臣讂胣꾂菣릂胢咝佳橢灓捥晩敩鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣膀곦꺁ꧦ붃苣鮾룤鞁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱〷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰱愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔扏卪数楣楦牥胢銂꟦邈臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈷⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀臣ꪂ菣뢂苣꾂菣颭裥邭臣ꒀ苣ꊽ裦馁苣龁苣꺁闦낕胥芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰳愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔扏卪数楣楦牥胢꺁菣벃菣뎃苣ꪂ菣붂菣蚃苣銂뷥邈臣讂胢咝佳瑣瑥鶀苣隃苣Ꞃ苣袃臣꺁菣ꒂ菣뾂胣袏臣膀雦鞁臣ꪂ菣뢂苣꾂菣鶀獔扏卪数楣楦牥胢貁菣벃菣뎃苣ꪂ菣붂菣蚃苣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰴愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰵愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀臣ꮐ臣貂苣ꪂ菣뢂苣꾂菣颭裥邭臣ꒀ苣ꪃ苣벃菣馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰶愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀臣ꮐ臣貂苣趃菣龃菣낂苣벃苣ꪃ菣ꎂ臣ꒀ苣鶼臣讂苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣ꪂ菣뢂苣꾂菣鶀獔扏卪数楣楦牥胢貁菣벃菣뎃苣ꪂ菣붂菣蚃苣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯邼†獔捏整㱴甯㰾牢ਾ胢咝佳瑣瑥胢讞臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣骮뻧閁苣龁菣것苣꾂菣鞃菣꾂菣릂胢依瑣瑥胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣㲂牢ਾ胢咝佳瑣瑥鶀黥貁胣ꎼ볯讼臣鶀湵楳湧摥挠慨袼곧랏蓧鞁苣ꎃ菣꾂苣覼胢ꢁ臣ꚁ껥ꦾ臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯醼†獔捏整獴⼼㹵戼㹲꾂菣릂胢咝佳瑣瑥鶀臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣骮뻧閁苣龁菣것苣꾂菣鞃菣꾂菣릂胢澝瑣瑥鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣躸臣讂胣鶀獔捏整獴胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣��节胣ꆬ臣龩菨銂룤袁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰸愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝佳瑣瑥胢꺁볯ꒁ臣超裥讁苣膀苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜰㰹愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ郥뺁苣讂苣꾂菣莃菣꺁闦芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠰㰰愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ郥뺁苣讂臣趁苣꾂菣莃菣ꞁ臣讂苣隃苣Ꞃ苣袃胢咝佳瑣瑥胢꺁藩鞈臣꺁菣ꒂ菣뾂胣鎁臣超裥궸臣膦듧꺁闦꾁胣鶀楳敺胢꺁胥ꮁ귧鞁臣讁迥꾁臣貂苣誂苣Ꞥ臣辁臣醁苣낁臣覂臣蒁胣㲂牢ਾ돦骼胢玝穩鶀臣邼臣芁苣뒠郥膀釥뎁蟥鞁臥ꮁ苣ꎁ臣랕臣貁볯꺁藩鞈臣鮾룤閁苣궁臣ꪁ苣ꪁ臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠰㰱愯㰾䐯噉ਾ苣꾂菣莃菣꺁藩鞈苣낖臣蒁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣蒵臣벾苣릖돦銂觧骮臣讂裥馌胣꾏菨ꪁ胥꾁곦꺁胩誂臣芁苣芀戼㹲鶀慭敫潃祰胢骼苣꾂菣莃菣超裥궸臣螃菣뾂臣膀诧讫臣龁觧蚐髧ꪁ苣钃菣꺁꟦邈臣袂臣ꚁ胣낖臣蒁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣蒵臣벾臣貂臣醁苣낁臣覂臣蒁胣鎁臣讧裦ꮁ뛧蒁臣膀釥뎁蟥鞁臥꾁胣莅胣꺁苣꾂菣莃菣超裥꺁껥ꢅ臣ꪂ菣誃菣랂菣鞃苣鶿賦鞁臣蒁苣芀戼㹲릉껥閁苣龁苣벃菣벃苣莃菣꺁苣벃苣ꖃ菣뎃菣貁胢涝歡䍥灯鶀臣芁苣뒠郥膀釥뎁蟥鞁臥ꮁ苣ꎁ臣鮾룤閁苣龁苣꾂菣莃菣超裥꾁胣馝髧ꮁ胣開髧ꮁ迥꾁蟨開髧ꮁ觥誂뷥ꚁ苣貂苣鎁臣貁臣趁苣芀戼㹲鶀睯䍮灯鶀볯ꪂ苣蚃菣袃藩鞈룤꺁菣벃苣꾁胣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣몟臣蒁臣膀뻤躸臣貂臣ꪂ苣蚃菣袃藩鞈蟨ꮺ臣蒵臣벾臣銂믤鞁臣膀雦鞁臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ鯧ꖎ臣蒵臣벾苣鎁臣貁臣趁苣芀臣꺁苣蚁臣蒵臣벾臣ꮁ뛧蒁臣膀釥뎁蟥鞁臥꾁胣鮾룤閁苣龁苣꾂菣莃菣超裥꺁苣벃菣벃苣莃菣銂胣낖臣蒁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣閼臣ꆸ臣芀戼㹲릉껥閁苣龁苣벃菣벃苣莃菣꺁苣벃苣ꖃ菣뎃菣貁胢澝湷潃祰胢ꞁ臣讂ꃥ袐胣벑臣몇臣뒁臣袂臣ꚁ뻤躸臣貂臣ꪂ苣蚃菣袃藩鞈臣膀该蒚臣늉苣鎽臣覂苣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲鶀潢牲睯潃祰胢骼苣꾂菣莃菣超裥궸臣螃菣뾂臣膀苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣ꮁ鿥ꖁ臣ꚁ胣鮾룤閁苣龁苣꾂菣莃菣超裥ꪇ뫨꺁뗧뾁뻨뾁苣讻臣ꚁ胣낖臣蒁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣뒛軦ꮁ뗧뾁뻨肂臣��ꢁ臣ꞁ臣讂胣鶀戼㹲ꪂ菣뢂苣꾂菣鶀獔捏整獴胢貁꟦邈臣貂臣貾胣뒠ꏥ閁苣讂臣ꞁ臣鎖胣벑臣몇臣뒁臣膀뻤躸臣貂臣ꪂ苣蚃菣袃藩鞈臣뺯臣讂苣벃菣벃苣莃菣銂胣낖臣蒁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣뢲臣躸臣讂胣鎁臣龜雩꺁雩膀釥뎁蟥鞁臥节苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀苣膀苣꾂菣莃菣꺁藩鞈苣覤鯦鞁臣誂ꃧ誣臣龁苣鞁臣蒁胣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢貁雩讧臣貂臣覂胣ꪂ苣蚃菣袃藩鞈臣ꢅ苣벃菣벃苣莃菣꾁蛥뎁釥뎁蟥鞁臥ꮁ裦閁苣讂胣㲂牢ਾ觧骮臣貂臣ꪂ菣誃菣랂菣鞃臣ꊂ菣꺂菣ꆃ菣袃臣鶀潢牲睯潃祰胢ꞁ臣讂ꃥ袐胣뎂菣ꦃ臣袂臣ꚁ뻤躸臣貂臣ꪂ苣蚃菣袃藩鞈臣膀鷩蒚臣膀该蒚臣뺁臣꾁蟨開髧ꮁ觥誂뷥ꚁ苣鎁臣貁臣趁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠰㰲愯㰾䐯噉ਾ뻥낿臣讂雩낕胢憝灰湥卤来⤨胢銂铧蒁臣螃菣뾂苣颻諥馁苣龁苣꺁뫦馂臣鞁臣膀ꧧ꺁苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠰㰳愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢貁鳦芵髧ꮁ郥覜臣讂苣꾂菣莃菣꺁鳦Ꞥ闦芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꃧ₴蒣볯䒈獥牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㐸⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔捏整獴胢銂ꃧ誣臣讂胣鶀獔捏整獴胢ꪂ菣뢂苣꾂菣ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣膌臣ꢅ臣꺁菣벃苣ꢁ臣뒠ꏥ閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰螃菣뾂苣꾂苣릂볯䒈瑡⁡捁散獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㔸⼼㹡⼼䥄㹖ꪂ苣蚃菣袃臣超裥膀臣ꪁ苣ꆁ苣隃苣Ꞃ苣袃胢咝佳瑣瑥胢꺁藩鞈苣膀苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀蛥ꮁ臣ꞁ臣颭鳥鞁臣蒁苣ꪂ苣蚃菣袃臣뮂菣袃臣颻諥馁苣芀戼㹲ꢳ볯鶀獔捏整獴胢ꖻꓥ꺁苣뎃苣袃菣꾂苣銂铧蒁臣膀臣ꪁ苣ꆁ룤낿臣뎂菣릂菣ꦃ苣뾂雩낕볯떂苣몂胢斝敶瑮慵卬穩鶀苣뎃苣袃菣꾂苣覼臣ꊂ菣꺂菣ꆃ菣袃胢斝敶瑮慵卬穩鶀苣ꢔ臣ꚁ铧邈臣貂臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢誸臣膀臣꺁雩낕苣벑臣몇臣龁臣趁臣놽鿩꾁胣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣袂臣ꚁ껥ꦾ臣貂苣芀臣覂臣膀苣뎃苣袃菣꾂苣꺁菣ꦃ菣벃苣鶀癥湥畴污楓敺胢ꮁ껥肨臣貂臣ꖻ룤꺁菣벃苣銂믤ꂊ臣龁臣趁臣놽鿩节胣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣袂臣ꚁ껥ꦾ臣貂苣㲋牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㘸⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ믤ꂊ臣貂苣ꪂ苣蚃菣袃臣낕胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㜸⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ믤ꂊ臣貂苣��苣蚃菣袃胣馁臣辂臣ꪂ菣뢂苣꾂菣鶀獔捏整鶀臣超裥뢁臣鶃苣뎃苣芀藩鞈룤꺁ꛨꂴ臣낕臣膀胢玝穩鶀臣ꒀ臣覭臣蒁臣鎁苣袂苣Ꞥ臣辁臣醁苣낁臣覂臣蒁胣㲂牢ਾ돦骼胢玝穩鶀臣邼臣芁苣뒠郥꾁胣랕臣貁볯꺁藩鞈臣벑臣몇臣뒁臣覂뻤躸臣貂臣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㠸⼼㹡⼼䥄㹖ꪂ苣蚃菣袃藩鞈苣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ뗧뾁뻨肂菣붂菣覃苣릉껥馁苣鞈賦芀迥붃臣ꒀ迥뎁臣꺁꿥鲿臣讂蓦뎑臣膀雩낕胢咝佳瑣瑥袼楳敺瑟猠穩ⱥ吠佳瑣瑥⨠搠瑡ⱡ䌠灯佹湷牥桳灩漠湷牥楳覼胢ꮁ臣蒁臣겪飦鞁臣节臣ꢁ郥肸臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠰㰹愯㰾䐯噉ਾ苣꾂菣莃菣超裥誏臣떂苣몂臣ꒀ胣袏臣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣ꊖ闦鶀敮瑸敓鶀臣膀맧誂뿨鞁釥뎁蟥閁苣ꚁ胣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ郥뺁苣讂苣꾂菣莃菣超裥銂胣몇臣趁臣蚠臣膀臣ꢁ苣ꚁ볤膀臣讂苣꾂菣莃菣超裥뮂苣ꆃ菣袃臣蚛郥銂菣뾂菣뎃臣讂胣肜뻥꺁苣낂菣뎃菣꺁菣뾂菣뎃臣貾臣膀雩낕胢犝獥瑥胢貁釥뎁蟥閁苣讂臣ꞁ胣ꊖ闦鶀敮瑸敓鶀臣膀볯떼볯겼菣ꒂ菣뾂苣ꪃ苣벃菣鞁胣鶀敳卧穩鶀菣ꦃ菣벃苣꺁胥꾁ꓥ뒛臣骁臣鶿賦馁苣芀戼㹲ꢳ볯ꪃ苣벃菣閁苣讂苣낂菣뎃菣꺁藥낕胣誏臣蒐胣꺁胥ꖈ臣뮂苣ꆃ菣袃臣떂苣몂臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣鶾귥馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰰愯㰾䐯噉ਾ뿨閁苣龁苣낂菣뎃菣꺁ꓥ趁臣ꮁ볤ꎁ臣뒛雦閁苣讂곧랏蓧鞁闦낕臣ꒀ臣꺁菣閃苣것菣릂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱ㄹ⼼㹡⼼䥄㹖ꊖ闦鶀敮瑸敓鶀臣ꆬ臣벑臣몇臣ꞁ臣膀苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣ꮐ臣貂苣ꪂ苣蚃菣袃臣肜裥꺁苣낂菣뎃菣銂菣뾂菣뎃臣讂苣蚁臣閁臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㈹⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔捏整獴胢ꮁ迧ꢜ郥뺁苣讂苣꾂菣莃菣꺁藥낕苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯銼†獔卐乔敍湡㱳甯㰾牢ਾ苣ꦃ苣鶀獔卐乔敍湡鶀臣膀臣꺁苣骃菣螃苣莃苣릂臣뮂苣랂菣뎃볯ꮁ껥ꦾ臣貂臣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀卐乔敍湡鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣鮾룤馁苣芀苣ꦃ苣鶀獔卐乔敍湡鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂鳦鞁臣蒁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㌹⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰴愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣��獔卐乔敍湡鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰵愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔卐乔敍湡鶀臣릂菣醃菣꾂菣릂胢咝剳獥牥慶汢䵥慥獮胢꺁苣뎃菣벃菣뎃菣꺁菣뚂菣ꒂ苣ꞃ菣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢뢁臣ꪃ菣ꆂ菣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰶愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔卐乔敍湡鶀臣蚃菣誃菣邃臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀臣꺁菣ꒂ菣뾂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰷愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝偳呓䵎慥獮胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔卐乔敍湡鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤰㰸愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝偳呓䵎慥獮胢ꮁ郥뺁苣讂菣것菣뎃菣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯醼볯ₓ吠剳獥牥慶汢䵥慥獮⼼㹵戼㹲꾂菣릂胢咝剳獥牥慶汢䵥慥獮胢꾁胣鎁臣ꊂ菣뎃菣ꎂ菣꾂苣꺁苣꾂苣ꞃ菣鎼臣骮뻧閁苣龁菣것苣꾂菣鞃菣꾂菣릂胢劝獥牥慶汢䵥慥獮胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂룤袁苣芀胢咝剳獥牥慶汢䵥慥獮胢꾂菣릂臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂룤袁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰〱㤹⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰰愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敒敳癲扡敬敍湡鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰱愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敒敳癲扡敬敍湡鶀臣릂菣醃菣꾂菣릂胢咝䵳慥獮胢꺁苣뎃菣벃菣뎃菣꺁菣벃菣몂苣ꒂ菣꺁胥銂觧骮臣讂裥馌胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㈰⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝剳獥牥慶汢䵥慥獮胢ꮁ郥뺁苣讂菣뚂菣ꒂ苣ꞃ菣꺁胥銂볤袁苣ꪂ菣뢂苣꾂菣鶀獔敒敳癲瑡潩鶀臣꺁菣閃苣것菣릂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰳愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝剳獥牥慶汢䵥慥獮胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔敒敳癲扡敬敍湡鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣銂ꃧ誣臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰螃菣뾂苣꾂苣릂볯䒈瑡��捁散獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐰⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敒敳癲扡敬敍湡鶀蛥ꮁ郥뺁苣讂菣뚂菣馃苣랂菣뎃臣ꒀ臣꺁菣閃苣것菣릂苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯钼†獔敒敳癲瑡潩㱮甯㰾牢ਾ苣ꦃ苣鶀獔敒敳癲瑡潩鶀臣膀臣꺁苣骃菣螃苣莃苣릂臣뮂苣랂菣뎃볯ꮁ껥ꦾ臣貂苣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀敒敳癲瑡潩鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣躸臣讂胣꾂菣릂胢咝剳獥牥慶楴湯胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节곦꺁ꧦ붃苣躸臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰵愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㘰⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢銂꟦邈臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜰⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢꺁菣뚂菣馃苣랂菣뎃귨ꖈ귥꺁胥銂뷥邈臣讂臣膂臣鶀獔湉整敧鶀胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰸愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔敒敳癲瑡潩鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〱㰹愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝剳獥牥慶楴湯胢꺁菣뚂菣馃苣랂菣뎃臣颭裥邭臣ꒀ苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯閼†獔瑓楲杮⼼㹵戼㹲꾂菣릂胢咝即牴湩鶀臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣骮뻧閁苣讂菣것苣꾂菣鞃菣꾂菣릂胢厝牴湩鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣躸臣讂胣꾂菣릂胢咝即牴湩鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂룤袁臣醁苣낁臣覂臣蒁胣㲂牢ਾ돦骼臣貂臣膀볯뎼볯ꦼ볯궂菣ꦃ苣뾂苣莃菣ꖻꓥ节苣鶃菣袃臣讂苣蚁臣ꆋ볥閁苣讂뿥膦臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄱ㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱㄱ⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝即牴湩鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄱ㰲愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢ꮁ郥뺁苣讂苣ꎃ菣꾂苣꺁苣袃菣뎃苣銂볤袁胣꺼볯겼볯궂菣ꦃ苣뾂臣袂臣ꚁ뗧蚺臣貂苣膀藩鞈胢咝䍳慨慲瑣牥胢뢁臣鶃苣뎃苣��芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢ꃧ₴蒣볯䒈獥牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㌱⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢ꢁ胣鶁臣ꪂ菣뢂苣꾂菣貁苣벃菣벃苣莃菣꺁단뮻苣膌臣ꢅ臣꺁菣벃苣ꢁ臣뒠ꏥ閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰螃菣뾂苣꾂苣릂볯䒈瑡⁡捁散獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐱⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢ꮁ郥뺁苣讂苣ꎃ菣꾂苣릂菣ꪃ菣낂臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄱ㰵愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝即牴湩鶀臣뺏鳥ꮐ臣貂臣蒁苣궂菣ꦃ苣뾂臣낕苣ꪃ苣벃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯隼†獔敔敬摡牤獥㱳甯㰾牢ਾ苣ꦃ苣鶀獔敔敬摡牤獥鶀臣膀臣꺁雩몤臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣骮뻧閁苣讂菣것苣꾂菣鞃菣꾂菣릂胢咝味汥慥摤敲獳胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣꾂菣릂胢咝味汥慥摤敲獳胢꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节곦꺁ꧦ붃苣鮾룤鞁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㘱⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄱ㰷愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀苣讧裦馁苣芀戼㹲鎁臣讧裦꺁뻥膀雦鞁臣龔裦閁苣龁菣것苣覃菣릂苣隃苣Ꞃ苣袃臣ꮐ臣貂苣ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣膦듧꺁菣릂菣꾁ꧧꢁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠱⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢꺁菣궃菣ꒂ菣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢뢁臣鶃苣뎃苣芀迥꾁胣낖臣蒁菣것苣覃菣릂苣隃苣Ꞃ苣袃臣鞃菣邃苣肃臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄱ㰹愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣궃苣벃苣ꞃ菣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢뢁臣鶃苣뎃苣芀迥꾁胣낖臣蒁菣것苣覃菣릂苣隃苣Ꞃ苣袃臣궃苣벃苣ꞃ菣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈱㰰愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣��慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈱㰱愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝佳瑣瑥鶀臣ꮐ臣貂苣ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣ꪃ苣袃臣膀菣벃菣ꎂ菣낂苣覃菣ꒂ苣꺁볯ꒁ臣膦듧銂胣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢꺁뷥ꞁ믤ꂊ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㈲⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣ꪃ苣袃臣颻諥閁苣讂菣벃菣ꎂ菣낂苣覃菣ꒂ苣꺁ꛨꂴ苣鶼臣讂苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢뢁臣鶃苣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈱㰳愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢꺁菣궃菣ꒂ菣ꒀ臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣鞃菣邃苣肃臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐲⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣궃苣벃苣ꞃ菣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢貁菣놂菣랂菣뎃臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔲⼼㹡⼼䥄㹖ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣膦듧뢁臣鶃苣뎃苣銂胣ꪂ菣뢂苣꾂菣鶀獔捏整獴胢꺁뷥ꞁ菣뾂菣뎃臣讂臣膀迥꾁볯떼볯겼菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀雩낕胢溝硥剴畯楴杮摁癯捩⡥鶀臣膀맧誂뿨鞁釥뎁蟥閁苣ꚁ胣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣ꮐ臣貂苣ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣膦듧꺁苣莃菣銂胣鶁苣覂臣膦듧貁迥릮臣貂臣蒁臣蚠臣ꪃ苣벃菣馁苣芀戼㹲肜뻥꺁菣벃菣ꎂ菣낂苣覃菣ꒂ苣꺁ꛨꂴ苣ꪃ苣벃菣鞁臣貾胣ꊖ闦鶀敲敳鶀臣벑臣몇臣貂苣뺁臣膀雩낕胢溝硥剴畯楴杮摁癯捩⡥鶀臣膀볯떼볯겼菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈱㰶愯㰾䐯噉ਾ雩낕胢溝硥剴畯楴杮摁癯捩⡥鶀臣ꆬ臣벑臣몇臣ꞁ臣膀苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢ꮁ郥뺁苣讂菣벃菣ꎂ菣낂苣覃菣ꒂ苣꺁鳦鶈臣膦듧銂菣뾂菣뎃臣讂苣蚁臣閁臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜲⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣뺏鳥ꮐ臣貂臣蒁苣ꮃ菣蚃苣뎃苣ꊂ菣邃苣릂臣膦듧꺁闦銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯醼볯ₗ吠味汥湥浡㱥甯㰾牢ਾ苣ꦃ苣鶀獔敔敬慮敭胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ껥ꦾ臣貂臣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀獔敔敬慮敭胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂뻤躸臣讂胣꾂菣릂胢咝味汥湥浡鶀臣ꒂ菣鞃菣ꆃ菣蚃��랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂뻤躸臣ꪁ臣貂臣ꪁ苣ꪁ臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈱㰸愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰讧†裦袼潃獮牴捵楴湯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㤲⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰰愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬慮敭胢꺁胥銂뷥邈臣讂臣膂臣ꪂ苣蚃菣袃苣袃菣뎃苣뢁臣鶃苣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰱愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬慮敭胢꺁苣ꒂ菣뎃菣ꎂ菣ꎂ臣ꒀ苣ꊽ裦馁苣龁苣꺁苣꾂菣莃菣릂菣ꪃ菣낂臣꺁菣ꒂ菣뾂胣袏臣膀苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀臣ꊂ苣螃菣蚃苣蚃苣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰲愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰳愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝味汥湥浡鶀臣ꮐ臣貂臣蒁苣ꪂ菣붂菣蚃苣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐳⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬慮敭胢ꮁ郥뺁苣讂苣ꒂ菣뎃菣ꎂ菣ꎂ臣ꒀ臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣ꪂ菣뢂苣꾂菣鶀獔敔敬慮敭胢貁苣ꒂ菣뎃菣ꎂ菣ꎂ臣ꒀ苣膌臣ꪁ臣뒠郥꾁胣꺼볯겼볯銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯醼볯ₘ吠味汥湥浵敢㱲甯㰾牢ਾ苣ꦃ苣鶀獔敔敬畮扭牥胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ껥ꦾ臣貂臣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀敔敬畮扭牥胢ꮁ臣蒁臣膀볯讼볯ꞁ臣ꢡ迧銂룤袁苣芀胢咝味汥湥浵敢鶀苣ꦃ苣꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣꾁胣醰臣辁臣节胣ꆬ臣龩菨銂룤袁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔳⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰶愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬畮扭牥胢銂꟦邈臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜳⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀臣붛苣벃菣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢뢁臣鶃苣뎃苣芀迥꾁苣隃苣Ꞃ苣袃胢咝味汥��浵敢鶀臣붛苣벃菣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ돦骼뻤躸臣貂臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢ꮁ郥뺁苣讂胥꾁胣ꎼ볯ꦼ볯뒼臣붛迥꾁믤꺁鳥蚐룤꺁ꃩ龟臣늉苣鎽臣龁闦ꒀ苣벃菣꺁苣莃菣ꮁ駩覂苣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠳⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀臣蚃菣鮃菣誃菣邃臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝即牴湩鶀臣꺁菣ꒂ菣뾂胣袏臣膀苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀臣蚃菣鮃菣誃菣邃臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣芀戼㹲ꢳ볯鮾룤閁苣龁苣隃苣Ꞃ苣袃胢咝即牴湩鶀臣ꮐ臣貂苣ꒀ苣ꊽ裦馁苣궂菣ꦃ苣뾂臣膀闦鞭볯鶀볯鶀胣鶀볯鶀볯膀菣ꒂ菣뎃볯鶀裢鶀볯誏臣릂菣벃苣궂菣ꦃ苣뾂볯鶀†胢覼臣邙苣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌱㰹愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬畮扭牥胢꺁详떼菣뎃菣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢뢁臣鶃苣뎃苣芀迥꾁胣鶀獔敔敬畮扭牥胢ꪂ菣뢂苣꾂菣貁详떼菣뎃菣꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ돦骼뻤躸臣貂臣ꪂ菣뢂苣꾂菣鶀獔瑓楲杮胢ꮁ郥뺁苣讂胥銂뷥邈臣讂苣ꎃ菣꾂苣꾁胣낕귥袼胢邼胢鲀胢馼胢覼胣较苣閃菣袼胢銈胢覼迥뎁苣骃菣릂苣ꎃ菣꾂苣袼胢₝鶀볯ꮁ駩覂苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰰愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀苣뒠ꏥ馁苣芀苣隃苣Ꞃ苣袃胢咝味汥湥浵敢鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣袼慄慴䄠捣獥覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰱愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣붛苣벃菣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀苣隃苣Ꞃ苣袃胢咝味汥慥摤敲獳胢貁鯥뎂菣覃臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㈴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣蚃菣鮃菣誃菣邃臣ꒀ臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣蚃菣鮃菣誃菣邃臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㌴⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔敔敬摡牤獥鶀臣ꆋ볥誃菣邃臣ꒀ臣꺁菣ꒂ菣뾂苣ꪃ苣벃菣馁苣芀迥꾁胣鶀獔敔敬摡牤獥鶀苣隃苣Ꞃ苣��袃臣ꆋ볥誃菣邃臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞼볯醼볯ₙ吠坳祡⼼㹵戼㹲꾂菣릂胢咝坳祡胢꾁胣鎁臣讖ꓧ꺁苣骃菣螃苣莃苣릂볯ꮁ껥ꦾ臣貂臣蚃菣릂苣ꪃ菣袃苣ꦃ苣鶀慗鶀臣ꒁ臣ꚁ胣ꎼ볯讼臣꺁ꇨ뺏苣鮾룤馁苣芀苣ꦃ苣鶀獔慗鶀臣ꒂ菣鞃菣ꆃ菣蚃菣랂菣뎃臣膀냥ꪁ臣ꢁ苣ꆬ臣龩菨銂룤袁臣醁苣낁臣覂臣蒁胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐴⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰵愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔慗鶀苣讧裦馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰶愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔慗鶀臣ꢂ菣뢂菣込菣벃苣ꞃ菣꺁菣것菣벃菣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔敔敬慮敭胢뢁臣鶃苣뎃苣芀迥꾁胣낖臣蒁苣隃苣Ꞃ苣袃胢咝坳祡胢貁苣뎃苣뎃볯ꪃ菣뢂菣뎃臣蚃菣趃菣ꂃ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰷愯㰾䐯噉ਾ雦鞁臣ꪂ菣뢂苣꾂菣鶀獔慗鶀臣龃菣뎃苣꺁胥銂뷥邈臣讂臣膂臣ꪂ菣뢂苣꾂菣鶀獔敍湡鶀臣꺁菣ꒂ菣뾂胣袏臣膀雦鞁臣ꪂ菣뢂苣꾂菣鶀獔慗鶀臣龃菣뎃苣꺁胥銂賦龁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠴⼼㹡⼼䥄㹖낖臣蒁苣隃苣Ꞃ苣袃胢咝睳祡胢꺁苣궂菣ꪃ菣ꎂ该鲽鳦릊鳦鎖臣颭裥邭臣ꒀ苣ꊽ裦馁苣龁苣꺁苣隃苣Ꞃ苣袃胢咝佳橢灓捥晩敩鶀臣꺁菣ꒂ菣뾂胣袏臣膀雦鞁臣ꪂ菣뢂苣꾂菣鶀獔慗鶀臣뮂苣ꖃ菣蚃苣開뷤覜諥龜雩꺁귨ꖈ귥꺁胥銂郥뺁臣蒁ꃥ袐臣膀볯떼볯겼菣ꒂ菣뾂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰뒠†ꏦ袼敄瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐱㰹愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃胢咝睳祡胢銂ꃧ誣臣讂胣ꪂ菣뢂苣꾂菣鶀獔慗鶀臣膀臣꺁苣隃苣Ꞃ苣袃臣ꪂ菣誃菣랂菣鞃臣겲믤銂賦ꒁ藥ꚁ臣螃菣뾂臣貁ꃧ誣臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃苣ꊂ苣뮂苣䲹䐨瑡⁡捁散獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ〵⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔慗鶀臣ꮐ臣貂苣ꢂ菣뢂菣込菣벃苣ꞃ菣꺁菣것菣벃菣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀苣隃苣Ꞃ苣袃胢咝坳祡胢貁苣뎃苣뎃볯ꪃ菣뢂菣뎃臣蚃菣趃菣ꂃ臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱㄵ⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀��慗鶀臣ꮐ臣貂臣蒁苣龃菣뎃苣꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀苣隃苣Ꞃ苣袃胢咝坳祡胢貁菣벃菣몂苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㈵⼼㹡⼼䥄㹖ꪂ菣뢂苣꾂菣鶀獔慗鶀臣ꮐ臣貂苣뮂苣ꖃ菣蚃苣開뷤覜諥龜雩꺁귨ꖈ귥꺁胥뢁臣鶃苣뎃苣銂菣뾂菣뎃臣讂胣袏臣膀苣隃苣Ꞃ苣袃胢咝坳祡胢貁苣궂菣ꪃ菣ꎂ该鲽鳦릊鳦鎖臣颭裥邭臣ꒀ苣ꮐ臣ꪁ臣뒠郥꾁胣꺼볯겼볯鶃苣뎃苣銂菣뾂菣뎃臣讂胣㲂牢ਾ苣骃菣螃苣莃苣릂볯㲤牢ਾ釨鲽꣦₩뢂苣趃菣ꮃ菣麃苣莃苣뺤†㤱㌹胣螤ꏨ銂ꛧ骁胣㲂牢ਾ믤许臣꺛곦꾁胣궪胨貁苣骃菣螃苣莃苣릂볯꺁꟦邈苣蚐꟨鞁胣鶁臣薃ꃥ銂ꓦꊴ臣讂臣膂臣립ꯧꚁ苣节臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꺛†곦㲡甯㰾牢ਾ⸱†뫥螖戼㹲ㄊㄮ†菣벃菣莃菣꺁ꓥ뒛戼㹲ㄊ㈮†臣꺁믤꺁ꓥ뒛戼㹲㈊†菣것苣꾂菣鞃菣芦뿥㲵牢ਾ⸲‱鞃菣ꒂ苣鎖臣ꊻ胩ꊃ菣ꮃ戼㹲㈊ㄮㄮ†菣ꦃ菣ꮃ菣鞃菣ꒂ苣袼牔癡汥摥倠慬散覼戼㹲㈊ㄮ㈮†苣莃菣뎃苣鲃菣꾂苣袼桓灩楰杮䈠硯獥볯㲉牢ਾ⸲⸱″ꪂ菣鞃菣覃苣隃苣Ꞃ苣袃볯侈数敮⁤扏敪瑣覼戼㹲㈊ㄮ㐮†苣벃菣뎃菣랂菣钃菣낂菣莃苣릂볯侈数敮⁤桓灩楰杮䈠硯獥볯㲉牢ਾ⸲⸱‵醃菣蒃菣莃苣릂볯傈牡獴䈠硯獥볯㲉牢ਾ⸲⸱‶膃苣莃菣꺁뷤ꢔ戼㹲㈊ㄮ㜮†苣뎃苣뎃臣립觥㲲牢ਾ⸲⸱‸ꮃ菣蚃苣뎃苣ꮁ臣醁苣ꢂ菣뢂菣꺁뷥늉戼㹲㈊ㄮ㤮†胢䞝鶀臣龮ꇨ㲌牢ਾ⸲⸱〱†胢厝湥鶀臣龮ꇨ㲌牢ਾ″蚃菣릂苣ꪃ菣袃苣ꦃ苣꺁ꓥ뎦戼㹲㌊ㄮ†菣것苣릂雩꺁믨膀苣ꮃ菣鞃볯傈慬散琭ⵯ汐捡⁥牔湡晳牥䜠潲灵볯㲉牢ਾ⸳⸱‱ꪂ菣鞃菣覃볯侈数敮覼戼㹲㌊ㄮ㈮†苣벃菣뎃菣랂菣钃菣낂菣莃苣릂볯侈数敮⁤桓灩楰杮䈠硯볯㲉牢ਾ⸳⸱″醃菣蒃菣莃苣릂볯傈牡獴䈠硯볯㲉牢ਾ⸳⸱‴랂菣钃菣낂菣莃苣릂볯厈楨灰湩⁧潂覼戼㹲㌊ㄮ㔮†菣ꦃ菣ꮃ菣袼牔癡汥摥볯㲉牢ਾ‴蚃菣릂苣ꪃ菣袃苣ꦃ苣꺁ꧨ내戼㹲㐊ㄮ†苣벃菣뎃菣袼灏湥摥볯㲉牢ਾ⸴′ꪂ菣鞃菣覃苣莃菣뎃苣鲃菣꾂苣袼灏湥⁤桓灩楰杮䈠硯볯㲉牢ਾ⸴″醃菣蒃菣莃苣릂볯傈牡獴䈠硯볯㲉牢ਾ⸴‴랂菣钃菣낂菣莃苣릂볯厈楨灰湩⁧潂覼戼㹲㐊㔮†菣ꦃ菣ꮃ菣袼牔癡汥摥볯㲉牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醼볯₎辺†雦㲇甯㰾牢ਾ臣꺁苣骃菣螃苣莃苣릂臣꾁胣ꪂ菣뢂苣꾂菣꺁苣뎃苣벃菣Ꞃ菣뢂볯榈瑮牥档湡敧볯誏臣醃菣겂菣ꪃ苣ꮐ苣袂臣ꮁ뫥辁꟨袇臣貂苣膀菣것苣릂臣覂菣것苣릂臣꺁菣ꦃ菣릂菣ꆂ볯ꊻ胩覼臣ꆃ苣讃苣ꂃ臣ꒁ臣ꚁ꣨낿臣讂胣㲂牢ਾ臣꺁苣骃菣螃苣莃苣릂臣膀苣骃菣螃苣莃苣릂볯ꢁ郥颧臣讧裦閁苣ꚁ臣讂胣㲂牢ਾ菣것苣릂臣覂菣��苣릂臣꺁믨膀臣ꆃ苣讃苣ꂃ臣膀苣骃菣螃苣莃苣릂볯꺁釥꒻볯ꒂ菣릂菣ꦃ苣랂菣뎃볯榚獮牴捵楴湯볯뮂菣袃臣뺯臣ꚁ臣辁臣讁臣覤鯦誏臣颻諥銂뿥膦臣鞁臣誁苣膀臣貂苣꾁믤许臣떂菣뮂苣랂菣뎃臣風뿨閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醼볯醼†菣벃菣莃菣꺁ꓥ뒛⼼㹵戼㹲ꪂ菣것菣랂菣뎃胢枝鶀迥꾁胢玝湥鶀臣邈諥鞁臣节ꓥ鞕臣ꚁ苣膀苣骃菣벃苣ꞃ菣鶀湥整楲杮胢貁胣ꢂ菣뢂苣뎃菣貁ꛨ花臣龁苣꺁苣誂苣袂苣놨껥蒚臣鶈鳦궃菣ꮂ菣醃菣龃菣袃苣ꢂ菣뢂苣뎃菣ꮁ룤袁苣鎁臣꾁胣놨껥閁苣讂胣㲂牢ਾ苣骃菣벃苣ꞃ菣鶀潧胢袏臣ꪂ菣것菣랂菣뎃胢玝湥鶀臣놤闦鞁臣뒠郥꾁胣ꢂ菣뢂苣뎃菣ꮁ苣벃苣Ꞃ菣袃臣膦뇦鞁臣袂苣节苣誂꣨릮髧ꞁ臣蒁裥龜臣肱鳥蒚臣醃菣龃菣袃볯궃菣ꮂ菣醃菣龃菣袃볯沚捯污瀠牥業覼臣躸臣覂苣ꚁ臣讂雩꾁胣ꪂ菣것菣랂菣뎃胢斝瑮牥湩鶀臣膀苣벃苣Ꞃ菣袃苣ꖅ苣讂臣ꢁ臣膀꣨릮臣貂苣芀戼㹲뺏鳥꺁菣벃苣ꞃ菣貁菣궃苣릂臣鮾룤馁苣醃菣龃菣袃臣芁苣膀菣벃菣ꪂ菣ꪃ臣醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣袃菣鎃菣벃菣鶀敲楧湯污敐浲瑩胢銂胣꾂菣릂胢傝潲散獳胢ꮁ믤ꂊ臣讂胣㲂牢ਾ菣것苣릂臣ꪂ菣것菣랂菣뎃胢璝牥業慮整胢銂胣鞃菣뮂苣꺁菣벃苣ꮃ菣벃菣莃菣銂뷧趁迦袁苣낖臣蒁苣骃菣벃苣ꞃ菣鶀档湡敧敐浲瑩胢ꮁ胣꺽臣鮏臣讂胣鎁臣ꪂ菣것菣랂菣뎃臣膀菣것苣릂蟨ꮺ臣膦뇦膀迥꾁闥財臣鞃菣뮂苣ꢁ郥覭臣鞃菣뮂苣꺁ꛨ花臣袂臣ꚁꇨꪁ苣貂苣芀戼㹲꾂菣릂胢傝潲散獳胢ꮁ胣랂苣蚃菣ꒂ菣릂苣뎃苣ꪂ菣것菣랂菣뎃胢傝牥業捴慨杮摥胢銂믤ꂊ臣讂胣鎁臣ꪂ菣것菣랂菣뎃臣膀菣것苣릂臣ꂍ鳦薀臣궃菣ꮂ菣醃菣龃菣袃苣覤鯦馁苣芙胣设臣낁苣骃菣벃苣ꞃ菣鶀湥整楲杮胢ꮁ臣蒁臣誸뿨鞁臣袂臣ꪁ駦膀臣꾁臣ꒁ臣节胣隈臣꾁胣뚌뫤龜雩銂苣ꎁ臣袏臣뚌뫤龜雩ꪁ臣ꮁ跥覜胨銂軦꒙臣讂臣膂臣膀苣뎃苣뎃臣袂臣ꚁꛨ花臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔱㰳愯㰾䐯噉ਾ뻤袁臣膀뿥钭臥袼菣릂菣뎃菣骼敲灳湯敤覼臣ꖅ苣蚁臣鞁臣蒁苣鞃菣ꒂ苣袏臣ꊗ臣ꂍ鳦鞁臣蒁苣鞃菣ꒂ苣ꮁ苣ꎁ臣膀菣릂菣뎃菣꺁菣벃苣ꮃ菣벃菣莃菣貁ꓥ뒛臣貂臣뒠郥ꮁ臣蒁臣ꞁ苣膀菨鮊苣颻諥馁苣龁苣袏臣붃諥銂駩辁臣膂臣膀ꛨ花臣貂苣芀臣꺁苣骃菣벃苣ꞃ菣꺁菣뚂菣袃臣膀菣ꮃ볯邼볯ꞁ臣ꪁ臣膀苣꾂苣鞃苣ꞃ菣ꞁ臣貂臣膀苣뎃苣뎃臣것苣鶃菣肃臣龮ꇨ릂菣莃菣ꮁ苣꾂苣鞃苣ꞃ菣銂胩몇臣讂胣㲂牢ਾ苣ꦃ苣鶀牐捯獥鶀臣몛鳦꺁臣꺁苣��骃菣벃苣ꞃ菣ꮁ臣蒁臣꺁菣붂菣覃臣膀跥ꮁ菣ꮃ볯邼볯銂菣뾂菣뎃臣讂胣㲂牢ਾ苣ꦃ苣鶀硅捥瑵潩䕮捸灥楴湯胢ꮁ胣떂菣꾂菣릂胢傝牥業捴慨杮摥胢銂믤ꂊ臣讂胣鎁臣떂菣꾂菣릂臣膀蟥꾁胣뺏鳥꺁菣궃苣릂臣궃菣ꮂ菣醃菣龃菣袃臣覤鯦閁苣龁臣ꢁ苣辄釥馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔱㰴愯㰾䐯噉ਾ돦骼菣궃苣릂臣낖臣ꪁ菣벃苣ꮃ菣벃菣莃菣貁軥베臣뚈駩蒚臣芁苣뒠郥ꮁ胣鎁臣ꢂ苣뮂菣랂菣뎃苣궂菣莃菣鞁臣鶁苣讁苣麛뻥馁苣鞃菣뮂苣꺁菨鮊臣膀菣궃苣릂臣芵뫤꺁ꛨ螉臣袂臣ꚁ裥邙臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₒ鶁臣隻臣覤鯦㲴甯㰾牢ਾ苣骃菣벃苣ꞃ菣鶀潧胢袏臣ꪂ菣것菣랂菣뎃胢玝湥鶀臣놤闦鞁臣뒠郥膀菣것苣릂臣覂菣것苣릂臣꺁믨膀菣螃菣ꮁ꣨낿臣貂臣蒁苣袂臣ꮁ胣ꢂ菣뢂苣뎃菣꾁胣놤苣貂臣蒁苣醼믤誸臣ꒂ菣뾂菣膃苣뎃苣覃苣隃苣Ꞃ苣袃볯榈瑮牥档湡敧⁤扯敪瑣볯銂ꛨ蒁臣馁臣ꢁ臣ꞁ臣讂胣㲂牢ਾ뻤袁臣꺛髧난볯螃苣蚃苣趃菣랂菣뎃볯撚瑥湩瑡潩覼臣ꢂ菣뢂苣뎃菣ꮁ苣벃苣Ꞃ菣袃臣膦뇦鞁臣醃菣龃菣袃苣躸臣ꪁ臣龁苣ꮁ胣ꪂ菣것菣랂菣뎃臣놤闦鞁臣ꢁ臣ꚁ苣膀苣骃菣벃苣ꞃ菣鶀潧胢袏臣鶀敳摮胢ꮁ苣ꎁ臣ꢂ菣뢂苣뎃菣銂臣꺁鯧蒚鳥ꮁ裥钁臣鮁苣鎁臣貁臣趁苣芀臣覂臣膀苣骃菣벃苣ꞃ菣鶀湥整楲杮胢꾁胣鎁臣뒠郥ꮁ苣벑臣몇臣貂苣芀戼㹲颍臣讂苣릂菣ꂃ菣ꎂ菣膃菣ꞁ臣ꪁ臣膀껥ꦾ룦뾁볯鞃菣螃菣ꆂ苣뎃菣骼牰摥晥湩摥볯閃苣벃菣ꎃ迥꾁菣벃苣骮뻧袼菣벃苣螃菣ꆂ苣뎃菣骼獵牥搭晥湩摥볯閃苣벃菣ꎃ苣膀苣뎃苣뎃臣膦뇦馁苣鎁臣꾁꣨릮臣貂苣芀戼㹲ꢂ菣뢂菣ꮁ苣ꎁ臣膦뇦閁苣龁菣ꎂ菣膃菣꺁臣膂臣ꚃ菣뚂껥ꦾ菣붂菣覃臣膀臣龁臣节菣ꎂ菣膃菣貁苣릂菣ꂃ菣ꎂ菣膃菣ꞁ臣讂臣꺁苣蚁臣膀苣ꦃ苣ꊂ菣袃迥뎁菣궃苣릂臣邼臣芁苣鎁臣銂ꛨ蒁蟥ꂁ臣芀戼㹲뺏鳥꺁菣벃苣ꞃ菣貁菣궃苣릂臣辄鯥閁苣龁꣦邙臣誁臣ꚁ賦ꎁ臣蒁苣ꆿ铧꺁꣧ꚺ苣벨飦馁苣膀菣벃菣ꪂ菣ꪃ臣醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣袃菣鎃菣벃菣鶀畡桴湥楴楣祴胢銂胣꾂菣릂胢傝潲散獳胢ꮁ믤ꂊ臣讂胣鎁臣ꊂ菣ꪃ菣ꖃ菣袃臣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯鞼臣骮뻧閁苣ꚁ臣讂胣㲂牢ਾ菣궃苣릂臣龔裦閁苣龁駦銂ꓧ馁胣ꪃ菣覃苣뎃菣꺁菣隃菣莃苣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃胢掝敲瑡潩呮浩鶀苣膀苣ꦃ苣鶀牐捯獥鶀臣颻諥馁苣芀戼㹲鞃菣뮂苣꺁苣袃菣鎃菣벃菣鶀牢湡鶀苣莻ꏦ馁苣芀戼㹲ꢳ볯鶁臣ꎻ苣誂胣ꪃ菣뢂菣뎃臣��苣ꦃ苣鶀敐浲瑩胢꺁苣隃苣ꦃ苣銂껥ꦾ臣膀臣꺁볯ꒁ臣ꒂ菣릂苣뎃苣銂菣궃苣릂臣ꊂ菣ꪃ菣ꖃ菣袃胢犝来潩慮偬牥業鶀臣鞁臣鮾뗧馁苣鎁臣貁臣趁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯ₒ蚃菣릂苣ꪃ菣袃臣芦뿥㲵甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼†菣것苣릂雩꺁믨膀菣螃菣㲫甯㰾牢ਾ苣뎃苣袃菣꾂苣ꞃ菣뮂菣袃臣膀臣꺁苣꾂苣ꞃ菣ꞁ껥ꦾ臣貂苣鶀菣것苣릂臣覂菣것苣릂臣꺁믨膀菣螃菣袼汰捡ⵥ潴瀭慬散琠慲獮敦⁲潭敤覼胢銂껥뺏臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯醼†菣ꦃ菣ꮃ菣鞃菣ꒂ苣袼牔癡汥摥倠慬散覼⼼㹵戼㹲鶀菣ꦃ菣ꮃ菣鞃菣ꒂ苣袼牴癡汥摥瀠慬散볯鶀臣膀苣莃菣뎃苣鲃菣꾂苣貁臣貂苣讻臣ꚁ믨膀臣貂苣鞃菣ꒂ苣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰袃菣뎃苣閃苣袼牔湡晳牥볯㲉甯㰾牢ਾ菣莃菣꾃菣꾂臣芁苣랂菣钃菣낂菣莃苣릂臣钧꣨鞁臣袃菣馃菣覃菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣꺁胢莅볯澈楲楧覼胢ꞁ臣讂볯ꒁ臣鞃菣ꒂ苣讁苣膀苣莃菣뎃苣鲃菣꾂苣꺁胢꺛髧난볯撈獥楴慮楴湯볯鶀臣芁苣醼믤誸臣鞃菣ꒂ苣뢁胣鲃菣꾂苣꺁蛥릮觧銂胢袃菣뎃苣閃苣袼牴湡晳牥볯鶀臣讂苣蚁臣膀跥鮊臣讂胣袃菣馃菣覃菣것苣릂臣膀闧ꪁ臣龁雦醐臣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ苣겐胩鞁臣醁苣낁臣覂臣蒁駦ꮁ臣膀雦鞁臣랂菣钃菣낂菣莃苣릂苣龔裦馁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣薆껥ꦉ苣膀믨膀藥讁苣꺛髧난臣ꦁ苣讁볯ꒁ臣袃菣뎃苣閃苣馁苣꺁臣膀볯ꒁ臣릂菣莃菣ꞁꇨꪁ苣貂苣芀臣鎁臣膀鳦貾臣銼臣꺁苣蚃菣鞃胣馁臣辂臣袃菣뎃苣閃苣ꒂ菣誏臣袃菣뎃苣閃苣ꊂ苣袃臣膀跥肸臣袃菣뎃苣閃苣薆臣誁臣ꚁ迥ꦾ臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰떂菣龃菣랂菣뎃볯厈扵業獳潩覼⼼㹵戼㹲袃菣뎃苣閃苣꾁胣랂菣钃菣낂菣莃苣릂臣鶀苣隃菣莃苣ꞃ菣袼畳浢獩楳湯볯鶀臣袂臣ꚁ雩讧臣貂苣芀苣莃菣뎃苣鲃菣꾂苣貁뗧鲞臣鞁臣肜裥ꮁ菣ꦃ菣릂菣ꆂ苣뎃臣貂苣袃菣馃菣覃菣것苣릂臣膀臣꺁胢玝畯捲鶀臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣ꪃ菣ꪃ苣袼敄楬敶祲볯㲉甯㰾牢ਾ菣ꦃ菣릂菣ꆂ臣膀苣莃菣뎃苣鲃菣꾂苣꺁胢螃菣邃菣ꎂ볯撈汥癩牥覼胢ꞁ뗧蚺臣讂胣떂菣龃菣랂菣뎃臣貂臣랂菣钃菣낂菣莃苣릂臣超胩閁苣讂菣것苣릂臣膀臣꺁胢꺛髧난볯撈獥楴慮楴湯볯鶀臣芁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣超胩꾁胣鶀菣벃菣ꮃ볯溈牯慭覼胢袏臣鶀苣隃菣벃菣ꮃ볯憈湢牯慭覼胢ꞁ臣讂胣趉胨꺁ꃥ袐臣꾁胣랂菣钃菣낂菣莃苣릂臣꺛髧��臣膀苣隃菣莃苣ꞃ菣ꮁ臣蒁臣릉껥閁苣龁胩誂臣芁苣膀苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧꺁藥꾂菣蚃苣ꮂ菣醃菣蒃臣颭鳥鞁臣蒁苣芀뻥薀臣뒠郥ꮁ臣膀菣莃菣꾃菣꾂臣膀苣莃菣뎃苣鲃菣꾂苣꺁臣膂臣ꖈ臣袺苣骮뻧閁苣龁鯧蒚鳥銂賦ꎁ臣誁苣膀苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧꺁臣讂苣ꪃ菣ꎂ苣ꮃ菣벃菣貁귥ꢜ臣ꚁ臣ꪁ臣鎁臣貁臣讂胣ꢂ苣뮂菣랂菣뎃臣鎁臣ꊂ菣躃菣麃菣ꪁ諧膳臣ꒁ臣ꚁꫨ躘臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰袃菣뎃苣閃苣ꒂ菣袼牔湡晳牥䤠覼⼼㹵戼㹲랂菣钃菣낂菣莃苣릂臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣ꮁ胢袃菣뎃苣閃苣ꒂ菣袼牴湡晳牥敲⁤湩볯鶀臣貂苣芀菣ꦃ菣릂菣ꆂ苣뎃臣膀臣讂菣것苣릂볯袃菣馃菣覃菣것苣릂臣节믤꺁菣것苣릂臣节苣蒁胣覼臣覂臣랂菣钃菣낂菣莃苣릂臣떂菣龃菣랂菣뎃臣邵黦ꢁ臣ꚁ铧颁苣讁胣袏臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣袼苣莃菣뎃苣鲃菣꾂苣貁菣ꦃ菣릂菣ꆂ苣뎃臣貂苣袃菣馃菣覃菣것苣릂臣貐룤ꞁ苣낕臣ꎁ臣蒁臣节苣蒁胣覼臣覂臣랂菣钃菣낂菣莃苣릂臣袃菣뎃苣閃苣ꊂ苣袃臣邵黦ꢁ臣ꚁ铧颁苣芀苣莃菣뎃苣鲃菣꾂苣貁臣貂臣覂鷦龁菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣꺁胢炝敲楶畯⁳潨鶀臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣ꦃ菣릂菣ꆂ苣Ꚃ菣袼牔湡晳牥传瑵볯㲉甯㰾牢ਾ苣莃菣뎃苣鲃菣꾂苣꾁胣袃菣馃菣覃菣것苣릂臣覂胢袃菣뎃苣閃苣ꊂ苣袃볯璈慲獮敦牲摥漠瑵볯鶀臣貂苣芀菣ꦃ菣릂菣ꆂ苣Ꚃ菣꾁胣袃菣馃菣覃菣것苣릂볯랂菣钃菣낂菣莃苣릂臣鶁苣讁苣袃菣뎃苣閃苣ꊂ苣袃臣貂臣袃菣馃菣覃菣것苣릂臣貐룤ꞁ苣낕臣ꎁ臣蒁臣节苣蒁胣覼臣꺁苣莃菣뎃苣鲃菣꾂苣꺁菣ꦃ菣릂菣ꆂ苣뎃臣邵黦ꢁ臣ꚁ铧颁苣讁胣袏臣膀菣것苣릂볯袃菣馃菣覃菣것苣릂臣节臣꺁믤꺁菣것苣릂臣节苣蒁胣覼臣꺁苣莃菣뎃苣鲃菣꾂苣꺁藩膀臣邵黦ꢁ臣ꚁ铧颁苣芀苣莃菣뎃苣鲃菣꾂苣貁臣貂臣醐臣蚁볯ꖻ룤꺁菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣꺁胢溝硥⁴潨鶀臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₒ랂菣钃菣낂菣莃苣릂볯厈楨灰湩⁧潂數覼⼼㹵戼㹲鶀桓灩楰杮䈠硯鶀臣膀苣隃苣Ꞃ苣袃臣芁苣膀臣꺁苣隃苣Ꞃ苣袃臣膀믤꺁苣꺁胣馁臣辂臣鶁臣鶀蛥릮觧袼潣瑮湥獴볯鶀苣鶿賦鞁胣鶁臣ꪂ菣뢂苣꾂菣銂菣것苣릂臣覂菣것苣릂臣ꢁ믨膀臣鮁苣龁苣ꮁ뷤ꢔ臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰늖†ꛨ袼敐步볯㲉甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣芁苣ꪂ菣��뢂苣꾂菣銂胢늖ꛨ袼数步볯鶀臣讂臣ꢁ臣ꞁ臣讂胣馁臣辂臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣许꣨꺁裥邙臣鎾臣ꚁ胣ꪂ菣뢂苣꾂菣꺁苣袃菣鎃菣벃菣銂迥鞾臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ苣莃菣뎃苣鲃菣꾂苣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣꺁뿤랭臣貂臣袼牰瑯捥整覼菣閃苣것菣릂苣ꢔ臣ꚁ胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣ꊂ菣ꪃ菣ꖃ菣袃苣随뻥馁苣芀戼㹲ꚃ菣뚂껥ꦾ菣붂菣覃臣벑臣貂苣ꢁ胣鶁臣ꆃ苣莃菣꾁胣芁臣讁苣ꊂ菣ꪃ菣ꖃ菣袃臣랂苣蚃菣꺁苣袃菣鎃菣벃菣ꞁ臣讂臣꺁苣蚁臣膀胢掝楬湥鶀胣鶀敨敲胢誏臣鶀牐捯獥鶀臣讃菣袼볯覼臣芁苣鎁臣銂ꛨ蒁蟥ꂁ臣芀臣覂臣膀苣袃菣鎃菣벃菣銂雩Ꞧ볯炈敥覼臣讂臣膀뫤膂껥膂苣貂臣骀럨銂蓧隦臣ꚁ胣ꦁ苣ꪁꃥ袐臣节胣ꊂ菣ꪃ菣ꖃ菣袃臣ꪂ菣뢂菣ꮃ臣ꪁ臣膀苣袃菣鎃菣벃菣꺁苣钃菣銂菣뾂菣뎃臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰궨†껥袼潐敫볯㲉甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣芁苣ꪂ菣뢂苣꾂菣銂胢궨껥袼潰敫볯鶀臣讂臣ꢁ臣ꞁ臣讂胣馁臣辂臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣许꣨꺁裥邙臣鎾臣ꚁ胣ꪂ菣뢂苣꾂菣꺁苣袃菣鎃菣벃菣銂苣莃菣馁苣鎁臣貁臣趁苣芀臣讁臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣ꦁ뷥ꪁ觧ꦨ苣膌臣ꚁ臣讂ꃥ袐臣꺁臣鎁苣銂ꇨꪁ臣鎁臣貁臣趁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣膀苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧뢁臣鶿귨閁苣ꚁ臣蒁볯疈灮潲整瑣摥볯ꪃ菣ꆂ菣뎃苣銂铧蒁臣膀臣꺁苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧꺁苣袃菣鎃菣벃菣銂苣莃菣馁苣芀菣벃苣骮뻧ꆃ苣莃菣貁釥낁苣ꚁ臣貂臣膀臣꺁菣붂菣覃臣膀臣龁臣节苣袃菣鎃菣벃菣貁苣릂菣ꂃ臣ꊂ菣ꪃ菣ꖃ菣袃臣芁苣讁臣袂臣ꮁ胣ꆃ苣莃菣꾁胣鶀汣敩瑮胢膀胢條牥鶀迥뎁胢傝潲散獳胢貁볯ꞁ臣讂臣ꢁ苣讦臣ꂁ臣芀臣覂臣膀苣袃菣鎃菣벃菣銂꣨骮볯炈歯覼臣讂臣膀뫤膂껥膂苣貂臣骀럨貁蓧隦臣貂胣ꦁ苣ꪁꃥ袐臣节胣ꪂ菣뢂菣ꮃ臣ꊂ菣ꪃ菣ꖃ菣袃臣꾁臣辁胣邏ꇦ閁苣龁苣袃菣鎃菣벃菣꺁苣钃菣銂铧蒁苣芀戼㹲趉꣨릉꣦꾁곦꺁苣蚁臣鞁臣늉苣鎽臣覂苣讂胣ꢂ菣뢂菣鞃菣ꒂ苣꾁胣ꊂ菣ꪃ菣ꖃ菣袃胢憝瑵敨瑮捩瑡潩卮慴整胢袏臣鶀敲楧湯污敐浲瑩胢銂胣ꒂ菣릂菣ꦃ苣랂菣뎃苣莃菣貁臣貂苣꺁苣袃菣鎃菣벃菣銂菣벃菣ꪂ菣ꪃ臣鞁臣骮뻧鞁臣蒁臣ꢁ臣ꚁ苣膀苣莃菣馁苣鎁臣貁臣趁苣芀苣袃菣鎃菣벃菣鶀敲楧湯污敐浲瑩胢꺁菣ꪃ菣蚃苣隃臣뮂菣蚃苣뎃苣꾁胣랂菣钃菣낂菣莃苣릂臣ꊂ菣躃菣麃菣ꪁ藩��膀苣붑믤馁苣鎁臣貁臣趁苣芀戼㹲ꢳ볯袃菣馃菣覃菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧꺁苣骃菣벃苣ꞃ菣銂ꛨ花臣讂臣ꢁ臣ꞁ臣ꪁ臣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣鲃菣꾂苣袼敒潢覼⼼㹵戼㹲袃菣馃菣覃菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣銂胢ꪃ菣莃苣릂볯犈扥硯볯鶀臣讂臣ꢁ臣ꞁ臣讂胣袃菣馃菣覃菣것苣릂臣膀苣莃菣뎃苣鲃菣꾂苣貁闧ꪁ苣릖郥ꮁ믨膀臣貂臣낁臣覂臣蒁ꃥ袐臣鶁苣銂ꇨꪁ臣芀苣뎃苣뎃臣膀苣莃菣뎃苣鲃菣꾂苣讁苣릉껥꺁鯧蒚鳥꺁菣놂菣袃苣꒙軥鞁胣鶁苣覂臣膃苣莃菣銂菣ꮃ볯邼볯ꢁ臣讂胣鶁臣ꚁ胣ꢂ菣뢂菣꾁胣뺏귥꺁苣꺁臣薆껥貁郥肸臣낖臣蒁苣莃菣뎃苣鲃菣꾂苣ꮁ胣鶁苣覂臣膃苣莃菣銂雦龁臣颻臣ꂊ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꪃ菣ꒂ菣꾂菣袼敒楤敲瑣볯㲉甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣랂菣钃菣낂菣莃苣릂苣鶀菣肃苣것苣袃볯犈摥物捥覼胢馁苣鎁臣貁臣趁苣芀菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣袃菣뎃苣閃苣꺁雩ꮁ苣꾂苣鞃苣ꞃ菣貁铧颁臣뒠郥ꮁ臣貂苣財臣蚁胣ꢂ菣뢂菣꾁胣랂菣钃菣낂菣莃苣릂臣ꢂ苣뮂菣랂菣뎃苣颻臣ꂊ臣膀苣莃菣뎃苣鲃菣꾂苣꺁鯧蒚鳥膃苣莃菣꺁룤讁苣讃菣袼볯覼苣꒙軥馁苣芀臣鞁臣膀苣뎃苣뎃臣膀껦誂臣蒐鯧蒚鳥膃苣莃菣ꮁ믤袁臣릉껥꺁跥肸臣膃苣莃菣銂뷤ꢔ臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯鎼†苣벃菣뎃菣ꪂ菣뢂苣꾂菣袼灏湥摥传橢捥獴볯㲉甯㰾牢ਾ胢ꪂ菣鞃菣覃苣隃苣Ꞃ苣袃볯澈数敮⁤扯敪瑣볯鶀臣膀苣隃苣Ꞃ苣袃臣芁苣膀臣꺁볯ꖻ룤꺁菣벃菣貁鏦鲽迥붃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃菣袼慐瑲覼⼼㹵戼㹲ꪂ菣뢂苣꾂菣꺁郥薀臣鶀菣벃菣袼慰瑲볯鶀臣膀雩뺔臣貂臣蒁臣节臣ꪁ臣ꚁ苣膀臣꺁菣ꒂ苣Ꞃ苣袃臣讃菣袼볯覼臣꾁臣蒁苣뎃苣벃菣Ꞃ菣뢂菣ꪂ菣뢂苣꾂菣ꞁ臣讂胣讖铦閁苣龁苣隃苣Ꞃ苣袃臣醃菣蒃臣膀臣꺁菣벃菣꺁苣ꦃ苣誏臣肃苣뢂苣릂菣꺁裥꺁苣隃苣Ꞃ苣袃臣膀雩뺔臣貂臣ꪂ菣뢂苣꾂菣ꮁꓥ趁臣놽鿩馁苣鎁臣ꪁ臣膀뷧趁迦袁苣鎁臣貁臣趁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢귥ₘꢜ볯鞃菣벂菣릂볯傚敲敳据覼⼼㹵戼㹲讖铦閁苣ꚁ臣ꚁ苣蒁臣辁臣节胣ꪂ菣뢂苣꾂菣꺁郥醃菣蒃臣膀胢鞃菣벂菣袃볯炈敲敳瑮볯鶀胣馁臣辂臣颭鳥鞁臣蒁苣讁胣袏臣鶀苣隃苣뎃菣袼扡敳瑮볯鶀胣馁臣辂臣颭鳥鞁臣蒁臣蒁臣ꞁ臣讂胣肸裨ꮁ胣肸菩꺁菣벃菣貁苣隃苣뎃菣ꞁ臣讂臣ꢁ臣膀苣隃苣Ꞃ苣袃臣뾽铧銂裥邙臣��臣膀苣隃苣Ꞃ苣袃臣鞃菣ꒂ苣讁苣鞃菣ꒂ苣뢁臣ꊻ胩銂룤꒱諥螎髧ꮁ臣讂胣ꪂ菣뢂苣꾂菣貁胣鶁臣芙苧ꮁ臣蒁臣ꊂ菣뮂菣袃臣芁苣膀臣꺁苣隃苣Ꞃ苣袃蟨ꮺ臣醃菣蒃臣꺁菣閃苣것菣릂苣뾽铧鞁苣蚁臣ꚩ臣龁ꃥ袐胣ꢂ菣뢂菣꾁胣鶀敒敦敲据⁥潖摩胢銂胩몇臣讂胣㲂牢ਾ돦骼藥讞髧ꪁ껥붖뻤ꮁ臣蒁臣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣醃菣蒃臣膀苣莃菣뎃苣鲃菣꾂苣銂苣隃菣莃苣ꞃ菣鞁臣芙苧ꮁ臣蒁臣膀迥뎁苣莃菣뎃苣鲃菣꾂苣꺁菣ꪃ菣ꪃ苣꺁駦릂臣誁臣ꚁ臣颭鳥鞁臣蒁苣貁胣릊軧銂鳦ꦁ臣馁苣龁苣ꮁ胣랂菣钃菣낂菣莃苣릂臣袃菣뎃苣閃苣꺁믤꺁苣蚃菣鞃臣ꢅ菩袏臣肸菩ꮁ臣蒁臣꾁귥ꢜ臣ꚁ臣蒁胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣蚃苣ꮂ菣袼牃瑩捩污瑩覼⼼㹵戼㹲讖铦閁苣ꚁ臣ꚁ苣蒁臣辁臣节胣ꪂ菣뢂苣꾂菣꺁郥醃菣蒃臣膀胢꾂菣蚃苣ꮂ菣袼牣瑩捩污볯鶀臣芁苣讁胣袏臣鶀菣뎃苣ꪃ菣ꎂ苣ꮃ볯溈湯挭楲楴慣覼胢ꞁ臣讂胣ꪂ菣뢂苣꾂菣꾁胣ꪂ菣뢂苣꾂菣꺁菣뎃苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣醼믤誸귥ꢜ臣ꚁ臣ꪁ臣ꚁ苣膀뷤ꢔ臣趁苣袂臣ꮁ꣨袨臣貂苣貁胣ꪂ菣뢂苣꾂菣꺁苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣ꢅ臣颭鳥鞁臣蒁臣蒁ꃥ袐臣꾁뷤ꢔ臣讂臣ꢁ臣ꞁ臣ꪁ臣芀戼㹲ꢳ볯ꪂ菣뢂苣꾂菣꺁苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣ꊂ菣뮂菣袃臣膀臣꺁苣隃苣Ꞃ苣袃苣躏껥鞁臣랂菣钃菣낂菣莃苣릂臣ꎭ룥ꪁ藩膀苣ꢦ臣ꢁ臣讂臣膀菣뎃苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣ꊂ菣뮂菣袃臣膀臣꺁苣隃苣Ꞃ苣袃苣躏껥鞁臣랂菣钃菣낂菣莃苣릂臣ꎭ룥ꪁ藩膀臣ꢦ臣ꢁ臣ꪁ苣ꪁ臣芀戼㹲ꢳ볯뢅黥蒚臣龮雦设臣誁臣ꚁ胣ꪂ菣뢂苣꾂菣꺁藥ꚁ臣醃菣蒃臣芁苣蚂苣뒠触ꞁ苣ꪃ菣ꎂ苣ꮃ臣芁苣芀臣ꂁ臣膀駦ꮁ臣膀苣隃苣Ꞃ苣袃臣芁苣醃菣蒃臣膀臣꺁苣隃苣Ꞃ苣袃臣릉껥꺁菣것苣릂臣蒁苣鎖臣뾁胣꾂菣蚃苣ꮂ菣ꢁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯钼†苣벃菣뎃菣랂菣钃菣낂菣莃苣릂볯侈数敮⁤桓灩楰杮䈠硯獥볯㲉甯㰾牢ਾ胢ꪂ菣鞃菣覃苣莃菣뎃苣鲃菣꾂苣袼灯湥摥猠楨灰湩⁧潢覼胢꾁胣鶁臣醃菣蒃臣趓뷤閁苣讂臣ꢁ臣ꞁ臣讂苣莃菣뎃苣鲃菣꾂苣ꞁ臣讂胣ꪂ菣鞃菣覃苣莃菣뎃苣鲃菣꾂苣꺁菣벃菣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣醃菣蒃臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ醃菣蒃菣莃苣릂볯傈牡獴䈠硯獥볯㲉甯㰾牢ਾ胢醃菣蒃菣莃苣릂볯傈牡獴戠硯볯鶀臣膀臣꺁菣벃菣貁飦붙臣袏臣뮻蓦ꮁ觧骮臣讂臣ꢁ臣ꞁ臣讂苣벃菣뎃菣ꪂ菣뢂苣꾂菣ꞁ臣讂��醃菣蒃菣莃苣릂臣膀곦꺁볯ꒁ臣꺛髧꺁臣膂臣ꢔ臣覂苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醃菣蒃臣趓뷤袼慍楮異慬楴杮倠牡獴볯㲉甯㰾牢ਾ苣벃菣뎃菣ꪂ菣뢂苣꾂菣꺁菣벃菣꾁胣醃菣蒃菣莃苣릂臣袂臣ꚁ鏦鲽臣貂苣芀臣貂臣袂臣ꚁ胣趓뷤銂ꇨꪁ臣ꚁ臣讂苣隃苣Ꞃ苣袃臣醃菣蒃臣뒛軦ꊂ苣뮂苣鞁臣蒁臣ꢁ臣鶿꣨閁苣讂胣设臣낁胣醃菣蒃菣莃苣릂蛥꺁菣벃菣꾁胣ꪂ菣鞃菣覃苣隃苣Ꞃ苣袃臣ꮐ苣覂苣讂臣ꢁ臣ꞁ臣膀苣벃菣뎃菣ꪂ菣뢂苣꾂菣꺁賦骮臣貂臣醃菣蒃臣膀苣钃菣閁苣龁苣膀菣벃菣鲃菣꾂苣ꮁ꟧閁苣龁苣馁苣鎁臣貁臣趁苣芀臣ꂁ臣膀菣벃菣ꪇ뫨꾁胣醃菣蒃菣莃苣릂蛥ꮁ臣讂雩ꞁ臣ꎁ臣节胣鲤鿦閁苣讂臣ꢁ臣ꞁ臣ꪁ臣芀戼㹲ꢳ볯鎁苣ꮁ苣ꎁ臣ꒂ菣뾂菣膃苣뎃苣覃苣隃苣Ꞃ苣袃臣袂臣ꚁꇨ閁苣讂鿧蒚触覜꣦貁뿤랭臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃菣꺁뿤ꆮ볯厈潴楲杮倠牡獴볯㲉甯㰾牢ਾ苣벃菣뎃菣랂菣钃菣낂菣莃苣릂苣뮻臣貂臣袃菣馃菣覃菣것苣릂臣膀臣꺁苣蚁臣랂菣钃菣낂菣莃苣릂臣ꮐ臣貂苣醃菣蒃臣龁苣꺁菣鶃苣袃菣袼뿤ꆮ뫥覼臣鞁臣膀菣벃菣鲃菣꾂苣銂뷤ꢔ臣讂臣ꢁ臣ꞁ臣讂胣醃菣蒃菣莃苣릂臣膀냥閁臣螃菣뾂菣莃苣릂臣芁苣膀菣것苣릂臣覂菣것苣릂臣꺁菣ꦃ菣릂菣ꆂ臣誁臣ꚁ菣붂菣릂臣鞁臣립ꯧꒁ胣㲂牢ਾ돦骼臣貂臣袂臣ꚁ菣ꦃ菣ꮃ菣鞃菣ꒂ苣꺁苣뎃菣ꪃ菣뎃菣벃苣ꞃ菣貁껥鎘臣ꪁ苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃菣꺁駩뮎볯咈歡湩⁧慐瑲覼⼼㹵戼㹲랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣醃菣蒃菣莃苣릂苣ꮐ苣뒠郥膀菣벃菣鲃菣꾂苣꺁苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣膀苣莃菣뎃苣鲃菣꾂苣꺁菣벃菣讁苣誉駩閁苣讂胣鶁臣龁苣랂菣钃菣낂菣莃苣릂臣袃菣뎃苣閃苣ꮁ臣蒁臣벑臣몇臣貂臣袃菣馃菣覃菣것苣릂臣膀臣貂苣꺁菣벃菣꺁ꫨ릁苣鎁臣节觥꒙臣讂臣ꢁ苣ꞁ臣ꪁ臣芀臣龁臣ꎁ臣膀臣꺁苣蚁臣誉駩ꮁ苣讂鳦ꦁ賥꾁ꧨ뾁苣貂臣蒁胣㲂牢ਾ돦骼臣貂臣膀苣릂菣ꂃ藥鎽臣랂苣蚃菣꺁鳦ꦁ賥袼臣꺁ꃥ袐臣꒪臣龁雦醐臣肜臩隌臣芁苣芀볯꺁諥鮊臣袂苣ꢂ菣뢂苣뎃菣꺁꟧開苣뾁臣讂臣膂臣ꢅ臣銂ꧨ뾁苣袂臣ꪁ苣릂菣ꂃ苣ꢔ臣讂臣ꢁ臣辁胣鞃菣ꒂ苣讁苣鞃菣ꒂ苣뢁臣袃菣뎃苣閃苣銂苣鶃菣袃臣ꚁ臣讂苣벃苣Ꞃ菣袃臣膀苣뎃苣벃菣Ꞃ菣뢂菣ꪂ菣뢂苣꾂菣銂胣袃菣馃菣覃菣것苣릂雩ꞁ꟧開臣鮁苣鎁臣銂迥붃臣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣벃菣꺁뿤膌볯䲈慥楶杮倠牡獴볯㲉甯㰾牢ਾ��莃菣뎃苣鲃菣꾂苣꺁蛥릮觧貁菣벃菣鲃菣꾂苣銂郥肂ꃥ袐胣醃菣蒃菣莃苣릂臣躃菣꾂菣蚃苣ꮂ菣ꪁ菣벃菣꾁胣랂菣钃菣낂菣莃苣릂臣ꮐ苣覂苣讂胣鎁臣袂臣ꮁ臣ꚁ胣ꢂ菣뢂苣뎃菣꾁胣ꒂ菣뾂菣膃苣뎃苣覃苣隃苣Ꞃ苣袃臣躃菣꾂菣蚃苣ꮂ菣ꞁ臣讂臣ꢁ苣ꎮ꣨馁苣鎁臣貁臣趁胣鶁臣貾胣鎁臣ꢂ菣뢂苣뎃菣ꮁ룤辚臣讂臣꺁菣벃菣銂볤蚁臣ꢁ臣辁胣袃菣莃菣銂ꇨꪁ臣鎁臣貁臣趁苣芀뻥ꞁ菣벃菣鲃菣꾂苣讁苣醃菣蒃苣随苣꒙臣鎁臣ꮁ苣ꎁ臣膀苣벃苣Ꞃ菣袃臣膀臣꺁菣벃菣貁苣ꪃ菣ꎂ苣ꮃ臣芁苣鎁臣銂껥肨臣讂胣鎁臣ꢁ臣膀菣벃菣貁苣隃苣뎃菣꺁ꃥ袐胣ꢂ菣뢂菣꾁胣鶁臣醃菣蒃苣궃菣ꮂ菣ꮁꛨ蒁蟥馁臣膀迥꾁臣꺁菣벃菣貁苣벃苣Ꞃ菣袃臣袂臣ꚁ뷤ꢔ臣貂臣蒁苣ꢁ臣꾁胣鶀敒敦敲据⁥潖摩胢銂胩몇臣讂胣㲂牢ਾ돦骼臣貂臣膀苣벃苣Ꞃ菣袃臣膀臣貂苣꺁苣뎃苣벃菣Ꞃ菣뢂菣ꪂ菣뢂苣꾂菣꺁臣辁臣讁臣뾽铧閁苣ꪁ臣鞃菣ꒂ苣銂胣鶁苣覂臣ꪂ菣뢂苣꾂菣貁臣鎁臣颭鳥馁苣鎁臣銂ꛨ花臣讂臣ꢁ臣辁胣ꪨ闥馁苣鎁臣銂迥붃臣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₖ膃苣莃菣꺁뷤ꢔ⼼㹵戼㹲膃苣莃菣꾁胣貾뿨馁苣袂臣ꮁ胣랂菣钃菣낂菣莃苣릂臣鶁苣銂믤鞁臣ꊻ胩閁苣讂ꓨ낕臣鞃菣ꒂ苣銂껥ꦾ臣讂胣㲂牢ਾ胢鞃菣ꒂ苣ꊂ菣ꪃ菣ꖃ菣袃볯炈慬散愠瑴楲畢整覼胢꾁胣鎁臣뮂苣랂菣뎃藥鎽苣骀臣ꚁ胣ꊂ菣ꪃ菣ꖃ菣袃胢撝獥楴慮楴湯慎敭胢膀胢撝獥楴慮楴湯摁牤獥鶀胣鶀敤瑳湩瑡潩䍮慬獳胢ꞁ臣讂胣ꖻ룤ꮁ觧ꮁꫨ躘臣ꪁ臣隻臣膃苣莃菣ꊂ菣ꪃ菣ꖃ菣袃臣膀蓧隦臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣벃苣袼潓牵散볯㲉甯㰾牢ਾ菣놂菣袃臣膀苣莃菣뎃苣鲃菣꾂苣꺁苣벃苣銂껥ꦾ臣讂臣膂臣ꢔ臣覂苣讂胣붂菣릂苣릉껥馁苣膀菣놂菣袃臣鞃菣ꒂ苣ꊂ菣ꪃ菣ꖃ菣袃臣膀觥誂뷥ꚁ苣貂臣蚃菣趃菣ꂃ볯ꊂ苣ꒂ菣覃菣것菣벃菣覼臣膀觥誂뷥ꚁ苣貂臣蚃菣ꊂ菣것苣袼苣떂苣뎃菣蚃菣ꊂ菣것苣覼臣膀觥誂뷥ꚁ苣貂臣떂苣蚃苣ꞃ菣袼苣떂苣뎃菣떂苣蚃苣ꞃ菣覼臣ꞁ臣讂胣膃苣莃菣꺁苣袃菣鎃菣벃菣鶀慷鶀臣膀菣ꮃ볯邼볯ꞁ臣蒁ꃥ袐臣꾁胣薿ꛨꮁ뿥颁臣膀臣꺁苣벃苣ꮁ裥钁臣讂苣Ꞃ苣銂꣨낿臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰螃苣蚃苣趃菣랂菣뎃볯䒈獥楴慮楴湯볯㲉甯㰾牢ਾ菣놂菣袃臣膀苣莃菣뎃苣鲃菣꾂苣꺁郥螃苣蚃苣趃菣랂菣뎃苣骮뻧馁苣龁苣ꮁ铧蒁苣貂苣芀菣놂菣袃臣鞃菣ꒂ苣ꊂ菣ꪃ菣ꖃ菣袃臣膀闥財臣螃苣蚃苣趃菣랂菣뎃苣릉��馁苣芀菣놂菣袃臣ꊂ菣ꪃ菣ꖃ菣袃胢瞝祡胢꾁胣讃菣袼볯覼臣ꪁ臣뒠郥ꮁ臣膀臣꺁菣릂菣ꎂ菣벃苣ꞃ菣ꮁ裥钁臣讂苣Ꞃ苣銂꣨낿臣讂胣ꊂ菣ꪃ菣ꖃ菣袃胢撝獥物摥慗瑩胢膀胢涝硡浩浵慗瑩胢꾁胣랂菣钃菣낂菣莃苣릂臣鶁臣螃苣蚃苣趃菣랂菣뎃臣醐臣ꎁ臣ꊻ胩閁苣ꚁ臣讂臣趁臣랂菣钃菣낂菣莃苣릂臣鮾룤閁苣讂苣벃菣릂鏥ꪳ苣邏뻤馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣ꪃ菣ꊂ苣鮃菣鞃볯傈敲楶畯⁳潈覼⼼㹵戼㹲膃苣莃菣꾁胣랂菣钃菣낂菣莃苣릂臣鞃菣鎃苣릂菣莃菣膀臣ꪁ苣ꆁ믨膀觥꺁ꃥ肉苣骮뻧馁苣龁苣ꮁ铧蒁苣貂苣芀菣ꪃ菣ꊂ苣鮃菣鞃苣릉껥馁苣膀菣놂菣袃臣ꊂ菣ꪃ菣ꖃ菣袃胢撝獥楴慮楴湯慎敭胢膀胢撝獥楴慮楴湯摁牤獥鶀胣鶀敤瑳湩瑡潩䍮慬獳胢꾁胣鶁苣麁苣膀觥誂뷥ꚁ苣貂臣蚃菣趃菣ꂃ볯ꊂ苣ꒂ菣覃菣것菣벃菣覼胣늉苣鎽臣覂苣龁菣것苣覃菣릂볯ꊂ苣ꒂ菣覃菣것苣覃菣릂볯膀觥誂뷥ꚁ苣貂臣떂苣蚃苣ꞃ菣袼苣떂苣뎃菣떂苣蚃苣ꞃ菣覼臣芁苣芀菣놂菣袃臣ꊂ菣ꪃ菣ꖃ菣袃胢瞝祡胢꾁胣讃菣袼볯覼臣ꪁ臣뒠郥ꮁ臣膀苣莃菣뎃苣鲃菣꾂苣貁菣ꪃ菣ꊂ苣鮃菣鞃臣覂菣ꦃ菣릂菣ꆂ臣貂臣ꢁ臣꺁苣Ꞃ苣銂껥ꦾ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰趃苣릂菣鮃菣鞃볯予硥⁴潈覼⼼㹵戼㹲膃苣莃菣꾁胣랂菣钃菣낂菣莃苣릂臣趃苣릂菣鮃菣鞃胣馁臣辂臣ꊻ胩貾臣뒠触銂껥ꦾ臣讂臣膂臣ꢔ臣覂苣讂胣膃苣莃菣꺁菣것苣릂苣袃菣鎃菣벃菣꾁胣趃苣릂菣鮃菣鞃苣릉껥馁苣芀菣놂菣袃臣ꊂ菣ꪃ菣ꖃ菣袃胢瞝祡胢꾁胣讃菣袼볯覼臣ꪁ臣貂臣膀臣꺁菣꾂苣袃菣莃菣ꮁ裥钁臣讂苣Ꞃ苣銂꣨낿臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯鞼†苣뎃苣뎃臣립觥㲲甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣랂菣钃菣낂菣莃苣릂臣ꊻ胩ꢁ臣꺁鯧蒚鳥뢁臣超胩ꢁ苣膀裥ꆾ臣讂臣ꞁ臣辁胣릮飦ꮁ臣讂苣꺁臣鞁臣讦苣鎁臣貁臩螈臣芁苣芀苣뎃苣뎃蟨ꮺ臣膀곦꺁苣蚁臣鎁臣鞃菣뮂苣ꮁ臣蒁臣讉諥醁苣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣ꦃ菣릂菣ꆂ苣뎃볯咈慲獮敦⁲湉볯㲉甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣貁胣랂菣钃菣낂菣莃苣릂苣袃菣뎃苣閃苣ꒂ菣馁苣ꢁ臣꾁臣ꒁ臣节胣ꢂ菣뢂菣꾁胣鶁臣랂菣钃菣낂菣莃苣릂臣讖铦閁苣龁苣꺁臣鶁苣ꢁ苣鶁臣ꞁ臣蒁臣銂臣ꞁ臣ꒈ雦鞁臣蒁苣芀藥讞髧ꪁ껥붖뻤ꮁ臣蒁臣꾁胣ꢂ菣뢂菣꾁菣莃苣릂꿦ꮁ臣꾁臣辁胣놵룤蒚臣鎁臣ꒈ雦銂ꇨꪁ臣芀臣龁臣ꎁ臣膀룤겈臣膀菣ꦃ菣ꮃ菣鞃菣ꒂ苣꾁胣隻臣鞃菣ꒂ苣ꢁ闧ꪁ臣ꚁ胣랂菣钃��낂菣莃苣릂臣薆껥ꦉ臣醃菣蒃臣ꒂ菣뾂菣膃苣뎃苣銂믤閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰袃菣뎃苣閃苣ꊂ苣袃볯璈慲獮敦⁲畏覼⼼㹵戼㹲袃菣馃菣覃菣것苣릂臣랂菣钃菣낂菣莃苣릂胢ꆼ胢銂菣ꦃ菣릂菣ꆂ苣Ꚃ菣馁苣ꢁ臣꾁臣ꒁ臣节胣ꢂ菣뢂菣꾁곦꺁臣ꢁ苣財臣蚁胣견볯ꮁ胣ꢂ菣뢂菣꾁胣鶀볯鶀苣ꪃ菣莃苣릂臣膀雦鞁臣랂菣钃菣낂菣莃苣릂胢ꊼ胢ꮁ胣鶁臣ꢂ菣뢂菣貁苣莃菣뎃苣鲃菣꾂苣銂藩膀臣讂臣ꢁ臣ꞁ臣讂鯧蒚鳥뢁臣膃苣莃菣銂꟧開臣鮁苣芀臣ꂁ臣膀苣뎃苣뎃臣膀菣ꦃ菣릂菣ꆂ苣Ꚃ菣貁藩膀苣놨껥馁苣뒠郥ꮁ臣뾁菣놂菣袃苣鶀볯鶀臣뮧该閁臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣鶀볯鶀苣趆臣ꪃ菣莃苣릂臣膀껦誂臣ꢅ臣꺁菣놂菣袃苣隻臣낖臣蒁苣莃菣뎃苣鲃菣꾂苣鶀볯鶀臣뮧该閁臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣麝郥龜髧ꮁ胢ꎼ胢銂菣ꦃ菣릂菣ꆂ臣膀胢ꊼ胢銂藩膀臣讂臣ꢁ苣ꚩ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰龜駩螈苣袼硅楰慲楴湯볯㲉甯㰾牢ਾ菣ꦃ菣ꮃ菣鞃菣ꒂ苣貁苣莃菣뎃苣鲃菣꾂苣鶀볯鶀臣ꦁ苣讁臣螃苣蚃苣趃菣랂菣뎃菣놂菣袃苣龜駩螈苣ꢁ臣讂臣ꢁ苣놨迥馁苣ꢁ臣꾁臣ꒁ苣膀苣뎃苣뎃臣ꆬ臣鎁臣銂ꇨꪁ臣芀臣꺁苣蚁臣膃苣莃菣꾁胣鶁臣肜闩颭뛧龜雩貁裥钁臣龁駦ꮁ胢龜駩螈苣袼硥楰敲覼胢ꢁ臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣鶀볯鶀苣ꪃ菣莃苣릂臣膀鳦邙裥貂臣ꪁ臣龁菣놂菣袃苣낖臣蒁苣莃菣뎃苣鲃菣꾂苣鶀볯鶀臣뮧该閁臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣낕룥꺁軥ꂛ臣鞁臣鶀楔正瑥䔠灸物摥胢銂꣨늌臣ꚁ胣鶀볯鶀苣ꢂ菣뢂菣ꮁ苣ꎁ臣뢁諦閁苣龁菣것苣릂臣趆臣醐臣辂臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣袃菣馃菣覃菣것苣릂臣財臣ꎁ臣讁臣袂臣ꮁ胣鶀볯鶀苣膀苣뎃苣뎃臣袂臣ꚁ臩麊臣貂臣鞃菣ꒂ苣ꮁ菣ꦃ菣릂菣ꆂ苣Ꚃ菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢蟥₦蚈볯䒈獩慣摲볯㲉甯㰾牢ਾ苣莃菣뎃苣鲃菣꾂苣鶀볯鶀臣颻臣ꂊ臣覂苣龁菣릂菣ꎂ菣벃苣ꞃ菣膃苣莃菣貁껦ꎁ臣蒁臣节胣袃菣馃菣覃菣것苣릂臣랂菣钃菣낂菣莃苣릂胢ꆼ胢銂蟥蚈臣讂駦꾁臣ꒁ臣节胣랂菣钃菣낂菣莃苣릂胢ꆼ胢꺁뗧蚺苣벑臣략臣馁苣蚁臣膀苣뎃苣뎃臣ꆬ臣鎁臣銂ꇨꪁ臣芀곧醼臣膀苣뎃苣뎃臣膀胢ꆼ胢銂菣鲃菣꾂苣鞁胣ꢅ臣꺁菣릂菣ꎂ菣벃苣ꞃ菣膃苣莃菣銂雦鞁臣랂菣钃菣낂菣莃苣릂胢ꊼ胢ꮁ꟧開臣鮁苣芀곧銼臣膀苣뎃苣뎃臣膀胢ꆼ胢銂ꃧ誣臣讂胣견볯ꮁ胣ꢂ菣뢂菣꾁胣袃菣馃菣覃菣것苣릂臣財臣ꎁ臣讁臣��袂臣ꮁ胣鶀볯鶀苣膀苣뎃苣뎃蟨ꮺ臣뢁諦鞁臣鞃菣ꒂ苣ꮁ胣麝郥龜髧ꮁ菣ꦃ菣릂菣ꆂ苣Ꚃ菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₘꮃ菣蚃苣뎃苣ꮁ臣醁苣ꢂ菣뢂菣꺁뷥늉⼼㹵戼㹲ꢂ菣뢂菣꾁胣랂菣钃菣낂菣莃苣릂臣견볯꺁菣莃菣銂臩麊臣讂臣ꢁ臣膀苣莃菣뎃苣鮃菣鞃臣견볯꺁菣莃菣讁苣肜뻥꺁菣莃菣뺁臣銂裥蒴臣讂臣ꢁ臣膀苣莃菣뎃苣鲃菣꾂苣꺁鳦鶈臣鮃菣鞃苣ꪃ菣뢂菣뎃蛥꺁菣莃菣꺁믤辄臣蚠뫥ꮁ臣蒁臣뚈駩馁苣鎁臣ꢁ臣袂臣ꚁ胣랂菣钃菣낂菣莃苣릂臣ꊻ胩閁苣讂菣벃菣銂裥邙臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰견볯꺁菣벃苣ꞃ菣ꞁ臣鮃菣鞃볯䚈物瑳删来潩慮⁬潈覼⼼㹵戼㹲芁苣ꪃ菣뢂菣뎃臣蒐苣뎃苣뎃臣膀臣꺁菣벃苣ꞃ菣ꮁ藥讂苣莃菣뎃苣鲃菣꾂苣貁苣뎃苣뎃菣것苣릂臣膀臣꺁菣벃苣ꞃ菣꺁裥꺁菣ꦃ菣ꮃ菣鞃菣ꒂ苣ꮁ菣ꦃ菣릂菣ꆂ苣뎃臣貂臣誂胣鶁臣ꪃ菣뢂菣뎃蛥ꮁ臣蒁臣ꊻ胩閁苣龁苣馁苣趉臣膀菣ꦃ菣릂菣ꆂ苣뎃臣貂苣鎁臣銂뿤벨臣讂苣蚁臣銺臣ꮁ跥鮊臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰견볯꺁菣莃菣袼敓潣摮䠠灯볯㲉甯㰾牢ਾ苣뎃苣뎃臣膀苣莃菣뎃苣鲃菣꾂苣꺁苣벃苣讁苣膀苣莃菣뎃苣鲃菣꾂苣꺁곧銼臣鮃菣鞃胣馁臣辂臣랂菣钃菣낂菣莃苣릂臣肜裥ꮁ菣ꦃ菣릂菣ꆂ苣뎃臣貂苣袃菣馃菣覃菣것苣릂苣ꆬ臣袂臣ꮁ臣ꚁ臩麊臣讂胣㲂牢ਾ곧銼臣鮃菣鞃臣膀臣貂臣袃菣馃菣覃菣것苣릂臣芁苣낁胣랂菣钃菣낂菣莃苣릂臣떂菣龃菣랂菣뎃菣것苣릂臣芁苣膀臣蚁臣ꪁ臣貂臣膀苣隃菣莃苣ꞃ菣鞃菣ꒂ苣꺁苣벃菣벃菣것苣릂臣芁苣芀臣辁臣讁臣릂菣醃菣鞃菣ꒂ苣貁菣ꦃ菣ꮃ菣鞃菣ꒂ苣ꞁ臣讂ꃥ袐臣膀믤꺁苣꺁苣ꢅ臣ꮐ臣ꪁ臣节臣貁臩麊臣貂苣芀戼㹲ꢳ볯鞁臣貁臣ꚁ胣鶀苣隃菣莃苣ꞃ菣袼畳浢獩楳湯볯鶀臣膀苣莃菣뎃苣鲃菣꾂苣貁菣ꦃ菣ꮃ菣鞃菣ꒂ苣ꮁ裥钁臣讂臣ꞁ胣랂菣钃菣낂菣莃苣릂苣膀臣꺁藥꺁迥뎁臣貂臣骶臣릂菣醃菣鞃菣ꒂ苣銂믤鞁臣许臣ꚁ臣辁苣蚁臣閁臣讂苣꺁臣鞁臣膀郧ꎧ臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰견볯꺁菣莃菣讁苣肜뻥꺁菣莃菣袼敓潣摮琭ⵯ慬瑳䠠灯볯㲉甯㰾牢ਾ苣뎃苣뎃臣ꆬ臣袂臣ꮁ臣ꚁ胣랂菣钃菣낂菣莃苣릂臣견볯꺁菣莃菣讁苣肜뻥꺁菣莃菣膀臣ꪁ苣ꆁ苣莃菣뎃苣鲃菣꾂苣貁鳦貾臣袃菣뎃苣閃苣ꊂ苣袃臣貂臣袃菣馃菣覃菣것苣릂苣膀苣莃菣뎃苣鲃菣꾂苣꺁藥ꚁ臣꺛髧난臣뺯臣ꚁ苣뎃苣袃菣ꒂ菣袃臣讂胣㲂牢ਾ곧銼臣鮃菣鞃臣覂��貾臣鮃菣鞃臣膀菣릂菣ꎂ菣벃苣ꞃ菣ꪇ뫨ꞁ臣讂臣膀臣꺁苣벃菣벃菣것苣릂臣醼臣ꞁ臣讂胣랂菣钃菣낂菣莃苣릂臣蒐鯧蒚鳥ꮁ臣蒁臣讀裥ꮁ臣꺁苣蚁臣ꪁ苣芀戼㹲ꢳ볯鞁臣貁臣ꚁ胣鶀菣ꪃ菣ꪃ苣袼敤楬敶祲볯鶀臣膀苣莃菣뎃苣鲃菣꾂苣貁臣꺁郥꺛髧난臣鞁臣螳ꃦ銂賦ꒁ苣꺁臣낈臩馁苣뺁臣膀苣莃菣뎃苣鲃菣꾂苣銂胣ꎀ뛧馁苣떂菣鞃菣ꒂ苣銂믤鞁臣誸臣ꚁ臣辁苣蚁臣閁臣讂苣꺁臣鞁臣膀郧ꎧ臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ곧銼臣鮃菣鞃臣覂鳦貾臣鮃菣鞃臣誁臣ꚁ胣蒁臣ꒁ臣꺁菣것苣릂臣랂菣钃菣낂菣莃苣릂臣꺛髧난臣鞁臣螳ꃦ銂賦ꒁꃥ袐胣ꊂ菣뎃菣ꎂ菣꾂苣ꆼ臣뮂苣랂菣뎃볯躼볯躼볯ꮁꓧ鞁臣蚠뫥ꞁ臣貂苣ꮁ郥讁臣袂臣ꮁ臣ꚁ胣ꢂ菣뢂菣꾁苣莃菣뎃苣鲃菣꾂苣銂臣貂苣꺁蛥꺁볯ꒁ臣超胩鞁苣蚁臣ꚩ臣讂胣㲂牢ਾ곧銼臣鮃菣鞃臣覂鳦貾臣鮃菣鞃臣誁臣ꚁ胣ꦁ臣鞃菣ꒂ苣节苣莃菣뎃苣鲃菣꾂苣꺁鯧蒚鳥ꢁ臣ꚁ돨베臣ꆄ臣뒠郥膀迥꾁臣꺁菣것苣릂苣랂菣钃菣낂菣莃苣릂臣超胩銂迥醁믤醁臣蒁ꃥ袐胣ꢂ菣뢂菣꾁苣莃菣뎃苣鲃菣꾂苣銂苣뎃苣뎃蟨ꮺ臣뢁苣ꂁ볯ꒁ臣鞃菣ꒂ苣ꮁ菣ꦃ菣릂菣ꆂ苣Ꚃ菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢藩膀룤꾏볯予湯搭汥癩牥覼⼼㹵戼㹲ꢂ菣뢂菣꾁胣랂菣钃菣낂菣莃苣릂臣肜뗧蒚臣超胩趸迥붃臣芁苣鎁臣銂苣릂菣ꂃ苣ꦃ菣ꢁ臣ꚁ蟥蚐臣讂胣ꢂ菣뢂菣꾁胣鎁臣랂苣蚃菣ꢂ菣벃苣ꢂ菣뢂菣꾁迧財臣꾼볯궼臣릖蟩ꮁ뻥ꎁ臣随苣놉臣芀戼㹲ꢳ볯ꢂ菣뢂菣꾁胣隻臣超胩馁苣鎁臣貁臣趁臣蒁苣莃菣뎃苣鲃菣꾂苣꺁臣膂臣膀鳦貾臣鞃菣ꒂ苣ꢁ臣ꚁ胢炝牵慧潴祲胢銂뻤ꚵ臣讂臣ꢁ臣ꞁ臣讂胣鎁臣鞃菣ꒂ苣꾁胣ꂍ鳦薀臣궃菣ꮂ菣醃菣龃菣袃苣鞑臣辁裥邙臣讂臣ꢁ臣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰銼볯醼볯馼†胢䞝鶀臣龮ꇨ㲌甯㰾牢ਾ苣ꦃ苣鶀条湥鶀臣몛鳦꺁胢枝鶀臣ꆃ苣莃菣꾁胣ꢂ菣뢂苣뎃菣誏臣ꢂ菣뢂苣뎃菣貁触覜臣讂苣隃苣Ꞃ苣袃苣薆껥ꦉ臣馁苣랂菣钃菣낂菣莃苣릂苣ꢔ臣ꚁ胣ꆬ臣袂臣ꮁ苣骃菣벃苣ꞃ菣銂苣뎃菣ꪃ菣뎃菣馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣隃菣莃苣ꞃ菣袼畓浢獩楳湯볯㲉甯㰾牢ਾ苣뎃苣뎃臣膀苣骃菣벃苣ꞃ菣ꮁ臣蒁臣꺁苣벃苣Ꞃ菣袃臣膦뇦銂ꋧ趪臣龁뻥膀苣벃苣Ꞃ菣袃苣ꮐ苣랂菣钃菣낂菣莃苣릂苣龔裦鞁苣隃菣莃苣ꞃ菣馁苣芀臣龁臣ꎁ臣膀苣莃菣뎃苣鲃菣꾂苣꺁鳦鶈臣鮃菣鞃胣馁臣辂臣鶁臣ꊻ胩莅볯澈楲楧覼臣膀苣벃苣Ꞃ菣袃臣ꪂ菣것菣랂菣��뎃苣膦뇦鞁臣芙臣ꢂ菣뢂苣뎃菣貁跥覜臣ꚁ臣龁菣것苣릂臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣ꪃ菣ꪃ苣袼敄楬敶祲볯㲉甯㰾牢ਾ苣뎃苣뎃臣膀苣骃菣벃苣ꞃ菣銂껥蚺臣讂臣ꢁ臣袂臣ꚁ胣랂菣钃菣낂菣莃苣릂苣超胩馁苣芀臣龁臣ꎁ臣膀苣莃菣뎃苣鮃菣鞃臣肜뻥꺁菣莃菣膀臣ꪁ苣ꆁ臣꺁跥肸臣꺛髧난臣膀苣벃苣Ꞃ菣袃臣鶁臣ꪂ菣것菣랂菣뎃苣貮뫤鞁臣芙臣ꢂ菣뢂苣뎃菣貁跥覜臣ꚁ臣讂菣것苣릂臣芁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣ꢂ苣뮂菣랂菣뎃苣風賩鮁臣膀臣ꒁ苣莃菣뎃苣鲃菣꾂苣꺁蛥릮觧꺁菣뎃苣ꪃ菣ꎂ苣ꮃ臣醃菣蒃臣뾁臣ꊂ菣뮂菣袃臣뒠郥ꮁ臣膀臣꺁苣骃菣벃苣ꞃ菣꾁裦龊臣膀臣꺁믤꺁ꃥ袐臣꾁ꓥ鞕臣讂胣ꪂ菣것菣랂菣뎃臣놤闦鞁臣ꢁ臣膀苣骃菣벃苣ꞃ菣꾁胣랂菣钃菣낂菣莃苣릂臣ꢂ苣뮂菣랂菣뎃苣風賩鞁臣蒁苣뒠郥꾁胣랂菣钃菣낂菣莃苣릂臣風賩鞁臣蒁苣ꢂ苣뮂菣랂菣뎃苣膀蟥鞁胣鶁臣隻臣뒠郥꾁胣ꢂ菣뢂菣ꪇ뫨貁臩鎂臣ꢂ苣뮂菣랂菣뎃苣膀蟥馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯邼†胢厝湥鶀臣龮ꇨ㲌甯㰾牢ਾ苣ꦃ苣鶀条湥鶀臣몛鳦꺁苣骃菣벃苣ꞃ菣鶀敳摮胢꺁菣붂菣覃臣膀苣骃菣벃苣ꞃ菣鶀潧胢꺁苣뎃菣ꪃ菣뎃菣ꢁ郥颧臣膀苣骃菣벃苣ꞃ菣鶀敳摮胢銂苣뎃菣ꪃ菣뎃菣馁苣芀臣ꂁ臣膀믤许臣銼臣꺁苧貁闧ꪁ苣芀곧醼臣膀苣莃菣뎃苣鲃菣꾂苣꾁胣ꊻ胩馁苣릁臣꾂菣벃菣ꢁ郥颁闦꺁菣릂菣ꎂ菣벃苣ꞃ菣銂賦ꒁ胣견볯ꮁ胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣膀苣骃菣벃苣ꞃ菣銂ꛨ花臣ꚁ臣讂苣벃苣Ꞃ菣袃臣ꎻ郧ꢁ臣讂苣궃菣뎃臣芁苣芀苣궃菣뎃臣ꊂ苣ꒂ菣覃菣것菣벃菣꺁苣袃菣鎃菣벃菣鶀摩湥楴祴胢꾁胣떂菣龃菣랂菣뎃臣芙臣꾁菣ꮃ볯邼볯ꞁ臣讂臣膀郥꾂菣벃菣貁藩膀臣貂苣ꮁ臣貂臣讀裥ꮁ苣莃菣閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼†菣것苣꾂菣鞃菣꾂菣릂臣隤ꛨ㲳甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼†菣것苣릂雩꺁믨膀苣ꮃ菣鞃볯傈慬散琭ⵯ汐捡⁥牔湡晳牥䜠潲灵볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔵⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₑꪂ菣鞃菣覃볯侈数敮覼⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣骃菣벃苣ꞃ菣袼灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㘵⼼㹡⼼䥄㹖鶀苣벃菣뎃菣ꪂ菣뢂苣꾂菣袼灯湥摥漠橢捥覼胢꾁胣鶁臣醃菣蒃臣趓뷤꾏菨ꪁ苣隃苣Ꞃ苣袃臣芁苣芀苣벃菣뎃菣ꪂ菣뢂苣꾂菣꺁鯥覜臣ꪂ菣것菣랂菣뎃臣膀賦骮臣��臣몟뫦銂藥龁臣醃菣蒃臣誃菣邃볯ꪂ菣것菣랂菣뎃胢枝瑥畎扭牥胢覼胣꾂菣릂볯ꪂ菣것菣랂菣뎃胢枝瑥汃獡敳鶀볯膀迥뎁菣ꒂ苣Ꞃ苣袃볯ꪂ菣것菣랂菣뎃胢枝瑥楄敧瑳鶀볯銂飦覂臣ꮁ臣膀雦鞁臣醃菣蒃苣ꮐ苣袼苣骃菣벃苣ꞃ菣鶀湩汣摵健牡獴胢覼胣뺏귥馁苣醃菣蒃苣銎駩鞁볯ꪂ菣것菣랂菣뎃胢斝捸畬敤慐瑲鶀볯膀觧骮臣몟뫦銂藥龁臣ꢅ臣꺁迧颭臣醃菣蒃苣銎駩鞁볯ꪂ菣것菣랂菣뎃胢掝敬牡慐瑲鶀볯膀觧骮臣醃菣蒃臣鲤鿦꺁뫦馂苣馁苣袼苣骃菣벃苣ꞃ菣鶀硥浡湩健牡獴胢覼胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼볯銼†苣벃菣뎃菣랂菣钃菣낂菣莃苣릂볯侈数敮⁤桓灩楰杮䈠硯볯㲉甯㰾牢ਾ胢ꪂ菣鞃菣覃苣莃菣뎃苣鲃菣꾂苣袼灯湥摥猠楨灰湩⁧潢覼胢꾁胣鶁臣醃菣蒃臣趓뷤꾏菨ꪁ苣莃菣뎃苣鲃菣꾂苣ꞁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼볯鎼†菣벃菣鲃菣꾂苣袼慐瑲⁳潂覼⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣骃菣벃苣ꞃ菣袼灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜵⼼㹡⼼䥄㹖鶀慰瑲⁳潢鶀臣膀臣꺁菣벃菣貁觧骮迥붃迥뎁鏦鲽迥붃臣ꪂ菣뢂苣꾂菣ꞁ臣讂胣㲂牢ਾ菣벃菣鲃菣꾂苣꺁鯥覜臣ꪂ菣것菣랂菣뎃臣膀雦鞁臣醃菣蒃苣ꮐ苣袼苣骃菣벃苣ꞃ菣鶀湩汣摵健牡獴胢覼胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鎼볯醼볯钼†苣莃菣뎃苣鲃菣꾂苣袼桓灩楰杮䈠硯볯㲉甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣ꪃ菣ꖃ菣袃볯䆈瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔱㰸愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꪂ菣것菣랂菣뎃볯侈数慲楴湯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔱㰹愯㰾䐯噉ਾ胢玝楨灰湩⁧潢鶀臣膀菣것苣릂雩銂菣ꦃ菣릂菣ꆂ臣讂臣ꢁ臣ꞁ臣讂苣隃苣Ꞃ苣袃臣芁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣몛鳦꺁苣袃菣鎃菣벃菣꾁胣랂菣钃菣낂菣莃苣릂臣떂菣龃菣랂菣뎃臣貂臣뾂苣ꂃ볯ꊂ菣ꪃ菣ꖃ菣袃胢璝浩鶀볯ꢁ胣랂菣钃菣낂菣莃苣릂臣붂菣릂臣꺁菣놂菣袃볯ꊂ菣ꪃ菣ꖃ菣袃胢玝畯捲鶀볯ꢁ胣랂菣钃菣낂菣莃苣릂臣꺛髧난臣꺁菣놂菣袃볯ꊂ菣ꪃ菣ꖃ菣袃胢撝獥楴慮楴湯鶀볯ꢁ胣랂菣钃菣낂菣莃苣릂臣ꊻ胩꺁雩ꮁ臩螁臣龁苣꾂苣鞃苣ꞃ菣袼苣袃菣鎃菣벃菣鶀硥散瑰潩鶀볯ꢁ臣芁苣芀戼㹲랂菣钃菣낂菣莃苣릂臣몛鳦꺁苣骃菣벃苣ꞃ菣꾁胣랂菣钃菣낂菣莃苣릂臣薆껥ꦉ臣릉껥閁苣龁苣袃菣鎃菣벃菣銂迥鞾볯ꪂ菣것菣랂菣뎃胢炝敥鶀볯袏臣궨껥袼苣骃菣벃苣ꞃ菣鶀潰敫胢覼臣膀苣꾂苣鞃苣ꞃ菣꺁ꃥ袐臣랂菣钃菣낂菣莃苣릂苣ꪃ菣ꒂ菣��꾂菣鞁볯ꪂ菣것菣랂菣뎃胢犝摥物捥鶀볯膀臣辁臣讁臣趃苣릂菣鮃菣鞃苣놨껥馁苣袂臣ꮁ苣莃菣뎃苣鲃菣꾂苣銂菣鲃菣꾂苣馁苣袼苣骃菣벃苣ꞃ菣鶀敲潢鶀볯芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯躼볯ₕ袃菣馃菣覃볯咈慲敶敬覼⼼㹵戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣骃菣벃苣ꞃ菣袼灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ〶⼼㹡⼼䥄㹖鶀菣ꦃ菣ꮃ菣ꪂ菣뢂苣꾂菣袼牴癡汥摥漠扪捥覼胢꾁胣랂菣钃菣낂菣莃苣릂苣ꊻ胩閁臣讂臣ꢁ臣ꞁ臣讂菣것苣릂臣芁苣芀戼㹲袃菣馃菣覃菣것苣릂臣몛鳦꺁苣骃菣벃苣ꞃ菣꾁胣랂菣钃菣낂菣莃苣릂苣袃菣뎃苣閃苣ꊂ苣袃臣袼苣骃菣벃苣ꞃ菣鶀牴湡晳牥畏鶀볯랂菣钃菣낂菣莃苣릂臣袃菣뎃苣閃苣ꒂ菣ꮁ뷤ꢔ臣讂볯ꪂ菣것菣랂菣뎃胢璝慲獮敦牲摥湉胢覼胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼†菣것苣꾂菣鞃菣꾂菣릂臣뎩듧㲰甯㰾牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯醼†苣벃菣뎃菣袼灏湥摥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱㄶ⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘱㰲愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣骃菣벃苣ꞃ菣袼畐汢捩䤠獮慴据⁥灏牥瑡潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘱㰳愯㰾䐯噉ਾ菣벃菣ꊂ菣袼苣벃苣ꖃ菣뎃菣鶀獩牃瑩捩污胢覼臣骮뻧馁苣몟뫦銂藥龁臣것苣鶃菣肃臣뺏鳥꺁藥ꚁ臣醃菣蒃苣膀菣릂菣뎃菣讁苣꒙軥鞁臣莻ꏦ馁苣芀룤風苣骃菣벃苣ꞃ菣鶀敧䍴慬獳獥胢芏藧馁苣鎁臣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘱㰴愯㰾䐯噉ਾ苣ꦃ苣袼苣벃苣ꖃ菣뎃菣鶀景汃獡鶀볯誏臣肃苣뢂苣릂菣袼苣벃苣ꖃ菣뎃菣鶀楤敧瑳鶀볯貁賦骮臣貂臣뺏귥鞁臣蒁苣醃菣蒃苣膀菣릂菣뎃菣ꮁ껦鞁胣ꪃ苣벃菣馁苣芀臣꺁苣骃菣벃苣ꞃ菣꾁胣醃菣蒃苣ꮐ苣醃菣蒃菣莃苣릂臣颭鳥鞁臣蒁苣ꪁ苣낁胣鎁臣醃菣蒃菣莃苣릂苣ꪃ苣벃菣鞁胣颭鳥鞁臣蒁臣蒁臣覂臣膀菣ꮃ볯邼볯銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔶⼼㹡⼼䥄㹖鶁臣꾂菣릂볯ꊂ菣꺂菣ꆃ菣袃胢澝䍦慬獳胢覼迥뎁菣ꒂ苣Ꞃ苣袃볯ꊂ菣꺂菣ꆃ菣袃胢撝杩獥獴胢覼臣螌껥閁苣ꚁ臣讂迧颭臣ꚁ臣讂菣벃菣銂胣것苣鶃菣肃臣覂駩뮎臣膀菣뾂菣뎃臣讂胣鎁臣ꪂ菣것菣랂菣뎃臣膀菣벃菣銂郥肂菣벃菣鲃菣꾂苣貁귥ꢜ臣ꚁ臣讂臣覂臣膀臣꺁菣벃菣鲃菣꾂苣銂菣뾂菣뎃臣膀귥ꢜ臣ꚁ臣ꪁ臣貂臣膀菣ꮃ볯邼볯銂菣뾂菣뎃臣讂胣㲂牢��䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㘶⼼㹡⼼䥄㹖隃菣ꪃ苣뎃볯ꊂ菣꺂菣ꆃ菣袃胢榝偳敲敳瑮胢誏臣鶀獩牃瑩捩污胢覼臣骮뻧馁苣ꖻ룤꺁鿥隺苣薅臣馁菣릂菣뎃菣꺁菣벃菣꺁苣ꦃ苣銂菣뾂菣뎃臣讂胣㲂牢ਾ곧醼臣몟뫦꾁胣견볯꺁菣벃菣ꊂ菣ꮁ苣ꎁ臣骮뻧閁苣膀菣벃菣ꊂ菣貁鳧ꞁ臣貂臣醃菣蒃臣颭鳥鞁臣誁苣膀菣벃菣ꊂ菣貁臥ꞁ臣貂臣醃菣蒃臣颭鳥鞁臣誁苣骁胣ꊂ菣꺂菣ꆃ菣袃臣讃菣袼볯覼臣芁苣낁臣꺁臣ꆁ苣讁臣芁苣ꢁ臣蚁臣ꢁ臣芁苣芀곧銼臣몟뫦꾁胣견볯꺁菣벃菣ꊂ菣ꮁ苣ꎁ臣骮뻧閁苣膀菣벃菣ꊂ菣貁鳧ꞁ臣貂臣醃菣蒃臣꾂菣蚃苣ꮂ菣ꞁ臣誂胣隃菣ꪃ苣뎃臣북臣芁苣낁菣벃菣꾁菣뎃苣ꪃ菣ꎂ苣ꮃ臣芁苣膀苣벃苣ꖃ菣뎃菣貁菣ꮃ볯邼볯ꞁ臣貂臣鶁臣ꦁ臣覂臣ꞁ臣讂胣ꢁ臣蚁臣ꢁ臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘱㰷愯㰾䐯噉ਾ賦骮臣貂臣꾂菣릂볯ꊂ菣꺂菣ꆃ菣袃胢澝䍦慬獳胢覼臣芁苣膀菣벃菣ꊂ菣袼苣벃苣ꖃ菣뎃菣鶀獩牐獥湥鶀迥뎁胢榝䍳楲楴慣鶀볯貁껥ꦾ臣讂鿥隺볯趉꣨ꪂ菣것菣랂菣뎃胢枝瑥汃獡敳鶀迥ꞅ볯銂藥龁臣것苣鶃菣肃臣醃菣蒃臣肃苣뢂苣릂菣銂菣뾂菣뎃臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠶⼼㹡⼼䥄㹖隃菣ꪃ苣뎃볯ꊂ菣꺂菣ꆃ菣袃胢榝偳敲敳瑮胢誏臣鶀獩牃瑩捩污胢覼臣骮뻧馁苣몟뫦袼觥風苣骃菣벃苣ꞃ菣鶀敧䍴慬獳獥胢芏藧覼苣薅臣馁菣릂菣뎃菣꺁菣벃菣꺁闧랏苣ꪃ苣벃菣馁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘱㰹愯㰾䐯噉ਾ苣ꦃ苣誏臣肃苣뢂苣릂菣ꮁ臣蒁臣膀臣꺁菣릂菣뎃菣꺁菣벃菣ꮁ臩袐臣讂菣벃菣鲃菣꾂苣꺁菣벃菣袼苣벃苣ꖃ菣뎃菣鶀慰瑲鶀볯銂菣릂菣뎃菣ꮁ郥膂苣芀臣꺁苣骃菣벃苣ꞃ菣꾁胣肜裥ꮁ胣ꊗ臣颭鳥鞁臣蒁苣鎁臣ꦁ郥馁苣醃菣蒃苣膀菣릂菣뎃菣讁苣銎駩鞁臣膀ꃧ蒣臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯銼†苣벃菣뎃菣랂菣钃菣낂菣莃苣릂볯侈数敮⁤桓灩楰杮䈠硯볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ〷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰱愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯鎼†菣벃菣鲃菣꾂苣袼慐瑲⁳潂覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰲愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㌷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰴愯㰾䐯噉��苣뎃苣벃菣Ꞃ菣뢂菣ꪂ菣뢂苣꾂菣꺁볯ꒁ臣뮂菣袃苣膀藥ꚁ鳦鶈臣覂귥ꢜ臣ꚁ臣讂胣것苣鶃菣肃臣꾂菣蚃苣ꮂ菣ꪁ볯ꊂ菣꺂菣ꆃ菣袃胢掝楲楴慣偬牡獴胢覼菣벃菣誏臣躃菣꾂菣蚃苣ꮂ菣ꪁ볯ꊂ菣꺂菣ꆃ菣袃胢溝湯挭楲楴慣鶀볯醃菣蒃臣馁苣芀臣讁臣膀苣莃菣꺁믤辂苣ꮁ菣ꮃ볯邼볯貁귥ꢜ臣ꚁ臣讂ꃥ袐臣膀苣莃菣꾁苣ꪃ苣閁苣龁苣꺁臣ꢎ껥閁苣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰醃菣ꪃ菣꾂苣뎃苣뾂菣릂苣骃菣벃苣ꞃ菣袼畐汢捩䤠獮慴据⁥灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔷⼼㹡⼼䥄㹖醃菣蒃菣莃苣릂臣醃菣蒃볯ꊂ菣꺂菣ꆃ菣袃胢炝牡獴胢覼苣것苣鶃菣肃臣ꮐ苣讂胣蒐菣벃菣꾁胣것苣鶃菣肃臣颭鳥鞁臣蒁苣ꢁꛨꪁ臣貂苣芀郥醃菣蒃臣膀菣릂菣뎃菣薆臣誁臣ꚁ苣ꪃ菣ꎂ苣ꮃ臣芁苣ꢁ胣鶁苣貁菣벃菣鲃菣꾂苣ꮁ臣蒁臣鶁臣袂臣ꮁꛨꪁ臣貂臣蒁苣뒠郥ꮁ臣뾁볯榈晦볯膀ꛨꪁ臣貂苣芀苣骃菣벃苣ꞃ菣꾁胣肜裥ꮁ胣ꊗ臣颭鳥鞁臣誁苣ꦁ郥馁苣醃菣蒃苣것苣鶃菣肃臣覂軦꒙臣莻ꏦ馁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢볯躼볯ₔ랂菣钃菣낂菣莃苣릂볯厈楨灰湩⁧潂覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰶愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰꾂菣릂볯䎈慬獳볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜷⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢꟦₋邈볯䎈湯瑳畲瑣潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰸愯㰾䐯噉ਾ苣꾂苣鞃苣ꞃ菣袼䘢慥畴敲湕癡楡慬汢≥볯銂胩몇臣讂胣㲂牢ਾ돦骼苣莃菣뎃苣鲃菣꾂苣꾁胣ꪂ菣것菣랂菣뎃胢溝睥胢銂뷤ꢔ臣讂臣ꢁ臣辁胣ꪂ菣것菣랂菣뎃胢枝鶀迥꾁胢玝湥鶀臣袂臣ꚁ铧邈臣貂苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣隃菣莃苣ꒂ菣릂苣뎃苣ꊂ菣ꪃ菣ꖃ菣袃볯傈扵楬⁣湉瑳湡散䄠瑴楲畢整覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜱㰹愯㰾䐯噉ਾ菣릂菣뎃菣꺁菣릂菣ꎂ菣벃苣ꞃ菣ꢁ胣ꪂ菣것菣랂菣뎃胢犝扥硯胢銂铧蒁臣隻臣랂菣钃菣낂菣莃苣릂臣뮧该鞁臣膃苣莃菣ꮁ믤辂苣邼믤誸臣讃菣袼볯覼臣銂껥ꦾ臣讂菣놂菣袃臣芁苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰰愯㰾䐯噉ਾ껥鮚臣袃菣莃菣꺁苣꾂苣鞃苣ꞃ菣貁铧颁臣뒠郥꾁胣것苣鶃菣肃苣ꊻ胩馁苣鎖臣龔臣龁菣ꪃ菣鞃臣ꢂ苣뮂菣랂菣뎃臣芁苣膀铧颁臣讁臣龁ꃥ袐臣膀菣ꮃ볯邼볯ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱㄸ⼼㹡⼼䥄㹖것苣鶃菣肃臣붂菣릂苣骮뻧馁苣膃苣莃菣ꞁ臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳��琮晩ꃂ〰ㄱ㈸⼼㹡⼼䥄㹖것苣鶃菣肃臣떂菣龃菣랂菣뎃臣貂臣뾂苣ꂃ臣芁苣芀戼㹲㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢菣隃菣莃苣ꒂ菣릂苣뎃苣ꪂ菣것菣랂菣뎃볯傈扵楬⁣湉瑳湡散传数慲楴湯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰳愯㰾䐯噉ਾ귨ꖈ귥袼苣벃苣ꖃ菣뎃菣鶀摩湥楴楦牥胢覼臣몤臣것苣鶃菣肃臣薆껥ꦉ臣ꊂ菣ꪃ菣ꖃ菣袃苣ꪃ苣벃菣馁苣芀戼㹲膦뇦뒁볯ꪃ苣ꢂ苣뾂볯犚煥敵瑳牥볯ꮁ臣ꎁ臣ꊂ苣뮂菣꾏菨ꪁ菣릂菣뎃菣꺁蛥릮觧꺁苣袃菣鎃菣벃菣銂귨ꖈ귥貁ꓧ鞁臣蒁臣蒁ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣袼胢䚝慥畴敲湕癡楡慬汢鶀볯貁胩몇臣貂胣ꊂ菣ꪃ菣ꖃ菣袃臣뎂菣벃臣ꦈ铧ꞁ臣ꪁ臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀潃祰湕癡楡慬汢鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰴愯㰾䐯噉ਾ苣隃苣Ꞃ苣袃볯ꊂ菣꺂菣ꆃ菣袃胢憝瑴楲畢整胢覼苣膀귨ꖈ귥袼苣벃苣ꖃ菣뎃菣鶀摩湥楴楦牥胢覼臣몤臣것苣鶃菣肃臣薆껥ꦉ臣ꊂ菣ꪃ菣ꖃ菣袃臣馁苣芀臣꺁苣骃菣벃苣ꞃ菣꾁胣鶁臣ꊂ菣ꪃ菣ꖃ菣袃臣颭鳥馁苣ꪁ苣낁胣肜裥ꮁ臣貂苣莻ꏦ馁苣芀戼㹲ꪂ菣뢂苣꾂菣貁苣袃菣鎃菣벃菣꺁苣뎃苣袃菣ꒂ菣袃臣閁迥鞁臣蒁苣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀牁畧敭瑮湉慶楬鶀볯貁胩몇臣貂胣ꊂ菣ꪃ菣ꖃ菣袃臣ꪃ菣覃苣뎃菣ꞁ臣讂ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣袼胢䆝瑴楲畢整敒摡湏祬胢覼臣膀蟥閁苣膀귨ꖈ귥貁菣꾂苣릂苣ꮁ臣ꎁ臣ꊂ苣뮂苣꾏菨ꪁ菣릂菣뎃菣꺁蛥릮觧꺁苣袃菣鎃菣벃菣銂ꓧ鞁臣蒁臣蒁ꃥ袐臣膀苣꾂苣鞃苣ꞃ菣袼胢䚝慥畴敲湕癡楡慬汢鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰵愯㰾䐯噉ਾ蛥릮觧貁菣릂菣뎃菣꺁苣꺁臣貐룤ꞁ臣讂雦鞁臣랂菣钃菣낂菣莃苣릂苣龔裦鞁臣ꪃ苣벃菣鞁胣것苣鶃菣肃臣ꊂ菣ꪃ菣ꖃ菣袃胢撝獥楴慮楴湯鶀臣誁臣ꚁ賦骮臣貂臣趽뷧袼菣뢂苣ꞃ菣骼潰楳楴湯볯ꮁ臣讂菣놂菣袃볯鶀楴正瑥鶀볯銂胣鎁臣낖臣蒁苣莃菣뎃苣鲃菣꾂苣ꮁ꟧開臣膀臣貂苣讃菣袼볯覼臣꺽臣鮏臣讂胣㲂牢ਾ賦骮臣貂臣鶃苣랂菣뎃臣趸臩螈臣뒠郥꾁胣ꢂ苣뮂菣랂菣뎃볯鶀潐楳楴湯湉慶楬鶀볯貁胩몇臣貂苣芀戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰶愯㰾䐯噉ਾ菣릂菣뎃菣꺁苣袃菣鎃菣벃菣鶀敤瑳湩瑡潩獮胢讁苣讃菣袼볯覼臣薠鯧袼苣ꒂ菣ꂃ볯榚整覼苣꒙軥鞁胣议臣ꚁ臣讂苣ꒂ菣ꂃ臣芁苣뒠郥ꮁ臣뾁볯覽뷯蚽볯膀臣꺁껦ꎁ臣蒁苣蒐苣ꒂ菣ꂃ苣膃苣莃菣袼苣벃苣ꖃ菣뎃菣鶀敮䑷獥楴慮楴湯胢覼臣꺽臣鮏臣讂胣鶁臣ꚁ胣ꢂ苣뮂菣랂菣뎃볯ꊂ菣꺂菣��菣袃胢斝捸灥楴湯胢覼苣것苣鶃菣肃臣ꊂ菣ꪃ菣ꖃ菣袃胢斝捸灥楴湯胢ꮁ臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰ꊂ菣鞃菣벃苣ꞃ菣袼摁灡慴楴湯覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠱㰷愯㰾䐯噉ਾ뷤ꢔ臣趁臣蒁苣钃菣銂胩몇臣讂胣㲂牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠸⼼㹡⼼䥄㹖ꊃ菣ꮃ볯䶈摯汥볯ꮁ苣ꎁ臣骮뻧閁苣龁苣蚁臣것苣鶃菣肃苣ꪃ菣莃苣릂臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰钼볯閼†菣ꦃ菣ꮃ菣袼牔癡汥摥볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㤸⼼㹡⼼䥄㹖㰊⁵浸湬㩳灪∽瑨灴⼺眯睷樮潰朮⹯灪㸢苣ꦃ苣袼汃獡覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤱㰰愯㰾䐯噉ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰鞃菣ꒂ菣벃菣ꒂ菣릂苣뎃苣ꪂ菣것菣랂菣뎃볯傈楲慶整䤠獮慴据⁥灏牥瑡潩獮볯㲉甯㰾牢ਾ䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱㄹ⼼㹡⼼䥄㹖膃苣莃菣袼苣벃苣ꖃ菣뎃菣鶀畳杧獥整乤硥䡴灯胢貁菣ꮃ볯邼볯ꞁ臣ꪁ臣뒠郥ꮁ臣膀臣꺁菣놂菣袃臣袂臣ꚁ껥ꦾ臣貂苣鞃菣뮂苣ꮁ胣랂菣钃菣낂菣莃苣릂볯ꊂ菣꺂菣ꆃ菣袃胢玝楨灰湩䉧硯胢覼苣袃菣뎃苣閃苣ꊂ苣袃臣膀臣꺁菣놂菣袃臣讃菣袼볯覼臣뒠郥ꮁ臣膀苣뎃苣뎃臣袂臣ꚁ臩麊臣貂苣鞃菣ꒂ苣ꮁ胣랂菣钃菣낂菣莃苣릂볯ꊂ菣꺂菣ꆃ菣袃胢玝楨灰湩䉧硯胢覼苣袃菣뎃苣閃苣ꊂ苣袃臣讂胣龁臣袁菣놂菣袃臣颭鳥鞁臣蒁臣节胣膃苣莃菣꾁胣ꆬ臣鮃菣鞃臣膃苣莃菣ꮁ苣ꎁ臣骮뻧閁苣讂菣것苣릂臣芁苣鎁臣銂胣膦뇦馁苣꺁臣꾁臣辁胣몤铥馁苣芀菣벃菣ꊂ菣袼苣벃苣ꖃ菣뎃菣鶀慣䑮汥癩牥胢覼臣膀苣뎃苣뎃臣랂菣钃菣낂菣莃苣릂苣ꪇ铧ꮁ藩膀臣讂臣ꢁ臣ꞁ臣讂臣覂臣膀苣뎃苣뎃臣랂菣钃菣낂菣莃苣릂苣ꪇ铧ꮁ藩膀臣讂臣Ꚑ臣銂賦몤臣讂胣㲂牢ਾ甼砠汭獮樺㵰栢瑴㩰⼯睷⹷灪⹯潧樮≰랂苣蚃菣ꒂ菣릂苣뎃苣ꪂ菣것菣랂菣뎃뷯袼祓瑳浥䤠獮慴据⁥灏牥瑡潩覼⼼㹵戼㹲㰊䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤱㰲愯㰾䐯噉ਾ苣莃菣뎃苣鲃菣꾂苣袼苣벃苣ꖃ菣뎃菣鶀桓灩楰杮潂鶀볯貁菣놂菣袃볯ꊂ菣꺂菣ꆃ菣袃胢炝敲楶畯䡳灯胢覼臣袂臣ꚁ껥ꦾ臣貂臣鞃菣ꒂ苣讁苣袃菣뎃苣閃苣ꒂ菣閁苣讂臣趁臣膀ꛨ花臣貂苣芀⼼䥄㹖㰊䥄㹖䐼噉邀鯥醼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㌹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㐹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㔹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰��㔳㈷琮晩ꃂ〰ㄱ㘹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㜹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㠹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰ㄱ㤹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱〰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㄰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㘰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㠰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯꒼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꖼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱〱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄱ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯꒼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꖼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꚼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㘱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㠱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯꒼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱〲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯ꖼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽��㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄲ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯邼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈲㰳愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈲㰶愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌲㰰愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯꒼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄳ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌲㰲愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꚼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌳⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌲㰴愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔳⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌲㰶愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜳⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㌲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꖼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤳⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯隼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱〴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄴ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯颼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐲㰲愯㰾䐯噉ਾ††††䐼噉邀鯥醼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯邼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠��㐲㰵愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㘴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㐲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤴⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰰愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄵ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰲愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌵⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰴愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔵⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰶愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰷愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㠵⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯隼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㔲㰹愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱〶⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘲㰱愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈶⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯颼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌶⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘲㰴愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔶⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘲㰶愯㰾䐯噉ਾ††††䐼噉邀鯥銼볯꒼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜶⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㘲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤶⼼㹡⼼䥄㹖 †††㰠䥄��胣뎛볯邼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰰愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄷ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰲愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰳愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰴愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔷⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰶愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰷愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㜲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤷⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰰愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰱愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈸⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰳愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐸⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰵愯㰾䐯噉ਾ††††䐼噉邀鯥鎼볯ꖼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㘸⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰷愯㰾䐯噉ਾ††††䐼噉邀鯥钼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㠲㰸愯㰾䐯噉ਾ††††䐼噉邀鯥钼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤸⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㤲㰰愯㰾䐯噉ਾ††††䐼噉邀鯥钼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱ㄹ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㈹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鎼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㌹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼胣㲑䐯噉ਾ††††††䐼噉㰾��牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㐹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㔹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯隼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㘹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㜹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯颼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㠹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㈱㤹⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯邼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱〰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㄰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〳㰲愯㰾䐯噉ਾ††††䐼噉邀鯥閼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㌰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鎼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㐰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㔰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〳㰶愯㰾䐯噉ਾ††††䐼噉邀鯥閼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㜰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰〳㰸愯㰾䐯噉ਾ††††䐼噉邀鯥閼볯ꆼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㤰⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯隼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄳ㰰愯㰾䐯噉ਾ††††䐼噉邀鯥閼볯ꎼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱ㄱ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㈱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯颼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄳ㰳愯㰾䐯噉ਾ††††䐼噉邀鯥閼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㐱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㔱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯邼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㘱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㜱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯銼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰ㄳ㰸愯㰾䐯噉ਾ��†††䐼噉邀鯥隼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㤱⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鎼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱〲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯钼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱ㄲ⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯閼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㈲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯隼볯醀⼼䥄㹖 †††††㰠䥄㹖愼栠敲㵦〢〰㜳㌲㜵⸲楴≦〾〰㜳㌲㜵⸲楴쉦゠㄰㈳㰳愯㰾䐯噉ਾ††††䐼噉邀鯥隼볯ꊼ胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㐲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯鞼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㔲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯颼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㘲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯馼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㜲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯邼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㠲⼼㹡⼼䥄㹖 †††㰠䥄㹖胣뎛볯醼胣㲑䐯噉ਾ††††††䐼噉㰾⁡牨晥∽〰㌰㈷㔳㈷琮晩㸢〰㌰㈷㔳㈷琮晩ꃂ〰㌱㤲⼼㹡⼼䥄㹖 †††㰠䐯噉ਾ⼼潢祤ਾ⼼瑨汭ਾ