Array.prototype.caos = function() {
	 nn = Math.round(Math.random() * this.length);
	 elemento = this[nn];
	 for (_i = nn; _i < this.length; _i++)	this[_i] = this[_i + 1];
	 this.length--;
	 return elemento
}

Array.prototype.mitad = function() {
	 nn = parseInt(this.length / 2);
	 elemento = this[nn];
	 for (_i = nn; _i < this.length; _i++)	this[_i] = this[_i + 1];
	 this.length--;
	 return elemento
}

Array.prototype.extraer = function(n) {
	 elemento = this[n];
	 for (_i = n; _i < this.length; _i++)	this[_i] = this[_i + 1];
	 this.length--;
	 return elemento
}

function objetoTransiciones(l, f, an, al, c, v, b)	{
	this._lapsus_ = l;// milisegundos de la transición
	this._mosaico_ = Math.floor(Math.sqrt(f));
	this._fotogramas_ = this._mosaico_ * this._mosaico_;// número de fotogramas por _lapsus_
	this._escala_ = l / this._fotogramas_;
	this._ancho_ = an;// anchura de la zona de transición
	this._alto_ = al;// altura de la zona de transición
	this._capas_ = c;// array con el id de las capas afectadas
	this._visible_ = v;// primera capa visible al inicio. Se actualizará en cada transición...
	this._base_ = b;// contenedor de las capas
	this._tipo_mosaico_ = Math.floor(Math.random() * 16);// condiciona el sentido de bucles y otras yerbas
	_resguardamos = tag(this._visible_).cloneNode(true);
	tag(this._visible_).parentNode.removeChild(tag(this._visible_))
	tag(this._base_).appendChild(_resguardamos);
	this.id_temp = "objetoTransiciones_" + Math.floor(Math.random() * 1000);
	capa_temp = document.createElement("div");
	capa_temp.style.position = "absolute";
	capa_temp.id = this.id_temp;
	tag(this._base_).appendChild(capa_temp);
	//this.efecto = new Object;
	this._acciones_ = [];
	this._tiempos_ = [];

	this._limpiar_ = function()	{
		while (tag(this.id_temp).hasChildNodes())
			tag(this.id_temp).removeChild(tag(this.id_temp).firstChild);
	}

	this.asignar_tipo_mosaico = function(x)	{
		this._tipo_mosaico = x % 16;
	}

	this.asignar_tiempo = function(x)	{
		this._lapsus_ = x;
		this._escala_ = x / this._fotogramas_;
	}

	this.asignar_fotogramas = function(x)	{
		this._fotogramas_ = x;
		this._escala_ = this._lapsus_ / x;
	}

	this.asignaciones = function(x)	{
		_resguardar = tag(this._visible_).cloneNode(true);
		tag(this._visible_).parentNode.removeChild(tag(this._visible_));
		tag(this._base_).appendChild(_resguardar);

		_resguardar = tag(x).cloneNode(true);
		tag(x).parentNode.removeChild(tag(x));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.height = this._alto_ + "px";
		tag(this.id_temp).style.width = this._ancho_ + "px";
		tag(this.id_temp).style.top = "0px";
		tag(this.id_temp).style.left = "0px";
	}
}

