From: "Saved by Windows Internet Explorer 8"
Subject: Form 990-N (e-Postcard) Online - View and Print Return
Date: Tue, 8 Jun 2010 14:52:49 -0400
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01CB071A.43A37100"
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18197

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CB071A.43A37100
Content-Type: text/html;
	charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://epostcard.form990.org/DEntry/990NPrint.asp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML lang=3Den><HEAD><TITLE>Form 990-N (e-Postcard) Online - View and =
Print Return</TITLE>
<META content=3D"text/html; charset=3Dwindows-1252" =
http-equiv=3DContent-Type><!-- Including meta data which is written in =
the meta.asp file --><!-- /DEntry/990NPrint.asp -->
<META name=3Ddescription=20
content=3D"Form 990-N (e-Postcard) Online Web Application Development =
Advice.">
<META name=3Dkeywords=20
content=3D"Form 990-N, 990N, Fomr e-Postcard, Form 990, Form 990-EZ, =
Schedule A, Schedule B, Form 8868 Extension, Fundraiser Stuff, IRS - =
Internale Revenue Service, Urban Institue, Electronic Notice - Form =
990-N (e-Postcard)">
<META name=3Dresource-type content=3Ddocument>
<META name=3Ddistribution content=3Dglobal>
<META name=3Dcopyright=20
content=3D"Accuracy Software, India &amp; The Urban Institute &amp; =
Strictly Software, Inc.">
<META name=3Dauthor=20
content=3D"Amit Choudhary (Accuracy Software, India) &amp; Tom Pollak =
(The Urban Institute) &amp; Mark Greider (Strictly Software, Inc.)">
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.18904">
<META name=3Drobots content=3DAll><!-- Title of the page --><!-- =
Including the cascading style sheet file --><LINK=20
rel=3Dstylesheet type=3Dtext/css=20
href=3D"http://epostcard.form990.org/DEntry/style/viewprint.css"><LINK=20
rel=3Dstylesheet type=3Dtext/css=20
href=3D"http://epostcard.form990.org/DEntry/style/viewprint_PrintMedia.cs=
s"=20
media=3Dprint><!-- Including the common JavaScript functions file from =
main site which don't has the sesion timout code -->
<SCRIPT language=3Djavascript type=3Dtext/javascript=20
src=3D"http://epostcard.form990.org/js/JS_outerV1.js"></SCRIPT>

<SCRIPT language=3DJavaScript type=3Dtext/javascript>
		<!--=20
		    //*** Write all your page specific JavaScript functions, logic and =
coding here
		   =20
		    function window_onload()
		    {
			    //*** Window onload function....
			    //*** Put your code here which you want to execute when system =
load this page
			   =20
			    BrowserDetect.init();
			   =20
			    if (BrowserDetect.browser !=3D 'Microsoft Internet Explorer')
                {
                    =
//document.getElementById('trBigHeader').style.display =3D"table-row";
                    try
                    {
                        =
document.getElementById('trBigHeader').style.display =3D"table-row";
                    }
                    catch(errObj)
                    {
                        //alert(errObj.message);
                        =
document.getElementById('trBigHeader').style.display =3D"inline";
                    }
                }
		    }
		//-->
		</SCRIPT>
<!-- Page body starts here... --></HEAD>
<BODY style=3D"MARGIN: 0px" language=3Djavascript onload=3D"return =
window_onload()"><!-- Form starts here...Please use a same name and id =
for the form -->
<FORM id=3DfrmViewPrint method=3Dpost name=3DfrmViewPrint =
action=3D""><IMG class=3DbgIMG=20
src=3D"http://epostcard.form990.org/DEntry/images/bg.gif">=20
<TABLE=20
style=3D"BACKGROUND-IMAGE: url(images/bg.gif); BACKGROUND-REPEAT: =
no-repeat; BACKGROUND-POSITION: center 50%"=20
border=3D0 cellSpacing=3D10 cellPadding=3D0 width=3D"100%" =
align=3Dcenter>
  <TBODY>
  <TR>
    <TD height=3D4 colSpan=3D4>&nbsp;</TD></TR>
  <TR style=3D"DISPLAY: none" id=3DtrBigHeader name=3D"trBigHeader">
    <TD class=3DbigHeaderText colSpan=3D4>Information copy. Do not send =
to=20
  IRS.</TD></TR>
  <TR><!-- Form Heading -->
    <TD width=3D"27%" align=3Dmiddle><FONT =
class=3DnormalText>Form</FONT> <FONT=20
      class=3DformName>990-N</FONT> <FONT =
class=3DsmallText><BR>Department of the=20
      Treasury<BR>Internal Revenue Service</FONT> </TD>
    <TD width=3D"58%" colSpan=3D2 align=3Dmiddle><SPAN =
class=3DformHeading1>Electronic=20
      Notice (e-Postcard)<BR></SPAN><SPAN class=3DformHeading2>for =
Tax-Exempt=20
      Organizations not Required To File Form 990 or 990-EZ </SPAN></TD>
    <TD class=3DnormalText width=3D"15%" align=3Dmiddle>OMB No. =
1545-2085
      <HR>
       <FONT class=3DformName>2009</FONT> </TD></TR>
  <TR>
    <TD colSpan=3D3 align=3Dmiddle>&nbsp;</TD>
    <TD class=3DpublicInspText>Open to Public Inspection </TD></TR>
  <TR>
    <TD class=3DnormalText colSpan=3D4><FONT =
class=3DindexChar>A</FONT>&nbsp; For=20
      the 2009 calendar year, or tax year beginning <FONT=20
      class=3DuserInputs>1/1/2009</FONT>, and ending <FONT=20
      class=3DuserInputs>12/31/2009</FONT>.=20
      <HR>
    </TD></TR>
  <TR>
    <TD vAlign=3Dtop align=3Dleft>
      <TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 width=3D"100%">
        <TBODY>
        <TR>
          <TD class=3DquestionText><FONT =
class=3DindexChar>B</FONT>&nbsp; Check if=20
            applicable </TD></TR>
        <TR>
          <TD class=3DquestionText><INPUT language=3Djavascript=20
            onclick=3D"return false;" value=3Dchk type=3Dcheckbox =
name=3Dn0Term>=20
            Terminated, Out of Business </TD></TR>
        <TR>
          <TD class=3DquestionText><INPUT language=3Djavascript=20
            onclick=3D"return false;" value=3Dchk CHECKED =
type=3Dcheckbox=20
            name=3Dn0LT25K> Gross receipts are normally $25,000 or less =
</TD></TR>
        <TR>
          <TD class=3DquestionText><BR>
            <HR style=3D"HEIGHT: 2px">
            <FONT class=3DindexChar>E</FONT>&nbsp; Website:&nbsp; <FONT=20
            class=3DuserInputs>www.njohmedfoundit.org =
</FONT><BR><BR></TD></TR>
        <TR>
          <TD>&nbsp;</TD></TR></TBODY></TABLE></TD>
    <TD vAlign=3Dtop colSpan=3D2 align=3Dleft>
      <TABLE border=3D0 cellSpacing=3D0 cellPadding=3D0 width=3D"100%">
        <TBODY>
        <TR vAlign=3Dtop>
          <TD class=3DquestionText vAlign=3Dtop colSpan=3D2><FONT=20
            class=3DindexChar>C</FONT>&nbsp; Name of organization: <FONT =

            class=3DuserInputs>NJOH MEDICAL FOUNDATION &amp; ITI =
</FONT></TD></TR>
        <TR>
          <TD class=3DquestionText colSpan=3D2><FONT =
class=3DindexChar>&nbsp;=20
            &nbsp;</FONT>&nbsp; d/b/a: <FONT class=3DuserInputs>Njoh =
