var prgFlag=false;
var imgFlag=false;
var winFlag=false;
var datFlag=false;
var msgFlag=false;
var selFlag=true;
var dlyFlag=false;
var visited=false;
var idxFlag=false;
var magLev=1;
var vuMode=-1;
var udMode=1;
var lumLev=10;
var opaci=1;
var rotat=0;
var mirro=0;
var grays=0;
var inver=0;
var negat=0;
var begMs=0;
var kbpMs=0;
var imgNow=0;
var imgCount=0;
var idx=-1;
var filIdx=0;
var pad1=0;
var pad2=0;
var lastChances=3;
var remSec=0;
var maxWait=60;
var fontMaxSize=20;
var crtW=792;
var thmW=132;
var imageW=600;
var imageH=478;
var imgBorderW=6;
var imgBorderH=10;
var borderW=12;
var borderH=12;
var butW=20;
var captionP=5;
var capLineH=24;
var captionW=imageW;
var imgCellW=imageW+imgBorderW;
var imgCellH=imageH+imgBorderH;
var capCellW=captionW;
var capCellH=capLineH;
var windoW=imgCellW+borderW;
var windoH=imgCellH+capLineH+borderH;
var progWinW=240; 
var progWinH=166;
var idxW=200;
var navH=24;
var beginX=0;
var beginY=crtW-windoW;
var oldBGC="#000000"
var oldFGC="#FFFFFF"
var oldObj=null;
var nowObj=null;
var URLwin=null;
var imgCellW$ = String(imgCellW) + 'px';
var imgCellH$ = String(imgCellH) + 'px';
var butWidth$ = String(butW) + 'px';
var captionW$ = String(captionW) + 'px';
var capLineH$ = String(capLineH) + 'px';
var captionP$ = String(captionP) + 'px';  
var str$='';
var df$='';
var image$='';
var label$='';
var style$='';
var mode$="";
var winTitle='The Album Window';
var winName='TheAlbumWindow';
var winTitle='Default Win Title';
var docTitle='Default Document Title';
var idxTitle='Default Index Title';
var sel='image size';
var hideIdx$='<div onclick=\"parent.togIdx();\" style=\"position:relative;float:right;font:8pt;cursor:hand;\">idx</div>';
var showIdx$='<div id=\"showIdx\" style=\"position:relative;float:center;font:8pt;display:none\">idx</div>';
var pageHead='<font class=pt12>Default</font><br>Page Head';
var pageTitle='<div>'+pageHead+'</div>';
var pageImg='<img src=\"image/default.jpg\">';
var pageSig='by <br>Default Signature';
var progMsg$='default progress message';
var statMsg='default status message';
var advise$='default advise message';
var rev$='Sophisto 12';
var cpyr$='<div class=\"cpyrt\"><hr>'+rev$+' Copyright &#169; 2001, 2002 Philip Margush. All rights reserved<br>';
cpyr$+='<a class=\"nonImgI\" href=\"javascript:winURL(\'abtsopis.htm\',\'About '+rev$+' \')\">About '+rev$+'</a><hr></div>';
var bordeSpec$='frameborder=\"no\" border=\"0\"';
var frameSpec$='src=\"about:blank\" '+bordeSpec$; 
str$='<body id=\"bdy\" onresize=\"init()\" style=\"margin:0px;padding:0px;border:none;\" onload=\"place();\" onunload=\"exitProc(\'UbangyUfixy\');\">';
str$+='<div id=\"mDiv\" style=\"position:relative;\">';
str$+='<div class=\"idxFrame\" id=\"lDiv\" style=\"position:absolute;\">lDiv</div>';
str$+='<div id=\"nDiv\" style=\"position:absolute;\">nDiv</div>';
str$+='<div class=\"viewFrame\" id=\"rDiv\" style=\"position:absolute;\">rDiv</div>';
//str$+='<div id=\"nvDiv\" style=\"position:absolute;\">nvDiv</div>';
str$+='</div></body>'; 
var frameWay=str$;

str$= '<select disabled id=\"imgProcSel\" name=\"imgProcSel\" style=\"font-size:10px;height:14px;width:6em\" onChange=\"parent.doImgProc(parent.slide,this.options[this.selectedIndex].value)\">';
str$+='<option value=\"0\" selected>image';
str$+='<option value=\"1\">   gray';
str$+='<option value=\"2\"> invert';
str$+='<option value=\"3\">negative';
str$+='<option value=\"4\"> mirror';
str$+='<option value=\"5\"> rot 90';
str$+='<option value=\"6\">rot 180';
str$+='<option value=\"7\">rot 270';
str$+='</select>';

str$+='<select disabled id=\"imgSizeSel\" name=\"imgSizeSel\" style=\"font-size:10px;height:18px;width:6em\" onChange=\"parent.resizeImg(parent.slide,this.options[this.selectedIndex].value)\">';
str$+='<option value=\"-1\" selected>view';
str$+='<option value=\"0\">orig sz';
str$+='<option value=\"1\">desktop';
str$+='<option value=\"2\">magnify';
str$+='<option value=\"10\">m zoom';
str$+='<option value=\"11\">fwd/rev';
str$+='<option value=\"12\">luminan';
str$+='</select>';

