text:
<!DOCTYPE html>

    <meta charset="utf-8">
    <title>src/pixi/InteractionManager.js - Pixi.JS</title>
    <link rel="stylesheet" href="http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css">
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
    <link rel="stylesheet" href="../assets/css/main.css" id="site_styles">
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">

            API Docs for: 1.3.0

APIs

Classes

Modules

            <input type="search" id="api-filter" placeholder="Type to filter APIs">

AbstractFilter

AssetLoader

BaseTexture

BitmapFontLoader

BitmapText

BlurFilter

CanvasGraphics

CanvasRenderer

Circle

ColorMatrixFilter

CustomRenderable

DisplacementFilter

DisplayObject

DisplayObjectContainer

Ellipse

EventTarget

Graphics

GreyFilter

ImageLoader

InvertFilter

JsonLoader

MovieClip

PixelateFilter

Point

Polygon

PolyK._convex

PolyK._PointInTriangle

PolyK.AjaxRequest

PolyK.InteractionData

PolyK.InteractionManager

Rectangle

RenderTexture

SepiaFilter

Spine

Sprite

SpriteSheetLoader

Stage

Text

Texture

TilingSprite

WebGLBatch

WebGLRenderer

PIXI

        Show:

            <input type="checkbox" id="api-show-inherited" checked>
            Inherited

            <input type="checkbox" id="api-show-protected">
            Protected

            <input type="checkbox" id="api-show-private">
            Private

            <input type="checkbox" id="api-show-deprecated">
            Deprecated

File: src/pixi/InteractionManager.js

/**
 * @author Mat Groves http://matgroves.com/ @Doormat23
 */

 /**
 * The interaction manager deals with mouse and touch events. Any DisplayObject can be interactive
 * This manager also supports multitouch.
 *
 * @class InteractionManager
 * @constructor
 * @param stage {Stage} The stage to handle interactions
 */
PIXI.InteractionManager = function(stage)
{
	/**
	 * a refference to the stage
	 *
	 * @property stage
	 * @type Stage
	 */
	this.stage = stage;

	/**
	 * the mouse data
	 *
	 * @property mouse
	 * @type InteractionData
	 */
	this.mouse = new PIXI.InteractionData();

	/**
	 * an object that stores current touches (InteractionData) by id reference
	 *
	 * @property touchs
	 * @type Object
	 */
	this.touchs = {};

	// helpers
	this.tempPoint = new PIXI.Point();
	//this.tempMatrix =  mat3.create();

	this.mouseoverEnabled = true;

	//tiny little interactiveData pool!
	this.pool = [];

	this.interactiveItems = [];
	this.interactionDOMElement = null;

	//this will make it so that you dont have to call bind all the time
	this.onMouseMove = this.onMouseMove.bind( this );
	this.onMouseDown = this.onMouseDown.bind(this);
	this.onMouseOut = this.onMouseOut.bind(this);
	this.onMouseUp = this.onMouseUp.bind(this);

	this.onTouchStart = this.onTouchStart.bind(this);
	this.onTouchEnd = this.onTouchEnd.bind(this);
	this.onTouchMove = this.onTouchMove.bind(this);

	this.last = 0;
}

// constructor
PIXI.InteractionManager.prototype.constructor = PIXI.InteractionManager;

/**
 * Collects an interactive sprite recursively to have their interactions managed
 *
 * @method collectInteractiveSprite
 * @param displayObject {DisplayObject} the displayObject to collect
 * @param iParent {DisplayObject}
 * @private
 */
PIXI.InteractionManager.prototype.collectInteractiveSprite = function(displayObject, iParent)
{
	var children = displayObject.children;
	var length = children.length;

	/// make an interaction tree... {item.__interactiveParent}
	for (var i = length-1; i >= 0; i--)
	{
		var child = children[i];

//		if(child.visible) {
			// push all interactive bits
			if(child.interactive)
			{
				iParent.interactiveChildren = true;
				//child.__iParent = iParent;
				this.interactiveItems.push(child);

				if(child.children.length > 0)
				{
					this.collectInteractiveSprite(child, child);
				}
			}
			else
			{
				child.__iParent = null;

				if(child.children.length > 0)
				{
					this.collectInteractiveSprite(child, iParent);
				}
			}
//		}
	}
}

/**
 * Sets the target for event delegation
 *
 * @method setTarget
 * @param target {WebGLRenderer|CanvasRenderer} the renderer to bind events to
 * @private
 */
PIXI.InteractionManager.prototype.setTarget = function(target)
{
	this.target = target;

	//check if the dom element has been set. If it has don't do anything
	if( this.interactionDOMElement === null ) {

		this.setTargetDomElement( target.view );
	}

 	document.body.addEventListener('mouseup',  this.onMouseUp, true);
}

/**
 * Sets the dom element which will receive mouse/touch events. This is useful for when you have other DOM
 * elements ontop of the renderers Canvas element. With this you'll be able to delegate another dom element
 * to receive those events
 *
 * @method setTargetDomElement
 * @param domElement {DOMElement} the dom element which will receive mouse and touch events
 * @private
 */
PIXI.InteractionManager.prototype.setTargetDomElement = function(domElement)
{
	//remove previouse listeners
	if( this.interactionDOMElement !== null )
	{
		this.interactionDOMElement.style['-ms-content-zooming'] = '';
    	this.interactionDOMElement.style['-ms-touch-action'] = '';

		this.interactionDOMElement.removeEventListener('mousemove',  this.onMouseMove, true);
		this.interactionDOMElement.removeEventListener('mousedown',  this.onMouseDown, true);
	 	this.interactionDOMElement.removeEventListener('mouseout',   this.onMouseOut, true);

	 	// aint no multi touch just yet!
		this.interactionDOMElement.removeEventListener('touchstart', this.onTouchStart, true);
		this.interactionDOMElement.removeEventListener('touchend', this.onTouchEnd, true);
		this.interactionDOMElement.removeEventListener('touchmove', this.onTouchMove, true);
	}

	if (window.navigator.msPointerEnabled)
	{
		// time to remove some of that zoom in ja..
		domElement.style['-ms-content-zooming'] = 'none';
    	domElement.style['-ms-touch-action'] = 'none';

		// DO some window specific touch!
	}

	this.interactionDOMElement = domElement;

	domElement.addEventListener('mousemove',  this.onMouseMove, true);
	domElement.addEventListener('mousedown',  this.onMouseDown, true);
 	domElement.addEventListener('mouseout',   this.onMouseOut, true);

 	// aint no multi touch just yet!
	domElement.addEventListener('touchstart', this.onTouchStart, true);
	domElement.addEventListener('touchend', this.onTouchEnd, true);
	domElement.addEventListener('touchmove', this.onTouchMove, true);
}

/**
 * updates the state of interactive objects
 *
 * @method update
 * @private
 */
PIXI.InteractionManager.prototype.update = function()
{
	if(!this.target)return;

	// frequency of 30fps??
	var now = Date.now();
	var diff = now - this.last;
	diff = (diff * 30) / 1000;
	if(diff < 1)return;
	this.last = now;
	//

	// ok.. so mouse events??
	// yes for now :)
	// OPTIMSE - how often to check??
	if(this.dirty)
	{
		this.dirty = false;

		var len = this.interactiveItems.length;

		for (var i=0; i < len; i++) {
		  this.interactiveItems[i].interactiveChildren = false;
		}

		this.interactiveItems = [];

		if(this.stage.interactive)this.interactiveItems.push(this.stage);
		// go through and collect all the objects that are interactive..
		this.collectInteractiveSprite(this.stage, this.stage);
	}

	// loop through interactive objects!
	var length = this.interactiveItems.length;

	this.interactionDOMElement.style.cursor = "default";

	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];

		//if(!item.visible)continue;

		// OPTIMISATION - only calculate every time if the mousemove function exists..
		// OK so.. does the object have any other interactive functions?
		// hit-test the clip!

		if(item.mouseover || item.mouseout || item.buttonMode)
		{
			// ok so there are some functions so lets hit test it..
			item.__hit = this.hitTest(item, this.mouse);
			this.mouse.target = item;
			// ok so deal with interactions..
			// loks like there was a hit!
			if(item.__hit)
			{
				if(item.buttonMode) this.interactionDOMElement.style.cursor = "pointer";

				if(!item.__isOver)
				{

					if(item.mouseover)item.mouseover(this.mouse);
					item.__isOver = true;
				}
			}
			else
			{
				if(item.__isOver)
				{
					// roll out!
					if(item.mouseout)item.mouseout(this.mouse);
					item.__isOver = false;
				}
			}
		}

		// --->
	}
}

/**
 * Is called when the mouse moves accross the renderer element
 *
 * @method onMouseMove
 * @param event {Event} The DOM event of the mouse moving
 * @private
 */
PIXI.InteractionManager.prototype.onMouseMove = function(event)
{
	this.mouse.originalEvent = event || window.event; //IE uses window.event
	// TODO optimize by not check EVERY TIME! maybe half as often? //
	var rect = this.interactionDOMElement.getBoundingClientRect();

	this.mouse.global.x = (event.clientX - rect.left) * (this.target.width / rect.width);
	this.mouse.global.y = (event.clientY - rect.top) * ( this.target.height / rect.height);

	var length = this.interactiveItems.length;
	var global = this.mouse.global;

	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];

		if(item.mousemove)
		{
			//call the function!
			item.mousemove(this.mouse);
		}
	}
}

/**
 * Is called when the mouse button is pressed down on the renderer element
 *
 * @method onMouseDown
 * @param event {Event} The DOM event of a mouse button being pressed down
 * @private
 */
PIXI.InteractionManager.prototype.onMouseDown = function(event)
{
	this.mouse.originalEvent = event || window.event; //IE uses window.event

	// loop through inteaction tree...
	// hit test each item! ->
	// get interactive items under point??
	//stage.__i
	var length = this.interactiveItems.length;
	var global = this.mouse.global;

	var index = 0;
	var parent = this.stage;

	// while
	// hit test
	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];

		if(item.mousedown || item.click)
		{
			item.__mouseIsDown = true;
			item.__hit = this.hitTest(item, this.mouse);

			if(item.__hit)
			{
				//call the function!
				if(item.mousedown)item.mousedown(this.mouse);
				item.__isDown = true;

				// just the one!
				if(!item.interactiveChildren)break;
			}
		}
	}
}

PIXI.InteractionManager.prototype.onMouseOut = function(event)
{
	var length = this.interactiveItems.length;

	this.interactionDOMElement.style.cursor = "default";

	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];

		if(item.__isOver)
		{
			this.mouse.target = item;
			if(item.mouseout)item.mouseout(this.mouse);
			item.__isOver = false;
		}
	}
}

/**
 * Is called when the mouse button is released on the renderer element
 *
 * @method onMouseUp
 * @param event {Event} The DOM event of a mouse button being released
 * @private
 */
PIXI.InteractionManager.prototype.onMouseUp = function(event)
{
	this.mouse.originalEvent = event || window.event; //IE uses window.event

	var global = this.mouse.global;

	var length = this.interactiveItems.length;
	var up = false;

	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];

		if(item.mouseup || item.mouseupoutside || item.click)
		{
			item.__hit = this.hitTest(item, this.mouse);

			if(item.__hit && !up)
			{
				//call the function!
				if(item.mouseup)
				{
					item.mouseup(this.mouse);
				}
				if(item.__isDown)
				{
					if(item.click)item.click(this.mouse);
				}

				if(!item.interactiveChildren)up = true;
			}
			else
			{
				if(item.__isDown)
				{
					if(item.mouseupoutside)item.mouseupoutside(this.mouse);
				}
			}

			item.__isDown = false;
		}
	}
}

/**
 * Tests if the current mouse coords hit a sprite
 *
 * @method hitTest
 * @param item {DisplayObject} The displayObject to test for a hit
 * @param interactionData {InteractionData} The interactiondata object to update in the case of a hit
 * @private
 */
PIXI.InteractionManager.prototype.hitTest = function(item, interactionData)
{
	var global = interactionData.global;

	if(item.vcount !== PIXI.visibleCount)return false;

	var isSprite = (item instanceof PIXI.Sprite),
		worldTransform = item.worldTransform,
		a00 = worldTransform[0], a01 = worldTransform[1], a02 = worldTransform[2],
		a10 = worldTransform[3], a11 = worldTransform[4], a12 = worldTransform[5],
		id = 1 / (a00 * a11 + a01 * -a10),
		x = a11 * id * global.x + -a01 * id * global.y + (a12 * a01 - a02 * a11) * id,
		y = a00 * id * global.y + -a10 * id * global.x + (-a12 * a00 + a02 * a10) * id;

	interactionData.target = item;

	//a sprite or display object with a hit area defined
	if(item.hitArea && item.hitArea.contains) {
		if(item.hitArea.contains(x, y)) {
			//if(isSprite)
			interactionData.target = item;

			return true;
		}

		return false;
	}
	// a sprite with no hitarea defined
	else if(isSprite)
	{
		var width = item.texture.frame.width,
			height = item.texture.frame.height,
			x1 = -width * item.anchor.x,
			y1;

		if(x > x1 && x < x1 + width)
		{
			y1 = -height * item.anchor.y;

			if(y > y1 && y < y1 + height)
			{
				// set the target property if a hit is true!
				interactionData.target = item
				return true;
			}
		}
	}

	var length = item.children.length;

	for (var i = 0; i < length; i++)
	{
		var tempItem = item.children[i];
		var hit = this.hitTest(tempItem, interactionData);
		if(hit)
		{
			// hmm.. TODO SET CORRECT TARGET?
			interactionData.target = item
			return true;
		}
	}

	return false;
}

/**
 * Is called when a touch is moved accross the renderer element
 *
 * @method onTouchMove
 * @param event {Event} The DOM event of a touch moving accross the renderer view
 * @private
 */