Medical=20
            Foundation &amp; International Trade Incorporated Njoh Med =
Found=20
            &amp; IT Inc </FONT>
            <HR>
          </TD></TR>
        <TR>
          <TD class=3DquestionText colSpan=3D2><FONT =
class=3DuserInputs>% Gabriel N=20
            Dikong </FONT></TD></TR>
        <TR>
          <TD class=3DuserInputs width=3D"50%">2795 Thomasville Ct Ste =
1326 </TD>
          <TD class=3DuserInputs width=3D"50%"></TD></TR>
        <TR>
          <TD class=3DuserInputs colSpan=3D2>Cincinnati, OH, US, 45238 =
</TD></TR>
        <TR vAlign=3Dtop>
          <TD class=3DquestionText vAlign=3Dtop colSpan=3D2>
            <HR>
            <FONT class=3DindexChar>F</FONT>&nbsp; Name of Principal =
Officer:=20
            <FONT class=3DuserInputs>Gabriel N Dikong </FONT>
            <HR>
          </TD></TR>
        <TR>
          <TD class=3DuserInputs width=3D"50%">2795 Thomasville Ct Ste =
1326 </TD>
          <TD class=3DuserInputs width=3D"50%"></TD></TR>
        <TR>
          <TD class=3DuserInputs colSpan=3D2>Cincinnati, OH, US, 45238=20
        </TD></TR></TBODY></TABLE></TD>
    <TD vAlign=3Dtop align=3Dleft>
      <TABLE cellSpacing=3D0 cellPadding=3D0 width=3D"100%">
        <TBODY>
        <TR vAlign=3Dtop>
          <TD class=3DquestionText vAlign=3Dtop><FONT=20
            class=3DindexChar>D</FONT>&nbsp; Employer Identification=20
            Number<BR><FONT class=3DuserInputs>74-3203780 =
</FONT><BR><BR></TD></TR>
        <TR>
          <TD>&nbsp;</TD></TR></TBODY></TABLE></TD></TR>
  <TR>
    <TD class=3DquestionText colSpan=3D4><FONT class=3DindexChar>Privacy =
Act and=20
      Paperwork Reduction Act Notice.</FONT> &nbsp;We ask for the =
information on=20
      this form to carry out the Internal Revenue laws of the United =
States. You=20
      are required to give us the information. We need it to ensure that =
you are=20
      complying with these laws. <BR><BR>The organization is not =
required to=20
      provide the information requested on a form that is subject to the =

      Paperwork Reduction Act unless the form displays a valid OMB =
control=20
      number. Books or records relating to a form or its instructions =
must be=20
      retained as long as their contents may become material in the=20
      administration of any Internal Revenue law. The rules governing =
the=20
      confidentiality of the Form 990-N is covered in Code section 6104. =

      <BR><BR>The time needed to complete and file this form and related =

      schedules will vary depending on individual circumstances. The =
estimated=20
      average times is 15 minutes. </TD></TR>
  <TR>
    <TD colSpan=3D4><FONT class=3DnoteHeaderText>Note:</FONT><FONT=20
      class=3DnoteText>&nbsp;This image is provided for your records =
only. Do NOT=20
      mail this page to the IRS. The IRS will not accept this filing via =
paper.=20
      You must file your Form 990-N (e-Postcard) =
electronically.</FONT></TD></TR>
  <TR>
    <TD class=3DquestionText colSpan=3D4><FONT class=3DindexChar>This =
Form 990-N=20
      (e-Postcard) was accepted by the IRS on=20
2/16/2010.</FONT></TD></TR></TBODY></TABLE><!-- Form end here. =
--></FORM><!-- Page body end here. --></BODY></HTML>

------=_NextPart_000_0000_01CB071A.43A37100
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://epostcard.form990.org/DEntry/images/bg.gif

R0lGODlhQwKlAfcAAAAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4O
Dg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEh
ISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0
NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdH
R0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpa
WltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1t
bW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CA
gIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOT
k5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn6CgoKGhoaKioqOjo6SkpKWlpaam
pqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+vr7CwsLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5
ubq6uru7u7y8vL29vb6+vr+/v8DAwMHBwcLCwsPDw8TExMXFxcbGxsfHx8jIyMnJycrKysvLy8zM
zM3Nzc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY2NnZ2dra2tvb29zc3N3d3d7e3t/f
3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr6+zs7O3t7e7u7u/v7/Dw8PHx8fLy
8vPz8/T09PX19fb29vf39/j4+Pn5+fr6+vv7+/z8/P39/f7+/v///ywAAAAAQwKlAQAI/wD/CRxI
sKDBgwgTKlzIsKHDhxAjSpxIsaLFixgzatzIsaPHjyBDihxJsqTJkyhTqlzJsqXLlzBjypxJs6bN
mzhzJtznTqfPn0CDCh1KtKhEddHA+TPKtKnTp1CjSk0YD5szZ+Kmat3KtavXrxrvfbtKdh7Ys2jT
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
KqaiKq4iK7aiYwUEADs=

------=_NextPart_000_0000_01CB071A.43A37100
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://epostcard.form990.org/DEntry/style/viewprint.css