var msg$="unexpected error";
var up$='<input disabled class=\"dir\" id=\"upBut\" title=\"up\" type=\"button\" value=\"up\" onclick=\"parent.setFunct(parent.slide,\'up\');\">';
var dn$='<input disabled class=\"dir\" id=\"dnBut\" title=\"down\" type=\"button\" value=\"dn\" onclick=\"parent.setFunct(parent.slide,\'dn\');\">';
var thm$='<input disabled class=\"tog\" id=\"tgBut\" title=\"thumb nail images\" type=\"button\" value=\"*\" onclick=\"parent.togThm();\">';
var selBox=str$+dn$+up$+thm$;

var navBar='<div class=nav><a href=\"javascript:getURL(1, \'indexMAN.htm#DOCTOP\')\">Main Index</a><a href=\"http://www.margush.com\" >National</a><a href=\"javascript:getURL(5, \'smdr\')\">Guestbook</a><a HREF=\"mailto:pmargush@voicenet.com\">Write</a></div><div class=cpyrgt>Copyright &#169; 2002 Philip Margush. All Rights Reserved</div>';
var pageMeta='<meta name="author" content="Philip Margush"><meta name="resource-type" content="document">';
var but$='<a class=but href=javascript:dispImg(\'up\');>next</a><br><a class=but href=javascript:dispImg(\'dn\');>prev</a>';

var filePath='image/';
var version="10/27/02 10:43:07 PM";
window.onerror=DispErr;

function DispErr(msg,url,linnbr){
winParm=makeWinParm(300,200,'no','no','no','auto','yes')
winOpen('errMsg= '+msg+'\n<br>URL= '+url+'\n<br>linNbr= '+linnbr+'\n<br>history.length= '+history.length+'\n<br>parent.length= '+parent.length+'\n<br>Desc= '+df$+'\n<br>pathName= '+location.pathname+'\n<br>name= '+ location.hash+'\n<br>host= '+ location.host+'\n<br>port= '+ location.port+'\n<br>href= '+ location.href)
alert(msg)
return true
}

function getScpt(Stype, fileID) {
var getScptStr='';
if (Stype == 1) {
getScptStr='<link rel=stylesheet href=\"' + fileID + '\" type=\"text/css\">';
  }
else {
getScptStr='<SCRIPT LANGUAGE=\"JavaScript1.2\" SRC=\"' + fileID + '\"></SCRIPT>'; 
};
return getScptStr;
}

function makeWinParm(width,height,status,toolbar,menubar,scrollbars,resizable) {
var s="top=".concat(String((screen.availHeight/2)-(height/2)));
s=s.concat(',left='+(String(screen.availWidth/2)-(width/2)));
s=s.concat(',width='+width);
s=s.concat(',height='+height);
s=s.concat(',status='+status);
s=s.concat(',toolbar='+toolbar);
s=s.concat(',menubar='+menubar);
s=s.concat(',scrollbars='+scrollbars);
s=s.concat(',resizable='+resizable);
return s
}

function winOpen(msg) {
  msgWin=window.open("","winOpen",winParm);
  msgWin.document.open()
  msgWin.document.write("<HEAD><TITLE>Message Window</TITLE></HEAD>");
  msgWin.document.write("<font size=2>" + msg + " </font>");
return true;
}

function winURL(url,inTitle) {
  if (URLwin==null||URLwin.closed) {
    winParm=makeWinParm(300,200,'no','no','no','yes','yes');
    URLwin=window.top.open(url,'winURL',winParm);
    //URLwin.document.title=inTitle;
}
  else {URLwin.focus()}
}

function escApost(s){
var escRegS= new RegExp("[\\']", "g");
s = s.replace(escRegS, "\\'")
return s;
}

function togIdx() {
if (idxFlag) {
  rDiv.style.left="0px";  
  rDiv.style.width=mDiv.style.width;
  tgBut.title="hide navigation"
    nDiv.style.zIndex=1;
  }
  //alert(rDiv.style.width+' '+mDiv.style.width+' '+rDiv.style.paddingTop)
else {
  rDiv.style.width=mDiv.style.pixelWidth-lDiv.style.pixelWidth;
  rDiv.style.left=lDiv.style.width;
  doVisi(nDiv);
  }
//nvDiv.style.left=rDiv.style.left;  
idxFlag=!idxFlag;
if (document.all.iViewFrm!=null) {document.all.iViewFrm.width=rDiv.style.width;}
if (document.all.slide!=null) {displayImg(idx)}
}

function getKey() {
//capArea.innerHTML=event.keyCode.toString().fontcolor('red')+' = '+String.fromCharCode(event.keyCode);
//alert(event.keyCode.toString().fontcolor('red')+' = '+String.fromCharCode(event.keyCode));
//alert(event.keyCode)
switch (event.keyCode) {
  case 85: displayImg('up');break;
  case 68: displayImg('dn');break;
  //default:alert(naviFrame.event.keyCode);break;
}
}

function makeNoLoad(inA) {
var s='<br><table style=\"font-size:8pt;background:#cccccc;\">';
i=0;
  while (i<inA.length) {      
    if (document.srcIdxA[i]>=0) {
      df$=aFile(imgList[document.srcIdxA[i]])
      s+='<tr><td align=right>' +String(i)+ '.</td>';
      s+='<td align=left>' +df$+ '</td></tr>'; }
    i++; 
  }; 
  s+='</table>';
return s
}

function imgToLoad(idx,status) {
  this.idx=idx
  this.status=status
}