PIXI.InteractionManager.prototype.onTouchMove = function(event)
{
	var rect = this.interactionDOMElement.getBoundingClientRect();
	var changedTouches = event.changedTouches;

	for (var i=0; i < changedTouches.length; i++)
	{
		var touchEvent = changedTouches[i];
		var touchData = this.touchs[touchEvent.identifier];
		touchData.originalEvent =  event || window.event;

		// update the touch position
		touchData.global.x = (touchEvent.clientX - rect.left) * (this.target.width / rect.width);
		touchData.global.y = (touchEvent.clientY - rect.top)  * (this.target.height / rect.height);
	}

	var length = this.interactiveItems.length;
	for (var i = 0; i < length; i++)
	{
		var item = this.interactiveItems[i];
		if(item.touchmove)item.touchmove(touchData);
	}
}

/**
 * Is called when a touch is started on the renderer element
 *
 * @method onTouchStart
 * @param event {Event} The DOM event of a touch starting on the renderer view
 * @private
 */
PIXI.InteractionManager.prototype.onTouchStart = function(event)
{
	var rect = this.interactionDOMElement.getBoundingClientRect();

	var changedTouches = event.changedTouches;
	for (var i=0; i < changedTouches.length; i++)
	{
		var touchEvent = changedTouches[i];

		var touchData = this.pool.pop();
		if(!touchData)touchData = new PIXI.InteractionData();

		touchData.originalEvent =  event || window.event;

		this.touchs[touchEvent.identifier] = touchData;
		touchData.global.x = (touchEvent.clientX - rect.left) * (this.target.width / rect.width);
		touchData.global.y = (touchEvent.clientY - rect.top)  * (this.target.height / rect.height);

		var length = this.interactiveItems.length;

		for (var j = 0; j < length; j++)
		{
			var item = this.interactiveItems[j];

			if(item.touchstart || item.tap)
			{
				item.__hit = this.hitTest(item, touchData);

				if(item.__hit)
				{
					//call the function!
					if(item.touchstart)item.touchstart(touchData);
					item.__isDown = true;
					item.__touchData = touchData;

					if(!item.interactiveChildren)break;
				}
			}
		}
	}
}

/**
 * Is called when a touch is ended on the renderer element
 *
 * @method onTouchEnd
 * @param event {Event} The DOM event of a touch ending on the renderer view
 * @private
 */
PIXI.InteractionManager.prototype.onTouchEnd = function(event)
{
	//this.mouse.originalEvent = event || window.event; //IE uses window.event
	var rect = this.interactionDOMElement.getBoundingClientRect();
	var changedTouches = event.changedTouches;

	for (var i=0; i < changedTouches.length; i++)
	{
		var touchEvent = changedTouches[i];
		var touchData = this.touchs[touchEvent.identifier];
		var up = false;
		touchData.global.x = (touchEvent.clientX - rect.left) * (this.target.width / rect.width);
		touchData.global.y = (touchEvent.clientY - rect.top)  * (this.target.height / rect.height);

		var length = this.interactiveItems.length;
		for (var j = 0; j < length; j++)
		{
			var item = this.interactiveItems[j];
			var itemTouchData = item.__touchData; // <-- Here!
			item.__hit = this.hitTest(item, touchData);

			if(itemTouchData == touchData)
			{
				// so this one WAS down...
				touchData.originalEvent =  event || window.event;
				// hitTest??

				if(item.touchend || item.tap)
				{
					if(item.__hit && !up)
					{
						if(item.touchend)item.touchend(touchData);
						if(item.__isDown)
						{
							if(item.tap)item.tap(touchData);
						}

						if(!item.interactiveChildren)up = true;
					}
					else
					{
						if(item.__isDown)
						{
							if(item.touchendoutside)item.touchendoutside(touchData);
						}
					}

					item.__isDown = false;
				}

				item.__touchData = null;

			}
			else
			{

			}
		}
		// remove the touch..
		this.pool.push(touchData);
		this.touchs[touchEvent.identifier] = null;
	}
}

/**
 * Holds all information related to an Interaction event
 *
 * @class InteractionData
 * @constructor
 */
PIXI.InteractionData = function()
{
	/**
	 * This point stores the global coords of where the touch/mouse event happened
	 *
	 * @property global
	 * @type Point
	 */
	this.global = new PIXI.Point();

	// this is here for legacy... but will remove
	this.local = new PIXI.Point();

	/**
	 * The target Sprite that was interacted with
	 *
	 * @property target
	 * @type Sprite
	 */
	this.target;

	/**
	 * When passed to an event handler, this will be the original DOM Event that was captured
	 *
	 * @property originalEvent
	 * @type Event
	 */
	this.originalEvent;
}

/**
 * This will return the local coords of the specified displayObject for this InteractionData
 *
 * @method getLocalPosition
 * @param displayObject {DisplayObject} The DisplayObject that you would like the local coords off
 * @return {Point} A point containing the coords of the InteractionData position relative to the DisplayObject
 */
PIXI.InteractionData.prototype.getLocalPosition = function(displayObject)
{
	var worldTransform = displayObject.worldTransform;
	var global = this.global;

	// do a cheeky transform to get the mouse coords;
	var a00 = worldTransform[0], a01 = worldTransform[1], a02 = worldTransform[2],
        a10 = worldTransform[3], a11 = worldTransform[4], a12 = worldTransform[5],
        id = 1 / (a00 * a11 + a01 * -a10);
	// set the mouse coords...
	return new PIXI.Point(a11 * id * global.x + -a01 * id * global.y + (a12 * a01 - a02 * a11) * id,
							   a00 * id * global.y + -a10 * id * global.x + (-a12 * a00 + a02 * a10) * id)
}

// constructor
PIXI.InteractionData.prototype.constructor = PIXI.InteractionData;


text:
Say hi to Wi-Fi
Wireless internet at truck stops is fiercly competitive, but it's more common than ever, and some highway locations even offer free service.
"Used to be you'd see truckers lined up in the phone room at truck stops," says owner-operator Suzanne Roquemore of Ohio, who team drives with her husband. "Ten years ago, you might have a cell phone, but you were afraid to use it because of the expense. Now cell phones are so cheap, and cellular plans are so reasonable, you're not likely to find a trucker who doesn't have one. Same goes – or is beginning to – for the wireless Internet."
As high-speed wireless Internet service becomes more common, it's important to know your options for cost, type of access and quality of service while on the road. Wi-Fi is the most common wireless protocol, available at more than 700 truck stops operated by the major chains. Add the hotspots at independent stops and go 60 to 70 percent of the entire truck stop market is covered, estimates NATSO technology consultant Gene Bergoffen. With more and more truckers carrying laptops – 25 percent to 40 percent, estimates Bergoffen – it's not hard to see why. And lower prices will come with increasing competition among a glut of services. But so will more headaches, at least in the foreseeable future, as owner-operators look for one reliable option with many access points.
Flying J's proprietary service, launched in fall 2003, remains the leader among fee-charging truck stop Wi-Fi. It has nearly 300 hotspots, 160 at Flying J locations in the United States and Canada and the others "anywhere a lot of truckers are parked," says Mike Nichols, Flying J's operations manager. To accommodate subscribers, Flying J has worked deals with truck washes, hotels and other businesses near fleet terminals or even rival truck stops.
Wyoming-based Paul Brickman, who's leased to Landstar Ranger, uses the Internet to access the carrier's load boards. A longtime Flying J subscriber, he says he rarely has trouble connecting these days. "Overall, things work a lot better now than they did two years ago," Brickman says. "Seemed like they had a lot of bugs to work out early on, which can be expected."
Another early provider, Truckstop.net, had its service installed in 500-plus sites, most of them Pilot, Petro and Love's locations, by June 2004. But plagued by technical problems, Truckstop.net and its equipment provider, Sprint, entered into litigation, and service was halted.
The same year TravelCenters of America's SpeedZone was launched in 150-plus TAs, and Delaware-based SiriCOMM also began installing a different Wi-Fi service, some in former Truckstop.net locations. SiriCOMM since has built a network of more than 400 hotspots in 40 states and has agreements in another four. Its service is available at most Pilot, Petro, and Love's locations, but also many independent truck stops.
In some rural areas, a T1 Internet connection through fiber lines, the backbone of most Wi-Fi networks, is not always feasible, so SiriCOMM channels its Wi-Fi via satellite, says David Mendez, vice president for sales and marketing. "This gives SiriCOMM the latitude to install almost anywhere."
IdleAire, the in-cab services provider, intends to become another nationwide Wi-Fi service provider and is the most affordable of the paid services at truck stops. Idleaire's basic installations required a T1 Internet connection anyway, so making Wi-Fi available was an easy task, says John Doty, IdleAire marketing manager. Primarily at stops along both coasts and in the South, the company is "opening three to five sites a week" in TA, Pilot and Petro locations, he says.
One problem that can plague Wi-Fi users is connection speed. Brickman uses a high-powered Wi-Fi card (usually between 150 and 200 milliwatts) in his laptop, something that all providers recommend to increase speed; most laptops come with a 30-milliwatt card. "We output from our antennas close to the maximum allowed by the FCC," Nichols says. "What we find typically is we reach you really well, but you can't talk back to us."
That's not the only reason for slow connections. Signals coming from access antennas are line-of-sight oriented, and reflective, Nichols says. "If you're parked next to a big trailer, and that trailer's reflecting the signal down to you, that's great, but as soon as you move and you don't have line of sight to our antenna or another reflective surface, you're not going to get a signal," Nichols says.
Another problem is that malicious software travels easily over high-speed public networks. Nichols learned the hard way. "I was angry with my Internet provider because my connection was so slow," he says. "So I got a different provider, and it was just as bad. But I realized that I was so infected with spyware and viruses, that my own computer was the problem."
There are plenty of anti-virus programs, but they won't protect you from hackers when you're on a Wi-Fi network. To minimize the small risk of your computer being accessed by identity thieves, turn it off when you're not using it, or at least disable your Wi-Fi card or adapter.
One other problem is that the patchwork of commercial services leaves users the choice of paying for multiple subscriptions or going without an Internet connection at many truck stops.
"It'd be like signing up for EarthLink, AOL and Compuserv at the same time. It makes no sense."
As the Wi-Fi market matures with the technology, plans allowing users to access services among competing providers with only a single subscription – similar to cellular companies' roaming agreements – are sure to come. However, Bergoffen says no industry standards exist yet to make that possible for Wi-Fi. "The carriers say they're working on it, but I've seen little progress in the standards organizations," he says.
With Wi-Fi so prevalent, it's easy to forget that five years ago you'd have been hard-pressed to find a hotspot in an urban area, let alone out on the road. As Mendez says, "In the early years of cellular, there weren't roaming agreements. We're going to mature. This is relatively new stuff."
FREE AS THE AIR
As Wi-Fi networks multiply in public places, free access is a very real option for owner-operators.
The Wi-Fi-FreeSpot website, www.wififreespot.com, lists dozens of free locations in each state, as well as a number of restaurant chains that offer free Wi-Fi to diners, including Atlanta Bread Company, Caribou Coffee and Krystal, and a number of hotel and motel chains that offer free Wi-Fi to guests, including Best Western, Holiday Inn Express, La Quinta and Super 8. However, connectivity can be spotty at such sites.
Some cities even have made deals with Wi-Fi vendors to provide free service throughout the city. AT&T, for example, recently signed its first such deal, with Springfield, Ill. As in most such citywide arrangements, access at slow speeds will be free, but users will have to pay for faster or ad-free service.
In Iowa, every rest area is now a Wi-Fi hotspot, and access is free. Some states have launched pilot programs at rest areas – Michigan, for example, charges, while Maryland, Oregon, and Vermont offer free access up to certain limits – and more states are in the planning stages. But Texas was the first. Andy Keith, safety rest area program manager for the Texas DOT, made sure even the pull-offs in rural West Texas were included. Keith sees the hotspots as a safety measure, "a way to attract people to stop more regularly at rest areas."
Owner-operator Monty Rhoades says the Texas service is great for speed and convenience. "They do load you up with ads," he says, "but somebody's got to pay for it."
Indeed, the state didn't spend a dime; Coach Connect, the wireless services company that built all but the first trial hotspots, won the state contract with a plan to finance the operation mostly through ad sales.
To drum up business, some truck stops also offer free Wi-Fi. Bosselmann Travel Centers, with a string of stops in Nebraska and one each in Iowa and Kansas, has maintained a free Wi-Fi policy for years.
Given the investment required to keep up with technological change, however, Mike Nichols doesn't see free service as economically viable for his chain, Flying J. "I don't think it can be sustained over time without subsidizing it with higher fuel prices or making up for it some other way," he says.
TA's infrastructure was barely more than a year old when it required an upgrade. "In the first quarter of 2006, we updated all of our antennas at all of our access points at all of our locations to improve the quality," says Scott Burslem, TA's Wi-Fi program
manager.
BOUNDLESS WIRELESS
Owner-operator Suzanne Roquemore accesses the Internet via a monthly Sprint cellular data plan and an air card, which plugs into the PCMCIA or CardBus slot on a laptop. "The drawbacks to Wi-Fi are that you have to be parked," she says. With an air card, on the other hand, "I can go online while my husband is driving." Roaming agreements among cellular companies allow her to stay connected most anywhere with cell service.
Monty Rhoades, an owner-operator and former Flying J subscriber, also uses an air card these days. He looks forward to the day when one Wi-Fi account will allow him access anywhere he stops on the road, as is possible with the air card.
Cellular data plans might be convenient for some, but at an average $60 a month, they're three times as expensive as some truck stop Wi-Fi services, not to mention significantly slower outside metro areas. Speeds on these networks will get faster, however, and rates likely will come down as well.
TIPS FOR NEW USERS
A laptop can run from $500 (bare bones) to more than $3,000 (overloaded), but you can get the basics with plenty of memory and processing speed for under $1,000 these days.
AntiVir (for viruses) and Ad-Aware (for spyware and adware) are well-respected free programs that will clean up your machine and shield against most opportunistic infections. Other good programs are available for nominal annual fees.
Most new laptops come Wi-Fi capable, but usually the built-in appliance is powered too low to get strong connectivity at truck stops. Make sure the laptop you're buying has at least a PCMCIA slot for your own Wi-Fi card. Newer computers will have a CardBus slot, an improvement over the PCMCIA standard, and can accommodate older cards as well. The opposite, however, isn't true, so be sure you know which type you have.
When purchasing a Wi-Fi or air card, available at some truck stops and any computer retailer, get 150 to 200 milliwatts.
Look as well for compatibility with the IEEE standard that makes Wi-Fi possible: 802.11b or 802.11g Ethernet for truck stop networks.
External antennas are sometimes packaged with network cards. If you're having trouble with a signal, using the antenna can help.
Beware of Parking Pirates

