(57)【要約】【課題】  クライアントがサーバの処理の終了を必要以上に待つ時間を短縮しつつ、サーバの負荷が高いときには、サーバへのリクエスト送信の待機時間を大きくしてリクエスト回数を減らすことでサーバの負荷を軽減すること。また、サーバの負荷が低いときには、サーバへのリクエスト送信の待機時間を小さくしてリクエスト回数を増やすことでサーバ資源を有効に使用し、予想外な処理の早期終了に対応すること。【解決手段】  サーバが、処理進捗度取得手段によって取得されるクライアントから要求された処理の進捗度および負荷取得手段によって取得されるサーバの負荷に基づいて、待機時間を算出する待機時間算出手段を持つ。【選択図】  図７
2009098864.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサービスを提供する情報処理装置において、サーバでの処理完了を待つ間に、クライアント側で前記サーバからの応答がないことによるタイムアウトが発生しないように、クライアントに自動的に前記サーバへの処理の完了を確認させるまでの待機時間を決定する手段を備え、
前記サーバは、クライアントから要求された処理を行う処理手段と、
前記処理手段によって行われている処理の進捗度を取得する処理進捗度取得手段と、
前記サーバの負荷を取得する負荷取得手段と、
前記処理進捗度取得手段によって取得されるクライアントから要求された処理の進捗度および前記負荷取得手段によって取得されるサーバの負荷に基づいて、前記待機時間を算出する待機時間算出手段と、
を持つことを特徴とする情報処理装置。
【請求項２】
前記サーバは、前記クライアントから要求された処理を開始してからの処理経過時間を取得する処理経過時間取得手段をさらに備え、
前記待機時間算出手段は、前記処理進捗度取得手段によって取得される処理の進捗度と、前記負荷取得手段によって取得される負荷と、
前記処理経過時間取得手段によって取得される処理経過時間と、に基づいて前記待機時間を算出することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記待機時間算出手段は、算出した待機時間が、予め定められた最大待機時間より大きい場合には、前記最大待機時間を待機時間とすることを特徴とする、請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記サーバは、クライアントを識別するクライアント識別手段と、
クライアント毎の最大待機時間を保持する最大待機時間保持手段と、
をさらに備え、
前記処理を要求してきたクライアントに応じて最大待機時間を定めることを特徴とする、請求項１〜請求項３のいずれかに記載の情報処理装置。
【請求項５】
前記負荷取得手段は、サーバのＣＰＵ使用率、メモリ使用率、プロセス数、ネットワークのデータ転送量、ディスクＩ／Ｏの統計情報、クライアントのセッション数、処理中の処理の内容、処理中の処理数、の少なくとも一つに基づいて負荷を取得することを特徴とする、請求項１〜請求項４のいずれかに記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置での処理の終了を待つ間、クライアントがサーバへ自動的にリクエストを送信するまでの待機時間を決定する情報処理装置に関するものである。
【背景技術】
【０００２】
インターネット技術の発達により、ユーザが汎用的なウェブ・ブラウザを用いて、インターネットを通じて利用可能なアプリケーションが開発されている。このようなアプリケーションにおける処理の中には、処理が終了するまでに多くの時間を要するものがある。このような処理の場合、ウェブ・ブラウザでは、処理が完了するまでの間、サーバからの応答を待ち続ける状態となり、ウェブ・ブラウザの仕様・設定によってはタイムアウトとなってしまう。このため、処理がまだ続いているにも関わらず、サーバからの応答を待つのをやめてしまうという問題があった。
【０００３】
このような問題を回避するため、サーバ側で処理を受け付けた後、一旦、ウェブ・ブラウザにレスポンスを返し、そのレスポンスの中に、所定時間経過後にサーバに処理が完了したかどうかをサーバに自動的に問合せるような処理の記述をする方法が採られている。
【０００４】
このような方法を採った場合、サーバに自動的に問合せるまでの待機時間が短いと、サーバでの処理終了を検知するまでの時間を小さくできるが、問合せの回数が増えるため、ネットワークやサーバに負荷が掛かるという問題がある。一方、待機時間を長くした場合、ネットワークやサーバへの負荷は軽減できるが、サーバでの処理が終了してからそれを検知するまでの時間が長くなってしまうという問題がある。
【０００５】
このような問題に対して、特許文献１の方式では、まず、処理速度と処理の残データ量に基づいて、処理終了までの時間を予測する。そして、予測された時間が長いときは、クライアントからサーバへのステータス要求を送出する間隔を長くし、予測された時間が短いときには、ステータス要求の送出間隔を短くするという方法が提案されている。
【特許文献１】特開平１０−２００６８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の方法では、予測終了時間が近い場合には、サーバやネットワークの負荷が高い場合であっても、ステータス要求の送出間隔が短くなっていた。これにより、同時に多数のクライアントからの処理を受け付けるようなサーバの場合に、特に深刻な問題となっていた。
【０００７】
また、予測終了時間が遠い場合には、サーバやネットワークの負荷が低い場合であっても、ステータス要求の送出間隔が長くなっていた。このため、サーバやネットワークリソースが、アイドルの状態となり、リソースの有効利用の点において、無駄が生じるという問題があった。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本発明は、ネットワークを介してサービスを提供する情報処理装置において、サーバでの処理完了を待つ間に、クライアント側でタイムアウトが発生しないように、クライアントに自動的にサーバへの処理の完了を確認させるまでの待機時間を決定する手段を備え、前記サーバは、クライアントから要求された処理を行う処理手段と、前記処理手段によって行われている処理の進捗度を取得する処理進捗度取得手段と、前記サーバの負荷を取得する負荷取得手段と、前記処理進捗度取得手段によって取得されるクライアントから要求された処理の進捗度および前記負荷取得手段によって取得されるサーバの負荷に基づいて、前記待機時間を算出する待機時間算出手段と、
を持つことを特徴とする。
【発明の効果】
【０００９】
本発明によって、クライアントがサーバの処理の終了を必要以上に待つ時間を短縮しつつ、サーバの負荷が高いときには、サーバへのリクエスト送信の待機時間を大きくしてリクエスト回数を減らすことでサーバの負荷軽減を減らすことができる。また、サーバの負荷が低いときには、サーバへのリクエスト送信の待機時間を小さくしてリクエスト回数を増やすことでサーバ資源を有効に使用し、予想外な処理の早期終了に対応することができる。
【発明を実施するための最良の形態】
【００１０】
次に、本発明の詳細を実施例の記述に従って説明する。
【実施例１】
【００１１】
以下、添付図面を参照して本発明の好適な実施形態について詳細に説明する。
【００１２】
図１は、本発明を適用できるコンテンツ管理システムの構成例を示す図である。
【００１３】
図１において、１０１は文書などのコンテンツを管理するコンテンツ管理サーバである。１０２から１０５は、コンテンツ管理サーバ１０１に対してコンテンツの登録、ダウンロード、コピー、検索といった処理の要求を行うクライアントである。クライアントとしては、サーバと通信するためのアプリケーションまたはウェブ・ブラウザが動作する、デスクトップパソコン、ノートパソコン、携帯電話、ディジタル複合機などがある。１１０は、インターネット、電話回線、企業内ＬＡＮ等から構成されるネットワークであり、クライアントとコンテンツ管理サーバとの間の通信媒体となる。
【００１４】
図２は、コンテンツ管理サーバ１０１やクライアント１０２から１０５として利用できる、ディジタル情報処理装置の代表的な内部構成を示したブロック図である。
【００１５】
図２において、２０１は、記憶部に記憶されているＯＳやアプリケーションプログラムを実行するＣＰＵである。
【００１６】
２０２は、ＣＰＵ２０１の主メモリとして機能するほか、ＯＳ、アプリケーションプログラム、アプリケーションデータ等を記憶する記憶部である。記憶部２０２は、必要に応じて、メインメモリやキャッシュメモリなどを含む内部記憶装置と、ハードディスクなどの外部記憶装置で構成される。
【００１７】
２０３は、キーやマウス、タッチパネルなどからの入力を制御する入力制御部である。
【００１８】
２０４は、ディスプレイパネルへの表示を制御する出力制御部である。
【００１９】
２０５は、ネットワーク２１０に接続された他の機器とのデータ通信を制御する通信制御部である。
【００２０】
２０６は、各部を接続するバスである。
【００２１】
２１０は、コンテンツ管理サーバ１０１や他の機器と接続するネットワークである。
【００２２】
次に、コンテンツ管理サーバ１０１がクライアントに対し、任意のコンテンツを選択させ、サーバに処理を要求させる画面表示について説明する。
【００２３】
図３は、クライアント１０２から１０５に表示される、任意のコンテンツを選択してサーバに処理を要求するための画面表示の例である。
【００２４】
図３において、３０１は、コンテンツを選択してサーバに処理を要求するための処理要求ウィンドウである。
【００２５】
３０２は、フォルダの階層構造を表示すると共に、開きたいフォルダを選択するためのフォルダツリー表示部である。
【００２６】
３０３は、フォルダツリー表示部３０２で選択されたフォルダ内のコンテンツ一覧を表示すると共に、処理対象のコンテンツを選択するためのコンテンツリスト表示部である。コンテンツの選択は、後述するチェックボックス３０７に対して、チェックをオンにすることによって行う。
【００２７】
３０４は、コンテンツを検索する際のキーワードを入力するためのキーワード入力部である。
【００２８】
３０５は、キーワード入力部３０４に入力されているキーワードを用いてコンテンツを検索する際に押下する、検索ボタンである。
【００２９】
３０６は、コンテンツリスト表示部３０３で選択されたコンテンツに対して行う処理を選択して押下する、メニューボタンである。メニューの項目としては、「登録」、「フォルダ作成」、「コピー」、「移動」、「削除」がある。
【００３０】
「登録」は、現在表示中のフォルダに対し、クライアントから新規のコンテンツを登録する場合に押下する。押下後、コンテンツリスト表示部３０３の表示がコンテンツ登録表示（不図示）に変わり、そこでクライアント内の登録するコンテンツを指定して登録を行う。
【００３１】
「フォルダ作成」は、現在表示中のフォルダの中に、フォルダを作成する場合に押下する。押下後、コンテンツリスト表示部３０３の表示がフォルダ作成表示（不図示）に変わり、そこで作成するフォルダの名称等を入力してフォルダの作成を行う。
【００３２】
「コピー」・「移動」は、チェックボックス３０７のチェックをオンにすることによって選択されたコンテンツを、任意のフォルダにコピー／移動する場合に押下する。押下後、コンテンツリスト表示部３０３の表示がコピー／移動先選択表示（不図示）に変わり、そこでコピー／移動先のフォルダを指定してコピー／移動を行う。なお、本実施例においては、コンテンツのコピー処理に対してタイムアウトを防止する処理を適用している。
【００３３】
「削除」は、チェックボックス３０７のチェックをオンにすることによって選択されたコンテンツを、削除する場合に押下する。押下後、コンテンツリスト表示部３０３の表示が削除確認表示（不図示）に変わり、そこで本当に削除するかどうかを確認して削除を実行する。
【００３４】
３０７は、選択したいコンテンツに対してチェックをオンにする、チェックボックスである。
【００３５】
次に、コンテンツ管理サーバ１０１の処理手順について、図４を用いて説明する。
【００３６】
図４は、クライアントからのリクエストを受け付けてからのコンテンツ管理サーバ１０１の処理手順を示すフローチャートである。
【００３７】
ステップＳ４０１では、クライアントからリクエストを受信するのを待機する。リクエストを受信した場合には、ステップＳ４０２へ進む。
【００３８】
ステップＳ４０２では、リクエストがコピー処理の終了確認かどうかを判定する。コピー処理の終了確認である場合は、ステップＳ４０７へ進む。そうでない場合は、ステップＳ４０３へ進む。
【００３９】
ステップＳ４０３では、リクエストがコピー処理かどうかを判定する。本実施例ではコピー処理の場合に、タイムアウトを防止する処理を行うため、コピー処理かどうかで手順を分岐する。コピー処理である場合は、ステップＳ４０５へ進む。それ以外の処理である場合は、ステップＳ４０４へ進む。
【００４０】
ステップＳ４０４では、リクエストの処理内容に応じて、コピー以外の処理を実行する。
【００４１】
ステップＳ４０５では、コピー処理を開始する。なお、本実施例では、算出で用いられる除算の除数が０とならないように、算出前に１秒程度のウェイト処理を行う。
【００４２】
ステップＳ４０６では、クライアントにコピー処理の終了確認を行わせるまでの待機時間を算出する。算出方法の詳細については後述する。
【００４３】
ステップＳ４０７では、コピー処理が終了しているかどうかを判定する。ステップＳ４０５で開始していたコピー処理が終了していた場合は、ステップＳ４０８へ進む。終了していない場合は、ステップＳ４０６へ進み、再度、待機時間を算出する。
【００４４】
ステップＳ４０８では、これ以前のステップでの結果に応じて、次にクライアントに表示する画面情報を生成する。例えば、コピー処理開始後にクライアントに表示する画面情報として、図５に示すような情報を生成する。図５の秒数５０１が、ステップＳ４０６によって算出された待機時間の秒数である。図５の例では、待機時間は１０秒となっている。
【００４５】
ステップＳ４０９では、ステップＳ４０８で生成した画面情報をレスポンスとして、クライアントに送出する。クライアントはレスポンスとして受信した画面情報をディスプレイ上に表示する。例えば、図５に示す画面情報を受信した場合、図６のような画面が表示され、１０秒後にサーバへ処理が終了しているかどうかの確認のためのリクエストが自動送信される。サーバではレスポンス送出後、再びステップＳ４０１へ戻り、クライアントからのリクエストを待機する。
【００４６】
次に、待機時間の算出方法について図７と図８を用いて説明する。
【００４７】
図７は、待機時間の算出手順を表すフローチャートである。
【００４８】
ステップＳ７０１では、コピー処理の進捗度を取得する。本実施例では、コピー対象のコンテンツにおけるコピー処理済みのバイト数を処理の進捗度として取得する。
【００４９】
ステップＳ７０２では、コピー処理開始からの経過時間を取得する。
【００５０】
ステップＳ７０３では、ステップＳ７０１で取得したコピー処理済のバイト数およびステップＳ７０２で取得したコピー処理開始からの経過時間を元に、基本待機時間を算出する。算出方法については後述する。
【００５１】
ステップＳ７０４では、サーバの負荷を取得する。本実施例では、サーバに接続しているクライアントのセッション数を負荷として取得する。
【００５２】
ステップＳ７０５では、ステップＳ７０４で取得した負荷の値が、予め定められた第１の負荷基準値を下回っているかどうかを判定する。第１の負荷基準値は、サーバの負荷が低い状態かどうかを判断するための閾値である。本実施例では２０とする。ステップＳ７０４で取得した負荷の値が第１の負荷基準値を下回っている場合には、ステップＳ７０６へ進む。そうでない場合は、ステップＳ７０７へ進む。
【００５３】
ステップＳ７０６では、ステップＳ７０３で算出した基本待機時間を０．５倍する。これは、ステップＳ７０５における、サーバの負荷が低く処理能力に余裕があるという判断から、終了確認のリクエスト送信を頻繁に行うようにし、サーバ資源を有効に使用してサーバでの処理の終了を時間差なく検知するためである。なお、本実施例では０．５倍するという計算を行っているが、異なる計算を行っても良いことは言うまでもない。
【００５４】
ステップＳ７０７では、ステップＳ７０４で取得した負荷の値が、予め定められた第２の負荷基準値を上回っているかどうかを判定する。第２の負荷基準値は、サーバの負荷が高い状態かどうかを判断するための閾値である。本実施例では４０とする。ステップＳ７０４で取得した負荷の値が第２の負荷基準値を上回っている場合には、ステップＳ７０８へ進む。そうでない場合は、ステップＳ７０９へ進む。
【００５５】
ステップＳ７０８では、ステップＳ７０３で算出した基本待機時間を２倍する。これは、ステップＳ７０７における、サーバの負荷が高く処理能力に余裕がないという判断から、終了確認のリクエスト送信の頻度を少なくし、終了確認のリクエストによるサーバへの負荷を減らすためである。なお、本実施例では２倍するという計算を行っているが、異なる計算を行っても良いことは言うまでもない。
【００５６】
ステップＳ７０９では、これまでに計算されている基本待機時間が予め定められている最大待機時間を上回っているかどうか判定する。最大待機時間は、待機時間が長くなり過ぎないように定める値である。本実施例では６０秒とする。基本待機時間が最大待機時間を上回っている場合はステップＳ７１０へ進む。そうでない場合は、ステップＳ７１１へ進む。
【００５７】
ステップＳ７１０では、最大待機時間を基本待機時間とする。これは、待機時間が長過ぎた場合に、サーバ側でセッションを破棄してしまうことや、ユーザがコピー処理の完了を待ちきれずにウェブ・ブラウザなどのクライアントを強制的に終了してしまうことを防止するためである。また、長い待機の間にサーバの状況が変化して処理速度が速くなっていた場合に、過剰な待機を防止することにもなる。
【００５８】
ステップＳ７１１で、これまでに算出された基本待機時間を終了確認のリクエスト送信の待機時間とし、処理を終了する。
【００５９】
図８は、ステップＳ７０３における基本待機時間を算出する式である。
【００６０】
まず、コピー対象のコンテンツの総バイト数から、コピー済みのバイト数を引き、残りバイト数を算出する。次に、コピー済みバイト数をコピー開始からの経過秒数で割り、コピー速度を算出する。そして、残りバイト数をコピー速度で割ることによって、基本待機時間（単位は秒）を算出する。
【００６１】
例えば、処理対象のコンテンツの総バイト数が１１２００バイト、コピー済みバイト数が４８００バイト、経過秒数が３０秒であった場合、ステップＳ７０３で算出される基本待機時間は４０秒となる。このとき、第１負荷基準値が２０、第２負荷基準値が４０であるため、ステップＳ７０４で取得された負荷が５０であった場合、基本待機時間はステップＳ７０８で２倍されて８０秒となる。しかし、これは最大待機時間６０秒を上回っているため、ステップＳ７１０で基本待機時間は６０秒となり、ステップＳ７１１で最終的な待機時間は６０秒となる。
【００６２】
なお、本実施例では、最大待機時間を６０秒としたが、クライアントを認証する仕組みを取り入れ、クライアントごとに最大待機時間を設定できるようにしても良い。その場合、例えばシステムの使用料金の違いや用途の違いなどによってクライアントに優先度をつけ、優先度の高いクライアントの最大待機時間を小さくすることが考えられる。これにより、優先度の低いクライアントよりも優先度の高いクライアントの方が、予想外な処理の早期終了により迅速に対応できるようにすることができる。
【００６３】
以上のように、本実施例では、サーバへのリクエスト送信の待機時間を、処理進捗度および処理開始からの経過時間から算出し、さらに、セッション数によって判断されるサーバの負荷の高低を加味する。これによって、クライアントがサーバの処理の終了を必要以上に待つ時間を短縮しつつ、サーバの負荷が高いときには、サーバへのリクエスト送信の待機時間を大きくしてリクエスト回数を減らすことでサーバの負荷を軽減することができる。また、サーバの負荷が低いときには、サーバへのリクエスト送信の待機時間を小さくしてリクエスト回数を増やすことでサーバ資源を有効に使用し、予想外な処理の早期終了に対応することができる。
【実施例２】
【００６４】
次に、本発明の第２の実施例について説明する。
【００６５】
第２の実施例では、第１の実施例と異なるのが待機時間の算出方法のみであるため、待機時間の算出方法についてのみ説明する。
【００６６】
図９は、待機時間の算出手順を表すフローチャートである。
【００６７】
ステップＳ９０１では、サーバの負荷を取得する。本実施例では、サーバに接続しているクライアントのセッション数を負荷として取得する。
【００６８】
ステップＳ９０２では、コピー処理の進捗度を取得する。本実施例では、コピー対象のコンテンツにおけるコピー処理済みのバイト数を処理の進捗度として取得する。
【００６９】
ステップＳ９０３では、コピー処理開始からの経過時間を取得する。
【００７０】
ステップＳ９０４では、ステップＳ９０１で取得した負荷、ステップＳ９０２で取得したコピー処理済のバイト数およびステップＳ９０３で取得したコピー処理開始からの経過時間を元に、待機時間を算出する。算出方法については後述する。
【００７１】
ステップＳ９０５では、ステップＳ９０４で算出された待機時間が予め定められている最大待機時間を上回っているかどうか判定する。最大待機時間は、待機時間が長くなり過ぎないように定める値である。待機時間が最大待機時間を上回っている場合はステップＳ９０６へ進む。そうでない場合は、待機時間はそのままで確定し、処理を終了する。
【００７２】
ステップＳ９０６では、最大待機時間を待機時間とし、処理を終了する。これは、待機時間が長過ぎた場合に、サーバ側でセッションを破棄してしまうことや、ユーザがコピー処理の完了を待ちきれずにウェブ・ブラウザなどのクライアントを強制的に終了してしまうことを防止するためである。また、長い待機の間にサーバの状況が変化して処理速度が速くなっていた場合に、過剰な待機を防止することにもなる。
【００７３】
図１０は、ステップＳ９０４における待機時間を算出する式である。
【００７４】
まず、コピー対象のコンテンツの総バイト数から、コピー済みのバイト数を引き、残りバイト数を算出する。次に、コピー済みバイト数をコピー開始からの経過秒数で割り、コピー速度を算出する。そして、残りバイト数をコピー速度で割る。このように求めた値を基本待機時間とする。次に、この基本待機時間に対して、ステップＳ９０１で取得した負荷値を、予め定められた負荷基準値で割ったものを掛ける。負荷基準値は、本実施例においては、サーバの平均的な負荷の値を表す。取得した負荷値をこの値で割ることによって、サーバの負荷が平均の何倍の負荷になっているかが求められる。この値を基本待機時間に掛けることによって、サーバの負荷に応じて待機時間を増減することができる。
【００７５】
以上のように、本実施例では、サーバの負荷が平均の何倍になっているかを待機時間の算出時に考慮する。これによって、クライアントがサーバの処理の終了を必要以上に待つ時間を短縮しつつ、サーバの負荷が高いときには、サーバへのリクエスト送信の待機時間を大きくしてリクエスト回数を減らすことでサーバの負荷を軽減することができる。また、サーバの負荷が低いときには、サーバへのリクエスト送信の待機時間を小さくしてリクエスト回数を増やすことでサーバ資源を有効に使用し、予想外な処理の早期終了に対応することができる。
【００７６】
なお、本発明における待機時間の算出方法は、実施例１、実施例２に示したものに限るものではないことは言うまでもない。
【図面の簡単な説明】
【００７７】
【図１】本発明を適用できるコンテンツ管理システムの構成例を示す図である。
【図２】コンテンツ管理サーバ１０１やクライアント１０２から１０５などの、代表的な内部構成を示したブロック図である。
【図３】クライアント１０２から１０５に表示される、コンテンツを選択してサーバに処理を要求するための画面表示の例である。
【図４】コンテンツ管理サーバ１０１の処理手順を示すフローチャートである。
【図５】コピー処理を待機する際に、クライアントに表示される画面情報の例である。
【図６】コピー処理を待機する際に、クライアントに表示される画面の例である。
【図７】実施例１における待機時間の算出手順を示すフローチャートである。
【図８】実施例１における基本待機時間を算出する式である。
【図９】実施例２における待機時間の算出手順を示すフローチャートである。
【図１０】実施例２における待機時間を算出する式である。
【符号の説明】
【００７８】
１０１  コンテンツ管理サーバ
１０２,１０３,１０４,１０５  クライアントマシン
１１０  ネットワーク
２００  ディジタル処理装置
２０１  ＣＰＵ
２０２  記憶部
２０３  入力制御部
２０４  出力制御部
２０５  通信制御部
２０６  バス
２１０  ネットワーク伝送路
３０１  処理要求ウィンドウ
３０２  フォルダツリー表示部
３０３  コンテンツリスト表示部
３０４  キーワード入力部
３０５  検索ボタン
３０６  メニューボタン
３０７  チェックボックス
５０１  待機時間
６０１  処理中ウィンドウ
【図１】
2009098864.tif 000003
【図２】
2009098864.tif 000004
【図３】
2009098864.tif 000005
【図４】
2009098864.tif 000006
【図５】
2009098864.tif 000007
【図６】
2009098864.tif 000008
【図７】
2009098864.tif 000009
【図８】
2009098864.tif 000010
【図９】
2009098864.tif 000011
【図１０】
2009098864.tif 000012