BODY {
	FONT-FAMILY: Arial, Verdana, Tahoma, Helvetica, sans-serif; =
MARGIN-LEFT: 5%; FONT-SIZE: 12px; MARGIN-RIGHT: 5%
}
.bgIMG {
	Z-INDEX: -5; POSITION: absolute; DISPLAY: none
}
.formName {
	TEXT-ALIGN: center; FONT-SIZE: 36px; FONT-WEIGHT: bold
}
.formHeading1 {
	TEXT-ALIGN: center; FONT-SIZE: 21px; FONT-WEIGHT: bold
}
.formHeading2 {
	TEXT-ALIGN: center; FONT-SIZE: 12px; FONT-WEIGHT: bold
}
.normalText {
	FONT-SIZE: 12px
}
.publicInspText {
	TEXT-ALIGN: center; BACKGROUND-COLOR: black; COLOR: white; FONT-SIZE: =
12px; FONT-WEIGHT: bold
}
.smallText {
	FONT-SIZE: 10px
}
HR {
	HEIGHT: 1px; COLOR: black
}
.indexChar {
	TEXT-ALIGN: left; FONT-SIZE: 12px; FONT-WEIGHT: bold
}
.userInputs {
	TEXT-ALIGN: left; FONT-SIZE: 12px; FONT-WEIGHT: bold; TEXT-DECORATION: =
underline
}
.questionText {
	TEXT-ALIGN: left; FONT-SIZE: 12px
}
.noteHeaderText {
	TEXT-ALIGN: left; COLOR: red; FONT-SIZE: 16px; FONT-WEIGHT: bold; =
TEXT-DECORATION: underline
}
.noteText {
	TEXT-ALIGN: left; COLOR: red; FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.bigHeaderText {
	TEXT-ALIGN: center; COLOR: red; FONT-SIZE: 26px; FONT-WEIGHT: bold
}

------=_NextPart_000_0000_01CB071A.43A37100
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://epostcard.form990.org/DEntry/style/viewprint_PrintMedia.css

BODY {
	FONT-FAMILY: Arial, Verdana, Tahoma, Helvetica, sans-serif; =
MARGIN-LEFT: 5%; FONT-SIZE: 12px; MARGIN-RIGHT: 5%
}
.bgIMG {
	Z-INDEX: -5; POSITION: absolute; DISPLAY: block
}
.formName {
	TEXT-ALIGN: center; FONT-SIZE: 36px; FONT-WEIGHT: bold
}
.formHeading1 {
	TEXT-ALIGN: center; FONT-SIZE: 21px; FONT-WEIGHT: bold
}
.formHeading2 {
	TEXT-ALIGN: center; FONT-SIZE: 12px; FONT-WEIGHT: bold
}
.normalText {
	FONT-SIZE: 12px
}
.publicInspText {
	TEXT-ALIGN: center; BACKGROUND-COLOR: black; COLOR: white; FONT-SIZE: =
12px; FONT-WEIGHT: bold
}
.smallText {
	FONT-SIZE: 10px
}
HR {
	HEIGHT: 1px; COLOR: black
}
.indexChar {
	TEXT-ALIGN: left; FONT-SIZE: 12px; FONT-WEIGHT: bold
}
.userInputs {
	TEXT-ALIGN: left; FONT-SIZE: 12px; FONT-WEIGHT: bold; TEXT-DECORATION: =
underline
}
.questionText {
	TEXT-ALIGN: left; FONT-SIZE: 12px
}
.noteHeaderText {
	TEXT-ALIGN: left; COLOR: red; FONT-SIZE: 16px; FONT-WEIGHT: bold; =
TEXT-DECORATION: underline
}
.noteText {
	TEXT-ALIGN: left; COLOR: red; FONT-SIZE: 14px; FONT-WEIGHT: bold
}
.bigHeaderText {
	TEXT-ALIGN: center; COLOR: red; FONT-SIZE: 26px; FONT-WEIGHT: bold
}

------=_NextPart_000_0000_01CB071A.43A37100
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://epostcard.form990.org/js/JS_outerV1.js

//***********************************************************************=
**
//	Name : formavalidation.js
//	Description	: Contains generic data validation functions in =
javascript
//				  for form's data validation like email validation function,=20
//				  zip validation function etc.
//	Created : 24th September, 03
//	Author : Amit Choudhary
//	Last ModiFied :	11th April, 08
//	Last ModiFied By : Amit Choudhary
//***********************************************************************=
**

// JScript source code
//	Declaring some global variables	for holding temporary values for =
calculation
	var i, j, strlen;=20
	var strchar =3D new String("");

// Left Trim Function=09
function LTrim(StringToTrim){
	StringToTrim =3D new String(StringToTrim);

//	This function trims a string from the left edge
	for(i =3D 0 ;i < StringToTrim.length; i++){
		strchar =3D StringToTrim.charAt(i);
		if ( (strchar =3D=3D " ") || (strchar =3D=3D "\t") || (strchar =3D=3D =
"\n") || (strchar =3D=3D "\r") ){
			StringToTrim =3D StringToTrim.substr(i+1);
			i--;
		}
		else
			break;
	}
	return StringToTrim;
}

// Right Trim Function=09
function RTrim(StringToTrim){
	StringToTrim =3D new String(StringToTrim);
=09
//	This function trims a string from the right edge
	for(i =3D StringToTrim.length - 1 ; i > -1 ; i--){
		strchar =3D StringToTrim.charAt(i);
		if ( (strchar =3D=3D " ") || (strchar =3D=3D "\t") || (strchar =3D=3D =
"\n") || (strchar =3D=3D "\r") ){
			StringToTrim =3D StringToTrim.substr(0,i);
		}
		else
			break;
	}
	return StringToTrim;
}

// Trim Function (Just calling LTrim and RTrim function in that)
function Trim(StringToTrim){
//	This function trims a string for triming a string it will call the =
LTrim and RTrim function
	return  LTrim(RTrim(StringToTrim));
}

// This Function Can Be Used To Maximize The Browser Window.
// To Do That We Need To Make A Call This Function In The =
window_onload() Event Of The Document
function Maximize_Window(){
	top.window.moveTo(0,0);=20
	if (document.all)=20
		top.window.resizeTo(screen.availWidth,screen.availHeight);=20
	else if (document.layers || document.getElementById){=20
		if (top.window.outerHeight < screen.availHeight || =
top.window.outerWidth < screen.availWidth){=20
			top.window.outerHeight =3D top.screen.availHeight;=20
			top.window.outerWidth =3D top.screen.availWidth;=20
		}=20
	}=20
}

// This Functions Can Be Used To Blink The Given Text Using The <blink> =
tag.
// To Do So You Need To Put The Text Between <blink> & </blink> tags & =
Then Call
// startBlink() Function On The Onload Event Of The Page, Wbich Inturn =
Calls doBlink() Function
// You Can Also Set The Timing For Blinking By Specifying BlinkRate =
Argument.

// Example of calling : window.onload =3D startBlink(1000);
function doBlink(){
  // Blink, Blink, Blink...
  var blink =3D document.all.tags("BLINK")
 =20
  var boolDisplay;
	for (var i=3D0; i < blink.length; i++){
		if (blink[0].style.visibility =3D=3D "")
			boolDisplay =3D "hidden";
		else
			boolDisplay =3D "";
		blink[i].style.visibility =3D boolDisplay;
	}
	if(boolDisplay =3D=3D "hidden"){
		//doBlink();
		window.setTimeout('doBlink();',500);
	}
}

function startBlink(BlinkRate){
  // Make sure it is IE4
  if (document.all)
    setInterval("doBlink()",BlinkRate)
}

//	Check the Zip code if it is invalid than return false else return =
true  =09
//	Valid Zip Code : 12345-6789-12 or 12345-6789 or 12345
function isValidZip(strZip){
	strZip =3D new String(Trim(strZip));
	strlen =3D strZip.length;
	if((strlen > 13) || !((strlen =3D=3D 5) || (strlen =3D=3D 10) || =
(strlen =3D=3D 13)))
		return false;
	else{=09
		for( i =3D 0;i < strlen ;i++){
			strchar =3D strZip.charAt(i);
			if((i =3D=3D 5 && strchar !=3D "-") || (i =3D=3D 10 && strchar !=3D =
"-"))
				return false;
			if(strchar =3D=3D " ")
				return false;
			if( ((i !=3D 5) && (i !=3D 10)) && (isNaN(strchar) =3D=3D true))
				return false;
		}=09
	}
	ZipArray =3D strZip.split("-");
	for(j =3D 0; j < ZipArray.length; j++){
		if(ZipArray[j] < 1)
			return false;
	}
	// Valid Zip Code
	return true;
}

//	Check the Phone or Fax Number if it is invalid than return false else =
return true
//	Valid Phone or Fax No. : 123-456-7890
function isValidPhone_Fax(strPhone_Fax){
	strPhone_Fax =3D new String(strPhone_Fax);
	strlen =3D strPhone_Fax.length;
	if(strlen !=3D 12 )
		return false;
	else{
		for( i =3D 0;i < strlen ;i++){
			strchar =3D strPhone_Fax.charAt(i);
			if((i =3D=3D 3 && strchar !=3D "-") || (i =3D=3D 7 && strchar !=3D =
"-"))
				return false;
			if(strchar =3D=3D " ")
				return false;
			if( ((i !=3D 3) && (i !=3D 7)) && (isNaN(strchar) =3D=3D true))
				return false;
		}
	}
	// Valid Phone or Fax No.
	return true;
}

//	Check the Phone or Fax Number Without Area Code if it is invalid than =
return false else return true
//	Valid Phone or Fax No. Withou Area Code is  : 456-7890
function isValidPhone_Fax_WithOutAreaCode(strPhone_Fax){
	strPhone_Fax =3D new String(strPhone_Fax);
	strlen =3D strPhone_Fax.length;
	if(strlen !=3D 8 )
		return false;
	else{=09
		for( i =3D 0;i < strlen ;i++){
			strchar =3D strPhone_Fax.charAt(i);
			if(i =3D=3D 3 && strchar !=3D "-")=20
				return false;
			if(strchar =3D=3D " ")
				return false;
			if( (i !=3D 3)  && (isNaN(strchar) =3D=3D true))
				return false;
		}
	}
	Phone_FaxArray =3D strPhone_Fax.split("-");

	for(j =3D 0; j < Phone_FaxArray.length; j++){
	    // The Phone/Fax Nos Containing 0000/000 (In Short Zeros) Between =
The Dashes=20
	    // Could Be Allowed As Valid Numbers

		//original condition		if(Phone_FaxArray[j] < 1)
		if(Phone_FaxArray[j] < 0)
			return false;
	}
	// Valid Phone or Fax No Without Area Code.
	return true;
}

//	Check the Email Address if it is invalid  than return false else =
return true
function isValidEmail(strEmail){
	var splitted =3D strEmail.match("^(.+)@(.+)$");
	if(splitted =3D=3D null)=20
		return false;
	if(splitted[1] !=3D null ){
		var regexp_user=3D/^\"?[\w-_\.]*\"?$/;
		if(splitted[1].match(regexp_user) =3D=3D null)=20
			return false;
	}
	if(splitted[2] !=3D null){
		var regexp_domain=3D/^[\w-\.]*\.[A-Za-z]{2,4}$/;
		if(splitted[2].match(regexp_domain) =3D=3D null){
			var regexp_ip =3D/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
			if(splitted[2].match(regexp_ip) =3D=3D null)=20
				return false;
		}
		return true;
	}
	return false;
}

//	Check the Web Address if it is invalid than return false else return =
true
function isValidWebAddress(strWeb){
	strWeb =3D new String(strWeb);
	strlen =3D strWeb.length;
	var strFlagWebP =3D 0;
	var strPosWebP =3D 0;
	for(i =3D 0;i<strlen;i++){
		strchar =3D strWeb.charAt(i);
		if(strchar =3D=3D " ")
			return false;
		if(strchar =3D=3D "."){
			if( (i =3D=3D 0))
				return false;
			strPosWebP =3D i;
			strFlagWebP++;
		}
	}
	//if( (strFlagWebP =3D=3D 0) || ((strlen - strPosWebP) < 3) || =
(strPosWebP =3D=3D 0) || (strPosWebP < 2) || ((strlen - strPosWebP) > =
5))
	if( (strFlagWebP =3D=3D 0) || ((strlen - strPosWebP) < 3) || =
(strPosWebP =3D=3D 0) || (strPosWebP < 2) )
		return false;
	else	// Valid Web Address
		return true;
}