redpajama_set_name: RedPajamaCommonCrawl


text:
Andreas Sommer ist der Name folgender Personen:

* Andreas Sommer (Politiker), österreichischer Politiker (NSDAP)
 Andreas Sommer (Schriftsteller) (* 1956), Schweizer Schriftsteller
 Andreas Urs Sommer (* 1972), Schweizer Philosoph und Publizist

redpajama_set_name: RedPajamaWikipedia


New Office Furniture; The old office is dead, so is one size fits all office furniture. Diversity is the key in the workspace. The old steel cabinets and sterile and antiseptic cubicles are outmoded. Today, manufacturers, interior architects and designers are competing to introduce new products that reflect the changes in the economy, technology and the way we perceive work.
The idea is to accommodate the evolving needs of individuals and businesses to increase performance and productivity. Human centered approach to interior office design is on the rise. Robert Propst, the inventor of office cubicle, believed that the facility should adapt to the needs of the individuals, and there could be a variety of forms of adaptation. Today, interior office design is based on the principles of efficiency, harmony, aesthetic, and functionality. The new office furniture products are flexible, ergonomic, stylish, and functional. To maximize performance and productivity, today's manufactures are constantly working on new designs.
At Maispace, we adopt a subject oriented approach to interior office design; whether it's 2 or 2000 workstations each customer receives our undivided attention. We listen to the individuals and businesses and seek to meet their needs and demands to the greatest extent. We customize their workspace according to their work habits and create workstations that are embracing employees.
Maispace offers a variety of new office furniture systems that are finely crafted, extremely elegant, exceptionally affordable, and exceedingly versatile, that will accommodate to your needs. Innovative, functional, and individual centric MAiSPACE workspaces compete with expensive alternatives, proving that style, elegance and function can come at an affordable price. We promise the lowest price to our customers, because we combine highly automated production processes with a streamline just in time manufacturing and distribution systems. Glass, fabric, marker board and painted surfaces combine in a sleek and stylish solution for both private office and workstation.
We take pride in cable management, and conform to telecommunications industry standards for horizontal cabling systems in open offices. Accessible is crucial for us. Easily accessible consolidation points provide an interconnection between work area outlets and telecommunications closets to create a zone distribution system. Unrestricted cable pathway access simplifies adding capacity or rerouting networks.
As we strive to combine privacy and visibility, you can easily transform your common area to a conference room by using Maispace full floor-to-ceiling panels. You can select from a large choice of airflow, glass, fabric, woodgrain and other panel segment options to create custom designs that will adapt to your needs. Easily assembled and disassembled panel frames give you flexibility and allow you to reduce and expand floor space instantly. You can easily move the conference room to another location without disturbing the workforce. We treasure collaboration and interaction and allow you to find the most appropriate and efficient space for your meetings.
At Maispace, we are concerned about noise, because we know that you need a quiet and peaceful environment to maximize your performance. We respect that and offer fabric covered panel segments that help mute office noises. MORSPACE is a revolutionary new product line, offers all the features of premium modular office systems, but at an affordable price that falls within even the tightest of budgets. We guarantee to beat any competitor's price for high quality furniture. With interchangeable tiles, stacking frames, built in cable pathways and multiple filing and storage options MORSPACE is a versatile, sturdy and functional workplace solution.
At Maispace we know that there are diverse work styles and we seek to provide alternatives based on individual needs. For those looking for solid wood furniture, we introduced our Roundabout line, which is available in eight beautiful finishes. Roundabout is beautifully crafted private office furniture that reflects a classic style. For those who can't give up the warmth and beauty of wood, we promise to bring sophistication and style to your office. Using a state of the art thermo-forming manufacturing process, Round-About wood office furniture features a gently radius, cascade edge and book matched veneers.
Maichair; Maispace's the most affordable, ergonomic and fully functional seating line in the market today, that incorporates all the comfort, style and adjustment features reserved for more expensive chairs. MAiCHAIR's adjustable features include a 5 position headrest, an engineered, flexible plastic backrest, adjustable arms, and a lightweight five star base. Our philosophy is style, comfort and function at affordable price. We provide unlimited workstation solutions that appeal to different tastes and budgets. We are inspired by you and your needs and work hard to make your work space an inspiring place.
• Are I.t. Workers Blue Collar?


Kitchen faucet supply line washer. Interstate kitchen supply interstate kitchen supply medium. Restaurant kitchen equipment list with price fast food.
Kitchen supply oakland. Kitchen faucet supply line extension.
Kitchen faucet supply line extension.
Interstate kitchen supply interstate kitchen supply medium. Kitchen faucet supply line types. Awesome kitchen supply store near me inspiration home. Interstate kitchen supply interstate kitchen supply medium. Interstate kitchen supply interstate kitchen supply medium. Kitchen supply list basic attractive kitchen supplies. Interstate kitchen supply interstate kitchen supply medium. Kitchen supply store williams et oliver rigamall. Inspirations: sink soap dispenser for soap supply system. What is a contemporary kitchen? builder supply outlet. Cleaning your commercial kitchen equipment. Lovely bowery kitchen supply collection kitchen gallery. Kitchen and bath blab modern supplys kitchen, bath. Interstate kitchen supply interstate kitchen supply medium. Interstate kitchen supply interstate kitchen supply food. Interstate kitchen supply interstate kitchen supply medium. Walnut kitchen and bath cabinets builders cabinet supply. Teamson kids wooden play kitchen set reviews wayfair. Kitchen faucet supply line adapter. Interstate kitchen supply interstate kitchen supply medium. Kitchen faucet supply adapters aerator adapter, floor. Kitchen faucet supply line extension. Lovely bowery kitchen supply collection kitchen gallery.


text:
Bullock, May tie in talent competition; Harrington takes swimwear
Published 11:08 pm Friday, June 23, 2017
Miss Jones County Brooke Bullock, talent, Miss Mississippi State University Molly May, talent, and Miss Dixie Holly Harrington, swimwear, Miss Jones County Brooke Bullock hug after being announced winners in the third preliminary competition of the 2017 Miss Mississippi Pageant at the Vicksburg Convention Center in Vicksburg, Miss., on Friday June 23, 2017. (Courtland Wells/The Vicksburg Post)
By Terri Cowart Frazier
The Vicksburg Post
The final night of the Miss Mississippi Pageant preliminaries came to a close Friday and again for the third night in a row, there was a tie in the talent phase of the competition.
Miss Mississippi State University Molly May and Miss Jones County Brooke Bullock were both named preliminary winners in the talent phase of Friday night's competition, and Miss Dixie Holly Harrington, won swimsuit.
All three winners are Miss Mississippi veterans.
May, who performed a vocal rendition to the Animals 1964 hit tune, "House of the Rising Sun," said she was shocked and overwhelmed when she heard her name called.
"I am feeling disbelief, shock, happiness, joy, lots of happy adjectives," May said.
To prepare for the performance, May said she prayed and practiced a lot.
"I have a wonderful roommate who lets me sing at the top of my lungs in our room, and she just sings along with me so that made it a lot easier," she said.
May performed the same song in the 2016 Miss Mississippi Pageant and said she enjoys performing this song because she gets to feel like she is somebody else.
"I get to be more of an edgy rough kind of person, and I think that's what performing is all about. You get to tell a story," she said.
Bullock said she too was overwhelmed with excitement when she heard her name called as a talent preliminary winner.
"I have played piano for over a decade now and I have been teaching for three years and this is just a rewarding moment for me," Bullock said.
For the competition, the University of Southern Mississippi student played her "Tarantella" by Pieczonka on the piano.
"I come from a family of musicians, and this is very special for me to play, and I worked on it for seven years," she said.
Bullock said she always tries to practice at least 20 to 30 minutes a day, but there are times when she will practice one to two hours a day when preparing for a performance.
Both May and Bullock were each the recipient of a $500 scholarship.
Harrington, who was the recipient of a $400 scholarship after winning in swimwear, is a double preliminary winner.
During the Wednesday night preliminary she tied with Miss Meridian Tanner Fant in the talent phase of the competition.
"I am so overwhelmed, shocked and blessed to have been given this award. I have worked very hard over the past year and have tried to make it a commitment from the moment I stepped off the stage last year to be at my best, physically, Bullock said.
To achieve her goal, the University of Alabama at Birmingham student said she modified her diet and spent a lot of time in the gym.
"I have learned to love to work out," she said.
The final preliminary competition will be held at 8 p.m. tonight at the Vicksburg Convention Center.
A composite score from the three preliminary competitions in talent, swimwear, evening wear, on-stage questions and off stage interviews will determine who will be in the top 10, which will be announced at the beginning of the final competition Saturday night, and the 2017 Miss Mississippi will be crowned.
All tickets are sold out to the pageant, but Saturday night's final competition and crowning will be televised on WLBT, and it will be live streamed on the Miss Mississippi website. The Vicksburg Post will also be posting photos from the pageant on each of its social media outlets.
More BREAKING NEWS
Section of Porter's Chapel Road closed for Entergy project
Lt. Governor Hosemann Tests Positive for Covid-19, Currently Quarantining
Vicksburg Police seeking suspect in robbery at Deluxe Inn
Warren County Sheriff: Traffic 'greatest impact' of train derailment
Another tie in Miss Mississippi preliminaries


Lately, I have been doing a lot of introspective thinking about my time on The Outfit, and this has helped me realize exactly why I am in love with my league. When I joined The Outfit, I had no idea what I was getting into, and soon, my time was consumed by working to help make this league great. In so doing, I have formed bonds and friendships that will last much longer than my time as a skater. When you go through struggle with others, you are automatically bound in some way with those people. I look back at The Outfit's first season, and I consider the amount of blood, sweat and tears we shed, it is absolutely no wonder why I am still friends with skaters who have since hung up their skates. This league is truly a family for me, and I look at each season with its new set of challenges, not as a reason to give up or move on, but rather another opportunity to strengthen my Outfit Family. Certain seasons have been easier, while others have been more trying, but one thing is for sure: I have gone through each season with my family members, and we have come out stronger as a result.
This league is not only a place for athletes to perfect their practice of roller derby; it is a place where we can go when we need a shoulder to lean on; it is a place where we can go to laugh and be as fun as we want to be; it is a place where we can go to be honest and open; it is a place where we can go to forget the struggles of daily life; it is a place where we can go when we need familiarity; it is a place where we can speak our minds, respect others' opinions, and work for the betterment of our family. It is a place I call home. For all of these reasons, and many, many more, I am in love with you, Chicago Outfit, and I cannot imagine skating for any other league.
Season of Love: Derby Crushes and More!


text:
Friend on Facebook Follow on Facebook Add to Google+ Circle Watch on YouTube Subscribe to RSS
Middle East & Asia
Canada & US
China : Hundreds missing in Chinese tourist ship disaster
Only a small number of survivors pulled from water after ship with more than 450 people on board sinks on Yangtze River.
Published on June 02,2015 12:09GMT Asia Pacific
Hundreds of people remain missing after a tourist ship carrying more than 450 people sank on the Yangtze River in central China.
Five bodies have been retrieved and at least 15 people rescued, including the captain and the ship's chief engineer – who have both been detained – according to state media reports.
Hours after the incident, which occurred on Monday night local time, the People's Daily reported that more passengers were still alive and inside the Eastern Star.
Images shown on state broadcaster CCTV showed rescuers lying on the upturned ship attempting to communicate with potential survivors inside.
The China Daily newspaper reported that a woman in her 60s was pulled alive out of the water at 12.56pm local time (04:56 GMT) on Tuesday following reports on CCTV that three people had been confirmed alive inside the upturned ship.
Another man was later pulled alive from the water, the newspaper reported.
The Yangtze River navigation administration said the ship capsized during a "cyclone" at Jianli in Hubei province. Chinese meteorological officials have been tasked to study the weather conditions at the time of the accident.
Seven people swam to the shore and alerted police after the shipwreck, CCTV reported.
State media also reported that more than 2,100 soldiers and policemen were taking part in search and rescue operations, which were complicated by strong winds and heavy rain. More than 150 ships were also involved.
Most of the passengers were said to be tourists aged between 50 and 80 years old, who were about to go to sleep as the vessel sank.
Xinhua said there were 405 Chinese passengers, five travel agency workers and 47 crew members on board the ship that was en route from Nanjing to Chongqing.
President Xi Jinping asked that no efforts be spared in search and rescue operations, and Premier Li Keqiang travelled to the area.
Al Jazeera's Rob McBride, reporting from Hong Kong, said the accident comes as more and more Chinese people are travelling within their own country.
"People take vacations more and trips along the Yangtze River are one of the more popular trips that people make," our correspondent said.
Asia, China, Chinese tourist ship disaster, news, Yangtze River
FacebookTwitterinstagramGoogle +1Youtube
editor@borkena.com
© 2019, ↑ Borkena Ethiopian News


text:
Q: using external redis server for testing tcl scripts I am running Ubuntu 11.10.
i am trying to run TCL test scripts using external redis server.
using the following :
sb@sb-laptop:~/Redis/redis$ tclsh tests/test_helper.tcl --host 192.168.1.130 --port 6379

Getting the following error :
    Testing unit/type/list
[exception]: Executing test client: couldn't open socket: connection refused.
couldn't open socket: connection refused
    while executing
"socket $server $port"
    (procedure "redis" line 2)
    invoked from within
"redis $::host $::port"
    (procedure "start_server" line 9)
    invoked from within