function progress(iName,totImg,nowImg,remain,speed,graph) {
  this.iName=iName
  this.totImg=totImg
  this.nowImg=nowImg
  this.remain=remain
  this.speed=speed
  this.graph=graph   
}

function indexRecord(caption, imgFiles) { 
  this.caption = caption; 
  this.filIdxA=new Array();  //index to image short caption in datafile
  this.filIdxA=makeIdxArray(imgList, makeArray(imgFiles));
}

function ifNotAdd(findA){
var j=0;
var tempA=new Array();
  for (var i=0; i<findA.length; i++) {
    tempA[j]=findRec(tempA,findA[i]);
    if(tempA[j]==-1) {tempA[j++]=i}
  }
//alert(tempA)
return tempA
} 

function atIdx(inA,find){
var found=-1;
var i=0;
  while (i<inA.length&&(found<0)) {
    if (inA[i]==find){found=i};
    i++;
  }
return found;
} 

function makeIdxArray(inA,findA) {
var tempA=new Array();
  for (var i=0; i<findA.length; i++) {
    tempA[i]=findRecNum(inA,findA[i]);
  }
//alert(tempA)
return tempA
}

function makeArray(inList) {
  var i=0;
  var beg=0;
  var fin=0;
  var inA=new Array();
  while (fin<inList.length) {
    fin=inList.indexOf(" ",beg);
    if (fin==-1){fin=inList.length}
    inA[i]=inList.substring(beg,fin);
    beg=fin+1;
    i++;
    }
//alert(inA)
return inA
}

function doProgWin(obj,inStr) {
winParm=makeWinParm(progWinW,progWinH,'no','no','no','no','yes')
//alert('clientHeight='+document.body.clientHeight+' top='+x+ ' clientWidth='+document.body.clientWidth+ ' left='+y+ ' s=' +winParm )
str$='<div class=\"label\">images<br><font id=\"totRpt\">' +document.imgArray.length+ '</font><br>total</div>';
str$+='<div class=\"label\">images<br><font id=\"cntRpt\">' +imgCount+ '</font><br>loaded</div>';
str$+='<div class=\"label\">retrys<br><font id=\"labRpt\">' +remSec+ '</font><br>remain</div>';
str$+='<div class=\"label\">average<br><font id=\"spdRpt\">' +kbpMs+ '</font><br>speed</div>';
str$+='<br clear=all>';
str$+='<div id=\"bar\"><div id=\"plot\"></div></div><br clear=all>';
str$+='<div id=\"advise\">' +advise$+ '</div>';

  prgWin=window.open("","TheProgressWin",winParm);
  //alert(typeof(prgWin));
  //alert(prgWin.document.body.clientWidth)
  prgWin.document.open();//open text stream 
  prgWin.title='Progress';
  prgWin.window.status='Loading Images';
  prgWin.document.write('<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml-transitional.dtd">');
  prgWin.document.write('<html><head>'+getScpt(1, styleGlobe)+'</head><body id=\"progWin\">');
  prgWin.document.write('<div id=\"reptMsg\"><img id=\"progImg\" src=\"image/downloa3.gif\">' +str$+ '</div>');
  prgWin.document.write('<span id=\"progMsg\">' +inStr+ '</span>');  
  prgWin.document.write('</body></html>');  
  doAdvise('Status:','loading images!',0)
return true
}

function giraffe(mag,range,scale){
var step=(scale/range)*(mag+1);
return step;
}

function layout$(x){
if (x) {return ' portrait';}
return ' landscape';
}

function getFontSize(strLen,portPixels) {
var pixPerChar=Math.sqrt(portPixels/strLen);
var pix2pt=Math.floor(pixPerChar*1.16);
//alert(strLen + ' ' + pixPerChar+ ' ' +pix2pt);
if (pix2pt>fontMaxSize){pix2pt=fontMaxSize};
return pix2pt+'px';
}

var gRegBS = new RegExp("[\\\\]", "g");
function JustFName(sPath) {
  sPath = sPath.replace(gRegBS, "/")
  return sPath.substring(sPath.lastIndexOf("/")+1).split('.')[0];
}

function JustFExt(sPath) {
  sPath = sPath.replace(gRegBS, "/")
  return sPath.substring(sPath.lastIndexOf("/")+1).split('.')[1];
}

function getFileType(inStr){
var t=0;
//var oRegJPG = new RegExp("JPG|GIF|PDF", "i");
//if (oRegJPG.test(inStr)) {t='image'}else{t='HTML'};
//var oReg = new RegExp("jpg|gif|htm|txt",'i');   
//return inStr.match(oReg)
switch (JustFExt(inStr)) {
  case 'pdf': t='image';break;
  case 'jpg': t='image';break;
  case 'gif': t='image';break;
  case 'htm': t='html';break;
  case 'html': t='html';break;
  case 'txt': t='text';break;
  default: t='unknown';break; 
}
return t;
}
var oReImg = new RegExp("^(jpg|gif)",'i'); 
function isImage(inStr){
return oReImg.test(JustFExt(inStr));
}

function aFile(inStr) {
if (inStr==null) inStr='about:blank';
return inStr.substring(0, inStr.indexOf(" "));
}

function fixPath(inStr) {
var RE = new RegExp("[/]", "g");
if (!RE.test(inStr)) {inStr=filePath.concat(inStr)};
return inStr;
}

function imgFile(x) {
return fixPath(aFile(imgList[x]));
}