//	Check the passing number for Integer value if it's not an Integer =
number than return false else return true
function isValidInteger(strNumber){
	if(strNumber<0)
		strNumber=3DstrNumber.substring(1) =20
	strNumber =3D new String(strNumber);
	strlen =3D strNumber.length;
	for( i =3D 0;i < strlen ;i++){
		strchar =3D strNumber.charAt(i);
		if (isNaN(strchar) =3D=3D true)
			return false;
	}
	// Valid Integer number
	return true;
}

function validateNNInteger(objControl){
	// Checking that the passing Number Should Be Integer And Should Be =
Greater Than Or Equal To 1
=09
	// If The Function Is Called And The Control Is Not Exist
	// Then Simply Return From This Function
	if(!objControl)
		return;
=09
	if(objControl.readOnly)
		return true;
	=09
	strNumber =3D objControl.value;
 	var num =3D BackToMoney(strNumber);
 =09
 	num =3D num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
		num =3D "0";
=09
	if(parseFloat(num) < 0){
		objControl.value =3D num;
		objControl.select();
		alert("This control cannot hold  negative number. Please re-enter your =
number.");
		objControl.value =3D "0";=09
		setTimeout(function(){ objControl.focus(); objControl.select(); },1);
		return false;
	}
=09
	// Valid Integer number
	objControl.value =3D parseInt(num);
	return true;
}

//	Convert the passing number in decimal number up two two digit after =
decimal
function to_Decimal(strNumber){
	strNumber =3D Trim(strNumber);
	strNumber =3D new String(strNumber);
=09
	strNumber=3D""+Math.round(100*strNumber);  =20
	var is_negative=3D(strNumber<0)? true:false; =20
	if(is_negative)
		strNumber=3DstrNumber.substring(1) =20
	while (strNumber.length <=3D 2){	 =20
		strNumber=3D"0"+strNumber
	} =20
	var dec_point=3DstrNumber.length-2; =20
	var first_part=3DstrNumber.substring(0,dec_point); =20
	var second_part=3DstrNumber.substring(dec_point); =20
	var result=3Dfirst_part+"."+second_part; =20
	var sign=3Dis_negative? "-":"";=20
	=09
	return sign + result;
}

//	Convert the passing number to US $ currency
function to_Currency(strNumber){ =20
	if(strNumber < 0){
		//return  "-" + "$" + to_Decimal(strNumber.substring(1));
		return  "-" + to_Decimal(strNumber.substring(1));
	}
	else{
		//return  "$" + to_Decimal(strNumber);
		return  to_Decimal(strNumber);
	}
}

// Check if passing argument is blank or not, if that is blank than =
retrun true else return false
function ifBlank(str){
	str =3D new String(Trim(str));
	if (str.length=3D=3D0)
		return true;
	return false;=09
}

// Check if passing argument is blank or not, if that is blank than =
retrun false else return true
function validateblank(str){
	str =3D Trim(str);
	str =3D new String(str);
	if (str.length=3D=3D0)
		return false;
	return true;=09
}

// Added New Functions Which Will Round Off The Given Number Upto =
Specified Number Of Decimal Places
function RoundDecimals(original_number, decimals){
    var result1 =3D original_number * Math.pow(10, decimals)
    var result2 =3D Math.round(result1)
    var result3 =3D result2 / Math.pow(10, decimals)
   =20
    if (isNaN(result3))
		return "0.00";
	else
		return pad_with_zeros(result3, decimals);
}

function pad_with_zeros(rounded_value, decimal_places){

    // Convert the number to a string
    var value_string =3D rounded_value.toString()
   =20
    // Locate the decimal point
    var decimal_location =3D value_string.indexOf(".")

    // Is there a decimal point?
    if (decimal_location =3D=3D -1){
        // If no, then all decimal places will be padded with 0s
        decimal_part_length =3D 0
       =20
        // If decimal_places is greater than zero, tack on a decimal =
point
        value_string +=3D decimal_places > 0 ? "." : ""
    }
    else{
        // If yes, then only the extra decimal places will be padded =
with 0s
        decimal_part_length =3D value_string.length - decimal_location - =
1
    }
   =20
    // Calculate the number of decimal places that need to be padded =
with 0s
    var pad_total =3D decimal_places - decimal_part_length
   =20
    if (pad_total > 0){
        // Pad the string with 0s
        for (var counter =3D 1; counter <=3D pad_total; counter++)=20
            value_string +=3D "0"
        }
    return value_string;
}

function validateFLOAT(strNumber)
{
 	var num =3D Math.round(BackToMoney(strNumber));
    num =3D num.toString().replace(/\$|\,/g,'');
 =09
 	if(isNaN(num))
		num =3D "0";
=09
	if(parseFloat(num) < 0)
		sign =3D "-"
	else
		sign =3D ""
	//sign =3D (num =3D=3D (num =3D Math.abs(num)));
	num =3D Math.abs(num);
=09
	num =3D Math.floor(num*100+0.50000000001);
	num =3D Math.floor(num/100).toString();

	for (var i =3D 0; i < Math.floor((num.length-(1+i))/3); i++)
		num =3D num.substring(0,num.length-(4*i+3))+','+
=09
	num.substring(num.length-(4*i+3));
=09
	var rtnValue;
	if(sign =3D=3D "")
		rtnValue =3D num;
	else
		rtnValue =3D '-' + num;
=09
	return rtnValue;
}

function validateNNFLOAT(objControl){
	// If The Function Is Called And The Control Is Not Exist
	// Then Simply Return From This Function
	if(!objControl)
		return;
=09
	// If The Function Is Called And The Control Is Readonly
	// Then Simply Return From This Function
	if(objControl.readOnly)
		return true;
	=09
	strNumber =3D objControl.value;
//	alert ("B:strNumber =3D " + strNumber)
 	var num =3D Math.round(BackToMoney(strNumber));
//	var vName;
 =09
 	num =3D num.toString().replace(/\$|\,/g,'');
 =09
	if(isNaN(num))
		num =3D "0";
=09
	if(parseFloat(num) < 0)	{
		objControl.value =3D num;
		objControl.select();
		alert("This control cannot hold  negative number. Please re-enter your =
data.");
		objControl.value =3D "0";=09
		setTimeout(function(){ objControl.focus(); objControl.select(); },1);
		return false;
	}

	num =3D Math.abs(num);
=09
	num =3D Math.floor(num*100+0.50000000001);
//	cents =3D num%100;
	num =3D Math.floor(num/100).toString();

//	if(cents<10)
//		cents =3D "0" + cents;
=09
	for (var i =3D 0; i < Math.floor((num.length-(1+i))/3); i++)
		num =3D num.substring(0,num.length-(4*i+3))+','+
=09
	num.substring(num.length-(4*i+3));
=09
	var rtnValue;
=09
//	rtnValue =3D num + '.' + cents;
	rtnValue =3D num;
=09
	objControl.value =3D rtnValue;
//	objControl.value =3D Math.round(rtnValue);
	return true;
}

function validateRealNumber(strNumber){
	//var valid=3D"1234567890.+-*/()%";
	var valid=3D"1234567890.+-*/";
	var validSign =3D "+-*/.";
	var invalidSignFirstPos =3D "*/";
	var intValidSignPos, boolValidSignPos;
	intValidSignPos =3D 0;
	boolValidSignPos =3D false;
	var num =3D String(strNumber);
	if(num.length =3D=3D 0 || =
invalidSignFirstPos.indexOf(num.charAt(0))!=3D -1 || (num.length =3D=3D =
1 && validSign.indexOf(num.charAt(0))!=3D -1) || =
(validSign.indexOf(num.charAt(num.length -1))!=3D -1) ){=09
		num =3D "0";
		strNumber =3D 0;
	}
	var boolValid =3D true;
	for(i=3D0;i<num.length;i++){
		if(valid.indexOf(num.charAt(i))=3D=3D-1){
			boolValid =3D false;
			i =3D num.length;
		}
		else{
			if(validSign.indexOf(num.charAt(i))!=3D -1){
				if(boolValidSignPos =3D=3D false){
					intValidSignPos =3D i
					boolValidSignPos =3D true;
				}
				else{
					if(i - intValidSignPos <=3D 1){
						boolValid =3D false;
						i =3D num.length;
					}
					else{
						intValidSignPos =3D i;
						boolValidSignPos =3D true;
					}
				}
			}
		}
	}
	if(boolValid =3D=3D true){
		strNumber =3D eval(num);
		return to_Decimal(strNumber);
	}
	else{
		//var floatMASK =3D /^-(\d{1,15})(\.\d{1,4})?$/
		var floatMASK =3D /^-{0,1}\d*\.{0,1}\d+$/

		var matchArray =3D strNumber.match(floatMASK)
		=20
		if (matchArray=3D=3Dnull){
			//errMsg =3D "Not a valid numeric format.";
			//alert(errMsg+ ' (' + strNumber + ')');
			//isError=3Dtrue
			return "0";
		}
	}
}
=20
function BackToMoney(num){
	num =3D new String(num);
	if(num.lastIndexOf('.') > 0){
		if(num.lastIndexOf('.') =3D=3D (num.length-1)){
			num =3D num.substr(0,(num.length-1));
		}
	}

	//	alert("num =3D " + num);
	num =3D num.toString().replace(/\$|\,/g,'');
=09
	//*** The Below Code Will Calculate The Value If The Value Contain Any =
Of The
	//*** Four Simple Arithmetic Sign (+,-,* and /). Than That Calculate =
Value
	//*** Will Be Used For Further Processing.
=09
	//var valid=3D"1234567890.+-*/()%";
	var valid=3D"1234567890.+-*/";
	var validSign =3D "+-*/.";
	var invalidSignFirstPos =3D "*/";
	var intValidSignPos, boolValidSignPos;
	intValidSignPos =3D 0;
	boolValidSignPos =3D false;
	var strnum =3D String(num);
	if(strnum.length =3D=3D 0 || =
invalidSignFirstPos.indexOf(strnum.charAt(0))!=3D -1 || (strnum.length =
=3D=3D 1 && validSign.indexOf(strnum.charAt(0))!=3D -1) || =
(validSign.indexOf(strnum.charAt(strnum.length -1))!=3D -1) ){=09
		strnum =3D "0";
		num =3D 0;
	}
	var boolValid =3D true;
	for(i=3D0;i<strnum.length;i++){
		if(valid.indexOf(strnum.charAt(i))=3D=3D-1){
			boolValid =3D false;
			i =3D strnum.length;
		}
		else{
			if(validSign.indexOf(strnum.charAt(i))!=3D -1){
				if(boolValidSignPos =3D=3D false){
					intValidSignPos =3D i
					boolValidSignPos =3D true;
				}
				else{
					if(i - intValidSignPos <=3D 1){
						boolValid =3D false;
						i =3D strnum.length;
					}
					else{
						intValidSignPos =3D i;
						boolValidSignPos =3D true;
					}
				}
			}
		}
	}=09

	var arrCalc, intCalcCounter, intSignsCounter, arrSigns, strSigns;
	strSigns =3D new String("+,-,*,/");
	arrSigns =3D strSigns.split(",");
	if(boolValid =3D=3D true)
		num =3D eval(num);
=09
	//	alert("num =3D " + num);
	if(isNaN(num))
		num =3D "0";
	=09
	num =3D (Math.round(num));
//	alert("num =3D " + num);
=09
	if(parseFloat(num) < 0)
		sign =3D "-"
	else
		sign =3D ""
	//sign =3D (num =3D=3D (num =3D Math.abs(num)));
	num =3D Math.abs(num);
//	alert("sign =3D " + sign);
	num =3D Math.floor(num*100+0.50000000001);
	cents =3D num%100;
	num =3D Math.floor(num/100).toString();
	if(cents<10)
		cents =3D "0" + cents;
	for (var i =3D 0; i < Math.floor((num.length-(1+i))/3); i++)
		num.substring(num.length-(4*i+3));
	=09
//	alert("num =3D " + num);
//	alert("cents =3D " + cents);
=09
	var rtnValue;
=09
	if(sign =3D=3D "")
		rtnValue =3D num + '.' + cents;
	else
		rtnValue =3D '-' + num + '.' + cents;

//	rtnValue =3D num + '.' + cents;
=09
//	alert(rtnValue);
=09
	return rtnValue;
=09
//	return (((sign)?'':'-') + num + '.' + cents);
}

function validateNumberLength(strNumber, intLen){
	strNumber =3D new String(strNumber);
	if (strNumber.length !=3D intLen)
		return false;
	else
		return isValidInteger(strNumber);
}

function isValidCalendarYear(dtStart, dtEnd){
	var tempDateArray
	tempDateArray =3D dtStart.split("-");
	dtStart =3D tempDateArray.join("/");
	=09
	tempDateArray =3D dtEnd.split("-");
	dtEnd =3D tempDateArray.join("/");
=09
	dtStart =3D new Date(dtStart);
	dtEnd =3D new Date(dtEnd);
=09
	if (dtEnd <=3D dtStart)
		return false;
	=09
	var dtStartYear =3D dtStart.getFullYear();
=09
	var dtEndYear =3D dtEnd.getFullYear();
=09
	var isLeapFeb =3D (((dtStartYear % 4 =3D=3D 0 && (dtStartYear % 100 =
!=3D 0 || dtStartYear % 400 =3D=3D 0)) && dtStart.getMonth() <=3D 1) || =
((dtEndYear % 4 =3D=3D 0 && (dtEndYear % 100 !=3D 0 || dtEndYear % 400 =
=3D=3D 0)) && (dtEnd.getMonth() > 1 || (dtEnd.getMonth() =3D=3D 1 && =
dtEnd.getDate() =3D=3D 29))))
=09
	var DateDiff =3D new Date();
=09
	DateDiff.setTime(Math.abs(dtEnd.getTime() - dtStart.getTime()));
=09
	var TimeDiff =3D DateDiff.getTime();
=09
	var DayDiff =3D Math.ceil(TimeDiff / (1000 * 60 * 60 * 24));=20
=09
	//if ( (isLeapFeb =3D=3D true && DayDiff !=3D 365) || (isLeapFeb =3D=3D =
false && DayDiff !=3D 364))
	//	return false;
=09
	if ( (isLeapFeb =3D=3D true && DayDiff > 365) || (isLeapFeb =3D=3D =
false && DayDiff > 364))
		return false;
=09
	// Valid Calendar Year
	return true;
}