"start_server {tags {"protocol"}} {
    test "Handle an empty query" {
        reconnect
        r write "\r\n"
        r flush
        assert_equal "P..."
    (file "tests/unit/protocol.tcl" line 1)
    invoked from within
"source $path"
    (procedure "execute_tests" line 4)
    invoked from within
"execute_tests $data"
    (procedure "test_client_main" line 9)
    invoked from within
"test_client_main $::test_server_port "

the redis.conf is set to default binding, but it is commented out.
If this is possible, what i am doing wrong?
Additional Information:
Below is the tcl code that is responsible for starting the server
proc start_server {options {code undefined}} {
    # If we are runnign against an external server, we just push the
    # host/port pair in the stack the first time
    if {$::external} {
        if {[llength $::servers] == 0} {
            set srv {}
            dict set srv "host" $::host
            dict set srv "port" $::port
            set client [redis $::host $::port]
            dict set srv "client" $client
            $client select 9

            # append the server to the stack
            lappend ::servers $srv
        }
        uplevel 1 $code
        return
    }

    # setup defaults
    set baseconfig "default.conf"
    set overrides {}
    set tags {}

    # parse options
    foreach {option value} $options {
        switch $option {
            "config" {
                set baseconfig $value }
            "overrides" {
                set overrides $value }
            "tags" {
                set tags $value
                set ::tags [concat $::tags $value] }
            default {
                error "Unknown option $option" }
        }
    }

    set data [split [exec cat "tests/assets/$baseconfig"] "\n"]
    set config {}
    foreach line $data {
        if {[string length $line] > 0 && [string index $line 0] ne "#"} {
            set elements [split $line " "]
            set directive [lrange $elements 0 0]
            set arguments [lrange $elements 1 end]
            dict set config $directive $arguments
        }
    }

    # use a different directory every time a server is started
    dict set config dir [tmpdir server]

    # start every server on a different port
    set ::port [find_available_port [expr {$::port+1}]]
    dict set config port $::port

    # apply overrides from global space and arguments
    foreach {directive arguments} [concat $::global_overrides $overrides] {
        dict set config $directive $arguments
    }

    # write new configuration to temporary file
    set config_file [tmpfile redis.conf]
    set fp [open $config_file w+]
    foreach directive [dict keys $config] {
        puts -nonewline $fp "$directive "
        puts $fp [dict get $config $directive]
    }
    close $fp

    set stdout [format "%s/%s" [dict get $config "dir"] "stdout"]
    set stderr [format "%s/%s" [dict get $config "dir"] "stderr"]

    if {$::valgrind} {
        exec valgrind --suppressions=src/valgrind.sup src/redis-server $config_file > $stdout 2> $stderr &
    } else {
        exec src/redis-server $config_file > $stdout 2> $stderr &
    }

    # check that the server actually started
    # ugly but tries to be as fast as possible...
    set retrynum 100
    set serverisup 0

    if {$::verbose} {
        puts -nonewline "=== ($tags) Starting server ${::host}:${::port} "
    }

    after 10
    if {$code ne "undefined"} {
        while {[incr retrynum -1]} {
            catch {
                if {[ping_server $::host $::port]} {
                    set serverisup 1
                }
            }
            if {$serverisup} break
            after 50
        }
    } else {
        set serverisup 1
    }

    if {$::verbose} {
        puts ""
    }

    if {!$serverisup} {
        error_and_quit $config_file [exec cat $stderr]
    }

    # find out the pid
    while {![info exists pid]} {
        regexp {\[(\d+)\]} [exec cat $stdout] _ pid
        after 100
    }

    # setup properties to be able to initialize a client object
    set host $::host
    set port $::port
    if {[dict exists $config bind]} { set host [dict get $config bind] }
    if {[dict exists $config port]} { set port [dict get $config port] }

    # setup config dict
    dict set srv "config_file" $config_file
    dict set srv "config" $config
    dict set srv "pid" $pid
    dict set srv "host" $host
    dict set srv "port" $port
    dict set srv "stdout" $stdout
    dict set srv "stderr" $stderr

    # if a block of code is supplied, we wait for the server to become
    # available, create a client object and kill the server afterwards
    if {$code ne "undefined"} {
        set line [exec head -n1 $stdout]
        if {[string match {*already in use*} $line]} {
            error_and_quit $config_file $line
        }

        while 1 {
            # check that the server actually started and is ready for connections
            if {[exec cat $stdout | grep "ready to accept" | wc -l] > 0} {
                break
            }
            after 10
        }

        # append the server to the stack
        lappend ::servers $srv

        # connect client (after server dict is put on the stack)
        reconnect

        # execute provided block
        set num_tests $::num_tests
        if {[catch { uplevel 1 $code } error]} {
            set backtrace $::errorInfo

            # Kill the server without checking for leaks
            dict set srv "skipleaks" 1
            kill_server $srv

            # Print warnings from log
            puts [format "\nLogged warnings (pid %d):" [dict get $srv "pid"]]
            set warnings [warnings_from_file [dict get $srv "stdout"]]
            if {[string length $warnings] > 0} {
                puts "$warnings"
            } else {
                puts "(none)"
            }
            puts ""

            error $error $backtrace
        }

        # Don't do the leak check when no tests were run
        if {$num_tests == $::num_tests} {
            dict set srv "skipleaks" 1
        }

        # pop the server object
        set ::servers [lrange $::servers 0 end-1]

        set ::tags [lrange $::tags 0 end-[llength $tags]]
        kill_server $srv
    } else {
        set ::tags [lrange $::tags 0 end-[llength $tags]]
        set _ $srv
    }
}

A: Either there's nothing listening on host 192.168.1.130, port 6379 (well, at a guess) or your firewall configuration is blocking the connection. Impossible to say which, since all the code is really seeing is "the connection didn't work; something said 'no'…".

redpajama_set_name: RedPajamaStackExchange


Stats released exclusively to Capital show South Yorkshire police have seized 258 Kilos of Mcat in the last two years and 161 of those were in Barnsley.
Officers say they have regular users in the town who are as young as 14.
They say Mcat is now not seen as just a club drug but many hard drug users are buying it as a cheaper replacement for heroin and injecting it. Some people are using up to 50 times a day.
In 2012 there were about 170 seizures in South Yorkshire, 99 were in Barnsley.
There were 320 arrests in the whole of South Yorkshire and 200 of those were in Barnsley.
Police in the town have told capital that is partly because they are doing so much to crack down on the problem.
Officers say they are now asking every person who is arrested on suspicion of any crime if they are using Mcat or have any information about the drug to try and crack down on the problem.
Capital has been speaking to Valerie Townend from Longwood. Her son is clean now, but tried to kill himself twice when he was on mephodrone.


text:
Biografia
Dopo gli studi all'Accademia del Balletto Reale Danese, nel 1844 fu scritturato dalla compagnia. Ballerino discreto ma non eccezionale, si fece apprezzare come mimo e in ruoli da caratterista, apparendo nelle prime assolute di balletti di diversi balletti di August Bournonville.

Dopo la morte di Bournoville nel 1879, Gade assunse la direzione della compagnia e la mantenne per dieci stagioni fino al 1890.

Onorificenze

Note

Altri progetti


text:
\section{Partial integrals}
Recall that in the classical Kowalevski case (${\boldsymbol {\beta
}} = 0$) there exists the momentum integral
\begin{equation}\label{s2n1}
L = \frac {1}{2} {\bf I}{\boldsymbol\omega}{\boldsymbol\cdot}
{\boldsymbol\alpha} \qquad ({\bf I}=\mathrm{diag}\,\{2,2,1\}).
\end{equation}
Then the integral $G$ becomes equal to $L^2 $. Let $\ell $ denote
the constant of the integral (\ref{s2n1}). In Appelrot's notation
the 4th class of {\it especially remarkable motions} is defined by
the following conditions.

(i) The second polynomial of Kowalevski has a multiple root. One of
the Kowalevski variables remains constant and equal to the multiple
root $s$ of the corresponding Euler resolvent $\varphi (s) = s(s -
h)^2  + (a^2 - k)s - 2\ell ^2$:
\begin{equation}\label{s2n2}
\varphi (s) = 0,\quad \varphi '(s) = 0.
\end{equation}

(ii) Two equatorial components of the angular velocity are constant:
${\omega_1 \equiv -\ell/s}$, ${\omega _2 \equiv 0}$. Given
${{\boldsymbol \beta}=0}$, this fact can be written in the form
\begin{equation}\label{s2n3}
\frac {{\bf
I}{\boldsymbol\omega}{\boldsymbol\cdot}{\boldsymbol\alpha}} { {\bf
I}{\boldsymbol\omega}{\boldsymbol\cdot}{\bf e}_1 } = -s, \quad {\bf
I}{\boldsymbol\omega}{\boldsymbol\cdot}{\boldsymbol\beta}=0, \quad
{\bf I}{\boldsymbol\omega}{\boldsymbol\cdot}{\bf e}_2 =0.
\end{equation}

The next statement establishes the conditions similar to
(\ref{s2n3}) for the generalized top.

\begin{theorem} On each trajectory belonging to
$\mathfrak{O}$ the ratios
$$
\frac {{\bf
I}{\boldsymbol\omega}{\boldsymbol\cdot}{\boldsymbol\alpha}} { {\bf
I}{\boldsymbol\omega}{\boldsymbol\cdot}{\bf e}_1 }, \quad \frac {
{\bf I}{\boldsymbol\omega}{\boldsymbol\cdot}{\boldsymbol\beta}} {
{\bf I}{\boldsymbol\omega}{\boldsymbol\cdot}{\bf e}_2 }
$$
are constant and equal to each other.
\end{theorem}
\begin{proof} Let
\begin{equation}\label{s2n4}
{\bf{M}} = {\bf{I}\boldsymbol {\omega}}, \quad M_j  =
{\bf{I}\boldsymbol {\omega}}{\boldsymbol\cdot}{\bf{e}}_j \quad
(j=1,2,3).
\end{equation}
Due to (\ref{s1n4}) we also have $ M_\alpha   = {\bf{I}\boldsymbol
{\omega}}{\boldsymbol\cdot}{\boldsymbol {\alpha }}$, $M_\beta =
{\bf{I}\boldsymbol {\omega}}{\boldsymbol\cdot}{\boldsymbol {\beta
}}$. Then the first equation (\ref{s1n12}) yields
\begin{equation}\label{s2n5}
\frac{M_\alpha}{M_1} - \frac{M_\beta}{M_2} = 0.
\end{equation}
Introduce the function
$$
S =  - \frac{M_\alpha  M_1  + M_\beta  M_2 } {M_1^2  + M_2^2 }
$$
and calculate its time derivative:
$$
\frac{dS}{dt} = - \frac{(M_1^2  + M_2^2) \omega _3  + 4\alpha _3 M_1
+ 4\beta _3 M_2 }{2(M_1^2  + M_2^2 )^2}(M_\alpha  M_2 - M_\beta
M_1).
$$
In virtue of (\ref{s2n5}) the right hand side is identically zero.
Therefore $S$ is a partial integral on $\mathfrak{O}$. Denote
by~$s$ the corresponding constant:
\begin{equation}\label{s2n6}
\frac{M_\alpha  M_1  + M_\beta  M_2 } {M_1^2  + M_2^2 } =  - s.
\end{equation}
From (\ref{s2n5}), (\ref{s2n6}) we obtain
\begin{equation}\label{s2n7}
M_\alpha = - s M_1, \quad M_\beta =  - s M_2
\end{equation}
with the constant value $s$.
\end{proof}

Note that according to {\rm{(\ref{s2n7})}} the function $S$ can be
written in either of the representations
\begin{equation}\label{s2n8}
\displaystyle{S =  - \frac{1}{4}\left(\frac{M_ \alpha+ i
M_\beta}{\omega_1+i \omega_2} + \frac{M_ \alpha - i
M_\beta}{\omega_1 - i \omega_2}\right) = - \frac{1}{2}\frac{M_
\alpha+ i M_\beta}{\omega_1+i \omega_2} = - \frac{1}{2}\frac{M_
\alpha- i M_\beta}{\omega_1-i \omega_2}.}
\end{equation}

\begin{theorem} On the set $\mathfrak{O}$ the system
{\rm{(\ref{s1n1})}} has the partial integral
\begin{equation}\label{s2n9}
\displaystyle{{\rm T} = \frac {1}{2} (M_\alpha M_1 + M_\beta  M _2
)- 2(\alpha _1 \beta _2  - \alpha _2 \beta _1 ) + a^2  + b^2 .}
\end{equation}
\end{theorem}
\begin{proof} The time derivative of $\mathrm{T}$
$$
\frac {d{\rm T}}{dt} = \frac{1}{4}\,\omega _3 (M_\alpha  M_2 -
M_\beta M_1)
$$
vanishes on $\mathfrak{O}$ due to (\ref{s2n5}).
\end{proof}

Denote by $\tau $ the constant of the integral ${\rm T}$.

\begin{remark}\label{rem2}
In the work {\rm{\cite{KhRCD}}} equations similar to
{\rm{(\ref{s1n12})}} were derived from the condition that the
function
\begin{equation}\label{s2n10}
2G + (\tau  - a^2-b^2 )H + s\,K
\end{equation}
with Lagrange's multipliers $s,\tau $ has a critical point on $P^6$.
Using the coordinates {\rm{(\ref{s1n7})}} we have from
{\rm{(\ref{s2n8})}}, {\rm{(\ref{s2n9})}}
\begin{eqnarray}
& & \begin{array}{l} \displaystyle{S=-\frac{w_1(x_2 w_1+y_1 w_2+z_2
w_3)+w_2(y_2 w_1+x_1
w_2+z_1 w_3)}{4 w_1 w_2}} = \\[4mm]
\quad  = \displaystyle{-\frac{x_2 w_1+y_1 w_2+z_2 w_3}{2 w_2}
= - \frac {y_2 w_1+x_1 w_2+z_1 w_3} {2 w_1},}
\end{array} \label{s2n11} \\
& & \begin{array}{l} \displaystyle{{\rm T}=\frac{1}{2}[w_1(x_2 w_1+y_1
w_2+z_2 w_3)+w_2(y_2
w_1+x_1 w_2+z_1 w_3)]+x_1 x_2+z_1 z_2 = }\\[4mm]
\quad = -2 S\, w_1 w_2 +x_1 x_2+z_1 z_2.
\end{array}\label{s2n12}
\end{eqnarray}
Comparing {\rm{(\ref{s2n11})}}, {\rm{(\ref{s2n12})}} with the
expressions for $s,\tau$ given in {\rm{\cite{KhRCD}}} we see that on
$\mathfrak{O}$ Lagrange's multipliers in {\rm{(\ref{s2n10})}}
coincide with the constants of the integrals $S,{\rm T}$ introduced here.
\end{remark}

Supposing (\ref{s1n5}), introduce parameters $p,r$ ($p>r>0$)
such that
\begin{equation}\label{s2n13}
p^2  = a^2  + b^2 ,\quad r^2  = a^2  - b^2.
\end{equation}
Let $h,k,g$ denote the constants of the general integrals
(\ref{s1n3}). Then according to Remark~\ref{rem2}, from the results
of the work~\cite{KhRCD} we obtain that on $\mathfrak{O}$
\begin{equation}\label{s2n14}
h = \frac {p^2 -\tau}{2s}+ s, \quad k = \frac{\tau^2 - 2p^2\tau +
r^4}{4s^2}+\tau, \quad g = \frac{p^4-r^4} {4s}+ \frac{1}{2}(p^2
-\tau)s.
\end{equation}
These equations can be considered as parametric equations of the
corresponding bifurcation sheet of the integral map (\ref{s1n6}).
Eliminating $\tau$ we have
\begin{equation}\label{s2n15}
\psi (s) = 0,\quad \psi '(s) = 0,
\end{equation}
where
$$
\psi (s) = s^2 (s - h)^2  + (p^2  - k)s^2  - 2gs + \frac {p^4  -
r^4}{4}.
$$
If ${\boldsymbol {\beta }} = 0$ ($p^2  = r^2  = a^2 $), then $\psi
(s) = s\,\varphi (s)$ and the conditions (\ref{s2n15}) turn to
(\ref{s2n2}). Therefore, the set of trajectories belonging to
$\mathfrak{O}$ is the generalization of the set of the {\it
especially remarkable motions} of the 4th~Appelrot class.

\section{Parametric equations of integral manifolds}
Due to the equations (\ref{s2n14}) the functions $S,{\rm T}$ form
a complete system of first integrals on $\mathfrak{O}$. In
particular, the equations of the integral manifold
$$
\{ \zeta  \in P^6 : {H(\zeta ) = h},
{K(\zeta ) = k}, {G(\zeta ) = g}\}
$$
in this class of motions are equivalent to the relations
(\ref{s1n12}) and the equations
\begin{equation}\label{s4n1}
S = s,\; {\rm T} = \tau.
\end{equation}

Using (\ref{s2n5}), (\ref{s2n11}) we replace the equations $R_1=0$,
$S=s$ by
\begin{equation}\label{s4n2}
\begin{array}{l}
(y_2  + 2s)w_1  + x_1 w_2  + z_1 w_3  = 0,  \\
x_2 w_1  + (y_1  + 2s)w_2  + z_2 w_3  = 0.
\end{array}
\end{equation}
At the same time, from (\ref{s1n13}) and (\ref{s2n12}) the system
$R_2=0$, $\mathrm{T}=\tau$ is equivalent to
\begin{eqnarray}
& & x_2 z_1 w_1  + x_1 z_2 w_2  + (\tau  - x_1 x_2 )w_3  = 0,  \label{s4n3}\\
& & 2s \, w_1 w_2  - (x_1 x_2  + z_1 z_2 ) + \tau  = 0. \label{s4n4}
\end{eqnarray}
To obtain a closed system of equations we must add the geometric
integrals (\ref{s1n2}). In terms of the variables (\ref{s1n7}) we
get
\begin{eqnarray}
& & z_1^2  + x_1 y_2  = r^2, \qquad
z_2^2  + x_2 y_1  = r^2, \label{s4n5}\\
& &  x_1 x_2 + y_1 y_2  + 2z_1 z_2  = 2p^2\label{s4n6}.
\end{eqnarray}
The variables (\ref{s1n7}) by definition satisfy
\begin{equation}\label{s4n7}
x_2  = \overline{\mathstrut x_1}, \quad y_2  = \overline{\mathstrut
y_1},\quad z_2  = \overline{\mathstrut z_1}, \quad  w_2  =
\overline{\mathstrut w_1}, \quad  w_3 \in {\bf R},
\end{equation}
thus forming a space of real dimension 9. Seven relations
(\ref{s4n2}) -- (\ref{s4n6}) define the integral manifold. In the
case of independency of the integrals $S,{\rm T}$ this manifold is
two-dimensional and consists of Liouville tori filled with
quasi-periodic motions.

Let
\begin{equation}\label{s4n8}
x  = \sqrt{\mathstrut x_1 x_2} ,\quad z  = \sqrt{\mathstrut z_1
z_2}, \quad \xi = 2s \, w_1 w_2.
\end{equation}
Then from (\ref{s4n4})
\begin{equation}\label{s4n9}
\xi = x^2+z^2-\tau.
\end{equation}
From (\ref{s4n5}), (\ref{s4n8}) we obtain
\begin{equation}\label{s4n10}
(r^2  - x_1 y_2 )(r^2  - x_2 y_1 ) = z^4,
\end{equation}
and the equation (\ref{s4n6}) yields
\begin{equation}\label{s4n11}
y_1 y_2  = 2p^2  - x^2  - 2z^2.
\end{equation}
Hence
\begin{equation}\label{s4n12}
r^2 (x_1 y_2  + x_2 y_1 ) = r^4  + 2p^2 x^2  - (x^2  + z^2 )^2 .
\end{equation}
Rewrite (\ref{s4n5}) in the form
\begin{equation}\label{s4n13}
\begin{array}{l}
(z_1  + z_2 )^2  = 2r^2  - (x_1 y_2  + x_2 y_1 ) + 2z^2 ,  \\
(z_1  - z_2 )^2  = 2r^2  - (x_1 y_2  + x_2 y_1 ) - 2z^2
\end{array}
\end{equation}
and substitute (\ref{s4n12}) to obtain
\begin{equation}\label{s4n14}
r^2 (z_1  + z_2 )^2  = \Phi_ 1,\quad r^2 (z_1  - z_2 )^2  = \Phi_2,
\end{equation}
where
\begin{equation}\label{s4n15}
\begin{array}{l}
\Phi_1 = (x^2  + z^2  + r^2 )^2  - 2(p^2  + r^2 )x^2 = (\xi + \tau + r^2 )^2 - 2(p^2 + r^2)x^2, \\
\Phi_2 = (x^2  + z^2  - r^2 )^2  - 2(p^2  - r^2 )x^2 = (\xi + \tau -
r^2 )^2 - 2(p^2 - r^2)x^2.
\end{array}
\end{equation}

Note that the equilibria ${\boldsymbol \omega} \equiv 0$ of the
system (\ref{s1n1}) are included in the family of motions
(\ref{s1n10}). On the rest of the trajectories in $\mathfrak{O}$ the
determinant of the equations (\ref{s4n2}), (\ref{s4n3}) in $w_j$
($j=1,2,3$) vanishes identically. Calculate this determinant and
eliminate $z_1^2 ,z_2^2$ from (\ref{s4n5}) and the product $y_1 y_2$
from (\ref{s4n11}) to obtain
\begin{equation}\label{s4n16}
\begin{array}{l}
2s[(r^2 x_1  - \tau y_1 ) + (r^2 x_2  - \tau y_2 )] = - r^2 (x_1 y_2  + x_2 y_1 ) +\\
\quad  + 2[2s^2 (\tau  - x^2 ) + p^2 (\tau  + x^2 ) - \tau (x^2  +
z^2 )].
\end{array}
\end{equation}
On the other hand, the direct calculation in view of (\ref{s4n8}),
(\ref{s4n11}) gives
\begin{equation}\label{s4n17}
(r^2 x_1  - \tau y_1 )(r^2 x_2  - \tau y_2 ) = r^4 x^2  + \tau (2p^2
- x^2  - 2z^2 ) - r^2 \tau (x_1 y_2  + x_2 y_1 ).
\end{equation}
Denote
\begin{equation}\label{s4n18}
\sigma  = \tau ^2  - 2p^2 \tau  + r^4 ,\quad \chi  = \sqrt k
\geqslant 0.
\end{equation}
From the second relation (\ref{s2n14}) we have the identity
\begin{equation}\label{s4n19}
4s^2 \chi ^2  = \sigma  + 4s^2 \tau.
\end{equation}
Introduce the complex conjugate variables
\begin{equation}\label{s4n20}
\mu _1  = r^2 x_1  - \tau y_1 ,\quad \mu _2  = r^2 x_2  - \tau y_2.
\end{equation}
Eliminating $x_1 y_2  + x_2 y_1 $ from (\ref{s4n16}), (\ref{s4n17})
with the help of (\ref{s4n12}) we come to the system
\begin{equation}\label{s4n21}
\begin{array}{c}
2s(\mu _1  + \mu _2 ) = \xi^2  - 4s^2 (x^2 -\tau ) - \sigma, \\
\mu _1 \mu _2  = \tau \xi^2  + \sigma x^2  - \tau \sigma .
\end{array}
\end{equation}

Choose
\begin{equation}\label{s4n22}
\mu _1^*  = \sqrt {2s\mu _1  - 4s^2\tau } ,\quad \mu _2^*  = \sqrt
{2s\mu _2  - 4s^2\tau}
\end{equation}
to be complex conjugate. Then the system (\ref{s4n21}) takes the
form
\begin{equation}\label{s4n23}
(\mu _1^*  +\mu _2^* )^2  = \Psi_1,\quad (\mu _1^* - \mu _2^* )^2 =
\Psi_2,
\end{equation}
where
\begin{equation}\label{s4n24}
\begin{array}{l}
\Psi_1 = \xi^2  -4s^2(x + \chi )^2, \quad \Psi_2 = \xi^2  -4s^2(x -
\chi )^2.
\end{array}
\end{equation}

As was to be expected from dimensional reasoning, all phase variables could be expressed
in terms of two almost everywhere independent auxiliary variables.
The above formulae emphasize the special role of the pair $(x,\xi)$.

From (\ref{s4n22}), (\ref{s4n23}) we find
\begin{equation}\label{s4n25}
\displaystyle{\mu_1=2s\tau+\frac{1}{8s}(\sqrt{\Psi_1}+\sqrt{\Psi_2})^2,
\quad \mu_2=2s\tau+\frac{1}{8s}(\sqrt{\Psi_1}-\sqrt{\Psi_2})^2.}
\end{equation}
Further on the calculation sequence is as follows. From
(\ref{s4n14}) we find $z_1,z_2$. Multiplying the equations
(\ref{s4n20}) by $x_2,x_1$ respectively and using (\ref{s4n5}) we
get
$$
\begin{array}{l}
x_2 \mu_1 = r^2 x^2 -\tau x_2 y_1 = r^2(x^2 -\tau)+ \tau z_2^2, \\
x_1 \mu_2 = r^2 x^2 -\tau x_1 y_2 = r^2(x^2 -\tau)+ \tau z_1^2,
\end{array}
$$
whence $x_1, x_2$ are found. Substituting these values back to
(\ref{s4n20}) we find $y_1, y_2$. As a result, after some obvious
transformations we obtain the following expressions for the
configuration variables:
\begin{eqnarray}
& &
\begin{array}{l}
\displaystyle{x_1=\frac{2s}{r^2}
\frac{4r^4(x^2-\tau)+\tau(\sqrt{\mathstrut \Phi_1}+\sqrt{\mathstrut
\Phi_2})^2}
{16s^2\tau+(\sqrt{\mathstrut \Psi_1}-\sqrt{\mathstrut \Psi_2})^2},} \\[4mm]
\displaystyle{x_2=\frac{2s}{r^2}
\frac{4r^4(x^2-\tau)+\tau(\sqrt{\mathstrut \Phi_1}-\sqrt{\mathstrut
\Phi_2})^2} {16s^2\tau+(\sqrt{\mathstrut \Psi_1}+\sqrt{\mathstrut
\Psi_2})^2},}
\end{array} \label{s4n26} \\
& & \begin{array}{l} \displaystyle{y_1= 2s \frac{4[2 \tau \xi - \tau
(x^2-\tau)+ \sigma] - (\sqrt{\mathstrut \Phi_1}-\sqrt{\mathstrut
\Phi_2})^2} {16s^2\tau+(\sqrt{\mathstrut \Psi_1}-\sqrt{\mathstrut
\Psi_2})^2},}
\\[4mm]
\displaystyle{y_2=2s \frac{4[2 \tau \xi - \tau (x^2-\tau)+ \sigma] -
(\sqrt{\mathstrut \Phi_1}+\sqrt{\mathstrut \Phi_2})^2}
{16s^2\tau+(\sqrt{\mathstrut \Psi_1}+\sqrt{\mathstrut \Psi_2})^2},}
\end{array} \label{s4n27}\\
& & \, \, \displaystyle{z_1=\frac{1}{2r} (\sqrt{\mathstrut \Phi_1} +
\sqrt{\mathstrut \Phi_2}), \quad z_2=\frac{1}{2r} ( \sqrt{\mathstrut
\Phi_1} - \sqrt{\mathstrut \Phi_2})}.\label{s4n28}
\end{eqnarray}

Note that all radicals are algebraic. The formal choice of signs in
(\ref{s4n26})--(\ref{s4n28}) is defined by the initial choice in the
expressions for $\mu_1, \mu_2, z_1, z_2$. The polynomials $\Phi_{j},
\Psi_{j}$ $(j=1,2)$ obviously split to multipliers linear with
respect to $x,\xi$. Then, typically, the projection of an integral
manifold onto the $(x,\xi)$-plane has the form of a quadrangle. Fix
any inner point $(x,\xi)$ of such projection. Then the expressions
(\ref{s4n26})--(\ref{s4n28}) define eight points of the
configuration space with different set of signs of the radicals
$\sqrt{\mathstrut \Phi_1}, \sqrt{\mathstrut \Phi_2},
\sqrt{\mathstrut \Psi_1 \Psi_2}$.

To find $w_3$, use the energy integral. On account of (\ref{s2n14})
it takes the form
$$
2 s\, w_3^2+4s\, w_1 w_2-2s(y_1+y_2)=4s^2+2p^2-2\tau.
$$
Substitute $2 s\, w_1 w_2$ from (\ref{s4n4}) and replace $2p^2$ by
its expression from (\ref{s4n6}) to obtain
\begin{equation}\label{s4n29}
2 s\, w_3^2=D,
\end{equation}
where
\begin{equation}\label{s4n30}
D = (y_1+2s)(y_2+2s)-x_1 x_2
\end{equation}
is the determinant of (\ref{s4n2}) with respect to $w_1,w_2$. In
particular, this determinant vanishes along with $w_3$. Due to this
fact we can express $w_1, w_2$ either as linear functions of $w_3$,
or in inverse proportion to $w_3$:
\begin{equation}\label{s4n31}
\begin{array}{l}
\displaystyle{w_1=\frac{x_1
z_2-(y_1+2s)z_1}{(y_1+2s)(y_2+2s)-x^2}w_3=\frac{x_1
z_2-(y_1+2s)z_1}{2s\, w_3},}\\
\displaystyle{w_2=\frac{x_2
z_1-(y_2+2s)z_2}{(y_1+2s)(y_2+2s)-x^2}w_3=\frac{x_2
z_1-(y_2+2s)z_2}{2s\, w_3}.}
\end{array}
\end{equation}

With two possibilities of the sign choice for $w_3$ in (\ref{s4n29})
we have that the inverse image in the integral manifold
${\{S=s,\mathrm{T}=\tau\}\cap \mathfrak{O}}$ of a generic point
$(x,\xi)$ contains 16 points.

We also need the explicit formula for $w_3$ in terms of $x,\xi$.
From (\ref{s4n27}) we write
\begin{equation}\label{s4n32}
\begin{array}{l} \displaystyle{y_1+2s = 2s \frac{4[2 \tau \xi - \tau
(x^2-\tau)+ 4 s^2\chi^2] - (\sqrt{\mathstrut
\Phi_1}-\sqrt{\mathstrut \Phi_2})^2 +(\sqrt{\mathstrut
\Psi_1}-\sqrt{\mathstrut \Psi_2})^2} {16s^2\tau+(\sqrt{\mathstrut
\Psi_1}-\sqrt{\mathstrut \Psi_2})^2},}
\\[4mm]
\displaystyle{y_2+2s=2s \frac{4[2 \tau \xi - \tau (x^2-\tau)+ 4
s^2\chi^2] - (\sqrt{\mathstrut \Phi_1}+\sqrt{\mathstrut
\Phi_2})^2+(\sqrt{\mathstrut \Psi_1}+\sqrt{\mathstrut \Psi_2})^2}
{16s^2\tau+(\sqrt{\mathstrut \Psi_1}+\sqrt{\mathstrut \Psi_2})^2}.}
\end{array}
\end{equation}
Note that
\begin{equation}\label{s4n33}
[{16s^2\tau+(\sqrt{\mathstrut \Psi_1}-\sqrt{\mathstrut
\Psi_2})^2}][{16s^2\tau+(\sqrt{\mathstrut \Psi_1}+\sqrt{\mathstrut
\Psi_2})^2}]=64s^2(\tau \xi^2+\sigma x^2-\tau\sigma).
\end{equation}
Then
$$
D=\frac{\sqrt{\mathstrut \Phi_1 \Phi_2 \Psi_1 \Psi_2}-P}{2 (\tau
\xi^2+\sigma x^2-\tau\sigma)},
$$
where
$$
\begin{array}{rcl}
P(x,\xi)&=&\xi^4+2\tau\xi^3+2[(\tau-2s^2-p^2)x^2-\tau(2s^2-p^2)-r^4]\xi^2-\\
& & -8s^2[(\tau-2\chi^2)x^2+\tau\chi^2]\xi -4s^2
(x^2-\chi^2)[2(\tau-p^2)x^2-(\tau^2-r^4)].
\end{array}
$$
Let
$$
\begin{array}{l}
Q(x,\xi)=(\,\xi+ \tau +2s^2 - p^2)^2-4s^2x^2 +r^4 -(2s^2 - p^2)^2, \\
P_1(x,\xi)= P(x,\xi)+2x Q(x,\xi) \sqrt{\tau \xi^2+\sigma x^2-\tau\sigma},\\
P_2(x,\xi)= P(x,\xi)-2x Q(x,\xi) \sqrt{\tau \xi^2+\sigma
x^2-\tau\sigma}.
\end{array}
$$
Direct calculation proves the identity $ P_1 P_2\equiv \Phi_1 \Phi_2
\Psi_1 \Psi_2$. On the other hand, $P_1+P_2\equiv 2P$. Therefore,
$$
D=-\frac{({\sqrt{\mathstrut P_1}-\sqrt{\mathstrut P_2}})^2}{4 (\tau
\xi^2+\sigma x^2-\tau\sigma)},
$$
whence
\begin{equation}\label{s4n34}
w_3=i\frac{{\sqrt{\mathstrut P_1}-\sqrt{\mathstrut
P_2}}}{2\sqrt{2s\,(\tau \xi^2+\sigma x^2-\tau\sigma)}}.
\end{equation}

Below we use one more representation of $w_1,w_2$ not depending on
$w_3$. The system (\ref{s4n2}) yields
$$
x_2 w_1^2=-z_2 w_1 w_3-(y_2+2s) w_1 w_2,\quad x_1 w_2^2=-z_1 w_2
w_3-(y_1+2s) w_1 w_2.
$$
Substitute the expressions for $w_1 w_3$, $w_2 w_3$ found from the
inverse proportion in (\ref{s4n31}) and eliminate $w_1 w_2$ by
(\ref{s4n4}) to obtain
$$
2s \, x_2 w_1^2 = - (\mu_1-2s \tau)-2s x^2,\quad 2s \, x_1 w_2^2 = -
(\mu_2-2s \tau)-2s x^2.
$$
Then from (\ref{s4n25}) we find
\begin{equation}\label{s4n35}
\displaystyle{w_1 = \frac{i}{4s\sqrt{x_2}}(\sqrt{\mathstrut
\Theta_1}+\sqrt{\mathstrut \Theta_2}), \quad w_2 =
\frac{i}{4s\sqrt{x_1}}(\sqrt{\mathstrut \Theta_1}-\sqrt{\mathstrut
\Theta_2}),}
\end{equation}
where
\begin{equation}\label{s4n36}
\Theta_1(x,\xi) =(\xi-2s x)^2-4 s^2 \chi ^2,\quad \Theta_2(x,\xi)
=(\xi + 2s x)^2-4 s^2 \chi ^2.
\end{equation}

Note that the products $\Theta_1 \Theta_2$ and $\Psi_1 \Psi_2$
coincide. The choice of the signs in (\ref{s4n35}) is determined by
the condition ${(\sqrt{x_2}w_1)(\sqrt{x_1}w_2)=x \,\xi /2s}$
following from (\ref{s4n8}). The signs of the complex conjugate
values $\sqrt{x_1}$, $\sqrt{x_2}$ must be chosen in such a way that
the expressions (\ref{s4n35}), (\ref{s4n35}) satisfy one of the
equations (\ref{s4n2}), (\ref{s4n3}) (then the other two hold
automatically).

Thus, all phase variables are algebraically expressed in terms of
two auxiliary variables $x, \xi$; the domain of the latter depends
on the constants of the first integrals.

\section{Singularities of the induced symplectic structure}
The Hamiltonian structure of the system (\ref{s1n1}) is provided by
the Poisson brackets on ${\bf R}^9(\boldsymbol \omega,\boldsymbol
\alpha,\boldsymbol \beta)$. In notation (\ref{s2n4}) these brackets
are \cite{Bogo}
\begin{equation}\label{s7n1}
\begin{array}{c}
\{M_j,M_k\}=\varepsilon_{j k l} M_l,\quad
\{M_j,\alpha_k\}=\varepsilon_{j k l} \alpha_l,\quad
\{M_j,\beta_k\}=\varepsilon_{j k l} \beta_l, \\
\{\alpha_j,\alpha_k\}=\{\alpha_j,\beta_k\}=\{\beta_j,\beta_k\}=0.
\end{array}
\end{equation}
Being restricted to $P^6$ they correspond to Kirillov's symplectic
form $\boldsymbol \lambda \in \Lambda^2(P^6)$. Recall the following
well-known facts. Let $N \subset P^6$ be a submanifold defined in
$P^6$ by two independent equations
\begin{equation}\label{s7n2}
f_1=0, \quad f_2=0
\end{equation}
and let $\mathfrak{X}_1, \mathfrak{X}_2$ be the Hamiltonian vector
fields with the Hamilton functions $f_1, f_2$. Then the span of
$\mathfrak{X}_1, \mathfrak{X}_2$ at each point $\zeta \in N$ is skew
orthogonal to the tangent space $T_\zeta N$. Therefore the
restriction of $\boldsymbol \lambda$ to $N$ is non-degenerate at the
point $\zeta$ if and only if
\begin{equation}\label{s7n3}
\{f_1,f_2\}(\zeta)=\boldsymbol \lambda (\mathfrak{X}_1,
\mathfrak{X}_2)(\zeta) \ne 0.
\end{equation}

Let us calculate the bracket $\{R_1, R_2\}$ of the functions
(\ref{s1n13}). As $R_1$ is pure imaginary denote
\begin{equation}\label{s7n4}
\displaystyle{R=\frac{1}{i}\{R_1, R_2\}.}
\end{equation}

The change of variables (\ref{s1n7}) is linear with constant
coefficients, so the rules (\ref{s7n1}) are easily transformed for
new coordinates. Omitting technical details we present $R$ in the
form
\begin{equation}\label{s7n5}
R=\frac{F_1}{w_1^3w_2^3w_3^2}[w_3(w_3 F_2+F_3)^2-F_4],
\end{equation}
where
\begin{equation}\label{s7n6}
\begin{array}{l}
F_1=z_1 z_2 w_3+x_2 z_1 w_1+x_1 z_2 w_2,\\[2mm]
F_2=w_1 w_2 w_3+ z_2 w_1+ z_1 w_2,\\[2mm]
F_3=2 w_1^2 w_2^2+x_2 w_1^2+x_1 w_2^2,\\[2mm]
F_4=4 w_1^2 w_2^2 [(w_1^2 w_2^2+x_2 w_1^2+x_1 w_2^2)w_3+x_2 z_1
w_1+x_1 z_2 w_2].
\end{array}
\end{equation}
The variables $y_1, y_2$ have been eliminated as the solution of the
system (\ref{s1n12})
\begin{equation}\label{s7n7}
\displaystyle{y_1=-\frac{w_1 w_3(x_2 w_1+z_2 w_3)+F_1}{w_1 w_2
w_3},}\quad \displaystyle{y_2=-\frac{w_2 w_3(x_1 w_2+z_1
w_3)+F_1}{w_1 w_2 w_3}.}
\end{equation}

Fixing the values $h,k,g,s,\tau$ of the functions (\ref{s1n3}),
(\ref{s2n11}), (\ref{s2n12}) we have
\begin{equation}\label{s7n8}
w_3 F_2+F_3=2 w_1 w_2 h-2(x_1 x_2+z_1 z_2 - \tau), \quad F_4=4w_1^2
w_2^2 w_3 (\tau-k).
\end{equation}
Then from (\ref{s2n14}), (\ref{s4n3}), (\ref{s4n4}), (\ref{s4n8}),
(\ref{s4n9}) we obtain
\begin{equation}\label{s7n9}
\begin{array}{l}
\displaystyle{w_3 F_2+F_3=\frac{\xi}{s}(\frac{p^2-\tau}{2s}-s),
\quad F_4=-\frac{\sigma \xi^2 w_3}{4s^4},} \quad \displaystyle{F_1 =
\xi w_3, \quad w_1^3 w_2^3 =\frac{\xi^3}{8s^3}.}
\end{array}
\end{equation}
Finally, the expression (\ref{s7n5}) takes the form
\begin{equation}\label{s7n10}
\displaystyle{R=\frac{8}{s}\left[s^4-(p^2-\tau)s^2+\frac{p^4-r^4}{4}\right].}
\end{equation}
Obviously, $R$ is a first integral of the induced system, and the
equation
\begin{equation}\label{s7n11}
\displaystyle{s^4-(p^2-\tau)s^2+\frac{p^4-r^4}{4}=0}
\end{equation}
defines the set of the integral constants $s,\tau$ such that on the
corresponding integral manifolds the 2-form induced on
$\mathfrak{O}$ by the symplectic structure $\boldsymbol \lambda$
degenerates. As the functions (\ref{s2n11}), (\ref{s2n12}) have an
algebraic structure, the set (\ref{s7n11}) has codimension 1 in
$\mathfrak{O}$. Thus, $\boldsymbol \lambda | _{\mathfrak{O}}$ is
almost everywhere non-degenerate.

To locate the set (\ref{s7n11}) on the surface (\ref{s2n14}) in
${\bf R}^3(h,k,g)$ notice that, in virtue of (\ref{s2n14}),
\begin{equation}\label{s7n12} \notag
\frac{\partial}{\partial s}(h,k,g) \times \frac{\partial}{\partial
\tau}(h,k,g)
=\bigl[\displaystyle{s^4-(p^2-\tau)s^2+\frac{p^4-r^4}{4}}
\bigr](\frac{\tau-p^2}{2 s^4},\frac{1}{2 s^3},\frac{1}{s^4}).
\end{equation}
Therefore, the equation (\ref{s7n11}) defines cuspidal edges of the
surface (\ref{s2n14}).

\section{Bifurcation diagram and the existence of motions}
Introduce the integral map $J$ of the dynamical system on
$\mathfrak{O}$
\begin{equation}\label{s5n1}
J(\zeta ) = (S(\zeta ),{\rm T}(\zeta )) \in {\bf{R}}^2, \quad \zeta
\in \mathfrak{O}.
\end{equation}
The bifurcation diagram $\Sigma(J)$ of this map is, by definition,
the set of pairs $(s, \tau)$ over which $J$ is not locally trivial.
In our case all integral manifolds (\ref{s4n1}) are compact.
Therefore, $\Sigma(J)$ is the set of critical values of $J$.

Define {\it the admissible region} as the image of the map
(\ref{s5n1}), i.e., the set of values $(s,\tau)$ such that the
integral manifold (\ref{s4n1}) is not empty. Obviously, $\partial
J(\mathfrak{O}) \subset \Sigma(J)$.

Due to the above results the existence of a trajectory on
$\mathfrak{O}$ with given $s, \tau$ is equivalent to the existence
of a point on the $(x,\xi)$-plane for which the values
(\ref{s4n26})--(\ref{s4n28}), (\ref{s4n35}), (\ref{s4n35}) satisfy
(\ref{s4n7}). It easily follows from (\ref{s4n25}), (\ref{s4n28}),
(\ref{s4n8}) that the conditions (\ref{s4n7}), in turn, are
equivalent to the system of inequalities
\begin{eqnarray}
& & \Phi_1(x, \xi) \geqslant 0, \quad \Phi_2(x, \xi) \leqslant 0, \label{s5n2} \\
& & \Psi_1(x, \xi) \geqslant 0, \quad \Psi_2(x, \xi) \leqslant 0
\label{s5n3}
\end{eqnarray}
considered in the quadrant $x\geqslant 0$, $ s\,\xi \geqslant 0$.

\begin{theorem}
The bifurcation diagram $\Sigma(J)$ consists of the following
subsets of the $(s,\tau )$-plane:
$$
\begin{array}{l}
\;1^ \circ)\; \tau  = (a + b)^2 ,\;s \in [ - a,0) \cup [b, + \infty
);\\
\;2^ \circ)\; \tau  = (a - b)^2 ,\;s \in [ - a, - b] \cup (0, +
\infty );\\
\;3^ \circ)\; s =  - a,\;\tau  \geqslant (a - b)^2 ;\\
\;4^ \circ)\; s =  - b,\;\tau  \geqslant (a - b)^2 ;\\
\;5^ \circ)\; s = b,\;\tau  \leqslant (a + b)^2 ;\\
\;6^ \circ)\; s = a,\;\tau  \leqslant (a + b)^2 ;\\
\;7^ \circ)\; \tau  = 0,\;s \in (0, + \infty );\\
\;8^ \circ)\; \tau  = (\sqrt {a^2  - s^2} + \sqrt{b^2 - s^2 })^2 ,\;s \in [ - b,0);\\
\;9^ \circ)\; \tau  = (\sqrt {a^2  - s^2} - \sqrt{b^2 - s^2 })^2 ,\;s \in (0,b];\\
10^ \circ)\; \tau  = - (\sqrt {s^2  - a^2}-\sqrt{s^2 - b^2})^2 ,\;s
\in [a, + \infty ).
\end{array}
$$
\end{theorem}

