(function(A) {
	A.fn.jFlow2 = function(D) {
		var E = A.extend( {}, A.fn.jFlow2.defaults, D);
		var F = 0;
		var B = A(".jFlowControl2").length;
		A(this)
				.find(".jFlowControl2")
				.each(
						function(G) {
							A(this)
									.click(
											function() {
												A(".jFlowControl2").removeClass(
														"jFlowSelected2");
												A(this).addClass(
														"jFlowSelected2");
												var H = Math.abs(F - G);
												A(E.slides)
														.animate(
																{
																	marginLeft : "-"
																			+ (G
																					* A(
																							E.slides)
																							.find(
																									":first-child")
																							.width() + "px")
																},
																E.duration
																		* (H));
												F = G
											})
						});
		A(E.slides).before('<div id="jFlowSlide2"></div>').appendTo(
				"#jFlowSlide2");
		A(E.slides).find("div").each(
				function() {
					A(this).before('<div class="jFlowSlideContainer2"></div>')
							.appendTo(A(this).prev())
				});
		A(".jFlowControl2").eq(F).addClass("jFlowSelected2");
		var C = function(G) {
			A("#jFlowSlide2").css( {
				position : "relative",
				width : E.width,
				height : E.height,
				overflow : "hidden"
			});
			A(E.slides).css(
					{
						position : "relative",
						width : A("#jFlowSlide2").width()
								* A(".jFlowControl2").length + "px",
						height : A("#jFlowSlide2").height() + "px",
						overflow : "hidden"
					});
			A(E.slides).children().css( {
				position : "relative",
				width : A("#jFlowSlide2").width() + "px",
				height : A("#jFlowSlide2").height() + "px",
				"float" : "left"
			});
			A(E.slides)
					.css(
							{
								marginLeft : "-"
										+ (F
												* A(E.slides).find(
														":first-child").width() + "px")
							})
		};
		C();
		A(window).resize(function() {
			C()
		});
		A(".jFlowPrev2")
				.click(
						function() {
							if (F > 0) {
								F--
							} else {
								F = B - 1
							}
							A(".jFlowControl2").removeClass("jFlowSelected2");
							A(E.slides)
									.animate(
											{
												marginLeft : "-"
														+ (F
																* A(E.slides)
																		.find(
																				":first-child")
																		.width() + "px")
											}, E.duration);
							A(".jFlowControl2").eq(F).addClass("jFlowSelected2")
						});
		A(".jFlowNext2")
				.click(
						function() {
							if (F < B - 1) {
								F++
							} else {
								F = 0
							}
							A(".jFlowControl2").removeClass("jFlowSelected2");
							A(E.slides)
									.animate(
											{
												marginLeft : "-"
														+ (F
																* A(E.slides)
																		.find(
																				":first-child")
																		.width() + "px")
											}, E.duration);
							A(".jFlowControl2").eq(F).addClass("jFlowSelected2")
						})
	};
	A.fn.jFlow2.defaults = {
		easing : "swing",
		duration : 400,
		width : "100%"
	}
})(jQuery);