function isValidCalendarDiff(dtStart, dtEnd){
	var tempDateArray
	tempDateArray =3D dtStart.split("-");
	dtStart =3D tempDateArray.join("/");
	=09
	tempDateArray =3D dtEnd.split("-");
	dtEnd =3D tempDateArray.join("/");
=09
	dtStart =3D new Date(dtStart);
	dtEnd =3D new Date(dtEnd);
=09
	if (dtEnd <=3D dtStart)
		return false;
	=09
	var dtStartYear =3D dtStart.getFullYear();
=09
	var dtEndYear =3D dtEnd.getFullYear();
=09
	var isLeapFeb =3D (((dtStartYear % 4 =3D=3D 0 && (dtStartYear % 100 =
!=3D 0 || dtStartYear % 400 =3D=3D 0)) && dtStart.getMonth() <=3D 2) || =
((dtEndYear % 4 =3D=3D 0 && (dtEndYear % 100 !=3D 0 || dtEndYear % 400 =
=3D=3D 0)) && dtEnd.getMonth() > 1))
=09
	var DateDiff =3D new Date();
	var MonthDiff =3D new Date();
=09
//	var 	MonthDiff =3D dtEnd.getMonth() - dtStart.getMonth();=09
//	if ( (MonthDiff >=3D 8 ) || (MonthDiff < 0))
//		return false;
	var thisdate =3D new Date();
	thisdate.setDate(dtStart.getDay(), dtStart.getMonth() + 2, =
dtStart.getYear())
	alert(thisdate);
=09
	DateDiff.setTime(Math.abs(dtStart.getTime() - dtEnd.getTime()));=09
	var TimeDiff =3D DateDiff.getTime();
=09
	var DayDiff =3D Math.ceil(TimeDiff / (1000 * 60 * 60 * 24));=20
	//alert(DayDiff);
=09
	//if ( (isLeapFeb =3D=3D true && DayDiff !=3D 365) || (isLeapFeb =3D=3D =
false && DayDiff !=3D 364))
	//	return false;