\begin{theorem}
The solutions of the system {\rm{(\ref{s1n1})}} under the conditions
{\rm{(\ref{s1n12})}} exist iff the constants of the first integrals
{\rm{(\ref{s2n11})}}, {\rm{(\ref{s2n12})}} satisfy one of the
following
$$
\begin{array}{l}
1^ \circ)\; -a \leqslant s \leqslant -b, \; \tau  \geqslant (a -
b)^2;\\
2^ \circ)\; -b \leqslant s < 0,\; \tau  \geqslant (\sqrt{\mathstrut
a^2 - s^2}+\sqrt{\mathstrut b^2-s^2})^2;\\
3^ \circ)\;\; 0 < s \leqslant b, \;\tau  \leqslant (\sqrt{\mathstrut
a^2 - s^2}- \sqrt{\mathstrut b^2-s^2})^2;\\
4^ \circ)\;\; b \leqslant s \leqslant a, \;\tau  \leqslant (a +
b)^2;\\
5^ \circ)\;\;  s \geqslant a, \;-(\sqrt{\mathstrut s^2 - b^2}-
 \sqrt{\mathstrut s^2-a^2})^2 \leqslant \tau \leqslant (a+b)^2.
\end{array}
$$
\end{theorem}

The complete proof of these statements is purely technical (see
\cite{Kh35}) and contains the scrupulous analysis of the regions on
the $(x,\xi)$-plane defined by (\ref{s5n2}), (\ref{s5n3}) and the
cases of their structural transformations. Another approach is
suggested in \cite{KhShv} for the pair $(S,H)$. It is based on the
classification of the trajectories in $\mathfrak{O}$ satisfying the
condition ${\rm {rank}} \, (H \times K \times G)<2$.