function aCapt(s) {
if (s==null) s='unfound!';
  return s.substring(s.indexOf(" "), s.length);
}

function txtTag(idx) {
var tF=0;
var inCapt="<blockquote>" +aCapt(txtList[idx]) + "</blockquote>";
    window.status='text block: ' + idx + ')';
    str$ = '<tr><td class=\"textB\" height=\"' +textH+ '\">' + inCapt + '</td></tr>';
return str$;
}

function exitProc(winName) {
//alert(winName+ ' '+prgFlag)
if (URLwin!=null){URLwin.close()};
if ((msgFlag)&&(!msgWin.closed)){msgWin.close()};
if ((prgFlag)&&(!prgWin.closed)){prgWin.close()};
}

function doImgProc(o,m) {
//alert(vuMode)
vuMode=m;
switch (vuMode) {
  case '1': grays=1;break;
  case '2': inver=1;xrays=0;break;
  case '3': negat=1;inver=0;break;
  case '4': mirro=1;break
  case '5': rotat=1;break;
  case '6': rotat=2;break;
  case '7': rotat=3;break;
  case '8': opaci=(lumLev*.1);break;
  case '9': (opacity=.5); 
  default:grays=0;inver=0;negat=0;mirro=0;rotat=0;opaci=1;lumLev=10;vuMode=-1;break;
}
if (o==null) return -1;
str$='progid:DXImageTransform.Microsoft.BasicImage(Rotation='+rotat+',Mirror='+mirro+',Invert='+inver+',XRay='+negat+',Grayscale='+grays+',opacity='+opaci+')';
o.style.filter=str$;
return vuMode;
}

var step=0;
var limit=0;
paci=0;
var fadeFlag=true;
function fadeImg(dir,pace){
if (fadeFlag) {
  step=(lumLev/10);
  limit=lumLev;
  paci=0;
  if (dir=='dn'){opaci=lumLev;limit=0};
  fadeFlag=false;
}
if (dir=='dn') {
  paci-=step; }
else{
  paci+=step;
}
//alert(step+' '+paci+' '+dir+' '+pace)
slide.style.filter='progid:DXImageTransform.Microsoft.BasicImage(opacity='+(paci*.1)+')';
if (paci!=limit) {setFadeTimer(dir,pace)}else{fadeFlag=true};
}

function resizeImg(o,mag) {
if (mag<10) {
  if (mag==-1) {vuMode=-1;mag=1};
  magLev=mag;
  if (o!=null) displayImg(idx);} 
else {
  udMode=(mag-10);};
}

function setFunct(o,dir) {
var udModeSave=udMode;
if (o==null) {udMode=1};//null here would be no slide, i.e. iFrame src.
switch (udMode) {

  case 1: udMode=udModeSave;displayImg(dir);break; 
  case 2: if (dir=='dn'&&lumLev>0) {lumLev--;} else if (dir=='up'&&lumLev<10){lumLev++;};
          window.status='Luminance: '+lumLev;
          doImgProc(o,'8');break;
  default:
    var imgW=o.width;
    var imgH=o.height;
    if (dir=='dn') {mag=.9;}else{mag=1.1};
    o.width=Math.floor(imgW*mag);
    o.height=Math.floor(imgH*mag);
    window.status=document.title + ': ' +o.src+ ' resize: ' +o.width+ 'x' +o.height;
    break;}
rDiv.focus()
}

function xmagnify() {
if (magLev<2){magLev++}else{magLev=0};
if (magLev==0) {
  scale.innerText='Original Size';}
else if (magLev==1){
  scale.innerText='Best Fit to Desktop';}
else {
  scale.innerText='Magnification +1';}
displayImg(idx);
}

function togVis(obj) {
//alert(obj)
var now = obj.style.display;
if (now=="inline") {now="\'none\'";}else{now="\'inline\'";}
obj.style.setExpression('display',now,'javascript');
window.status='Selected';
}

function togVisable(obj) {
//alert(obj)
var now = obj.style.visibility;
if (now=="visible") {now="\'hidden\'";}else{now="\'visible\'";}
obj.style.setExpression('visibility',now,'javascript');
window.status='Selected';
}

function doHand(o,s){
 o.style.cursor='hand';
  window.status=s;
 return true;
}

function doGlass(o,s){
 o.style.cursor='wait';
  window.status=s;
 return true;
}


function togThm() {
if (idxFlag) {
  with (document) for (i = 0 ; i < all.tags("div").length ; i++) {
    elem=all.tags("div").item(i);
    if (elem.className=="thmCell") {
      togVis(elem)    } 
    }
  lDiv.focus()
}
else{
  doHide(nDiv);
}
}

function setIdx(obj,inClr){
 obj.style.listStyleType="disc";
 obj.style.color=inClr;
}

function doHide(){
var i=0;
while (i<arguments.length) {
 //alert(arguments[i].id+' hide')
 arguments[i++].style.visibility="hidden"
}
}

function doVisi(){
var i=0;
while (i<arguments.length) {
 //alert(arguments[i].id+' visi')
 arguments[i++].style.visibility="visible"
}  
}

function doUL(obj){
   obj.style.textDecoration="underline";
}

function doHTML(o,s) {
  o.innerHTML=s;
}

function doVisited(obj){
   obj.style.color=visitClr;
   obj.style.listStyleType="disc";
}