=09
	if ( (isLeapFeb =3D=3D true && DayDiff > 365) || (isLeapFeb =3D=3D =
false && DayDiff > 364))
		return false;
=09
	// Valid Calendar Year
	return true;
}

function isValidFullCalendarYear(dtStart, dtEnd){
	var tempDateArray
	tempDateArray =3D dtStart.split("-");
	dtStart =3D tempDateArray.join("/");
	=09
	tempDateArray =3D dtEnd.split("-");
	dtEnd =3D tempDateArray.join("/");
=09
	dtStart =3D new Date(dtStart);
	dtEnd =3D new Date(dtEnd);
=09
	if (dtEnd <=3D dtStart)
		return false;
	=09
	var dtStartYear =3D dtStart.getFullYear();
=09
	var dtEndYear =3D dtEnd.getFullYear();
=09
	var isLeapFeb =3D (((dtStartYear % 4 =3D=3D 0 && (dtStartYear % 100 =
!=3D 0 || dtStartYear % 400 =3D=3D 0)) && dtStart.getMonth() <=3D 1) || =
((dtEndYear % 4 =3D=3D 0 && (dtEndYear % 100 !=3D 0 || dtEndYear % 400 =
=3D=3D 0)) && (dtEnd.getMonth() > 1 || (dtEnd.getMonth() =3D=3D 1 && =
dtEnd.getDate() =3D=3D 29))))
=09
	var DateDiff =3D new Date();
=09
	DateDiff.setTime(Math.abs(dtEnd.getTime() - dtStart.getTime()));
=09
	var TimeDiff =3D DateDiff.getTime();
=09
	var DayDiff =3D Math.ceil(TimeDiff / (1000 * 60 * 60 * 24));=20
=09
	if ( (isLeapFeb =3D=3D true && DayDiff !=3D 365) || (isLeapFeb =3D=3D =
false && DayDiff !=3D 364))
		return false;
=09
	// Valid Calendar Year
	return true;
}

//Check the passing array string for a element if found then return true =
else return false
function IsArrayContainPassingElement(arrStr, strValue){
	var intcounter;
	for( intcounter =3D 0; intcounter < arrStr.length; intcounter++){
		if( String(Trim(arrStr[intcounter])).toLowerCase() =3D=3D  =
String(Trim(strValue)).toLowerCase() )
			return true;
	}
	return false;
}

//*** The below function will attach the specified events to the passing =
object
//*** This function will work on both type of browsers (IE or Netscape =
dervied)
function addEvent(obj, evType, fn, useCapture){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, useCapture);
		return true;
	}=20
	else if (obj.attachEvent){
		var r =3D obj.attachEvent("on"+evType, fn);
		return r;
	}=20
	else{
		alert("Handler could not be attached");
	}
}=20

//*** The below function will remove the specified events from the =
passing object
//*** This function will work on both type of browsers (IE or Netscape =
dervied)
function removeEvent(obj, evType, fn, useCapture){
	if (obj.removeEventListener){
		obj.removeEventListener(evType, fn, useCapture);
		return true;
	}=20
	else if (obj.detachEvent){
		var r =3D obj.detachEvent("on"+evType, fn);
		return r;
	}=20
	else{
		alert("Handler could not be removed");
	}
}=20

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//	For getting handle of the window which show the help for a particular =
field
	var childWindow, childWindowWidth, childWindowHeight;
=09
	if(window.screen.width < 800)
		childWindowWidth =3D 600;
	else
		childWindowWidth =3D window.screen.width - 200;
=09
	if(window.screen.height < 700)
		childWindowHeight =3D 500;
	else
		childWindowHeight =3D window.screen.height - 200;
	=20
//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//	For Defining initial shape and behaviour of the new window
	var strWinProp

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//	Specifying initial shape and behaviour of the new window
	//	Back, Forward, etc...
	strWinProp =3D " toolbar=3Dno" =20
	//	URL field(Address Bar)
	+ ",location=3Dno"		=09
	//	"What's New", etc...
	+ ",directories=3Dno"		=09
	//	Status Bar at bottom of window.
	+ ",status=3Dyes"			=09
	//	Menubar at top of window.
	+ ",menubar=3Dno"			=09
	//	Allow resizing by dragging.=20
	+ ",resizable=3D0"	//	1 =3D "yes", 0 =3D "no"	=09
	//	Displays scrollbars if document is larger than window.
	+ ",scrollbars=3Dyes"		=09
	//	Enable/Disable titlebar resize capability.
	+ ",titlebar=3Dyes"		=09
	//	Defining width of window equal to current screen width
	+ ",width=3D"+childWindowWidth
	//	Offset of windows left edge from screen.
	+ ",left=3D"+(((window.screen.width) - childWindowWidth)	/2)				=09
	//	Defining height of window equal to current screen height - =