\begin{figure}[ht]\label{fig1}
\centering
\includegraphics[width=8cm,keepaspectratio]{hrcd1.eps}
\caption{The admissible region in the $(s,\tau)$-plane.}
\end{figure}

The admissible region is shaded in Fig.1. The dense lines and curves
represent the equations of the bifurcation diagram, the dashed curve
illustrates the equation (\ref{s7n11}), i.e., the first integrals
constants such that the symplectic structure is degenerate on the
corresponding integral manifolds.

\section{Separation of variables}
In the sequel we suppose that $\tau \sigma \ne 0$. In fact, if
$\tau=0$, then from (\ref{s2n14}) we obtain the relation
${(2g-p^2h)^2=r^4 k}$ characteristic for the critical manifold
$\mathfrak{N}$ \cite{KhOne}. The equations of motion on
$\mathfrak{N}$ were explicitly integrated in \cite{KhSavUMB}.
If $\sigma=0$, then the equations (\ref{s2n14}) yield one of the
relations (\ref{s1n11}). This case corresponds to the set of points
(\ref{s1n9}). At these points the manifold $\mathfrak{O}$ fails to
be smooth. The corresponding trajectories are the pendulum motions
(\ref{s1n10}).

Considering the second equation (\ref{s4n21}) denote $ \mu =
|r^2x_1-\tau y_1|=|r^2 x_2-\tau y_2|$. Then
\begin{equation}\label{s6n1}
\mu^2=\tau \xi^2+\sigma x^2-\tau\sigma.
\end{equation}
This equation defines the second-order surface $\mathcal{M}$ in
three-dimensional space ${\bf R}^3(x,\xi ,\mu )$. Each trajectory in
$\mathfrak{O}$ is in a natural way represented by a curve on
$\mathcal{M}$.