function doHilight(obj){
  oldFGC=obj.style.color;
  oldBGC=obj.style.background; 
  if (oldObj!=null) {
     oldObj.style.color=oldFGC; 
     oldObj.style.background=oldBGC}; 
  obj.style.color=activFGC;
  obj.style.background=activBGC;
  oldObj=obj;
}

var oReVisit=/\d/gi;
function doVisit(obj) {
visited=false;
//alert(obj.style.color)
//obj.style.background="salmon";
//alert(obj.style.color)
//obj.style.background="transparent";

idx=obj.id.substr(obj.id.search(oReVisit));
visited=displayImg(idx);
}

function nowMsec() {
d = new Date();    
return d.getTime();
}

function getMsec(inMs) {
return nowMsec()-inMs;
}

function elapSec(inMs) {
//alert((nowMsec()-inMs)/1000+' '+inMs )
return Math.round((nowMsec()-inMs)/1000);
}      

function doTimeout(inSec) {
d = new Date()    
var nowMsec=d.getTime();
var endMsec=nowMsec+(inSec*1000);
var remainder=endMsec-nowMsec;
while (remainder>0) {  
  d = new Date()    
  nowMsec=d.getTime()
  remainder=endMsec-nowMsec;
  //window.status='nowMsec: ' + nowMsec + ' endMsec: ' + endMsec + ' remainder: ' + remainder;  
}
return true;
}

var ckImgT;
function checkImgTimer(pace) {
var mSec=(pace*1000);  
  ckImgT=setInterval("checkImage();",mSec);
}

function getChronos() {
	var time = new Date();   
      var daySec=time.getTime();
	var month = time.getMonth();
	var day = time.getDate();
	var year = time.getYear();
	var hour = time.getHours();   
	var minute = time.getMinutes();   
	var second = time.getSeconds();
	return daySec+' '+month.toString()+day.toString()+year.toString()+hour.toString()+minute.toString()+second.toString();
}
var timeStamp=0;
var checkObject;
var checkSec=0;
var complT=0;

function chkCompl(o,pace){
clearTimeout(complT); 
checkSec=pace;
var nowStat=o.readyState;
//alert(checkObject.id+' '+nowStat)
if (!timeStamp){timeStamp=nowMsec()}
var nowSec=elapSec(timeStamp);
if (nowStat=='complete'||nowSec>maxWait) { 
  doHide(statDiv);
  doVisi(o);  
  timeStamp=0;
  if (o.id=='iViewFrm') {statMsg+=' '+nowStat+ ' loadTime: '+nowSec+ ' seconds';}  
  window.status=statMsg; }
else  {    
  checkObject=o;
  if (timeStamp&&nowSec) {
//    statDiv.innerHTML='<img src=\"image/downloa1.gif\">'
//    statDiv.innerHTML=nowStat+' seconds: '+nowSec;
    doVisi(statDiv); 
  }
  //.statDiv.style.setExpression('visibility',"'visible'",'javascript');
  complT=setTimeout("chkCompl(checkObject,checkSec)",pace*1000);
  }
return nowStat;
}

function setFadeTimer(o,dir,pace) {
var mSec=(pace*1000);  
//str$='\"fadeImg('+dir+','+pace+')\"';
  var x=setTimeout("fadeImg(\'up\',.1)",.1);
}

function findRecNum(inA,find) {
rEx = new RegExp(find,"gi") 
var notFound=-1
var idx=0;
//alert(inA[idx]+ '*'+ find + '*' +rEx)
//alert('find: ' + find + ' in:'+inA+ ' length:' +inA.length)}
while((notFound==-1)&&(idx<inA.length)) {
  //if (parseInt(inA[idx])){inA[idx]=String(inA[idx]);}
  notFound=inA[idx++].search(rEx);
  }
if (notFound==-1) {idx=0}
return idx-1
}

function findRec(inA,find) {
rEx = new RegExp(find,"gi") 
var notFound=-1
var idx=0;
while((notFound==-1)&&idx<inA.length) {
  notFound=inA[idx].search(rEx);
  idx++ 
  }
if (!notFound){return inA[idx-1]}else{return 'default.jpg No Text Found!'};
}

function loadImages() {                              
  imgNow=0;
  var n=0;
  var x=0;
  var i=0;
  var j=0;
  document.imgArray=new Array(); //preLoad img Array
  document.srcIdxA=new Array(); //preLoad img Array -- short list, no dups.
  document.filIdxA=new Array(); //sequential index to imgArray 
  document.txtIdxA=new Array(); //sequential index to ImgList Array 
  with (document) {
    prgFlag=doProgWin(self,progMsg$);  
    for (i=0; i<mapZoneA.length; i++) {
      for (j=0; j<mapZoneA[i].filIdxA.length; j++) {
        n=mapZoneA[i].filIdxA[j];//n==-1 here indicates list record not found        
        if (n<0){n=0}; 
        x=atIdx(srcIdxA,n);
        if (x<0) {
          x=srcIdxA.length;        
          if (isImage(imgList[n])){srcIdxA[x]=n;}else{x=n+1000}
        }
        filIdxA[imgNow]=x
        txtIdxA[imgNow]=n+1
        imgNow++;
      }
    }
  imgNow=0;
  prgRpt=new progress('',srcIdxA.length,imgNow,remSec,kbpMs,'')
  }
//alert('filIdxA: ' +document.filIdxA+ ' srcIdxA: ' +document.srcIdxA); //line 620
if (document.srcIdxA.length) {return true}else{return false}
}