55(pixcel)
	//	so the taskbar is also visible
	+ ",height=3D"+childWindowHeight
	//	 Offset of windows top edge from screen.
	+ ",top=3D"+(((window.screen.height) - childWindowHeight)	/2)			=09
	+ "";

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** Open the child window with the specified URL passed to that
function Open_Show_childWindow(strURL)
{
	var myString =3D new String(strURL);
	//alert(myString);

	if(childWindow && childWindow.open && !childWindow.closed)
	{
		//*** Checking if the childWindow is exist and not closed than
		//*** replace it's location to the new Url(myString)
		//*** and set focus on it
		childWindow.location.replace(myString);
		childWindow.focus();
	}
	else
	{
		//*** childWindow is not exist so open a new window with the
		//*** specifyed Url(myString) and initial parameter (strWinProp)
		//*** and take this window's handle in to the childWindow
		//*** so we can reuse this window
		childWindow =3D window.open(myString,'wndChild',strWinProp);
		if(childWindow && childWindow.open && !childWindow.closed)
		    childWindow.focus();
	}
=09
	removeEvent(window, 'focus', window_onfocuswhilechildwinodwopen, =
false);
	addEvent(window, 'focus', window_onfocuswhilechildwinodwopen, false);
=09
	removeEvent(window, 'unload', window_onunloadwhilechildwinodwopen, =
false);
	addEvent(window, 'unload', window_onunloadwhilechildwinodwopen, false);
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** Check the parent window focus event and if the child window=20
//*** is open at that time than set the focus back to the child window
function window_onfocuswhilechildwinodwopen()
{
	if(childWindow && childWindow.open && !childWindow.closed)
	{
		//*** Checking if the childWindow is exist and not closed than
		//*** set focus on it
		childWindow.focus();
	}
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** Check the parent window unload event and if the child window=20
//*** is open at that time than close the child window
function window_onunloadwhilechildwinodwopen()
{
	if(childWindow && childWindow.open && !childWindow.closed)
	{
		//*** Checking if the childWindow is exist and not closed than
		//*** close it
		childWindow.close();
	}
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** Check the child window unload event and if the parent window=20
//*** is open at that time than set focus to the parent window
function window_onunloadwhileparentwinodwopen()
{
	if(opener && opener.open && !opener.closed)
	{
		//*** Checking if the parent Window is exist and not closed than
		//*** set focus on that when child window is about to unload
		//*** set the focus on the parent window after 10 =20
		opener.focus();
		//setTimeout("opener.focus()", 100);
	}
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** This function will set the tab order on a form this function also =
checks before setting the=20
//*** tab order on the form  that on which control has the focus when =
this function is called if=20
//*** the function fined any active control than after setting the tab  =
order it set the focus=20
//*** on that control

function ReadOnlyTabFalse(frm)
{
	var boolFocus =3D false;
	var objControl;
	if(document.activeElement.name !=3D null)
	{
		var strName =3D new String(document.activeElement.name);
		strName =3D Trim(strName);
		if(strName.length > 0)
		{
			boolFocus =3D true;
			objControl =3D document.activeElement;
		}
	}=09
=09
	if(document.activeElement.id !=3D null && boolFocus =3D=3D false)
	{
		var strId =3D new String(document.activeElement.id);
		strId =3D Trim(strId);
		if(strId.length > 0)
		{
			boolFocus =3D true;
			objControl =3D document.activeElement;
		}=09
	}=09
=09
	var tshow, thidden;
	tshow=3D1;
	thidden=3D0;
	var useragent =3D navigator.userAgent;
	var bName =3D (useragent.indexOf('Opera') > -1) ? 'Opera' : =
navigator.appName;
=09
	var pos =3D useragent.indexOf('MSIE');
	if (pos > -1)
	{
		tshow =3D 0;
		thidden =3D -1;
	}=09
=09
	var frmname =3D document.forms[frm]
=09
	//*** Check the form is exist or not when this function is called.....
	//*** Many time this function get called when the window is still not =
properly loaded...
	//*** In that case an error occured...to prevent that added the =
condition which check that
	//*** form is exist or not and if it than execute the code...
=09
	if(typeof(frmname) !=3D "undefined" && frmname !=3D null )
	{
		for (i=3D0;i<frmname.elements.length;i++)
		{
			//if ((frmname.elements[i].readOnly=3D=3Dtrue) || =
(frmname.elements[i].disabled=3D=3Dtrue) || =
(frmname.elements[i].style.visibility=3D=3D'hidden'))
			if ((frmname.elements[i].readOnly=3D=3Dtrue) || =
(frmname.elements[i].style.visibility=3D=3D'hidden'))
			{
				frmname.elements[i].tabIndex=3Dthidden;
			}
			else
			{
				frmname.elements[i].tabIndex=3Dtshow;
				//tshow =3D tshow + 1;
			}
		}
	}
=09
	//*** If boolFocus is true that means when this function is=20
	//*** called a control has the focus so set the focus back to that =
control
=09
	if(boolFocus){
		if(objControl.type =3D=3D "text"){
			objControl.focus();
			objControl.select();
		}
	}
}

//*** This function Check Full EIN no. is valid or not.
//*** if user not Enter Ein or Entered Invalid Ein then Function return =
an Error message
function validateFullEin(strEin)
{
	var strError =3D '';
	if (/^\d\d-\d\d\d\d\d\d\d$/.test(strEin))
		return strError;

	matches =3D/^(\d\d)(\d\d\d\d\d\d\d)$/.exec(strEin);
	if (matches)
	{
		strEin =3D matches[1] + '-' + matches[2];
		return strError;
	}

	strError =3D "\nEin number must be 10 characters long in the format =
NN-NNNNNNN."; =20
	return strError;
}

//*** This function Check Full EIN no. is valid or not.
//*** if user not Enter Ein or Entered Invalid Ein then Function return =
false
function validateFullEinWithOutDash(strEin)
{
	if (/^\d\d\d\d\d\d\d\d\d$/.test(strEin))
		return true;
	else
	    return false;
}

//*** This function will replace carriage returns in passing object =
value to spaces
function changeStringRE(obj)=20
{
	var strDes =3D obj.value;
	if (strDes.match(/\n/) || strDes.match(/\r/) ){
		strDes =3D strDes.replace(/\n\r/g,' ');
		strDes =3D strDes.replace(/\r\n/g,' ');
		strDes =3D strDes.replace(/\n/g,' ');
		strDes =3D strDes.replace(/\r/g,' ');
		obj.value =3D strDes;
	}
	// alert( obj.name + ' - ' + obj.value + '(end)');
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** Function Which Will Check That The Passing Date's Day Is The Last =
Month Of That Month Or Not
function islastdayofmonth(mdy){
	var dd,mm,yy;
	var strdate =3D new Date(mdy)

	dd =3D strdate.getDate();
	mm =3D strdate.getMonth() + 1;
	yy =3D strdate.getFullYear();

	switch(mm)
	{
		case 1:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 2:
			if ((yy % 4 =3D=3D 0) && (yy % 100 !=3D 0 || yy % 400 =3D=3D 0))
			{
				if (dd =3D=3D '29')
					return true;
				else
					return false;
			}
			else
			{
				if (dd =3D=3D '28')
					return true;
				else
					return false;
			}
			break;
		case 3:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 4:
			if (dd =3D=3D '30')
				return true;
			else
				return false;
			break;
		case 5:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 6:
			if (dd =3D=3D '30')
				return true;
			else
				return false;
			break;
		case 7:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 8:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 9:
			if (dd =3D=3D '30')
				return true;
			else
				return false;
			break;
		case 10:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		case 11:
			if (dd =3D=3D '30')
				return true;
			else
				return false;
			break;
		case 12:
			if (dd =3D=3D '31')
				return true;
			else
				return false;
			break;
		default:
			alert('Invalid Month Number');
	}
}

//*** This function Replace some Special character like EM Dash, CRLF, =
Continious Space etc..
function ReplaceSpChar(obj){  =20
    var strval;
    strval =3D new String(obj.value);
	//alert(strval);
    var i;
    for (i=3D0;i<strval.length;i++) =20
    {
     //   alert(strval.charCodeAt(i));
        if(strval.charCodeAt(i) =3D=3D 8220) =20
		{=09
		    strval =3D strval.replace(String.fromCharCode(8220),"\"");   // =
Replace (=93) with (")
        }
       =20
        if(strval.charCodeAt(i) =3D=3D 8221) =20
		{=09
		    strval =3D strval.replace(String.fromCharCode(8221),"\"");   // =
Replace (=94) with (")
        }
       =20
        if(strval.charCodeAt(i) =3D=3D 8216) =20
		{=09
		    strval =3D strval.replace(String.fromCharCode(8216),"'");   // =
Replace (=91) with (")
        }
       =20
        if(strval.charCodeAt(i) =3D=3D 8217) =20
		{=09
		    strval =3D strval.replace(String.fromCharCode(8217),"'");   // =
Replace (=92) with (")
        }
       =20
        if(strval.charCodeAt(i) =3D=3D 9)  // Replace Tab with Space.
		{=09
		    strval =3D strval.replace(String.fromCharCode(9)," "); =20
        }
        if(strval.charCodeAt(i) =3D=3D 8211)  // Replace DmDash with =
Dash.
		{=09
		    strval =3D strval.replace(String.fromCharCode(8211),"-"); =20
        }
        if(strval.charCodeAt(i) =3D=3D 13)  // Replace CrLf with Space.
		{=09
			strval =3D strval.replace(String.fromCharCode(13) + =
String.fromCharCode(10)," ");
		}
		if (strval.charCodeAt(i) =3D=3D 10)  // Replace CrLf with Space.
		{
		    strval =3D strval.replace(String.fromCharCode(10)," ");
		}
		if (strval.charCodeAt(i) =3D=3D 8226)  // Replace "." (A Bullet)with =
"*".
		{
		    strval =3D strval.replace(String.fromCharCode(8226),"*");
		}
	}
    strval =3D Trim(strval);
    var regexp =3D /  /g;
    while (strval.match(regexp))
    {
        strval =3D strval.replace(regexp," ");  // Replace Continious =
two or more spaces.
    }=20
    obj.value =3D strval;
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** This function will count all the checkbox which are checked on a =
form (which name=20
//*** passed in this function and if their ids are same as the id passed =
to it)
function getCheckCount(id, frm)
{=09
	var intCount=3D0;

    for(i=3D0;i < eval("document." + frm + ".elements.length");i++)
    {=09
		if (eval("document." + frm + ".elements[" + i + "].id") =3D=3D id && =
eval("document." + frm +".elements[" + i + "].checked") =3D=3D true)=20
		    intCount++;
    }
    return intCount;
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** This function will check all the checkbox which are checked on a =
form (which name=20
//*** passed in this function and if their ids are same as the id passed =
to it) and then=20
//*** take their values and join them using comma and return that string =
with comma seprated=20
//*** checked checkboxes value
function getCheckValues(id, frm)
{=09
	var strValues =3D new String("");

    for(i=3D0;i < eval("document." + frm + ".elements.length");i++)
    {=09
		if (eval("document." + frm + ".elements[" + i + "].id") =3D=3D id && =
eval("document." + frm +".elements[" + i + "].checked") =3D=3D true)=20
		    strValues =3D strValues + "," + eval("document." + frm + =
".elements[" + i + "].value");
    }
   =20
	if(strValues.length > 0)
    	strValues =3D strValues.substring(1, strValues.length);
    =09
    return strValues;
}

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
//*** This function will show all the controls which are on a form =
(which name=20
//*** passed in this function and if their ids are same as the id passed =
to it)
function showControlsWithSpecificID(id, frm)
{=09
	for(i=3D0;i < eval("document." + frm + ".elements.length");i++)
    {=09
		if (eval("document." + frm + ".elements[" + i + "].id") =3D=3D id)=20
		    eval("document." + frm + ".elements[" + i + "].style.display =3D =
'inline';");
    }
}

//*** A useful object and set of properties for detecting the browser =
and other=20
//*** things about user system (browser name, browser primary version =
and OS name)

//*** You can query three properties of the BrowserDetect object:

//*** Browser name: BrowserDetect.browser
//*** Browser version: BrowserDetect.version
//*** OS name: BrowserDetect.OS

//*** =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

var BrowserDetect =3D {
	init: function () {
		this.browser =3D this.searchString(this.dataBrowser) || "An unknown =
browser";
		this.version =3D this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS =3D this.searchString(this.dataOS) || "An unknown OS";
	},
	searchString: function (data) {
		for (var i=3D0;i<data.length;i++)	{
			var dataString =3D data[i].string;
			var dataProp =3D data[i].prop;
			this.versionSearchString =3D data[i].versionSearch || =
data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) !=3D -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
	    //alert(dataString);
	    //alert(this.versionSearchString);
		var index =3D dataString.indexOf(this.versionSearchString);
		//alert(index);
		if (index =3D=3D -1) return;
		=
//alert(dataString.substring(index+this.versionSearchString.length+1));
		return =
parseFloat(dataString.substring(index+this.versionSearchString.length+1))=
;
		//return =
dataString.substring(index+this.versionSearchString.length+1);
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Mozilla Firefox",
			versionSearch: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Microsoft Internet Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};

//*** The RemoveSpaces function will remove the leading and trailing =
spaces
//*** from the control's value

function RemoveSpaces(objControl)
{
    var strval =3D new String(Trim(objControl.value));
    //alert('In RemoveSpaces Start');
    objControl.value =3D =
strval.replace(/^\s+|\s+$/g,'').replace(/\s+/g,' ');
    //alert('In RemoveSpaces End');
}

function checkdate(inputOBJ)
{
	//Basic check for format validity
	//var validformat=3D/^\d{2}\/\d{2}\/\d{4}$/;=20
	var validformat=3D/^\d{1,2}\/\d{1,2}\/\d{4}$/;
	var returnval=3D new String("");
	if (!validformat.test(inputOBJ.value))
	{
		returnval=3D "Invalid Date Format.";
	}
	else
	{ //Detailed check for valid date ranges
		var monthfield=3DinputOBJ.value.split("/")[0];
		var dayfield=3DinputOBJ.value.split("/")[1];
		var yearfield=3DinputOBJ.value.split("/")[2];
		var dayobj =3D new Date(yearfield, monthfield-1, dayfield);
		if =
((dayobj.getMonth()+1!=3Dmonthfield)||(dayobj.getDate()!=3Ddayfield)||(da=
yobj.getFullYear()!=3Dyearfield))
			returnval=3D "Invalid Day, Month, or Year range detected.";
		else
			returnval=3D"";
	}
	return returnval;
}
------=_NextPart_000_0000_01CB071A.43A37100--