\begin{theorem}\label{th5}
Supposing $\tau \sigma \ne 0$, introduce the variables
\begin{equation}\label{s6n2}
\displaystyle{U=\frac{\tau \xi + x \mu}{\sqrt{\sigma}(\tau -
x^2)},\quad V=\frac{\tau \xi - x \mu}{\sqrt{\sigma}(\tau - x^2)}}.
\end{equation}
Then the equations of motion on $\mathfrak{O}$ separate
\begin{equation}\label{s6n3}
\displaystyle{\frac{dU}{\sqrt{Q(U)}} - \frac{dV}{\sqrt{Q(V)}} = 0,
\quad \frac{U dU}{\sqrt{Q(U)}} - \frac{V dV}{\sqrt{Q(V)}} = \frac
{dt}{\sqrt{\mathstrut 2s \tau \sigma}}}.
\end{equation}
Here
\begin{equation}\label{s6n4}
Q(w)=(w^2-1)({\sigma} w^2-{4s^2\chi^2})[(\sqrt{\sigma} w +
\tau)^2-r^4].
\end{equation}
\end{theorem}

\begin{proof}
Consider the local coordinates $u,v$ on the surface $\mathcal{M}$:
\begin{equation}\label{s6n5}
\xi  = \sqrt \sigma  \, \frac{uv + 1}{u + v},\quad x = \sqrt \tau \,
\frac{u - v}{u + v}, \quad \mu = \sqrt {\tau \sigma} \, \frac{uv -
1}{u + v}.
\end{equation}
In addition to (\ref{s4n19}) note the following two identities for
the constants introduced above,
\begin{equation}\label{s6n6}
\sigma  + 2\tau (p^2  \pm r^2 ) = (\tau  \pm r^2 )^2 .
\end{equation}
The polynomials (\ref{s4n15}), (\ref{s4n24}), (\ref{s4n36}) become
$$
\begin{array}{ll}
\displaystyle{\Phi_1  = \kappa\,\varphi _1 (u)\,\varphi _1 (v)}, &
\displaystyle{\Phi_2  = \kappa\,\varphi _2 (u)\,\varphi _2 (v),}
\\[2mm]
\displaystyle{\Psi_1  = \kappa\,\psi_1 (u)\, \psi_2 (v)}, &
\displaystyle{\Psi_2  = \kappa\,\psi_2(u) \,\psi_1(v),}
\\[2mm]
\displaystyle{\Theta_1  = \kappa\,\theta_2(u)\, \theta_1(v)}, &
\displaystyle{\Theta_2  = \kappa\,\theta_1(u) \,\theta_2(v),}
\end{array}
$$
where $\kappa=1/(u + v)^2$ and
$$
\begin{array}{ll}
\varphi _1 (w) = \sqrt \sigma  (1 + w^2 ) + 2(\tau  + r^2 )w, &
\varphi _2 (w) = \sqrt \sigma  (1 + w^2 ) + 2(\tau  - r^2 )w,
\\[2mm]
\psi _1 (w) = 2 s [(\chi+ \sqrt{\tau})w^2 - (\chi- \sqrt{\tau})], &
\psi _2 (w) = 2 s [(\chi- \sqrt{\tau})w^2 - (\chi+ \sqrt{\tau})], \\[2mm]
\theta_1 (w) = \sqrt \sigma  (1 - w^2 ) + 4 s \sqrt{\tau} w, &
\theta_2 (w) = \sqrt \sigma  (1 - w^2 ) - 4 s \sqrt{\tau} w.
\end{array}
$$
Then from (\ref{s4n26})--(\ref{s4n28}) we find the expressions for
the configuration variables
\begin{eqnarray}
& & \begin{array}{l} \displaystyle{ x_1  = \frac  {2s \tau}{r^2}
\left[ { \frac { \sqrt {\varphi _1 (u)\varphi _2 (v)} + \sqrt
{\varphi _2(u)\varphi _1 (v)} } {\sqrt {\theta _1 (u)\theta _1 (v)}
- \sqrt {\theta _2 (u)\theta _2 (v)}} } \, \right] ^2 , }  \\
\displaystyle{ x_2  = \frac {2s\tau } {r^2 } \left[{ \frac
{\sqrt{\varphi _1 (u)\varphi _2 (v)}  - \sqrt {\varphi _2 (u)\varphi
_1 (v)} } {\sqrt {\theta _1 (u)\theta _1 (v)}  + \sqrt {\theta _2
(u) \theta _2 (v)} }} \, \right]^2 ,}
\end{array} \label{s6n7} \\
& & \begin{array}{l} \displaystyle{ y_1  = 2s \frac {\left[ {{\sqrt
{\varphi _1 (u) \varphi _2 (v)}  + \sqrt {\varphi _2 (u)\varphi _1
(v)} } } \,\right]^2 - 4\sigma (uv - 1)^2 } {\left[ {\sqrt {\theta
_1 (u)\theta _1 (v)}  - \sqrt {\theta _2 (u)\theta _2 (v)} }
\,\right]^2
}\,,}  \\
\displaystyle { y_2  = 2s \frac {\left[ {\sqrt {\varphi _1
(u)\varphi _2 (v)}  - \sqrt {\varphi _2 (u)\varphi _1 (v)} }
\,\right]^2  - 4\sigma (uv - 1)^2 } {\left[ {\sqrt {\theta _1
(u)\theta _1 (v)}  + \sqrt {\theta _2 (u)\theta _2 (v)} }
\,\right]^2 }\,,}
\end{array} \label{s6n8}\\
& & \begin{array}{c} \displaystyle {z_1  = \frac{1}{2r(u + v)}
\left[ {\sqrt {\varphi _1 (u)\varphi _1 (v)}  + \sqrt {\varphi _2
(u)\varphi _2 (v)} } \,\right]\,,} \\
\displaystyle {z_2  = \frac{1}{2r(u + v)} \left[ {\sqrt {\varphi _1
(u)\varphi _1 (v)}  - \sqrt {\varphi _2 (u)\varphi _2 (v)} }
\,\right]\,.}
\end{array}\label{s6n9}
\end{eqnarray}
Hence, in particular,
\begin{equation}\label{s6n10}
\begin{array}{l}
\displaystyle{\sqrt{x_1} = \frac{\sqrt{\mathstrut 2 s \, \tau}}{r}
\frac {\sqrt{\varphi_1 (u)\varphi_2 (v)}+\sqrt{\varphi_2
(u)\varphi_1 (v)}} {\sqrt{\theta_1 (u)\theta_1 (v)}-\sqrt{\theta_2
(u)\theta_2 (v)}}}, \\[4mm] \displaystyle{\sqrt{x_2} =
\frac{\sqrt{\mathstrut 2 s \, \tau}}{r} \frac {\sqrt{\varphi_1
(u)\varphi_2 (v)}-\sqrt{\varphi_2 (u)\varphi_1 (v)}} {\sqrt{\theta_1
(u)\theta_1 (v)}+\sqrt{\theta_2 (u)\theta_2 (v)}}}.
\end{array}
\end{equation}
Here the arbitrary choice of sign is provided by the algebraic value
$\sqrt{2s\tau}$. From (\ref{s4n35}) we have
\begin{equation}\label{s6n11}
\begin{array}{l}
\displaystyle{\sqrt{x_2} w_1  = \frac{i}{4 s} \frac
{\sqrt{\theta_2(u)\theta_1(v)} +
\sqrt{\theta_1(u)\theta_2(v)}}{u+v}}, \\[4mm]
\displaystyle{\sqrt{x_1} w_2 = \frac{i}{4s} \frac
{\sqrt{\theta_2(u)\theta_1(v)} - \sqrt{\theta_1(u) \theta_2(v)} }
{u+v} }.
\end{array}
\end{equation}
Substitute (\ref{s6n10}) into (\ref{s6n11}) to obtain the
expressions for the variables defining the equatorial components of
the angular velocity
\begin{equation}\label{s6n12}
\begin{array}{l}
\displaystyle{w_1  = \frac {i r}{4s\sqrt {2s\tau}} {{\left[ {\sqrt
{\theta _2 (u)\theta _1 (v)}  + \sqrt {\theta _1 (u)\theta _2 (v)} }
 \right]\left[ {\sqrt {\theta _1 (u)\theta _1 (v)}  +
 \sqrt {\theta _2 (u)\theta _2 (v)} } \right]}
 \over {(u + v)
 \left[ {\sqrt {\varphi _1 (u)\varphi _2 (v)}  - \sqrt {\varphi _2 (u)\varphi _1 (v)} }
 \right]}},} \\