function delRec(recNum,inA){
    for (var j=recNum; j<(inA.length-1); j++){inA[j]=inA[j+1];}
    inA.length=j; 
return inA;
}

function imgComplete(idx) {
  with (document) {
    if (!imgArray[idx].complete) {return false}
    for (var i=0; i<filIdxA.length; i++){
      if (filIdxA[i]==idx){
        var filIdx=filIdxA[i]
        tSlide$='<img class=\"tImg\" src=\"' +imgArray[filIdx].src+ '\" width=\"' +thmW+ '\" ><br clear=\"all\">';
        setIdx(all.tags("li").item("item"+i),readyClr);
        doUL(all.tags("a").item("thm"+i));
        doHTML(all.tags("div").item("tSlide"+i),tSlide$)
        doHand(all.tags("a").item("thm"+i),'');
        }
    }    
    str$=aFile(imgList[srcIdxA[idx]]);
    doAdvise('Complete:',str$,0);   
    window.status='complete: ' +str$;
    srcIdxA[idx]=-1;
    return true; 
  } 
}

function doAdvise(d,s,preEmt) {
var adviseT
if (!prgFlag||prgWin.closed) return;
if (preEmt>0) {
  var mSec=preEmt*1000;
  clearTimeout(adviseT)
  adviseT=setTimeout("dlyFlag=false",mSec);
  dlyFlag=true;
  prgWin.focus();
}
if (preEmt>0||dlyFlag==false){prgWin.advise.innerHTML='<div id=\"dAdvise\">'+d+'</div>'+s.substr(0,18);}

//.document.write('<div class=\"rptStat\">image '+i+' is still loading!</div>');

}

function notify(imgNum) {
  with (document) {
    fileBytes=imgArray[imgNum].width*imgArray[imgNum].height;
    kbpMs+=(fileBytes/(getMsec(begMs)+1))/1000;
    prgRpt.speed=Math.round(kbpMs/(imgNum+1));    
    prgRpt.nowImg=imgNum;
    prgRpt.remain=remSec;
    prgRpt.iName=aFile(imgList[srcIdxA[imgNum]]);   
    }

  with (document) if (prgFlag&&!prgWin.closed) {  
    prgWin.totRpt.innerText=prgRpt.totImg;
    prgWin.cntRpt.innerText=prgRpt.nowImg;
    prgWin.labRpt.innerText=prgRpt.remain;
    prgWin.spdRpt.innerText=prgRpt.speed; 
    prgWin.bar.style.width='100%';
    prgWin.plot.style.width=giraffe(prgRpt.nowImg,prgRpt.totImg,prgWin.bar.clientWidth);
//alert(prgWin.bar.style.pixelWidth+' '+prgWin.plot.style.width);   
doAdvise('Seeking:',prgRpt.iName,0); 
  }   
}

function checkImage() {
  with (document) {
    df$=aFile(imgList[srcIdxA[imgNow]]);
    if (imgArray[imgNow]==null) {
      imgArray[imgNow]=new Image;
      imgArray[imgNow].src=fixPath(df$);
      //alert(imgArray[imgNow].src) 
      begMs=nowMsec();
      }
    notify(imgNow);
    remSec=maxWait-elapSec(begMs); 
    if (imgComplete(imgNow)||(remSec<1)) {imgNow++};     
    if (imgNow>=srcIdxA.length) {
      lastChances--;
      imgFlag=true;      
      for (imgNow=0;imgNow<srcIdxA.length;imgNow++){if (!imgComplete(imgNow)){imgFlag=false}}
    }      
    //alert(imgNow+ ' ' +srcIdxA[imgNow])
    if (imgFlag||!lastChances) {
      clearInterval(ckImgT); 
      if (!lastChances){
        var fail$='Images failed to load!';
        df$=makeNoLoad(srcIdxA); DispErr(fail$,this.url,'checkImage()');}
      prgWin.close();
      prgFlag=false;
    }
  }
} 

function init(){
//doHide(lDiv,nDiv,rDiv);
document.body.scroll="auto";

with (mDiv.style) {
  width=document.body.offsetWidth;
  height=document.body.offsetHeight;
  color="red";
  background=pageBGC;
}

with (lDiv.style) {
  //alert(mDiv.offsetWidth+' '+mDiv.offsetHeight+' '+mDiv.style.pixelHeight)
  width=idxW;
  height=mDiv.style.pixelHeight-navH;
  overflow="auto";
  color=indexFGC;
  background=indexBGC;
}

with (nDiv.style) {
  //alert(mDiv.offsetWidth+' '+mDiv.offsetHeight)
  top=lDiv.style.height;
  left=lDiv.style.left;
  width=lDiv.style.width;
  height=navH;
  overflow="auto";
  color="violet";
  background=indexBGC;
}

var rDivW=(mDiv.style.pixelWidth-idxW)+'px'
var rDivH=mDiv.style.height;
//document.all.rDiv.style.overflow = "scroll";
with (rDiv.style) {
  overflow="auto";
  padding=0;
  width=rDivW;
  height=rDivH;
  color=pageHeadFGC;
  background="transparent";
}

}

