function be_blobMenu() {
	var itms = $$( '.mnu_item' );
	var itmsvalues = new Array();

	var fx = new Array();

	// Set blob menu effects for each of the .mnu_item
	for( var i = 0, l = itms.length; i < l; i++ ) {
			
		// Items CSS Value storing
		itmsvalues[ i ] = new Array();

		itmsvalues[ i ][ 'width' ] = itms[ i ].getStyle( 'width' ).toInt();

		itmsvalues[ i ][ 'top' ] = -( i * 13 );
		itms[ i ].setStyle( 'top', itmsvalues[ i ][ 'top' ] );

		itmsvalues[ i ][ 'left' ] = i * itmsvalues[ i ][ 'width' ] + 15;
		itms[ i ].setStyle( 'left', itmsvalues[ i ][ 'left' ] );

		itmsvalues[ i ][ 'font-size' ] = itms[ i ].getStyle( 'font-size' ).toInt();
		itms[ i ].setStyle( 'left', itmsvalues[ i ][ 'left' ] );

		// Create FX for each menu item
		fx[ itms[ i ].id.toString() ] = new Fx.Morph( itms[ i ], { duration: 150, transition: 'quad:in:out', wait: false } );

		// Mouse ENTER listener
		itms[ i ].addEvent( 'mouseenter', function( e ) {
			var thisidx = itms.indexOf( this );
			var lastidx = itms.indexOf( itms.getLast() );

    		if( thisidx - 1 >= 0 ) {
				itms[ thisidx - 1 ].setStyle( 'font-size', itmsvalues[ thisidx - 1 ][ 'font-size' ] );
				itms[ thisidx - 1 ].setStyle( 'top', itmsvalues[ thisidx - 1 ][ 'top' ] );
			}
    		
    		if( thisidx + 1 <= lastidx ) {
				itms[ thisidx + 1 ].setStyle( 'font-size', itmsvalues[ thisidx + 1 ][ 'font-size' ] );
				itms[ thisidx + 1 ].setStyle( 'top', itmsvalues[ thisidx + 1 ][ 'top' ] );
			}

			fx[ this.id.toString() ].start( {
    			'top'       : itmsvalues[ thisidx ][ 'top' ] - 1,
    			'font-size' : itmsvalues[ thisidx ][ 'font-size' ] + 1
        	} );

    		if( thisidx - 1 >= 0 ) {
	    		fx[ itms[ thisidx - 1 ].id.toString() ].start( {
	    			'left' : itmsvalues[ thisidx - 1 ][ 'left' ] - 5
	        	} );
    		}

    		if( thisidx + 1 <= lastidx ) {
	    		fx[ itms[ thisidx + 1 ].id.toString() ].start( {
	    			'left' : itmsvalues[ thisidx + 1 ][ 'left' ] + 5
	        	} );
			}

		} );
		
		// Mouse LEAVE listener
		itms[ i ].addEvent( 'mouseleave', function( e ) {
			var thisidx = itms.indexOf( this );
			var lastidx = itms.indexOf( itms.getLast() );

			fx[ this.id.toString() ].start( {
    			'top'       : itmsvalues[ thisidx ][ 'top' ],
    			'font-size' : itmsvalues[ thisidx ][ 'font-size' ]
        	} );

    		if( thisidx - 1 >= 0 ) {
	    		fx[ itms[ thisidx - 1 ].id.toString() ].start( {
	    			'left' : itmsvalues[ thisidx - 1 ][ 'left' ]
	        	} );
    		}

    		if( thisidx + 1 <= lastidx ) {
	    		fx[ itms[ thisidx + 1 ].id.toString() ].start( {
	    			'left' : itmsvalues[ thisidx + 1 ][ 'left' ]
	        	} );
			}

		} );
	}
}

window.addEvent( 'domready', be_blobMenu );

window.addEvent( 'load', be_blobMenu );