\displaystyle{w_2  = \frac {i r}{4s\sqrt {2s\tau}}{{\left[ {\sqrt
{\theta _2 (u)\theta _1 (v)}  - \sqrt {\theta _1 (u)\theta _2 (v)} }
\right]\left[ {\sqrt {\theta _1 (u)\theta _1 (v)}  - \sqrt {\theta
_2 (u)\theta _2 (v)} } \right]} \over {(u + v)\left[ {\sqrt {\varphi
_1 (u)\varphi _2 (v)}  + \sqrt {\varphi _2 (u)\varphi _1 (v)} }
\right]}}.}
\end{array}
\end{equation}
The axial component is found from (\ref{s4n35}),
\begin{equation}\label{s6n13}
w_3  = \frac{i}{2\sqrt {2s\tau \sigma}} \frac { {\sqrt {\theta _1
(u)\theta _2 (u)\varphi _1 (v)\varphi _2 (v)} - \sqrt {\varphi _1
(u)\varphi _2 (u)\theta _1 (v)\theta _2 (v)} } }{(u + v)(uv - 1)}.
\end{equation}
Thus we have expressed all phase variables in terms of $u,v$.

To obtain the differential equations for $u,v$ consider the
following variables
\begin{equation}\label{s6n14}
s_1  = \frac{x^2  + z^2  + r^2}{2x},\quad s_2  = \frac{x^2  + z^2 -
r^2 }{2x}.
\end{equation}
The derivatives, in virtue of the system (\ref{s1n8}), are
\begin{equation}\label{s6n15}
\displaystyle{s_1'= \frac{r^2}{4x^3}(z_1+z_2)(x_1 w_2 - x_2
w_1),\quad s_2'= \frac{r^2}{4x^3}(z_1-z_2)(x_1 w_2 + x_2 w_1).}
\end{equation}
On the other hand, from (\ref{s6n14}), (\ref{s6n5}) we have
$$
\displaystyle{s_1= \frac{\sqrt{\sigma}(u v+1)+(\tau+r^2)(u+v)}{2
\sqrt{\tau}(u-v)},} \quad \displaystyle{s_2= \frac{\sqrt{\sigma}(u
v+1)+(\tau-r^2)(u+v)}{2 \sqrt{\tau}(u-v)},}
$$
whence
$$
\begin{array}{ll}
\displaystyle{\frac{\partial s_1}{\partial u}=-\frac {\varphi_1
(v)}{2 \sqrt{\tau}(u-v)^2},} & \displaystyle{\frac{\partial
s_1}{\partial v}= \frac
{\varphi_1 (u)}{2 \sqrt{\tau}(u-v)^2},}\\
\displaystyle{\frac{\partial s_2}{\partial u}=-\frac {\varphi_2
(v)}{2 \sqrt{\tau}(u-v)^2},} & \displaystyle{\frac{\partial
s_2}{\partial v}= \frac {\varphi_2 (u)}{2 \sqrt{\tau}(u-v)^2}.}
\end{array}
$$
Therefore,
\begin{equation}\label{s6n16}
\begin{array}{l}
\displaystyle{\frac{du}{dt}=\frac{2
\sqrt{\tau}(u-v)^2}{\varphi_1(u)\varphi_2(v)-\varphi_2(u)\varphi_1(v)}
[\varphi_2(u)\frac{ds_1}{dt}-\varphi_1(u)
\frac{ds_2}{dt}],}\\[4mm]
\displaystyle{\frac{dv}{dt}=\frac{2
\sqrt{\tau}(u-v)^2}{\varphi_1(u)\varphi_2(v)-\varphi_2(u)\varphi_1(v)}
[\varphi_2(v)\frac{ds_1}{dt}-\varphi_1(v) \frac{ds_2}{dt}].}
\end{array}
\end{equation}
Substitute the values (\ref{s6n9})--(\ref{s6n11}) into (\ref{s6n15})
and the resulting expressions into (\ref{s6n16}). We obtain
\begin{equation}\label{s6n17}
\begin{array}{l}
f(u,v)\,\displaystyle{\frac{du}{dt}=\frac{\sqrt {\mathstrut
\varphi_1(u)\varphi_2(u) \, \theta_1(u) \, \theta_2(u)}}{2 u
\sqrt{\mathstrut 2 s\,\tau \sigma}}}, \quad
f(u,v)\,\displaystyle{\frac{dv}{dt}=\frac{\sqrt{\mathstrut
\varphi_1(v)\varphi_2(v)\,\theta_1(v)\,\theta_2(v)}}{2 v
\sqrt{\mathstrut 2 s\,\tau \sigma}}},
\end{array}
\end{equation}
where
$$
\displaystyle{f(u,v)=\frac{(u-v)(1-u v)}{u
v}=\Bigl(v+\frac{1}{v}\Bigr)-\Bigl(u+\frac{1}{u}\Bigr)}.
$$

The variables (\ref{s6n2}) in terms of $u,v$ have the form
\begin{equation}\label{s6n18}
U=\frac{1}{2}\Bigl(u+\frac{1}{u}\Bigr), \quad V=\frac{1}{2}\Bigl(v+\frac{1}{v}\Bigr).
\end{equation}
To be definite choose $u=U-\sqrt{\mathstrut U^2-1}$,
$v=V-\sqrt{\mathstrut V^2-1}$. Then the equations (\ref{s6n17})
yield
\begin{equation}\label{s6n19}
(U-V)\frac{dU}{dt}=\frac{1}{\sqrt{2s \, \tau
\sigma}}\sqrt{Q(U)},\quad (U-V)\frac{dV}{dt}=\frac{1}{\sqrt{2s \,
\tau \sigma}}\sqrt{Q(V)}
\end{equation}
with the polynomial (\ref{s6n4}) of degree 6. This system is
obviously equivalent to the system (\ref{s6n3}); the latter have the
standard form for hyperelliptic quadratures.
\end{proof}

To reveal the connection of Theorem~\ref{th5} with the bifurcation
diagram suppose that the polynomial (\ref{s6n4}) has a multiple
root. The resultant of $Q(w)$ and $Q'(w)$ is
\begin{equation}\label{s6n20}
2^{32} a^4 b^4 (a^2-b^2)^2 s^{10} \tau^{12} \sigma^8 \chi^2
(a^2-s^2)^2(b^2-s^2)^2.
\end{equation}
According to (\ref{s2n14}), $s \ne 0$ on $\mathfrak{O}$. The
equation $\sigma=0$ gives $\tau=(a \pm b)^2$. The case $\chi =0$
provides the values $ \tau =(\sqrt{\mathstrut a^2-s^2} \pm
\sqrt{\mathstrut b^2-s^2})^2$. Thus, the bifurcation diagram of
${J=S \times \mathrm{T}}$ belongs to the discriminant set of the
polynomial (\ref{s6n4}). This fact is typical for systems with
separating variables.

Note that all roots of the polynomial (\ref{s6n4}) are explicitly
expressed in terms of the integral constants along with the roots of
the polynomial
\begin{equation}\label{s6n21}
\varphi_1(w)\varphi_2(w) \, \theta_1(w) \, \theta_2(w)
\end{equation}
defining the solutions of the system (\ref{s6n17}). The variables
introduced in this section are real only in the case $\tau
>0$ and $\sigma >0$. For other combinations of signs the definition (\ref{s6n5})
of the local coordinates $u,v$ needs obvious modifications. Then the
intervals of oscillations for the variables $U,V$ and $u,v$ are
easily determined for any given values of $s,\tau$ or, more exactly,
for each connected component of ${\bf R}^2\backslash \Sigma(J)$. The
obtained differential equations and the explicit formulae for the
phase variables in terms of $u,v$ provide the possibility to
investigate the phase topology of the case considered and to
calculate analytically the numerical invariants of the corresponding
Liouville foliation.

redpajama_set_name: RedPajamaArXiv


text:
Q: How to fire click event of a div contained in a ul Im trying to get an item in my cart deleted once a user clicks on the delete icon of the item on my dropdown list but it dosnt seem to work. Anyone with an idea, i'll appreciate. Below is my code

$('#delcarts > li .removecart').on('click', function () {
    var pid = $(this).attr('removecartid');
    var conf = confirm("Are you sure you want to delete item? "+pid);
});

'.$book_title.'

'.$qty.' X '.$cursymb.' '.$book_price.'

[X]

A: *

*You need to use if for confirm then .closest('li') to get the closest li then use   .remove()

*Don't use attributes like removecartid = you can use data attribute instead data-removecartid and catch it by .data('removecartid') or .attr('data-removecartid') .. jQuery Data vs Attr?

$(document).on('click' , '#delcarts > li .removecart' , function () {
    var pid = $(this).attr('data-removecartid');
    var conf = confirm("Are you sure you want to delete item? "+pid);
    if(conf){
      $(this).closest('li').remove();
    }
});

Book title

Qty && Book Price

Remove

If you dynamically generate the lis you will need Event binding on dynamically created elements?
$(document).on('click' , '#delcarts > li .removecart' , function () {

If you're trying to use onclick=

function removecart(el) {  //el here
    var pid = $(el).closest('.removecart').attr('data-removecartid'); // el here
    var conf = confirm("Are you sure you want to delete item? "+pid);
    if(conf){
      $(this).closest('li').remove();
    }
};

Book title

Qty && Book Price

        Remove

Note: By using onclick=removecart(this) in  icon or
  its parent  it will remain the same action


text:
Karl Denson
Sarah Marie Young
Sarah Marie Young is an award winning singer, songwriter and musician. She was a semi-finalist in the 2010 Thelonious Monk Competition and the winner of the 2011 Montreux Voice Competition judged by Quincy Jones, from which she recorded her first full length album "Too Many Februaries" at Balik Farm Studios in Switzerland and performed it at The Montreux Jazz Festival in 2012. After being signed by the Dutch label Snip Records in 2014, Sarah Marie Young released and toured Europe with her second album, "Little Candy Heart." Sarah's latest album, "Recess" was self-produced and released in April 2016. Based in Chicago, Sarah continues to perform locally as well as internationally.
Follow Sarah Marie Young
PFC Videos Featuring Sarah Marie Young
Up to the Mountain | Sarah Marie Young | Live From Home
Listen to the Music | Songs Around The World Movie
Sunshine | Sarah Marie Young | Live From Home
2018: What A Year
Congo to the Mississippi | Song Around The World
Behind The Song: "Skin Deep" (part 1)
Skin Deep feat. Buddy Guy | Song Across America


Sokoto State Governor, Aminu Tambuwal has reacted to the suspension of the national carrier project, Nigeria Air by the federal government.
The suspension had been announced by the Minister of State for Aviation, Hadi Sirika, while addressing newsmen. According to Sirika, the decision to suspend the procurement of Nigeria Air, was taken at the Federal Executive Council (FEC) meeting.
Reacting, Tambuwal in a post on his Twitter page, queried the Buhari-led government for wasting money worth N1.5bn belonging to tax payers on the suspended Nigeria Air.
According to him, the National carrier failed due to poor planning.
The post "Taxpayers Money Wasted" – Tambuwal Reacts To Suspension Of Nigeria Air appeared first on LATEST NIGERIAN NEWS BREAKING HEADLINES NEWSPAPERS.


Know the hidden dangers before they bite your pooch or cat.
Long walks in the countryside with your canine companion or lazy afternoons spent in the garden with your cat may sound heavenly to many of us.
But as the summer months approach and the sun comes out to play - so do many other other hidden dangers.
Ticks and adders hidden in long grass could have some nasty side effects on your furry friend - especially during the warmer months.
Data released by Animal Friends Pet Insurance, alerts pet owners to the dangers of these summer time beasts.
You'd be forgiven for thinking that snakes aren't a great risk in the UK.
Even the most adventurous dog walker is unlikely to spot any serpents on their daily outings. However, just because we don't see them doesn't mean they aren't there.
Adders are venomous snakes, which means that they can prove rather dangerous if they bite you or your pet.
While their venom is quite mild it will require immediate medical or veterinary attention, and an antidote will have to be administered to counteract the venom.
Dogs may well rush in to see what a snake is and suffer for it.
Between 2015-2018 in the UK claims for snake bites on dogs submitted to Animal Friends Pet Insurance went up by 15%.
Another risk to pet health in the outdoors are ticks which are known carriers of diseases that can often transmit illnesses, such as Lyme disease and Babesiosis.
Symptoms of a disease that has been transmitted by a tick can include joint swelling, lethargy, lameness and a fever.
Some dogs that are latched onto by ticks may suffer from what is known as 'tick paralysis', which means a dog may find it hard to walk, with the possibility of an onset of full paralysis, until the ticks are removed.
Signs that your pet is suffering with ticks include excessive scratching or licking in one particular area.
Much like the situation with adders, AFI has seen much more instances of claims about dogs rather than cats.
Over the period 2015-2018 there have been fluctuations in claims made due to tick infections in dogs but overall the claims have risen by 28%. And again, only 1 cat (over the period) presented with a tick infection and was claimed for.
If you have any doubts or concerns about your pet's welfare you must seek the advice of your veterinarian as soon as possible.