function place() {
  init();
  togIdx()
  if (document.loaded==null||(document.loaded!=null&&document.loaded.flag==false)){alert('indexFile: ' +idxFile+ ' not found!'); return;}
  document.title=docTitle; 
  str$=pageTitle;
  str$+='<div id=\"capArea\">'+cpyr$+'</div>';
  rDiv.innerHTML=str$;
  with (titleCell.style) {
    color=pageHeadFGC;
    background=pageHeadBGC; 
  }
  preFlag=loadImages();
  if (preFlag) {checkImgTimer(1);}else{prgWin.close();prgFlag=false;}
  style$='ul.idxList li.idxItem, ul.idxList li.nonImgI{color:'+liDot+';}ul.idxList li.idxItem a, ul.idxList li.nonImgI a{color:'+liFGC+';}a.idxItem:hover, a.nonImgI:hover{color:'+liHover+';}';
  str$='<div id=\"idxPgHd\">' +idxTitle+hideIdx$+ '<hr></div><style>'+style$+'</style>';
  var x=0;
  var thisII='';
  with (document) for (var i=0; i<mapZoneA.length; i++) {
    var listId='idxBox'.concat(i);
    label$=mapZoneA[i].caption;    
    str$+='<div class=\"idxTerm\" onClick=\"parent.togVis(' +listId+ ');\" onMouseOver=\"parent.doHand(this,\'Category: '+escApost(label$)+'\')\">' +label$+ '</div>'
    str$+='<ul class=\"idxList\" id=\"' +listId+ '\">';
    for (j=0; j<mapZoneA[i].filIdxA.length; j++) {
      df$=aFile(imgList[mapZoneA[i].filIdxA[j]]);    
      var filIdx=document.filIdxA[x];
      if (filIdx<1000) {typII='idxItem';}else{typII='nonImgI';}
      tSlide$='<div class=\"thmCell\" id=\"tSlide'+x+'\"></div>'; 
      label$=aCapt(imgList[mapZoneA[i].filIdxA[j]]);
      str$+='<li class=\"'+typII+'\" id=\"item' +x+ '\">';
      str$+='<a href=\"javascript:void()\" class=\"'+typII+'\" id=\"thm' +x+ '\" onClick=\"parent.doVisit(this); return false\" onMouseOver=\"window.status=\'Source: ' +df$+ '\'; return true;\">';
      str$+=tSlide$;
      str$+=label$;
      str$+='</a></li>';
      x++;
    }
    str$+='</ul>';
  }
str$+=cpyr$;
lDiv.innerHTML=str$; 
//alert(document.all.tags('li').style);
//document.all.tags('li').color='green';//setExpression('color','green','javascript')

  with (idxPgHd.style) {
    color=idxHdFGC;
    background="transparent"; 
  }

  with (document) for (i = 0 ; i < all.tags("div").length ; i++) {
    elem=all.tags("div").item(i);
    if (elem.className=="idxTerm") {
      with (elem.style) {
        fontWeight="bold";
        textDecoration="underline";
        lineHeight="150%";
      } 
    } else if (elem.className=="idxItem") {
      with (elem.style) {
        color="tan";
        ;} 
    }
}
nDiv.innerHTML=selBox;
upBut.disabled=false;
dnBut.disabled=false;
tgBut.disabled=false;
document.onkeydown=getKey;
//alert(document.body.onresize)
//document.all.tags.body.onresize=alert();
doVisi(lDiv,rDiv);
}

function getFrame(inURL){
statMsg=inURL + ': ';
str$=bordeSpec$;
str$+=' width='+rDiv.style.width;
str$+=' height='+rDiv.style.height;
str$+=' src='+inURL;
str$='<iframe id=\"iViewFrm\" scrolling=\"auto\" '+str$+'></iframe>'; 
style$='style=\"position:absolute;top:'+((rDiv.clientHeight/2)-10)+';left:'+((rDiv.clientWidth/2)-100)+';width:200px;text-align:center;color:blue;background:transparent;visibility:visible;\"'
str$+='<div id=\"aWinNum\"></div>';
str$+='<div id=\"statDiv\" '+style$+ '></div>';
return str$;
}

function displayImg(dir) {
var success=false;
mode$=' size: ';
if (dir=='up') {idx++}else if (dir=='dn'){idx--}else{idx=dir};
if (idx==document.filIdxA.length){idx=0}
if (idx==-1){idx=document.filIdxA.length-1}
var filIdx=document.filIdxA[idx];
var capIdx=document.txtIdxA[idx];
var crdIdx=capIdx+1;
//alert(dir+' filIdx:'+filIdx+ ' srcIdxA:'+document.srcIdxA[filIdx]);
doHilight(document.all.item("thm"+idx));
doVisited(document.all.item("item"+idx));
var curObj=rDiv;
doHide(curObj);
curObj.innerHTML='';
curObj.style.padding="0px";
waitMore=maxWait;
if (filIdx>=1000){
  imgSizeSel.disabled=true;
  imgProcSel.disabled=true;
  curObj.innerHTML=getFrame(imgFile(filIdx-1000))
  doVisi(curObj);
  curObj=document.all.item('iViewFrm');
  success=true;
  }
else {
  success=doOther(filIdx,capIdx,crdIdx);
  imgSizeSel.disabled=false;
  imgProcSel.disabled=false;
  //alert(curObj.id)
  doVisi(curObj);
  curObj=document.all.item('slide');
  //alert(curObj.id)

  }
if (!success) {return false}
str$=String(idx)+showIdx$;
aWinNum.innerHTML=str$;
chkCompl(curObj,.1);

if (!idxFlag){
  showIdx.style.display='block';
  aWinNum.style.cursor='hand';
  aWinNum.style.borderColor='blue';
  aWinNum.onclick=togIdx; } 
else {
  aWinNum.style.cursor="default";
  aWinNum.onclick=null;
  aWinNum.style.borderColor='pink';
}
return success;
}

