text: // file: bwipp/ean14.js
  //
  // This code was automatically generated from:
  // Barcode Writer in Pure PostScript - Version 2013-01-25
  //
  // Copyright (c) 2011-2013 Mark Warren
  // Copyright (c) 2004-2013 Terry Burton
  //
  // See the LICENSE file in the bwip.js root directory
  // for the extended copyright notice.
  // BEGIN ean14
  if (!BWIPJS.bwipp["renlinear"]) BWIPJS.load("bwipp/renlinear.js");
  if (!BWIPJS.bwipp["code128"]) BWIPJS.load("bwipp/code128.js");
  BWIPJS.bwipp["ean14"]=function() {
  	this.dict["renlinear"]=BWIPJS.bwipp["renlinear"];
  	this.dict["code128"]=BWIPJS.bwipp["code128"];
  	function $f0(){
  		return -1;
  	}
  	function $f1(){
  		var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  		this.ptr--;
  		var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	function $f2(){
  		this.stk[this.ptr++]=true;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	function $f3(){
  		var a=/^\s*([^\s]+)(\s+.*)?$/.exec(this.stk[this.ptr-1]);
  		if (a) {
  			this.stk[this.ptr-1]=BWIPJS.psstring(a[2]===undefined?"":a[2]);
  			this.stk[this.ptr++]=BWIPJS.psstring(a[1]);
  			this.stk[this.ptr++]=true;
  		} else {
  			this.stk[this.ptr-1]=false;
  		}
  		this.stk[this.ptr++]=false;
  		if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  			this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  		else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  		this.ptr--;
  		this.stk[this.ptr++]=$f0;
  		var t0=this.stk[--this.ptr];
  		if (this.stk[--this.ptr]) {
  			if (t0.call(this)==-1) return -1;
  		}
  		this.stk[this.ptr]=this.stk[this.ptr-1]; this.ptr++;
  		if (typeof(this.stk[this.ptr-1].length)!=="number") throw "length: invalid: " + BWIPJS.pstype(this.stk[this.ptr-1]);
  		this.stk[this.ptr-1]=this.stk[this.ptr-1].length;
  		this.stk[this.ptr-1]=BWIPJS.psstring(this.stk[this.ptr-1]);
  		var t=this.stk[this.ptr-2].toString();
  		this.stk[this.ptr-1].assign(0,t);
  		this.stk[this.ptr-2]=this.stk[this.ptr-1].subset(0,t.length);
  		this.ptr--;
  		this.stk[this.ptr++]=BWIPJS.psstring("=");
  		var h=this.stk[this.ptr-2];
  		var t=h.indexOf(this.stk[this.ptr-1]);
  		if (t==-1) {
  			this.stk[this.ptr-1]=false;
  		} else {
  			this.stk[this.ptr-2]=h.subset(t+this.stk[this.ptr-1].length);
  			this.stk[this.ptr-1]=h.subset(t,this.stk[this.ptr-1].length);
  			this.stk[this.ptr++]=h.subset(0,t);
  			this.stk[this.ptr++]=true;
  		}
  		this.stk[this.ptr++]=true;
  		if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  			this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  		else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  		this.ptr--;
  		this.stk[this.ptr++]=$f1;
  		this.stk[this.ptr++]=$f2;
  		var t1=this.stk[--this.ptr];
  		var t2=this.stk[--this.ptr];
  		if (this.stk[--this.ptr]) {
  			if (t2.call(this)==-1) return -1;
  		} else {
  			if (t1.call(this)==-1) return -1;
  		}
  	}
  	function $f4(){
  		this.stk[this.ptr++]=1;
  		this.stk[this.ptr-1]={};
  		this.dict=this.stk[--this.ptr]; this.dstk.push(this.dict);
  		var t=this.dstk.get("options");
  		if (t===undefined) throw new Error("dict: options: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=$f3;
  		var t3=this.stk[--this.ptr];
  		while (true) {
  			if (t3.call(this)==-1) break;
  		}
  		this.stk[this.ptr++]=this.dict;
  		this.dstk.pop(); this.dict=this.dstk[this.dstk.length-1];
  		this.stk[this.ptr++]="options"; //ident
  		var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	function $f5(){
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	function $f6(){
  		this.stk[this.ptr++]=3;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]*this.stk[this.ptr-1]; this.ptr--;
  	}
  	function $f7(){
  		this.stk[this.ptr++]="i"; //ident
  		var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  		this.stk[this.ptr++]="checksum"; //ident
  		var t=this.dstk.get("checksum");
  		if (t===undefined) throw new Error("dict: checksum: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		var t=this.dstk.get("barcode");
  		if (t===undefined) throw new Error("dict: barcode: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		var t=this.dstk.get("i");
  		if (t===undefined) throw new Error("dict: i: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=4;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]+this.stk[this.ptr-1]; this.ptr--;
  		if (this.stk[this.ptr-2] instanceof BWIPJS.psstring || this.stk[this.ptr-2] instanceof BWIPJS.psarray)
  			this.stk[this.ptr-2]=this.stk[this.ptr-2].get(this.stk[this.ptr-1]);
  		else this.stk[this.ptr-2]=this.stk[this.ptr-2][this.stk[this.ptr-1].toString()];
  		this.ptr--;
  		this.stk[this.ptr++]=48;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]-this.stk[this.ptr-1]; this.ptr--;
  		var t=this.dstk.get("i");
  		if (t===undefined) throw new Error("dict: i: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=2;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]%this.stk[this.ptr-1]; this.ptr--;
  		this.stk[this.ptr++]=0;
  		if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  			this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  		else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  		this.ptr--;
  		this.stk[this.ptr++]=$f6;
  		var t8=this.stk[--this.ptr];
  		if (this.stk[--this.ptr]) {
  			if (t8.call(this)==-1) return -1;
  		}
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]+this.stk[this.ptr-1]; this.ptr--;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	function $f8(){
  		this.stk[this.ptr++]="checksum"; //ident
  		this.stk[this.ptr++]=0;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  		this.stk[this.ptr++]=0;
  		this.stk[this.ptr++]=1;
  		this.stk[this.ptr++]=12;
  		this.stk[this.ptr++]=$f7;
  		var t13=this.stk[--this.ptr];
  		var t11=this.stk[--this.ptr];
  		var t10=this.stk[--this.ptr];
  		var t9=this.stk[--this.ptr];
  		for (var t12=t9; t10<0 ? t12>=t11 : t12<=t11; t12+=t10) {
  			this.stk[this.ptr++]=t12;
  			if (t13.call(this)==-1) break;
  		}
  		this.stk[this.ptr++]="checksum"; //ident
  		this.stk[this.ptr++]=10;
  		var t=this.dstk.get("checksum");
  		if (t===undefined) throw new Error("dict: checksum: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=10;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]%this.stk[this.ptr-1]; this.ptr--;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]-this.stk[this.ptr-1]; this.ptr--;
  		this.stk[this.ptr++]=10;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]%this.stk[this.ptr-1]; this.ptr--;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  		this.stk[this.ptr++]=18;
  		this.stk[this.ptr-1]=BWIPJS.psstring(this.stk[this.ptr-1]);
  		this.stk[this.ptr]=this.stk[this.ptr-1]; this.ptr++;
  		this.stk[this.ptr++]=0;
  		var t=this.dstk.get("barcode");
  		if (t===undefined) throw new Error("dict: barcode: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=0;
  		this.stk[this.ptr++]=17;
  		this.stk[this.ptr-3]=this.stk[this.ptr-3].subset(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=2;
  		this.stk[this.ptr-3].assign(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=3;
  		this.stk[this.ptr]=this.stk[this.ptr-1]; this.ptr++;
  		this.stk[this.ptr++]=17;
  		var t=this.dstk.get("checksum");
  		if (t===undefined) throw new Error("dict: checksum: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=48;
  		this.stk[this.ptr-2]=this.stk[this.ptr-2]+this.stk[this.ptr-1]; this.ptr--;
  		if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  			this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  		else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  		this.ptr-=3;
  		this.stk[this.ptr++]="barcode"; //ident
  		var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  		this.stk[this.ptr++]="gtin"; //ident
  		var t=this.dstk.get("barcode");
  		if (t===undefined) throw new Error("dict: barcode: undefined");
  		if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  		this.stk[this.ptr++]=4;
  		this.stk[this.ptr++]=14;
  		this.stk[this.ptr-3]=this.stk[this.ptr-3].subset(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=2;
  		this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	}
  	this.stk[this.ptr++]=20;
  	this.stk[this.ptr-1]={};
  	this.dict=this.stk[--this.ptr]; this.dstk.push(this.dict);
  	this.stk[this.ptr++]="options"; //ident
  	var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="barcode"; //ident
  	var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="dontdraw"; //ident
  	this.stk[this.ptr++]=false;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="includetext"; //ident
  	this.stk[this.ptr++]=false;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textfont"; //ident
  	this.stk[this.ptr++]="Courier"; //ident
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textsize"; //ident
  	this.stk[this.ptr++]=10;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textxoffset"; //ident
  	this.stk[this.ptr++]=0;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textyoffset"; //ident
  	this.stk[this.ptr++]=-7;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="height"; //ident
  	this.stk[this.ptr++]=1;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-1]=BWIPJS.pstype(this.stk[this.ptr-1]);
  	this.stk[this.ptr++]="stringtype"; //ident
  	if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  		this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  	this.ptr--;
  	this.stk[this.ptr++]=$f4;
  	var t4=this.stk[--this.ptr];
  	if (this.stk[--this.ptr]) {
  		if (t4.call(this)==-1) return -1;
  	}
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=$f5;
  	var t7=this.stk[--this.ptr];
  	var t6=this.stk[--this.ptr];
  	for (t5 in t6) {
  		if (t6 instanceof BWIPJS.psstring || t6 instanceof BWIPJS.psarray) {
  			if (t5.charCodeAt(0) > 57) continue;
  			this.stk[this.ptr++]=t6.get(t5);
  		} else {
  			this.stk[this.ptr++]=t5;
  			this.stk[this.ptr++]=t6[t5];
  		}
  		if (t7.call(this)==-1) break;
  	}
  	this.stk[this.ptr++]="textfont"; //ident
  	var t=this.dstk.get("textfont");
  	if (t===undefined) throw new Error("dict: textfont: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textsize"; //ident
  	var t=this.dstk.get("textsize");
  	if (t===undefined) throw new Error("dict: textsize: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-1]=parseFloat(this.stk[this.ptr-1]);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textxoffset"; //ident
  	var t=this.dstk.get("textxoffset");
  	if (t===undefined) throw new Error("dict: textxoffset: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-1]=parseFloat(this.stk[this.ptr-1]);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="textyoffset"; //ident
  	var t=this.dstk.get("textyoffset");
  	if (t===undefined) throw new Error("dict: textyoffset: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-1]=parseFloat(this.stk[this.ptr-1]);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="height"; //ident
  	var t=this.dstk.get("height");
  	if (t===undefined) throw new Error("dict: height: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-1]=parseFloat(this.stk[this.ptr-1]);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	if (typeof(this.stk[this.ptr-1].length)!=="number") throw "length: invalid: " + BWIPJS.pstype(this.stk[this.ptr-1]);
  	this.stk[this.ptr-1]=this.stk[this.ptr-1].length;
  	this.stk[this.ptr]=this.stk[this.ptr-1]; this.ptr++;
  	this.stk[this.ptr++]=17;
  	if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  		this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  	this.ptr--;
  	var t=this.stk[this.ptr-2]; this.stk[this.ptr-2]=this.stk[this.ptr-1]; this.stk[this.ptr-1]=t;
  	this.stk[this.ptr++]=18;
  	if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  		this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  	this.ptr--;
  	if (typeof(this.stk[this.ptr-1])=="boolean") this.stk[this.ptr-2]=this.stk[this.ptr-2]||this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]|this.stk[this.ptr-1];
  	this.ptr--;
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=0;
  	this.stk[this.ptr++]=4;
  	this.stk[this.ptr-3]=this.stk[this.ptr-3].subset(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=2;
  	this.stk[this.ptr++]=BWIPJS.psstring("(01)");
  	if (this.stk[this.ptr-2] instanceof BWIPJS.psstring)
  		this.stk[this.ptr-2]=this.stk[this.ptr-2].toString()==this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]==this.stk[this.ptr-1];
  	this.ptr--;
  	if (typeof(this.stk[this.ptr-1])=="boolean") this.stk[this.ptr-2]=this.stk[this.ptr-2]&&this.stk[this.ptr-1];
  	else this.stk[this.ptr-2]=this.stk[this.ptr-2]&this.stk[this.ptr-1];
  	this.ptr--;
  	this.stk[this.ptr++]=$f8;
  	var t14=this.stk[--this.ptr];
  	if (this.stk[--this.ptr]) {
  		if (t14.call(this)==-1) return -1;
  	}
  	this.stk[this.ptr++]="text"; //ident
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	this.stk[this.ptr++]="barcode"; //ident
  	this.stk[this.ptr++]=21;
  	this.stk[this.ptr-1]=BWIPJS.psstring(this.stk[this.ptr-1]);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=0;
  	this.stk[this.ptr++]=BWIPJS.psstring("^FNC101");
  	this.stk[this.ptr-3].assign(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=3;
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=7;
  	var t=this.dstk.get("gtin");
  	if (t===undefined) throw new Error("dict: gtin: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr-3].assign(this.stk[this.ptr-2],this.stk[this.ptr-1]); this.ptr-=3;
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=BWIPJS.psstring("dontdraw");
  	this.stk[this.ptr++]=true;
  	if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  		this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  	else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  	this.ptr-=3;
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=BWIPJS.psstring("parsefnc");
  	this.stk[this.ptr++]=true;
  	if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  		this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  	else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  	this.ptr-=3;
  	this.stk[this.ptr++]="args"; //ident
  	var t=this.dstk.get("barcode");
  	if (t===undefined) throw new Error("dict: barcode: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("code128");
  	if (t===undefined) throw new Error("//code128: undefined");
  	this.stk[this.ptr++]=t;
  	var t=this.stk[--this.ptr];
  	if (t instanceof Function) t.call(this); else this.eval(t);
  	this.dict[this.stk[this.ptr-2]]=this.stk[this.ptr-1]; this.ptr-=2;
  	var t=this.dstk.get("args");
  	if (t===undefined) throw new Error("dict: args: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=BWIPJS.psstring("txt");
  	this.stk[this.ptr++]=Infinity;
  	this.stk[this.ptr++]=Infinity;
  	var t=this.dstk.get("text");
  	if (t===undefined) throw new Error("dict: text: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("textxoffset");
  	if (t===undefined) throw new Error("dict: textxoffset: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("textyoffset");
  	if (t===undefined) throw new Error("dict: textyoffset: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("textfont");
  	if (t===undefined) throw new Error("dict: textfont: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("textsize");
  	if (t===undefined) throw new Error("dict: textsize: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	for (var i = this.ptr-1; i >= 0 && this.stk[i] !== Infinity; i--) ;
  	if (i < 0) throw "array: underflow";
  	var t = this.stk.splice(i+1, this.ptr-1-i);
  	this.ptr = i;
  	this.stk[this.ptr++]=BWIPJS.psarray(t);
  	for (var i = this.ptr-1; i >= 0 && this.stk[i] !== Infinity; i--) ;
  	if (i < 0) throw "array: underflow";
  	var t = this.stk.splice(i+1, this.ptr-1-i);
  	this.ptr = i;
  	this.stk[this.ptr++]=BWIPJS.psarray(t);
  	if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  		this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  	else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  	this.ptr-=3;
  	var t=this.dstk.get("args");
  	if (t===undefined) throw new Error("dict: args: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=BWIPJS.psstring("textxalign");
  	this.stk[this.ptr++]=BWIPJS.psstring("center");
  	if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  		this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  	else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  	this.ptr-=3;
  	var t=this.dstk.get("args");
  	if (t===undefined) throw new Error("dict: args: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	this.stk[this.ptr++]=BWIPJS.psstring("opt");
  	var t=this.dstk.get("options");
  	if (t===undefined) throw new Error("dict: options: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	if (this.stk[this.ptr-3] instanceof BWIPJS.psstring || this.stk[this.ptr-3] instanceof BWIPJS.psarray)
  		this.stk[this.ptr-3].set(this.stk[this.ptr-2], this.stk[this.ptr-1]);
  	else this.stk[this.ptr-3][this.stk[this.ptr-2].toString()]=this.stk[this.ptr-1];
  	this.ptr-=3;
  	var t=this.dstk.get("args");
  	if (t===undefined) throw new Error("dict: args: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	var t=this.dstk.get("dontdraw");
  	if (t===undefined) throw new Error("dict: dontdraw: undefined");
  	if (t instanceof Function) t.call(this); else this.stk[this.ptr++]=t;
  	if (typeof(this.stk[this.ptr-1])=="boolean") this.stk[this.ptr-1]=!this.stk[this.ptr-1];
  	else this.stk[this.ptr-1]=~this.stk[this.ptr-1];
  	var t=this.dstk.get("renlinear");
  	if (t===undefined) throw new Error("//renlinear: undefined");
  	this.stk[this.ptr++]=t;
  	var t15=this.stk[--this.ptr];
  	if (this.stk[--this.ptr]) {
  		if (t15.call(this)==-1) return -1;
  	}
  	this.dstk.pop(); this.dict=this.dstk[this.dstk.length-1];
  	psstptr = this.ptr;
  }
  // END OF ean14
  