objetoTransiciones.prototype.e_fundido = function(x)	{
	this._limpiar_()
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.opacity = "0";
		tag(x).style.top = "0";
		tag(x).style.left = "0";
		for (i = this._fotogramas_; i > 0; i--)	{
			accion = "tag('" + x + "').style.opacity = '" + (i / this._fotogramas_) + "'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.d_n = function(x)	{
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(x).cloneNode(true);
		_resguardar.style.top = -this._alto_ + "px";
		_resguardar.style.left = "0";
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.d_s = function(x)	{
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(x).cloneNode(true);
		_resguardar.style.top = this._alto_ + "px";
		_resguardar.style.left = "0";
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = this._fotogramas_; i > 0; i--)	{
			accion = "tag('" + this.id_temp + "').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.d_o = function(x)	{
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(x).cloneNode(true);
		_resguardar.style.left = -this._ancho_ + "px";
		_resguardar.style.top = "0";
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.top = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.d_e = function(x)	{
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(x).cloneNode(true);
		_resguardar.style.left = this._ancho_ + "px";
		_resguardar.style.top = "0";
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.top = "0";
		for (i = this._fotogramas_; i > 0; i--)	{
			accion = "tag('" + this.id_temp + "').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_n = function(x)	{// apertura desde el norte
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.height = this._alto_ + "px";
		tag(this.id_temp).style.width = this._ancho_ + "px";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_s = function(x)	{// apertura desde el sur
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_o = function(x)	{// apertura desde el oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_e = function(x)	{// apertura desde el este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);
		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_no = function(x)	{// apertura desde el norte/oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion1 = "tag('" + this.id_temp + "').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + this.id_temp + "').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_ne = function(x)	{// apertura desde el norte/este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion1 = "tag('" + this.id_temp + "').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_so = function(x)	{// apertura desde el sur/oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion1 = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + this.id_temp + "').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_se = function(x)	{// apertura desde el sur/este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		for (i = 1, total = this._fotogramas_; i <= total; i++)	{
			accion1 = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_h = function(x)	{// apertura horizontal
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
//		tag(x).style.top = "0";
//		tag(x).style.left = "0";

		_nuevo_ = tag(this._visible_).cloneNode(true);
		_nuevo_.id = "id_temp_x";
		tag(this.id_temp).appendChild(_nuevo_);

		_otro_ = document.createElement("div");
		_otro_.id = "id_temp_1";
		_otro_.style.position = "absolute";
		_otro_.style.overflow = "hidden";
		_otro_.style.top = "0";
		_otro_.style.left = "0";
		_otro_.style.width = this._ancho_ + "px";
		_otro_.style.height = this._alto_ + "px";

		_nuevo_ = tag(x).cloneNode(true);
		_nuevo_.id = "id_temp_2";
		_otro_.appendChild(_nuevo_);
		tag(this.id_temp).appendChild(_otro_);

		_resguardar_ = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar_);

		for (i = (this._fotogramas_ / 2); i >= 0; i--)	{
			_tiempo_ = this._lapsus_ - (2 * i * this._escala_);
			_tope_ = (this._alto_ * i / this._fotogramas_);

			accion1 = "tag('id_temp_1').style.top = '" + _tope_ + "px'";
			setTimeout(accion1, _tiempo_);
			accion2 = "tag('id_temp_2').style.top = '" + -(_tope_) + "px'";
			setTimeout(accion2, _tiempo_);
			accion3 = "tag('id_temp_1').style.height = '" + (this._alto_ - (_tope_ * 2)) + "px'";
			setTimeout(accion3, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_v = function(x)	{// apertura vertical
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
//		tag(x).style.top = "0";
//		tag(x).style.left = "0";

		_nuevo_ = tag(this._visible_).cloneNode(true);
		_nuevo_.id = "id_temp_x";
		tag(this.id_temp).appendChild(_nuevo_);

		_otro_ = document.createElement("div");
		_otro_.id = "id_temp_1";
		_otro_.style.position = "absolute";
		_otro_.style.overflow = "hidden";
		_otro_.style.top = "0";
		_otro_.style.left = "0";
		_otro_.style.width = this._ancho_ + "px";
		_otro_.style.height = this._alto_ + "px";

		_nuevo_ = tag(x).cloneNode(true);
		_nuevo_.id = "id_temp_2";
		_otro_.appendChild(_nuevo_);
		tag(this.id_temp).appendChild(_otro_);

		_resguardar_ = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar_);

		for (i = (this._fotogramas_ / 2); i >= 0; i--)	{
			_tiempo_ = this._lapsus_ - (2 * i * this._escala_);
			_lefte_ = (this._ancho_ * i / this._fotogramas_);

			accion1 = "tag('id_temp_1').style.left = '" + _lefte_ + "px'";
			setTimeout(accion1, _tiempo_);
			accion2 = "tag('id_temp_2').style.left = '" + -(_lefte_) + "px'";
			setTimeout(accion2, _tiempo_);
			accion3 = "tag('id_temp_1').style.width = '" + (this._ancho_ - (_lefte_ * 2)) + "px'";
			setTimeout(accion3, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.a_c = function(x)	{// apertura central
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
//		tag(x).style.top = "0";
//		tag(x).style.left = "0";

		_nuevo_ = tag(this._visible_).cloneNode(true);
		_nuevo_.id = "id_temp_x";
		tag(this.id_temp).appendChild(_nuevo_);

		_otro_ = document.createElement("div");
		_otro_.id = "id_temp_1";
		_otro_.style.position = "absolute";
		_otro_.style.overflow = "hidden";
		_otro_.style.top = "0";
		_otro_.style.left = "0";
		_otro_.style.width = this._ancho_ + "px";
		_otro_.style.height = this._alto_ + "px";

		_nuevo_ = tag(x).cloneNode(true);
		_nuevo_.id = "id_temp_2";
		_otro_.appendChild(_nuevo_);
		tag(this.id_temp).appendChild(_otro_);

		_resguardar_ = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar_);

		for (i = (this._fotogramas_ / 2); i >= 0; i--)	{
			_tiempo_ = this._lapsus_ - (2 * i * this._escala_);
			_lefte_ = (this._ancho_ * i / this._fotogramas_);
			_tope_ = (this._alto_ * i / this._fotogramas_);

			accion1 = "tag('id_temp_1').style.left = '" + _lefte_ + "px'";
			setTimeout(accion1, _tiempo_);
			accion2 = "tag('id_temp_2').style.left = '" + -(_lefte_) + "px'";
			setTimeout(accion2, _tiempo_);
			accion3 = "tag('id_temp_1').style.width = '" + (this._ancho_ - (_lefte_ * 2)) + "px'";
			setTimeout(accion3, _tiempo_);

			accion4 = "tag('id_temp_1').style.top = '" + _tope_ + "px'";
			setTimeout(accion4, _tiempo_);
			accion5 = "tag('id_temp_2').style.top = '" + -(_tope_) + "px'";
			setTimeout(accion5, _tiempo_);
			accion6 = "tag('id_temp_1').style.height = '" + (this._alto_ - (_tope_ * 2)) + "px'";
			setTimeout(accion6, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_h = function(x)	{// cierre horizontal
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar_ = document.createElement("div");
		_resguardar_.id = "id_temp_x";
		_resguardar_.style.position = "absolute";
		_resguardar_.style.overflow = "hidden";
		_resguardar_.style.top = "0";
		_resguardar_.style.left = "0";
		_resguardar_.style.width = this._ancho_ + "px";
		_resguardar_.style.height = this._alto_ + "px";
		
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar_.appendChild(_resguardar);
		tag(this.id_temp).appendChild(_resguardar_);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);

		tag(this.id_temp).style.overflow = "hidden";
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.height = this._alto_ + "px";
		tag(this.id_temp).style.width = this._ancho_ + "px";

		//i = 10;
		for (i = 1, total = this._fotogramas_ / 2; i <= total; i++)	{
			_tiempo_ = 2 * i * this._escala_;

			accion1 = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, _tiempo_);

			accion2 = "tag('id_temp_x').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, _tiempo_);

			accion3 = "tag('" + this.id_temp + "').style.height = '" + (this._alto_ - (this._alto_ * i / this._fotogramas_) * 2) + "px'";
			setTimeout(accion3, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_v = function(x)	{// cierre vertical
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar_ = document.createElement("div");
		_resguardar_.id = "id_temp_x";
		_resguardar_.style.position = "absolute";
		_resguardar_.style.overflow = "hidden";
		_resguardar_.style.top = "0";
		_resguardar_.style.left = "0";
		_resguardar_.style.width = this._ancho_ + "px";
		_resguardar_.style.height = this._alto_ + "px";
		
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar_.appendChild(_resguardar);
		tag(this.id_temp).appendChild(_resguardar_);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);

		tag(this.id_temp).style.overflow = "hidden";
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.height = this._alto_ + "px";
		tag(this.id_temp).style.width = this._ancho_ + "px";

		for (i = 1, total = this._fotogramas_ / 2; i <= total; i++)	{
			_tiempo_ = 2 * i * this._escala_;

			accion1 = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, _tiempo_);

			accion2 = "tag('id_temp_x').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, _tiempo_);

			accion3 = "tag('" + this.id_temp + "').style.width = '" + (this._ancho_ - (this._ancho_ * i / this._fotogramas_) * 2) + "px'";
			setTimeout(accion3, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_c = function(x)	{// cierre central
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		_resguardar_ = document.createElement("div");
		_resguardar_.id = "id_temp_x";
		_resguardar_.style.position = "absolute";
		_resguardar_.style.overflow = "hidden";
		_resguardar_.style.top = "0";
		_resguardar_.style.left = "0";
		_resguardar_.style.width = this._ancho_ + "px";
		_resguardar_.style.height = this._alto_ + "px";
		
		_resguardar = tag(this._visible_).cloneNode(true);
		_resguardar_.appendChild(_resguardar);
		tag(this.id_temp).appendChild(_resguardar_);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);

		tag(this.id_temp).style.overflow = "hidden";
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
		tag(this.id_temp).style.height = this._alto_ + "px";
		tag(this.id_temp).style.width = this._ancho_ + "px";

		for (i = 1, total = this._fotogramas_ / 2; i <= total; i++)	{
			_tiempo_ = 2 * i * this._escala_;

			accion1 = "tag('" + this.id_temp + "').style.top = '" + (this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion1, _tiempo_);

			accion2 = "tag('id_temp_x').style.top = '" + -(this._alto_ * i / this._fotogramas_) + "px'";
			setTimeout(accion2, _tiempo_);

			accion3 = "tag('" + this.id_temp + "').style.height = '" + (this._alto_ - (this._alto_ * i / this._fotogramas_) * 2) + "px'";
			setTimeout(accion3, _tiempo_);

			accion4 = "tag('" + this.id_temp + "').style.left = '" + (this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion4, _tiempo_);

			accion5 = "tag('id_temp_x').style.left = '" + -(this._ancho_ * i / this._fotogramas_) + "px'";
			setTimeout(accion5, _tiempo_);

			accion6 = "tag('" + this.id_temp + "').style.width = '" + (this._ancho_ - (this._ancho_ * i / this._fotogramas_) * 2) + "px'";
			setTimeout(accion6, _tiempo_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_n = function(x)	{// cierre desde el norte
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = -this._alto_ + "px";
		tag(x).style.left = "0";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion = "tag('" + x + "').style.top = '" + -parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_s = function(x)	{// cierre desde el sur
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = this._alto_ + "px";
		tag(x).style.left = "0";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion = "tag('" + x + "').style.top = '" + parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_o = function(x)	{// cierre desde el oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.left = -this._ancho_ + "px";
		tag(x).style.top = "0";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion = "tag('" + x + "').style.left = '" + -parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_e = function(x)	{// apertura desde el este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.left = this._ancho_ + "px";
		tag(x).style.top = "0";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion = "tag('" + x + "').style.left = '" + parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_no = function(x)	{// cierre desde el norte/oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = -this._alto_ + "px";
		tag(x).style.left = -this._ancho_ + "px";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion1 = "tag('" + x + "').style.top = '" + -parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + x + "').style.left = '" + -parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_ne = function(x)	{// cierre desde el norte/este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = -this._alto_ + "px";
		tag(x).style.left = this._ancho_ + "px";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion1 = "tag('" + x + "').style.top = '" + -parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + x + "').style.left = '" + parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_so = function(x)	{// cierre desde el sur/oeste
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = this._alto_ + "px";
		tag(x).style.left = -this._ancho_ + "px";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion1 = "tag('" + x + "').style.top = '" + parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + x + "').style.left = '" + -parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}

objetoTransiciones.prototype.c_se = function(x)	{// cierre desde el sur/este
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);
		tag(x).style.top = this._alto_ + "px";
		tag(x).style.left = this._ancho_ + "px";
		for (i = 1; i <= this._fotogramas_; i++)	{
			accion1 = "tag('" + x + "').style.top = '" + parseInt(this._alto_ - ((i / this._fotogramas_) * this._alto_)) + "px'";
			setTimeout(accion1, i * this._escala_);
			accion2 = "tag('" + x + "').style.left = '" + parseInt(this._ancho_ - ((i / this._fotogramas_) * this._ancho_)) + "px'";
			setTimeout(accion2, i * this._escala_);
		}
		this._visible_ = x;
	}
}


objetoTransiciones.prototype.ini_b = function(x)	{// inicio barrido genérico
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.asignaciones(x);

		_resguardar = tag(x).cloneNode(true);
		_resguardar.id = "id_temp2_" + (Math.random() * 1000);
		tag(this.id_temp).appendChild(_resguardar);

		_resguardar = tag(this.id_temp).cloneNode(true);
		tag(this._base_).removeChild(tag(this.id_temp));
		tag(this._base_).appendChild(_resguardar);
		tag(this.id_temp).style.top = "0";
		tag(this.id_temp).style.left = "0";
	}
}

objetoTransiciones.prototype.ini_bh = function(x)	{// inicio barrido horizontal
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.ini_b(x);
		_altura_ = Math.ceil(this._alto_ / this._fotogramas_);
		for (i = 0; i < this._fotogramas_; i ++)	{
			temp_x = document.createElement("div");
			temp_x.id = "id_temp_x_" + i;
			temp_x.style.position = "absolute";
			temp_x.style.overflow = "hidden";
			temp_x.style.width = this._ancho_ + "px";
			temp_x.style.height = _altura_ + "px";
			temp_x.style.left = "0";
			temp_x.style.top = (i * _altura_) + "px";
			temp = tag(this._visible_).cloneNode(true);
			temp.id = "id_temp_" + i;
			temp.style.top = -(i * _altura_) + "px";
			temp.style.height = this._alto_ + "px";
			temp.style.width = this._ancho_ + "px";
			temp_x.appendChild(temp);
			tag(this._base_).appendChild(temp_x);
			accion = "tag('" + this._base_ + "').removeChild(tag('id_temp_x_" + i + "'))";
			this._acciones_.push(accion);
			this._tiempos_.push(this._escala_ * i);
		}
	}
}

objetoTransiciones.prototype.ini_bv = function(x)	{// inicio barrido vertical
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.ini_b(x);
		_anchura_ = Math.ceil(this._ancho_ / this._fotogramas_);
		for (i = 0; i < this._fotogramas_; i ++)	{
			temp_x = document.createElement("div");
			temp_x.id = "id_temp_x_" + i;
			temp_x.style.position = "absolute";
			temp_x.style.overflow = "hidden";
			temp_x.style.height = this._alto_ + "px";
			temp_x.style.width = _anchura_ + "px";
			temp_x.style.top = "0";
			temp_x.style.left = (i * _anchura_) + "px";
			temp = tag(this._visible_).cloneNode(true);
			temp.id = "id_temp_" + i;
			temp.style.left = -(i * _anchura_) + "px";
			temp.style.height = this._alto_ + "px";
			temp.style.width = this._ancho_ + "px";
			temp_x.appendChild(temp);
			tag(this._base_).appendChild(temp_x);
			accion = "tag('" + this._base_ + "').removeChild(tag('id_temp_x_" + i + "'))";
			this._acciones_.push(accion);
			this._tiempos_.push(this._escala_ * i);
		}
	}
}

objetoTransiciones.prototype.b_n = function(x)	{// barrido desde el norte
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.pop());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_s = function(x)	{// barrida desde el sur
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.shift(), this._tiempos_.pop());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_o = function(x)	{// barrido desde el oeste
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.pop());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_e = function(x)	{// barrido desde el este
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.shift(), this._tiempos_.pop());
	}
	this._visible_ = x;
}



objetoTransiciones.prototype.b_hc = function(x)	{// barrido Horizontal caos
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.caos());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_zn = function(x)	{// barrido zig-zag norte
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.mitad());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_zs = function(x)	{// barrido zig-zag sur
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.shift(), this._tiempos_.mitad());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_dn = function(x)	{// barrido doble norte
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			(this._acciones_.length % 2 == 1) ? this._acciones_.mitad() : this._acciones_.shift(), this._tiempos_.shift()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_ds = function(x)	{// barrido doble sur
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			(this._acciones_.length % 2 == 1) ? this._acciones_.mitad() : this._acciones_.shift(), this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_rn = function(x)	{// barrido repe norte
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.pop(), (this._tiempos_.length % 2 == 0) ? this._tiempos_.mitad() : this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_rs = function(x)	{// barrido repe sur
	this.ini_bh(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.shift(), (this._tiempos_.length % 2 == 0) ? this._tiempos_.mitad() : this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_vc = function(x)	{// barrido vertical caos
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.caos());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_ze = function(x)	{// barrido zig-zag este
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.shift(), this._tiempos_.mitad());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_zo = function(x)	{// barrido zig-zag oeste
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.mitad());
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_re = function(x)	{// barrido repe este
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.shift(), (this._tiempos_.length % 2 == 0) ? this._tiempos_.mitad() : this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_ro = function(x)	{// barrido repe oeste
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.pop(), (this._tiempos_.length % 2 == 0) ? this._tiempos_.mitad() : this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_do = function(x)	{// barrido doble oeste
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			(this._acciones_.length % 2 == 1) ? this._acciones_.mitad() : this._acciones_.shift(), this._tiempos_.shift()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.b_de = function(x)	{// barrido doble este
	this.ini_bv(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			(this._acciones_.length % 2 == 1) ? this._acciones_.mitad() : this._acciones_.shift(), this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.ini_m = function(x)	{// inicio mosaico genérico
	this._limpiar_();
	if (x == this._visible_)	{
		return;
	}
	else	{
		this.ini_b(x);
		_anchura_ = Math.ceil(this._ancho_ / this._mosaico_);
		_altura_ = Math.ceil(this._alto_ / this._mosaico_);
		_escalita_ = 0;
		_opciones_ = this._tipo_mosaico_;
		_opcion_i = (_opciones_ & 1) != 0;
		_opcion_j = (_opciones_ & 2) != 0;
		_opcion_z = (_opciones_ & 4) != 0;
		_opcion_ij = (_opciones_ & 8) != 0;
		for (i_ = 0; i_ < this._mosaico_; i_++)
			for (j_ = 0; j_ < this._mosaico_; j_++)	{
			i = (_opcion_i) ? i_: this._mosaico_ - i_ - 1;
			j = (_opcion_j) ? j_: this._mosaico_ - j_ - 1;
			j = (_opcion_z && (i_ % 2 == 1)) ? j: this._mosaico_ - j - 1;
			_i = (_opcion_ij) ? i:j;
			_j = (_opcion_ij) ? j:i;
			temp_x = document.createElement("div");
			temp_x.id = "id_temp_x_" + i + "_" + j;
			temp_x.style.position = "absolute";
			temp_x.style.overflow = "hidden";
			temp_x.style.width = _anchura_ + "px";
			temp_x.style.height = _altura_ + "px";
			temp_x.style.left = (j * _anchura_) + "px";
			temp_x.style.top = (i * _altura_) + "px";
			temp = tag(this._visible_).cloneNode(true);
			temp.id = "id_temp_" + i + "_" + j;
			temp.style.top = -(i * _altura_) + "px";
			temp.style.height = this._alto_ + "px";
			temp.style.left = -(j * _anchura_) + "px";
			temp.style.width = this._ancho_ + "px";
			temp_x.appendChild(temp);
			tag(this._base_).appendChild(temp_x);
			accion = "tag('" + this._base_ + "').removeChild(tag('id_temp_x_" + _i + "_" + _j + "'))";
			this._acciones_.push(accion);
			this._tiempos_.push(_escalita_+=this._escala_);
		}
	}
}

objetoTransiciones.prototype.m_pop_pop = function(x)	{// mosaico pop pop
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.pop(), this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.m_caos = function(x)	{// mosaico caótico
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(
			this._acciones_.pop(), this._tiempos_.caos()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.m_mitad_shift = function(x)	{// mosaico mitad-shift
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.mitad(), this._tiempos_.shift()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.m_mitad_pop = function(x)	{// mosaico mitad-pop
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.mitad(), this._tiempos_.pop()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.m_shift_mitad = function(x)	{// mosaico shift-mitad
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.shift(), this._tiempos_.mitad()
		)
	}
	this._visible_ = x;
}

objetoTransiciones.prototype.m_pop_mitad = function(x)	{// mosaico pop-mitad
	this.ini_m(x);
	while(this._acciones_.length > 0)	{
		setTimeout(this._acciones_.pop(), this._tiempos_.mitad()
		)
	}
	this._visible_ = x;
}