function doOther(filIdx,capIdx,crdIdx) {
  var o=document.imgArray[filIdx];
  if (o==null||document.srcIdxA[filIdx]>=0) {doAdvise('backorder:',aFile(imgList[document.srcIdxA[filIdx]]),5);return false;}
  //viewBody.innerHTML='<div style=\"width:100%;height:100%;background:green;\"></div>';
  var avaW=rDiv.style.pixelWidth;
  var avaH=rDiv.style.pixelHeight-capLineH;
  var inSrc=o.src;
  nowObj=o;
do {
  //alert('avaW:'+avaW+' avaH:'+avaH) 
  var portrait=false;
  var imgW=o.width;
  var imgH=o.height;
  if (magLev==1) {
    imageW=avaW
    imageH=avaH;}
  else {
    imageW=imgW*2;
    imageH=imgH*2;}
  var rF=imgW/imageW;
  var yF=imgH/imageH;
  if (yF>rF){portrait=true;rF=yF;};
  if (magLev>0) {
    imgW=Math.floor(imgW/rF);
    imgH=Math.floor(imgH/rF); 
    if(rF<=1){mode$=' enlarge: '}else{mode$='  reduce: '};
    }
  style$='style=\"position:absolute;top:'+((rDiv.clientHeight/2)-10)+';left:'+((rDiv.clientWidth/2)-100)+';width:200px;text-align:center;color:blue;background:transparent;visibility:visible;\"'
  str$='<img id=\"slide\" style=\"visibility:hidden;border:none;\" src='+inSrc+' width=' +imgW+ 'height='+imgH+'>';
  //str$='<div id=\"slide\" style=\"visibility:hidden;color:red;background:green;\">x</div>';
  str$+='<div id=\"aWinNum\">#</div>';
  str$+='<div id=\"capDiv\">capDiv</div>';
  str$+='<div id=\"statDiv\" '+style$+ '></div>';
  rDiv.innerHTML=str$;
  capDiv.style.width=imgW;
  str$=imgList[capIdx];
  str$+='<div class=cred8>'+imgList[crdIdx]+'</div>';
  str$+='<div class=cpyrt>'+cpyStr+'</div>';
  capDiv.innerHTML=str$;
  avaW=rDiv.clientWidth;
  //alert('imgW:'+imgW+' avaW:'+avaW+' capDiv.style.width:'+capDiv.style.width) 
}
while (magLev==1&&imgW>avaW);

avaH=rDiv.clientHeight-capLineH;
statMsg=document.title + ': ' +o.src+ mode$ +imgW+ 'x' +imgH;

if (imgH>avaH) {
  statMsg+=' scroolTo: x'+(imgH-avaH)+' Viola!';
  rDiv.scrollTop=slide.scrollHeight-avaH;} 
else {
  rDiv.scrollTop=0;
  var pad=rDiv.clientHeight-rDiv.scrollHeight; 
  //alert(pad+' '+rDiv.scrollHeight)
  if (pad>0){rDiv.style.paddingTop=pad;}   
  //rightFrame.viewPort.style.setExpression("paddingTop", pad, "javascript")};
  //rDiv.scrollIntoView( false);
}
statMsg+= layout$(portrait)
return true;
}

  //str$='<iframe id=\"snappy\" scrolling=\"auto\" src=\"about:blank\" '+frameSpec$+'></iframe>';    

  //viewPort.innerHTML=str$;
  //document.all.snappy.src=imgFile(filIdx-1000);
  //alert(snappy.typeName)

  //document.snappy.location.HREF=imgFile(filIdx-1000);
  //document.all.item("viewBody").style.visibility='hidden';
  //document.all.item("viewPort").style.visibility='visible';

  //if (document.all.item("snappy").scrollWidth > .document.body.clientWidth) alert();
  //document.all.item("snappy").width=.document.body.clientWidth;
  //alert(document.all.item("snappy").width);
  //document.all.item("snappy").height=.document.body.clientHeight;
  //alert(document.all.item("snappy").height);

  //chkCompl(document.all.item("snappy"),.5)
  //alert(snappy.location);

//var up$ = '<a class=\"dir\" href=\"javascript:void(0);\" onMouseOver=\"window.status=\'up\'; return true;\" onMouseDown=\"parent.setFunct(parent.slide,\'up\');\">up</a>' 
//var dn$ = '<a class=\"dir\" href=\"javascript:void(0);\" onMouseOver=\"window.status=\'dn\'; return true;\" onMouseDown=\"parent.setFunct(parent.slide,\'dn\');\">dn</a>' 
//var thm$ = '<a class=\"tog\" href=\"javascript:void(0);\" onMouseOver=\"window.status=\'Thumb nail images\'; return true;\" onMouseDown=\"parent.togThm();\">T</a>' 
//var thm$='<button class=\"tog\" id=\"*But\" title=\"rDivButton\" onclick=\"10/21/02 3:14:45 AM10/21/02 3:14:46 AM()\">*</button>'
//var dn$='<button class=\"dir\" id=\"upBut\" title=\"up\" onclick=\"parent.setFunct(parent.slide,\'dn\');\">up</button>'


