text:
\chapter{Probability}
  \section{Definitions}
    \paragraph{Probability} measure the uncertainty associated with an event.
    An event is something that might occur
    \begin{itemize}
      \item Classical: $\frac{Number of ways event can occur}{Total number of
      equally likely outcomes}$
      \item Relative Frequency: Proportion of times the event occurs, as the
      number of trials approaches infinity
      \item Subjective: Estimates of probability that the event occurs, based
      on subjective opinion
    \end{itemize}

    \paragraph{Experiment} is a repeatable phenomenon or process
    \paragraph{Trial} is a single repetition of an experiment
    \paragraph{Sample Space}, S, is the set of distinct outcomes for an
    experiment or process
    \paragraph{Discrete} A sample space is discrete if it has a finite or
    countably infinite number of simple events. Otherwise it is non discrete or
    continuous

    \paragraph{Mutually Exclusive} means two events never occur simultaneously

    \paragraph{Complement} of an event and an event are always mutually
    exclusive

    \paragraph{Uniform distribution} The total probability is uniformly
    distributed among all possible outcomes

    \paragraph{Permutation} is the number of ways to arrange $r$ out of $n$
    objects: $ n ^ {(r)} = \frac{n!}{(n-r)!} = n(n-1)(n-2) ... (n-r+1)$

    \paragraph{Combinations} If we don't care about the order of objects, but
    just which objects are chosen, the number of ways to choose $r$ out of $n$
    items is $\binom{n}{r} = \frac{n!}{r!(n-r)!}$

    \paragraph{Set Operations}
    \begin{itemize}
      \item $AB$ or $A\cap B$ is the intersection of two
      events.
      \item$A \cup B$ is the union of two events.
      \item $\bar{A}$ is the complement of A, not event A
    \end{itemize}

    \paragraph{Conditional} The probability of event A, conditional on the
    occurence of event B, denoted by $P(A|B)$ is $P(A|B) = \frac{P(A \cap
    B)}{P(B)}$, $P(B) \neq 0$

    \paragraph{Independent} Two events are said to be independent iff $P(A \cap
    B) = P(A)P(B)$. This implies that $P(A|B) = P(A)$, $P(B|A) = P(B)$. In
    other words, events A and B are independent if whether B occurs does not
    influence whether A occurs, and vice versa

    \paragraph{Bayes' Theorem} Suppose A and B are any two events in S, then
    $P(B|A) = \frac{P(A|B)P(B)}{P(A|B)P(B) + P(A|\bar{B})P(\bar{B})}$


text:
// =============================================================================
//
// Copyright 2013 Neticle Portugal
// http://www.github.com/neticle/nitrous-nodejs-framework
//
// This file is part of "Nitrous/NodeJS", hereafter referred to as "Nitrous".
//
// "Nitrous" is free software: you can redistribute it and/or modify it under
// the terms of the GNU General Public License as published by the Free Software
// Foundation, either version 3 of the License, or (at your option) any later
// version.
//
// "Nitrous" is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
// A PARTICULAR PURPOSE. See theGNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along with
// "Nitrous". If not, see <http://www.gnu.org/licenses/>.
//
// =============================================================================

module.exports = {

	_id: 'array',

	/**
	 * Returns an array containing the values in common between all given
	 * arrays.
	 *
	 * @param array base
	 *	The base array to compare the others against.
	 *
	 * @param array ...
	 *	The arrays to be compared.
	 *
	 * @return array
	 *	The intersection between all arrays.
	 */
	intersect: function(base) {

		// The result array
		var result = [];

		// Go through all elements in the base array
		for(var i in base) {

			var found = true;

			// Make sure the element is in all other arrays
			for(var j = 2; j < arguments.length; ++j) {
				if(arguments[j].indexOf(base[i]) < 0) {
					found = false;
					break;
				}
			}

			if(found === intersect) {
				result.push(base[i]);
			}

		}

		return result;

	},

	/**
	 * Returns a clone instance of the given array.
	 *
	 * @param array array
	 *	The array to create the clone from.
	 *
	 * @return array
	 *	Returns the clone array.
	 */
	clone: function(array) {
		return ([]).concat(array);
	},

	/**
	 * Returns an array containing the values that are present in the base
	 * array, but not in the subsequent ones.
	 *
	 * @param array base
	 *	The base array to compare against.
	 *
	 * @param array ...
	 *	The subsequent arrays to compare to.
	 *
	 * @return array
	 *	The difference between all arrays.
	 */
	diff: function(base) {

		// The result array
		var result = [];

		// Go through all elements in the base array
		for(var i in base) {

			var found = false;

			// Make sure the element is not in any of the other arrays
			for(var j = 1; j < arguments.length; ++j) {
				if(arguments[j].indexOf(base[i]) > -1) {
					found = true;
					break;
				}
			}

			if(!found) {
				result.push(base[i]);
			}

		}

		return result;
	},

	/**
	 * Merges the given arrays into one and returns it.
	 *
	 * @param array ...
	 *	The arrays to be merged together.
	 *
	 * @return array
	 *	The newly created array resulting from this merge.
	 */
	merge: function() {

		// Create a new base array
		var base = [];

		for(var i = 0; i < arguments.length; ++i) {

			// Process subsequent array
			var extender = arguments[i];

			for(var j in extender) {

				// Process each value
				var value = arguments[i][j];

				if(base.indexOf(value) < 0) {
					base.push(value);
				}

			}
		}

		return base;

	},

	/**
	 * Extends the given base array with elements from all subsequent arrays,
	 * unless the same element is already a member of it.
	 *
	 * Please note this function extends the base array directly, by reference,
	 * without cloning it. If you wish to create a new array from others you
	 * need to use "merge" instead.
	 *
	 * @param array base
	 *	The array to be extended.
	 *
	 * @param array ...
	 *	The subsequent arrays to extend with.
	 *
	 * @return array
	 *	The base array.
	 */
	extend: function(base) {

		for(var i = 1; i < arguments.length; ++i) {

			// Process subsequent array
			var extender = arguments[i];

			for(var j in extender) {

				// Process each value
				var value = extender[j];

				if(base.indexOf(value) < 0) {
					base.push(value);
				}

			}
		}

		return base;
	},

	/**
	 * Invokes the given callback function for each element of the array,
	 * optionally in a given context.
	 *
	 * @param array array
	 *	The array to perform the loop in.
	 *
	 * @param object context
	 *	The context to be applied to the callback.
	 *
	 * @param function(value, index) callback
	 *	The callback to be invoked for each element, which, in case it returns
	 *	true, will break out of the loop.
	 */
	foreach: function() {

		// Load the arguments according to its length
		var array, context, callback;

		switch(arguments.length) {

			case 2:
				array = arguments[0];
				callback = arguments[1];
			break;

			case 3:
				array = arguments[0];
				context = arguments[1];
				callback = arguments[2];
			break;

			default:
				throw 'Invalid argument count.';
		}

		// Invoke the callback for each element
		for(var i in array) {
			if(callback.call(context, array[i], i)) {
				break;
			}
		}

	},

	/**
	 * Returns the number of elements that are common to all given arrays.
	 *
	 * @param array base
	 *	The base array to co
	 *
	 * @param array ...
	 *	The arrays to base the comparison on.
	 *
	 * @return int
	 *	The number of elements common to all arrays.
	 */
	match: function(base) {

		var matches = 0;

		// Go through the first array
		for(var i in base) {

			// Match flag
			var matching = true;
			var value = base[i];

			// Go through the subsequent arrays
			for(var j = 1, length = arguments.length; j < length; ++j) {

				if(arguments[j].indexOf(value) < 0) {
					matching = false;
					break;
				}

			}

			// Increment the match counter
			if(matching) {
				++matches;
			}

		}

		return matches;

	}

};

redpajama_set_name: RedPajamaGithub


text:
module kerbalstuff
	class Mod

		attr_reader :json

		def initialize json
			@json = json

			@name = @json['name']
			@background = @json['background']
			@license = @json['license']
			@website = @json['website']
			@donations = @json['donations']
			@source_code = @json['source_code']
			@author = @json['author']
			@downloads = @json['downloads']
			@id = @json['id']
			@short_description = @json['short_description']
			@description_html = @json['description_html']
			@followers = @json['followers']
			@default_version_id = @json['default_version_id']
			@description = @json['description']

			if @json.has_key?('versions')
				@versions = []
				if @json['versions'].length > 0
					@json['versions'].each do |v|
						@versions.push(ModVersion.new(v))
					end
				end
			end

		end

		def to_s
			return ["name=#{@name}", "background=https:""/""/""cdn.mediacru.sh#{@background}", "license=#{@license}", "website=#{@website}", "donations=#{@donations}", "source_code=#{@source_code}", "author=#{@author}", "downloads=#{@downloads}", "id=#{@id}", "short_description=\"#{@short_description}\"", "versions=#{@versions}", "description_html=\"#{@description_html}\"", "followers=#{@followers}", "default_version_id=#{@default_version_id}", "description=\"#{@description}\""]
		end
	end

	class ModVersion

		attr_reader :json

		def initialize json
			@json = json

			@version = @json['friendly_version']
			@download_path = @json['download_path']
			@id = @json['id']
			@ksp_version = @json['ksp_version']
			@changelog = @json['changelog']
		end

		def to_s
			["version=#{@version}", "download=https:""/""/""kerbalstuff.com#{@download_path}", "id=#{@id}", "ksp_version=#{@ksp_version}", "changelog=\"#{@changelog}\""]
		end
	end
end


Whether breaking Cyndi Lauper's gold record or extinguishing Morton Downey Jr. at WrestleMania, Piper never shied from controversy. For that very reason, he was a major reason why WWE became a global phenomenon in the 1980s, battling on MTV's "The War to Settle the Score" and headlining the first WrestleMania at Madison Square Garden. For a follow-up, he set his sights on one of his WrestleMania opponents, Mr. T. Although he didn't come out on top against the "A-Team" star at WrestleMania 2, Piper proved that no one could intimidate him.
In addition to his formidable in-ring prowess, Piper was also a master on the mic, and he proved it by regularly hosting what is arguably the most innovative (and controversial) interview segment in WWE History: "Piper's Pit." In each installment, Piper would break his guests down with a barrage of questions, manipulating the moment until he was completely in control. Often times the unexpected would happen, such as the night when he shattered a coconut over the head of Jimmy "Super Fly" Snuka.
WrestleMania III marked a significant night for Piper, as it was his last match before a brief retirement from the ring. Piper defeated Adrian Adonis by using a Sleeper Hold and added to the humiliating loss by shaving his nemesis's head. As Adonis' locks were shorn, the Silverdome erupted, earning Piper one of his biggest ovations in WWE.
The late Piper went on to pursue a career in acting, most famously starring in John Carpenter's sci-fi cautionary tale "They Live." But even the klieg lights of Hollywood couldn't keep Hot Rod away from the spotlights of WWE. Piper returned to the promotion in the early '90s and received his first taste of Championship gold on Jan. 19, 1992 when he defeated The Mountie for the Intercontinental Championship. At WrestleMania VIII, he took on Bret "Hit Man" Hart in another classic match, losing the gold but remaining a fan favorite.
After another brief stint away from WWE, Piper came back as interim President of WWE in 1996. That same year, he faced Goldust in a Hollywood Backlot Brawl at WrestleMania XII. Piper won the bout and stripped the Golden One down to his lingerie, revolting the crowd while also proving his status.
Piper spent the next decade bouncing from promotion to promotion before returning to WWE for good as a vaunted member of the 2005 Hall of Fame. Even in retirement, he proved more than willing to unleash his controversial wit and brashness on any Superstar foolish enough to cross him. In 2006, he did the unthinkable when he captured the World Tag Team Titles alongside longtime rival Ric Flair, winning them from the Spirit Squad at Cyber Sunday. Years after his final championship conquest, Hot Rod continued to lead the pack, reuniting with a squad of ring icons who lived under one roof in the groundbreaking WWE Network series, "Legends' House" — leaving a lasting impression on the latest generation of WWE fans.
"Rowdy" Roddy Piper claimed he was born to cause controversy, and his wild, freewheeling life proved that statement to be more than hyperbole.


We are proud to provide state-of-the-art facilities in Germantown and Bethesda, Maryland for the highest quality dental care available. It is one of our top priorities to protect the well-being of our valued patients. For this reason, our office meets and surpasses all OSHA (Occupational Safety and Health Administration) and CDC (Center for Disease Control) standards. We are confident that you will feel right at home in our office as we welcome all patients as if they were family.
If you would like to make an appointment, please contact our office by phone or email. Our office will make every effort to accomodate your scheduling needs.
We participate with the following dental insurance companies: Aetna PPO & DMO,Ameriplan, Ameritas PPO, CAREington Co. PPO and Discount plans, Cigna PPO & DMO, Delta Dental Premier and PPO,Dental Health Alliance/ Fortis PPO, Dentaquest, Guardian PPO, Humana PPO, Metlife, Principal PPO, United Health Care, and United Concordia. We will be more than happy to submit all insurance forms for you and help you recover the most from your benefits. Prior to your appointment, we obtain an ESTIMATE of the amount that your insurance company is expected to pay. You will be asked to pay for the portion of the fee that is not covered by the insurance company on the day of treatment. We accept Visa/Mastercard, Discover and Cash as forms of payment.


We invite you to become a member of the Northeast Louisiana Apartment Association and benefit from its services.
As a member, you are automatically a member of the Apartment Association of Louisiana and the National Apartment Association, working to keep the industry secure and profit making. We are a professional organization of owners, managers, and suppliers to the apartment industry who are dedicated to orderly growth and development, high standards of business ethics, and fair treatment and protection of rights of all citizens.


text:
package com.github.godness84.RNRecyclerViewList;

import android.content.Context;
import android.graphics.PointF;
import android.support.annotation.Nullable;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.LinearSmoothScroller;
import android.support.v7.widget.RecyclerView;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.ContextThemeWrapper;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;

import com.facebook.react.bridge.ReactContext;
import com.facebook.react.common.SystemClock;
import com.facebook.react.common.annotations.VisibleForTesting;
import com.facebook.react.uimanager.PixelUtil;
import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.events.NativeGestureUtil;
import com.facebook.react.views.scroll.OnScrollDispatchHelper;
import com.facebook.react.views.scroll.ScrollEvent;
import com.facebook.react.views.scroll.ScrollEventType;
import com.facebook.react.views.scroll.VelocityHelper;

import java.util.ArrayList;
import java.util.List;

/**
 * Wraps {@link RecyclerView} providing interface similar to `ScrollView.js` where each children
 * will be rendered as a separate {@link RecyclerView} row.
 *

 * Currently supports only vertically positioned item. Views will not be automatically recycled but
 * they will be detached from native view hierarchy when scrolled offscreen.
 *

 * It works by storing all child views in an array within adapter and binding appropriate views to
 * rows when requested.
 */
@VisibleForTesting
public class RecyclerViewBackedScrollView extends RecyclerView {

    private final static String TAG = "RecyclerViewBackedScrol";

    private final OnScrollDispatchHelper mOnScrollDispatchHelper = new OnScrollDispatchHelper();
    private final VelocityHelper mVelocityHelper = new VelocityHelper();

    static class ScrollOptions {
        @Nullable Float millisecondsPerInch;
        @Nullable Float viewPosition;
        @Nullable Float viewOffset;
    }

    /**
     * Simple implementation of {@link ViewHolder} as it's an abstract class. The only thing we need
     * to hold in this implementation is the reference to {@link RecyclableWrapperViewGroup} that
     * is already stored by default.
     */
    private static class ConcreteViewHolder extends ViewHolder {
        public ConcreteViewHolder(View itemView) {
            super(itemView);
        }
    }

    /**
     * View that is going to be used as a cell in {@link RecyclerView}. It's going to be reusable and
     * we will remove/attach views for a certain positions based on the {@code mViews} array stored
     * in the adapter class.
     *

     * This method overrides {@link #onMeasure} and delegates measurements to the child view that has
     * been attached to. This is because instances of {@link RecyclableWrapperViewGroup} are created
     * outside of {@link } and their layout is not managed by that manager
     * as opposed to all the other react-native views. Instead we use dimensions of the child view
     * (dimensions has been set in layouting process) so that size of this view match the size of
     * the view it wraps.
     */
    static class RecyclableWrapperViewGroup extends ViewGroup {

        private ReactListAdapter mAdapter;
        private int mLastMeasuredWidth;
        private int mLastMeasuredHeight;

        public RecyclableWrapperViewGroup(Context context, ReactListAdapter adapter) {
            super(context);
            mAdapter = adapter;
            mLastMeasuredHeight = 10;
            mLastMeasuredWidth = 10;
        }

        private OnLayoutChangeListener mChildLayoutChangeListener = new OnLayoutChangeListener() {
            @Override
            public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
                int oldHeight = (oldBottom - oldTop);
                int newHeight = (bottom - top);

                if (oldHeight != newHeight) {
                    if (getParent() != null) {
                        requestLayout();
                        getParent().requestLayout();
                    }
                }
            }
        };

        @Override
        protected void onLayout(boolean changed, int l, int t, int r, int b) {
            // This view will only have one child that is managed by the `NativeViewHierarchyManager` and
            // its position and dimensions are set separately. We don't need to handle its layouting here
        }

        @Override
        public void onViewAdded(View child) {
            super.onViewAdded(child);
            child.addOnLayoutChangeListener(mChildLayoutChangeListener);
        }

        @Override
        public void onViewRemoved(View child) {
            super.onViewRemoved(child);
            child.removeOnLayoutChangeListener(mChildLayoutChangeListener);
        }

        @Override
        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            // We override measure spec and use dimensions of the children. Children is a view added
            // from the adapter and always have a correct dimensions specified as they are calculated
            // and set with NativeViewHierarchyManager.
            // In case there is no view attached, we use the last measured dimensions.

            if (getChildCount() > 0) {
                View child = getChildAt(0);
                mLastMeasuredWidth = child.getMeasuredWidth();
                mLastMeasuredHeight = child.getMeasuredHeight();
                setMeasuredDimension(mLastMeasuredWidth, mLastMeasuredHeight);
            } else {
                setMeasuredDimension(mLastMeasuredWidth, mLastMeasuredHeight);
            }
        }

        public ReactListAdapter getAdapter() {
            return mAdapter;
        }

        @Override
        public boolean onTouchEvent(MotionEvent event) {
            // Similarly to ReactViewGroup, we return true.
            // In this case it is necessary in order to force the RecyclerView to intercept the touch events,
            // in this way we can exactly know when the drag starts because "onInterceptTouchEvent"
            // of the RecyclerView will return true.
            return true;
        }
    }

    /*package*/ static class ReactListAdapter extends Adapter<ConcreteViewHolder> {

        private final List<RecyclerViewItemView> mViews = new ArrayList<>();
        private final RecyclerViewBackedScrollView mScrollView;
        private int mItemCount = 0;

        public ReactListAdapter(RecyclerViewBackedScrollView scrollView) {
            mScrollView = scrollView;
            //setHasStableIds(true);
        }

        public void addView(RecyclerViewItemView child, int index) {
            mViews.add(index, child);

            final int itemIndex = child.getItemIndex();

            notifyItemChanged(itemIndex);
        }

        public void removeViewAt(int index) {
            RecyclerViewItemView child = mViews.get(index);
            if (child != null) {
                mViews.remove(index);
            }
        }

        public int getViewCount() {
            return mViews.size();
        }

        @Override
        public ConcreteViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
            return new ConcreteViewHolder(new RecyclableWrapperViewGroup(parent.getContext(), this));
        }

        @Override
        public void onBindViewHolder(ConcreteViewHolder holder, int position) {
            RecyclableWrapperViewGroup vg = (RecyclableWrapperViewGroup) holder.itemView;
            View row = getViewByItemIndex(position);
            if (row != null && row.getParent() != vg) {
                if (row.getParent() != null) {
                    ((ViewGroup) row.getParent()).removeView(row);
                }
                vg.addView(row, 0);
            }
        }

        @Override
        public void onViewRecycled(ConcreteViewHolder holder) {
            super.onViewRecycled(holder);
            ((RecyclableWrapperViewGroup) holder.itemView).removeAllViews();
        }

        @Override
        public int getItemCount() {
            return mItemCount;
        }

        public void setItemCount(int itemCount) {
            this.mItemCount = itemCount;
        }

        public View getView(int index) {
            return mViews.get(index);
        }

        public RecyclerViewItemView getViewByItemIndex(int position) {
            for (int i = 0; i < mViews.size(); i++) {
                if (mViews.get(i).getItemIndex() == position) {
                    return mViews.get(i);
                }
            }

            return null;
        }
    }

    private boolean mDragging;
    private int mFirstVisibleIndex, mLastVisibleIndex;

    @Override
    protected void onScrollChanged(int l, int t, int oldl, int oldt) {
        super.onScrollChanged(l, t, oldl, oldt);

        if (mOnScrollDispatchHelper.onScrollChanged(l, t)) {
            getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
                    .dispatchEvent(ScrollEvent.obtain(
                            getId(),
                            ScrollEventType.SCROLL,
                            0, /* offsetX = 0, horizontal scrolling only */
                            computeVerticalScrollOffset(),
                            mOnScrollDispatchHelper.getXFlingVelocity(),
                            mOnScrollDispatchHelper.getYFlingVelocity(),
                            getWidth(),
                            computeVerticalScrollRange(),
                            getWidth(),
                            getHeight()));
        }

        final int firstIndex = ((LinearLayoutManager) getLayoutManager()).findFirstVisibleItemPosition();
        final int lastIndex = ((LinearLayoutManager) getLayoutManager()).findLastVisibleItemPosition();

        if (firstIndex != mFirstVisibleIndex || lastIndex != mLastVisibleIndex) {
            getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
                    .dispatchEvent(new VisibleItemsChangeEvent(
                            getId(),
                            SystemClock.nanoTime(),
                            firstIndex,
                            lastIndex));

            mFirstVisibleIndex = firstIndex;
            mLastVisibleIndex = lastIndex;
        }
    }

    private ReactContext getReactContext() {
        return (ReactContext) ((ContextThemeWrapper) getContext()).getBaseContext();
    }

    public RecyclerViewBackedScrollView(Context context) {
        super(new ContextThemeWrapper(context, R.style.ScrollbarRecyclerView));
        setHasFixedSize(true);
        ((DefaultItemAnimator)getItemAnimator()).setSupportsChangeAnimations(false);
        setLayoutManager(new LinearLayoutManager(context));
        setAdapter(new ReactListAdapter(this));
    }

    /*package*/ void addViewToAdapter(RecyclerViewItemView child, int index) {
        ((ReactListAdapter) getAdapter()).addView(child, index);
    }

    /*package*/ void removeViewFromAdapter(int index) {
        ((ReactListAdapter) getAdapter()).removeViewAt(index);
    }

    /*package*/ View getChildAtFromAdapter(int index) {
        return ((ReactListAdapter) getAdapter()).getView(index);
    }

    /*package*/ int getChildCountFromAdapter() {
        return ((ReactListAdapter) getAdapter()).getViewCount();
    }

    /*package*/ void setItemCount(int itemCount) {
        ((ReactListAdapter) getAdapter()).setItemCount(itemCount);
    }

    /*package*/ int getItemCount() {
        return getAdapter().getItemCount();
    }

    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev) {
        if (super.onInterceptTouchEvent(ev)) {
            NativeGestureUtil.notifyNativeGestureStarted(this, ev);
            mDragging = true;
            getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
                    .dispatchEvent(ScrollEvent.obtain(
                            getId(),
                            ScrollEventType.BEGIN_DRAG,
                            0, /* offsetX = 0, horizontal scrolling only */
                            computeVerticalScrollOffset(),
                            0, // xVelocity
                            0, // yVelocity
                            getWidth(),
                            computeVerticalScrollRange(),
                            getWidth(),
                            getHeight()));
            return true;
        }

        return false;
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev) {
        int action = ev.getAction() & MotionEvent.ACTION_MASK;
        if (action == MotionEvent.ACTION_UP && mDragging) {
            mDragging = false;
            mVelocityHelper.calculateVelocity(ev);
            getReactContext().getNativeModule(UIManagerModule.class).getEventDispatcher()
                    .dispatchEvent(ScrollEvent.obtain(
                            getId(),
                            ScrollEventType.END_DRAG,
                            0, /* offsetX = 0, horizontal scrolling only */
                            computeVerticalScrollOffset(),
                            mVelocityHelper.getXVelocity(),
                            mVelocityHelper.getYVelocity(),
                            getWidth(),
                            computeVerticalScrollRange(),
                            getWidth(),
                            getHeight()));
        }
        return super.onTouchEvent(ev);
    }

    private boolean mRequestedLayout = false;

    @Override
    public void requestLayout() {
        super.requestLayout();

        if (!mRequestedLayout) {
            mRequestedLayout = true;
            this.post(new Runnable() {
                @Override
                public void run() {
                    mRequestedLayout = false;
                    layout(getLeft(), getTop(), getRight(), getBottom());
                    onLayout(false, getLeft(), getTop(), getRight(), getBottom());
                }
            });
        }
    }

    @Override
    public void scrollToPosition(int position) {
        this.scrollToPosition(position, new ScrollOptions());
    }

    public void scrollToPosition(final int position, final ScrollOptions options) {
        if (options.viewPosition != null) {
            final LinearLayoutManager layoutManager = (LinearLayoutManager) getLayoutManager();
            final ReactListAdapter adapter = (ReactListAdapter) getAdapter();
            final View view = adapter.getViewByItemIndex(position);
            if (view != null) {
                final int viewHeight = view.getHeight();

                // In order to calculate the correct offset, we need the height of the target view.
                // If the height of the view is not available it means RN has not calculated it yet.
                // So let's listen to the layout change and we will retry scrolling.
                if (viewHeight == 0) {
                    view.addOnLayoutChangeListener(new OnLayoutChangeListener() {
                        @Override
                        public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {
                            view.removeOnLayoutChangeListener(this);
                            scrollToPosition(position, options);
                        }
                    });
                    return;
                }

                final int boxStart = layoutManager.getPaddingTop();
                final int boxEnd = layoutManager.getHeight() - layoutManager.getPaddingBottom();
                final int boxHeight = boxEnd - boxStart;
                float viewOffset = options.viewOffset != null ? PixelUtil.toPixelFromDIP(options.viewOffset) : 0;
                int offset = (int) ((boxHeight - viewHeight) * options.viewPosition + viewOffset);
                layoutManager.scrollToPositionWithOffset(position, offset);
                return;
            }
        }

        super.scrollToPosition(position);
    }

    @Override
    public void smoothScrollToPosition(int position) {
        this.smoothScrollToPosition(position, new ScrollOptions());
    }

    public void smoothScrollToPosition(int position, final ScrollOptions options) {
        final RecyclerView.SmoothScroller smoothScroller = new LinearSmoothScroller(this.getContext()) {
            @Override
            protected int getVerticalSnapPreference() {
                return LinearSmoothScroller.SNAP_TO_START;
            }

            @Override
            public PointF computeScrollVectorForPosition(int targetPosition) {
                return ((LinearLayoutManager) this.getLayoutManager()).computeScrollVectorForPosition(targetPosition);
            }

            @Override
            protected float calculateSpeedPerPixel(DisplayMetrics displayMetrics) {
                if (options.millisecondsPerInch != null) {
                    return options.millisecondsPerInch / displayMetrics.densityDpi;
                } else {
                    return super.calculateSpeedPerPixel(displayMetrics);
                }
            }

            @Override
            public int calculateDtToFit(int viewStart, int viewEnd, int boxStart, int boxEnd, int snapPreference) {
                int calc = super.calculateDtToFit(viewStart, viewEnd, boxStart, boxEnd, snapPreference);
                if (options.viewPosition != null) {
                    int viewHeight = viewEnd - viewStart;
                    int boxHeight = boxEnd - boxStart;
                    float viewOffset = options.viewOffset != null ? PixelUtil.toPixelFromDIP(options.viewOffset) : 0;
                    float target = boxStart + (boxHeight - viewHeight) * options.viewPosition + viewOffset;
                    return (int) (target - viewStart);
                } else {
                    return super.calculateDtToFit(viewStart, viewEnd, boxStart, boxEnd, snapPreference);
                }
            }
        };

        smoothScroller.setTargetPosition(position);
        this.getLayoutManager().startSmoothScroll(smoothScroller);
    }

    public void setInverted(boolean inverted) {
        LinearLayoutManager layoutManager = (LinearLayoutManager) getLayoutManager();
        layoutManager.setReverseLayout(inverted);
    }

    public void setItemAnimatorEnabled(boolean enabled) {
        if (enabled) {
            DefaultItemAnimator animator = new DefaultItemAnimator();
            animator.setSupportsChangeAnimations(false);
            setItemAnimator(animator);
        } else {
            setItemAnimator(null);
        }
    }
}


text:
Усадьба А. Н. Седова — архитектурный ансамбль в историческом центре Нижнего Новгорода. Усадебный комплекс построен в 1904—1906 годах. Автор проекта — архитектор С. А. Левков.

Жилой дом усадьбы сегодня выступает градостроительным акцентом, формирующим один из наиболее интересных участков деревянной застройки города в районе церкви Трёх Святителей на улице Короленко.

История
Усадьба расположена на южной окраине исторической части Нижнего Новгорода. Данная территория сформировалась на основе плана города от 1839 года. На месте бывших канатных заводов, существовавших с 1787 по 1824 год, и на селитебной территории, прирезанной к городу указом Николая I, сложился крупный массив жилой застройки. Общая планировочная структура района была разработана архитектором И. Е. Ефимовым и инженером П. Д. Готманом в 1836—1839 годах. В соответствии с планом были проложены новые улицы, от прежней границы города продолжена трасса древней Студёной улицы.

Наиболее ранние документы о домовладении относятся к 1872 году. Усадьба принадлежала коллежской регистраторше Агнее Григорьевне Аргентовой. Тогда на участке стоял деревянный двухэтажный дом. Не позже 1881 года усадьба перешла во владение купеческого сына Алексея Васильевича Двоешерстнева. В окладной книге помимо дома на этот период на участке был указан и флигель. В 1892 году (или 1894 году) владельцем стал крестьянин деревни Гавриловка Гнилицкой волости Балахнинского уезда Андрей Наркизович Седов. В этот период усадьбу составляли: двухэтажный деревянный дом и деревянный служебный корпус. В 1898 году к дому вдоль Немецкой улицы была сделана пристройка, а в глубине двора выстроен новый служебный деревянный двухэтажный корпус с брандмауэром.

В 1904—1906 годах усадебный комплекс был полностью перестроен. Вместо старого дома по проекту архитектора С. А. Левкова был возведён новый с пристроенным флигелем по улице Студёной и лавкой по улице Немецкой. Между флигелем и служебным корпусом, сохранившимся от старого комплекса, был возведён каменный каретник.

А. Н. Седову усадьба принадлежала примерно до 1918 года. В советское время, предположительно в середине XX века, были утрачены шатровая башня над угловой частью главного дома и парапетная балюстрада с вазонами над венчающим карнизом; полукруглые завершения над эркерами заменены треугольными фронтонами; заложена входная дверь на углу квартала; вход в лавку переделан в окно. Не сохранились надворные постройки: служебный корпус и каретник.

Архитектура

Комплекс усадьбы состоит из трёх зданий: главного дома, и примыкающих к нему флигеля и лавки. Судя по фотографии М. П. Дмитриева конца XIX века, первоначально здание главного дома было выполнено в традициях русского стиля с шатром над угловым эркером, с балконами и башенками, однако позже приобрело черты модерна. В отдельных элементах видно влияние нижегородской эклектики с мотивами позднего классицизма.

 Главный дом

Двухэтажное здание с подвалом, южным фасадом выходит на линию застройки улицы Славянской, восточным — на линию застройки улицы Студёной. Стены бревенчатые, рубленые с остатком, обшиты калёванным тёсом. Подвал кирпичный. В плане Г-образный, слегка вытянут в направлении запад — восток. Имеет срезанный внешний угол, обращённый к перекрёстку.

Уличный фасады почти идентичны по композиции и декору. Наиболее выразительная особенность архитектуры здания — три эркера, расположенных на срезанном углу и на средних участках фасадов. Опираются на вогнутые деревянные кронштейны и увенчаны треугольными фронтонами (заменившими первоначальные полукруглые). Углы эркеров акцентированы филенчатыми лопатками. Одни сохранившиеся филенчатые двери имеют выразительный рисунок филёнок и накладные детали в стиле модерн, другие — имеют более строгий традиционный рисунок. У всех дверей необычные застеклённые фрамуги, объединяющие каждую пару проёмов в виде лучковой арки.

Все кона имеют лучковые перемычки и обрамлены простыми дощатыми наличниками. Сохранились оригинальные лестницы с профилированными тетивами и поручнями, опирающимися на точёные балясины.

 Флигель

Двухэтажный кирпичный, с проездной аркой и деревянными каркасными сенями со стороны двора, обшитыми вертикальным тёсом. Уличный фасад поделён на две почти равные части: самого флигеля в три окна и проездной арки с жилыми помещениями над ней. Части разделены филенчатой лопаткой, расчленённой на три части полками. Лопатка имеет навершие в виде массивного кронштейна. На правом фланге филенчатая лопатка выполнена только на высоту первого этажа. Проездная арка оформлена широким порталом с крупной профилировкой и акцентирована клинчатым замком. Над ним покоится квадратный киот с полуциркулярным завершением.

Окна флигеля имеют одинаковые наличники и форму, дополнены раскрепованными клинчатыми замками. Окна над аркой имеют слегка выраженные лучковые перемыски и оформлены простыми рамочными наличниками.

 Лавка

Двухэтажное кирпичное здание, вытянутое в глубину двора. Уличный фасад в три окна строго симметричный. По краям оформлен поэтажными филенчатыми лопатками. Все проёмы имеют лучковые перемычки и рамочные наличники с клинчатыми замками. Во втором этаже наличники дополнены фартуками, а между окнами сделаны вертикальные арочные нишки. Междуэтажная зона выделена своеобразным фризом, ограниченным полками и украшенным тремя накладными дисками. Меньшие по размеру диски размещены под венчающим карнизом и под лопатками. Фасад завершён деревянным трапециевидным фронтоном. Дворовые фасады не имеют декора.

Примечания

Литература

Архитектурные памятники Нижнего Новгорода
Архитектура нижегородского модерна
Усадьбы Нижнего Новгорода
Деревянные жилые здания России
Здания и сооружения Нижнего Новгорода в стиле академической эклектики
Здания и сооружения Нижнего Новгорода в кирпичном стиле
Деревянный модерн
1906 год в Нижегородской области
Здания и сооружения, построенные в 1906 году в России

redpajama_set_name: RedPajamaWikipedia


Recent research carried out by the European Centre of Technology (ECT) showcased the increasing importance for Professionals, Students and Engineers to keep up to date with the latest technologies, innovations and networking opportunities in the Energy Industry.
The Global EnergyCPD Professional Membership Programme has been created to enable professionals and students to gain recognition in the Energy sector.
Membership is free and dependent upon sufficient evidence provided to demonstrate proficiency in these topic areas.
The Professional Membership Programme is administered by Energy CPD.


text:
Araucarioxylon arizonicum
Araucarioxylon arizonicum is an extinct species of conifer that is the state fossil of Arizona.[1] The species is known from massive tree trunks that weather out of the Chinle Formation in desert badlands of northern Arizona and adjacent New Mexico and Chemnitz petrified forest in Chemnitz, Germany, most notably in the 378.51 square kilometres (93,530 acres) Petrified Forest National Park.[2] There, these trunks are locally so abundant that they have been used as building materials.[3]
Temporal range:
Early Permian-Late Triassic 295–200 Ma
Araucarioxylon arizonicum look reconstruction.
Clade: Gymnosperms
Division: Pinophyta
Class: Pinopsida
Order: Araucariales
Family: Araucariaceae
Genus: †Araucarioxylon
†A. arizonicum
†Araucarioxylon arizonicum
Knowlt.
Petrified Araucarioxylon arizonicum.
2 Paleoecology
The petrified wood of this tree is frequently referred to as "Rainbow wood" because of the large variety of colors some specimens exhibit. The red and yellow are produced by large particulate forms of iron oxide, the yellow being limonite and the red being hematite. The purple hue comes from extremely fine spherules of hematite distributed throughout the quartz matrix, and not from manganese, as has sometimes been suggested.[3]
The trunks were large and slender, tapering slightly towards their apex. The largest known trunk in Petrified Forest was 'Old Faithful', from the Rainbow Forest sandstone beds of the Sonsela Member. This trunk had a diameter of 2.9 meters (9.5 feet) at its base, and a maximum estimated height of 59 meters (194 feet) based on modern conifer proportions. Branches are broken off in most fossils, but their bases leave scars indicating that the branches were slender and bent upwards at around 30-40 degrees above the horizontal. The branches are regularly and widely spaced around nearly the entire trunk. Some fragments from the upper part of the trunk have thin branches arranged in small clusters.[1]
Preserved bark is rare, but known bark fossils show that it is thin and "rippled", with low ridges and longitudinal furrows similar to some modern pines. The roots, when preserved, are significantly different from modern conifers: There is a massive central taproot, up to 5 meters (16.4 feet) long, ringed by four to six thick lateral roots. Modern conifers, on the other hand, typically bear a circular cluster of relatively small, narrow roots. No known conifer foliage is directly associated with the trunks, but common conifer leaves such as Pagiophyllum, Brachyphyllum, and Podozamites are also known from the Chinle Formation.[4] In life, Araucarioxylon arizonicum may have looked similar to a medium-sized Sequoiadendron giganteum (giant sequoia).[1]
Agate House Pueblo, constructed with petrified wood
PaleoecologyEdit
In the Triassic period (around 250 to 200 million years ago), Arizona was a flat tropical expanse in the northwest corner of the supercontinent Pangaea. There, a forest grew in which A. arizonicum towered as high as 60 metres (200 ft) and measured more than 60 centimetres (2.0 ft) in diameter. Fossils frequently show boreholes of insect larvae, possibly beetles similar to members of the modern family Ptinidae.[2][3]
Araucarioxylon arizonicum is classified under family Araucariaceae. They were first described in 1889 by the American paleobotanist Frank Hall Knowlton.[5]
The validity of the name Araucarioxylon arizonicum has been questioned. A. arizonicum may actually be composed of several different genera and species.[6] A 2007 study on the syntypes used by Knowlton in describing the species has revealed that they belonged to three species. They were tentatively reclassified as Pullisilvaxylon arizonicum, Pullisilvaxylon daughertii, and Chinleoxylon knowltonii. The genus Araucarioxylon may thus be superfluous and illegitimate; and the petrified logs of Petrified Forest National Park may be composed of a greater diversity than initially believed.[7]
Araucaria
Araucaria mirabilis
Araucarites sanctaecrucis
Nothofagus
Paleobiota of the Chinle Formation
^ a b c Sidney R. Ash & Geoffrey T. Creber (2000). "The Late Araucarioxylon arizonicum Trees of the Petrified Forest National Park, Arizona, USA". Palaeontology. 43: 22–23. doi:10.1111/1475-4983.00116. S2CID 128691956.
^ a b Sidney R. Ash & Rodney A. Savidge (2004). "The bark of the Late Triassic Araucarioxylon arizonicum tree from Petrified Forest National Park, Arizona" (PDF). IAWA Journal. 25 (3): 349–368. doi:10.1163/22941932-90000371. S2CID 84702754. Archived from the original (PDF) on 4 May 2012.
^ a b c Adele Conover (June 1997). "The Object at Hand". Smithsonian.com. Retrieved November 19, 2011.
^ Ash, Sidney R. (1989). "A catalog of Upper Triassic plant megafossils of the western United States through 1988" (PDF). In Lucas, S.G.; Hunt, A.P. (eds.). Dawn of the age of dinosaurs in the American Southwest. Albuquerque: New Mexico Museum of Natural History. pp. 189–222.
^ Frank H. Knowlton (1889). "New species of fossil wood (Araucarioxylon arizonicum) from Arizona and New Mexico" (PDF). Proceedings of the United States National Museum. 11 (676): 1–5. doi:10.5479/si.00963801.11-676.1.
^ Wayne P. Armstrong (December 2008). "A Taxonomic Problem With Araucarioxylon arizonicum". Wayne's Word, Palomar College. Archived from the original on October 26, 2011. Retrieved November 19, 2011.
^ Rodney A. Savidge (2007). "Wood anatomy of Late Triassic trees in Petrified Forest National Park, Arizona, USA, in relation to Araucarioxylon arizonicum Knowlton, 1889" (PDF). Bulletin of Geosciences. 82 (4): 301–328. doi:10.3140/bull.geosci.2007.04.301.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Araucarioxylon_arizonicum&oldid=1136204208"

redpajama_set_name: RedPajamaCommonCrawl


text:
UNWTO: Accessible Tourism Identified as 'Game Changer' for Destinations
3 December 2020. Press Release. Ensuring accessibility for tourists with specific access requirements can be a 'game changer' for destinations around the world as they look to bounce back from the impacts of the pandemic. A new set of Inclusive Recovery Guides from the World Tourism Organization, produced in partnership with the European Network for Accessible Tourism (ENAT), the ONCE Foundation of Spain and Travability from Australia, makes clear the importance of placing inclusivity at the centre of recovery plans and provides key recommendations for achieving this.
Photo: Wheelchair user entering minivan with assistance (UNWTO).
3 December 2020. UNWTO Press Release.
Ensuring accessibility for tourists with specific access requirements can be a 'game changer' for destinations around the world as they look to bounce back from the impacts of the pandemic.
A new set of Inclusive Recovery Guides from the World Tourism Organization, produced in partnership with the European Network for Accessible Tourism (ENAT), the ONCE Foundation of Spain and Travability from Australia, makes clear the importance of placing inclusivity at the centre of recovery plans and provides key recommendations for achieving this.
Launched on the International Day of Persons with Disabilities, the UNWTO Inclusive Recovery Guide – Socio-Cultural Impacts of COVID-19: Issue 1 Persons with Disabilities, draws on the expertise of UNWTO's Ethics Culture and Social Responsibility Department and its partners.
While much progress has been made, the publication makes clear that persons with disabilities and seniors encounter barriers preventing them from fully enjoying tourism experiences, even more so during the pandemic.
Now, as UNWTO leads the restart of tourism globally, this guide outlines steps that governments, destinations and companies should take to build back better, becoming more inclusive and competitive.
Accessibility as a priority
UNWTO Secretary-General Zurab Pololikashvili said: "Tourism environments and services are often designed without considering the different access requirements that visitors and locals may have. The tourism sector must prioritize accessibility. This can be a real game changer for destinations and businesses, helping them recover from the crisis and grow back in a more inclusive and resilient way."
Highlighting the potential benefits for more accessible destinations, the publication notes that, by 2050, one in six people worldwide will be aged 65 or over, rising to one in four in Europe and North America. Furthermore, data shows that the average spend of tourists with disabilities in Spain, for example, is in excess of 800 euros, compared with just over 600 euros for tourists without disabilities.
Recommendations for inclusive recovery
The recommendations advocating for accessibility during the recovery of tourism emphasise six main action areas:
Assistance in a crisis: Including accessibility during every stage of repatriation, which requires the backing of destinations and disabled peoples' organizations (DPOs)
Adaptation of protocols: Follow UNWTO guidance on adapting general health and safety protocols, considering that customers may have different abilities and requirements
Inclusivity in post-pandemic tourism: Including the effective use of data to guide decisions on accessible tourism planning and adjusting accessibility policies and strategies to reflect post-COVID realities
Accessibility in business planning: Treating accessibility as a competitive advantage, improving customer service, and the application of harmonized international standards to enhance quality of life for all
Staff training and inclusion: Extending professional training to better cater for tourists with different abilities, and ensuring equal opportunities in the tourism workforce
Innovation and digital transformation: Embracing innovation to make travel and tourism safer, smarter and easier for all.
The "Inclusive Recovery Guide" reflects UNWTO's ongoing commitment to inclusive tourism, enshrined within the UNWTO Framework Convention on Tourism Ethics, calling on signatories to facilitate tourism for persons with disabilities.
This publication is the first in a planned series of thematic briefs from UNWTO's Ethics, Culture and Social Responsibility Department, in its intent to provide guidance to our sector.
Are you an "Accessible Tourism Champion"?
UNWTO and partners are asking administrations, destinations and companies, which have successfully incorporated accessibility in their mitigation measures, to share their stories through the questionnaire "Accessible Tourism Champions", also launched today.
Answer the UNWTO survey and share your story about combatting COVID while ensuring accessibility.
Access the questionnaire
UNWTO Publications
Download these two publications free of charge from the UNWTO website:
UNWTO Inclusive Recovery Guide - Socio-Cultural Impacts of COVID-19: Issue 1: Persons with Disabilities
UNWTO Guideline: Reopening Tourism for Travellers with Disabilities: How to provide safety without imposing unnecessary obstacles
Links to contributing organisations
ONCE Foundation
Travability
You may download this Press Release from the right-hand panel in PDF format.
Author(s): UNWTO
Publisher: UNWTO
Source: https://www.unwto.org/news/accessible-tourism-identified-as-game-changer-for-destinations
Accessibility information, access guides
Airlines and air transport
Buildings and facilities design, maintenance
Bus and coach transport, touring
Cafés, restaurants, bars and pubs
Catering, restaurants, cafés
Ferries and maritime transport
Marinas and ports services
Medical and nursing care, treatment
Safety and security issues
Shows and theatre
Theme parks, leisure parks and water parks
Therapy, wellness
Press release UNWTO 3/12/2020 Size 140 KB File Type .pdf


text:
Camilla Thought Kate Middleton Was 'Not Worthy' of Marrying William, But We Couldn't Disagree More
By Melanie Aman June 2, 2017
kate middleton,
prince charles,
prince william,
Every family has its own fair share of drama, and the royal family is no exception. But according to author Richard Andersen, there's more going on behind the scenes than you might have guessed—and it's not all pleasant.
According to Andersen's new book, Game of Crowns, Prince Charles' wife, Camilla Parker-Bowles, was not a big fan of Kate Middleton. Andersen makes a bombshell accusation about Camilla's role in Prince William and Kate Middleton's 2007 breakup. According to Andersen, Camilla reportedly had a hand in their split, pressuring Prince Charles to recommend Prince William not date Kate. Why? Camilla's own snobbery.
MUST-SEE: Rare Letters Reveal Clue About Princess Diana's Marriage Years Before Anyone Knew the Truth
"She's an aristocrat, she has always been moving in royal circles," Andersen told The Daily Beast. Camilla was proud to be the great-granddaughter of Alice Keppel, the long-time mistress of Edward VII. "She boasted about that [relationship] as a child and as an adult, and that's what she intended to be—part of the royal circle in the role of mistress to the future king, and then the king," Andersen said.
In Camilla's eyes, Kate's non-royal family—her parents met when they were both British Airways flight attendants—meant she was not good enough to became a part of the royal family. When Kate and William broke up, Camilla's meddling obviously backfired as Prince William realized he could not be without Kate.
Another player in Kate's orbit that Andersen talks about is her own mother—Carole Middleton. According to Andersen, it's not just Camilla who has tried to affect William and Kate's trajectories. Carole has been with Kate every step of the way, encouraging her to attend St. Andrew's (where she met Prince William and to go out and be photographed after her and William's break-up.
While Kate and William are happily married and almost certainly the future of the British royal family, there's no doubt that their relationship—including the people who impacted it—is so fascinating.
h/t TheDailyBeast.com
See Kate Middleton's best style moments.
More from FIRST
13 Times Princess Charlotte Reminded Us of Queen Elizabeth
Prince Charles "Wasn't Pleased" With These Kate and William Photos, But We Think They're Lovely
32 Times Kate Middleton Channeled Princess Diana's Sense of Style
Take a Look Inside Dolly Parton's House From the Comfort of Your Couch
Lip Gloss Is the Beauty Product Elizabeth Taylor Couldn't Live Without
Valerie Bertinelli Talks About Her Weight: 'Enough. I'm Done Judging Myself' (Watch Video)
Whip up Valerie Bertinelli's 10-Minute Healthy Breakfast Cookies (Yes, You Read That Right!)
Horoscope: What's in Store for You January 30 – February 5, 2023?
Does Your Makeup Make You Look Older? 52-Year-Old News Anchor Shares 3 Tips To Prevent This
Here's the Story Behind the World's Oldest and Weirdest Sayings — Straight From the Horse's Mouth
Oscar Nominees Are Here — And There Are More Than a Few Surprises on the List
Suzanne Somers Broke Her Neck in 2021: These 4 Daily Habits Helped Her Heal
Horoscope: What's in Store for You January 23 – January 29, 2023?


text:
La videovigilància IP és una tecnologia de vigilància visual que combina els beneficis analògics dels tradicionals CCTV (Closed Circuit Television) amb els avantatges digitals de les xarxes de comunicació IP (Internet Protocol), tot permetent la supervisió local i/o remota d'imatges i àudio així com el tractament digital de les imatges, per a aplicacions com el reconeixement de matrícules o el reconeixement facial, entre d'altres.

Aquesta tecnologia resulta més senzilla i econòmica que un CCTV, ja que aprofita la xarxa informàtica empresarial, és a dir, el mateix cablejat que s'utilitza per a la comunicació de dades, accés a Internet o correu electrònic, sense necessitat de comptar amb una infraestructura de cablejat coaxial específica per a la xarxa de videovigilància. La majoria de les instal·lacions més modernes estan canviant la tecnologia analògica a favor de la videovigilància IP, donada la seva versatilitat, funcionalitat, senzillesa i optimització de les infraestructures existents en la companyia.

Entre els avanços més destacats dels últims anys, a més de les capacitats sense fils que eliminen, i fins i tot l'estesa de cablejat, trobem l'alta resolució d'imatges que ofereixen les càmeres megapíxel (1,3 megapíxels), la inclusió de sistemes d'intel·ligència per al tractament de vídeo i la gestió d'esdeveniments o comptadors digitals. És possible capturar un vídeo i emmagatzemar-ho a pocs fotogrames per segon o activar l'enregistrament només en determinades circumstàncies ja sigui per la detecció de moviments en una zona determinada o per franges horàries.

La millora de la resolució va acompanyada d'elevades taxes de compressió per tal d'evitar alts consums d'ample de banda i espai d'emmagatzematge, amb estàndards com l'H.264, que simplifiquen significativament l'emmagatzematge en els NVR (Network Video Recorders) o servidors de vídeo respecte a altres formats com el vídeo Motion JPEG, MPEG-4.
Aquests avenços tecnològics van propiciar que assessories com IP Video Market, al seu informe de 'Video Surveillance Market Size and Forecast Guide 2010', estimessin que el mercat de la videovigilància IP superaria al de la CCTV (analògic) entre 2010 i 2012, amb un creixement d'un 200%.

Història
La primera càmera IP, la Neteye 200, va aparèixer l'any 1996 fabricada per Axis Communications . El 2005, es va crear la primera càmera amb anàlisi de contingut de vídeo (IntelliCAD). Avui dia, es pot accedir al contingut d'aquesta càmera des des qualsevol lloc amb connexió a Internet.

Components tecnològics
 Càmera IP. Captura el vídeo i l'àudio (en cas d'incorporar entrada i sortida d'àudio) i pot ser fixa o mòbil. Està connectada per cable o sense fil a una xarxa de dades IP, a través de la qual es pot controlar i emmagatzemar la informació en NVRs (Network Video Recorder) o servidors de vídeo en xarxa. Entre diverses característiques cal destacar:
 Resolució megapíxel.- Permet visualitzar detalls impossibles de veure amb càmeres analògiques i/o VGA tradicionals.
 Zoom òptic.- Apropament d'una imatge mitjançant l'objectiu i sense pèrdua de qualitat d'imatge.
 Zoom digital.- Ampliació/apropament d'una imatge mitjançant tècniques digitals amb una consegüent disminució de la resolució de la imatge.
 3GPP vídeo streaming.- Permet visualitzar remotament el vídeo en línia d'una càmera IP en un telèfon mòbil 3G o telèfon intel·ligent.
 Connector I/O (entrada/sortida).- Dissenyats per a connectar dispositius externs a la càmera; sirenes/alarmes, detector de moviments, sensors de temperatura, il·luminador extern, etc.
 Escombratge progressiu.- Aconsegueix una major nitidesa i claredat en l'enregistrament i visualització d'imatges en moviment.
 NVR (Gravador de vídeo en xarxa) / VMS (Sistema de gestió de viíeo).- Element que permet gravar i/o visualitzar la imatge procedent d'una o múltiples càmeres tant localment (dins d'una xarxa d'àrea local) com remotament (a través d'internet). Aquests elements poden ser elements de maquinari amb programari incrustat o bé elements de programari que s'executa en un hardware tradicional (servidor). També aporten altres funcionalitats com la gestió d'accessos i permisos d'usuaris o la configuració remota de les càmeres, per posar alguns exemples.
 Gravador de vídeo.- L'enregistrament pot executar-se de manera contínua o programada automàticament per hores, activació per moviment, detecció d'esdeveniments específics, etc.
 Video Server Encoder.- Permeten connectar càmeres analògiques CCTV a una xarxa digital de videovigilància basada en el protocol IP.
 Programari d'anàlisi de vídeo.- Permet anàlisis automàtiques de les imatges en funció dels paràmetres prèviament definits per l'usuari. Aquestes capacitats fan que els usos de la videovigilància vagin més enllà de la seguretat física i es poden aplicar a la intel·ligència de negoci. Les noves versions d'aquest programari permeten, per via d'avançats algorismes en l'anàlisi de vídeo, definir paràmetres d'enregistrament perquè les càmeres únicament capturin imatges quan detectin determinats esdeveniments, la qual cosa optimitza la capacitat d'emmagatzematge i el consum de l'ample de banda. Aquests sistemes són capaços de realitzar les tasques d'enregistrament i transmissió de més de 64 càmeres, tot depenent dels requeriments de taxes de bits i resolució, guardant tot el vídeo en una xarxa d'emmagatzematge o en discos externs. La gestió de les càmeres IP instal·lades pot realitzar-se de manera centralitzada des d'un únic punt i, gràcies al protocol IP, pot fer-se fins i tot de manera remota.
 Dispositius de visualització.- Els dispositius més estesos són els tradicionals monitors o pantalles, PCs o video-walls. No obstant això, i donada la versatilitat del protocol IP, és possible visualitzar les imatges en dispositius de butxaca, com elstelèfons mòbils, tablet PC o PDA.
 Filtres Infrarojos.- Existeixen dos tipus de filtres infrarojos, els filtres de Tall o (ICR Filter) que s'activen o desactiven de forma manual o automàtica tot depenent de les condicions lumíniques de l'entorn, i els filtres de doble Banda o duals (Dual Band Filter), que a diferència dels anteriors es troben fixos entre la lent i el sensor de la càmera.
 LED infraroig.- Els LEDs infrarojos són punts generadors de llum infraroja. Aquest tipus de llum és imperceptible per a l'ull humà, però no per a les Càmeres IP que incorporin filtres infrarojos, dotant així la càmera de visió nocturna.
 Carcasses exteriors.- Són elements que protegeixen les càmeres d'exterior de cara a les situacions climatològiques i/o accions de vandalisme.
 Sensors.- Dispositius que contribueixen a ajustar els enregistraments automàtics en funció de determinades condicions, com els canvis de temperatura, so o moviment, entre d'altres. Poden, a més, activar funcionalitats com la il·luminació d'infrarojos (IR) quan així ho requereixi el grau de foscor en el lloc d'enregistrament.
 Cablejat Ethernet.- En cas de no aprofitar les capacitats sense fils que porten els últims models de càmeres IP, el cablejat que s'utilitza per a la transmissió del vídeo capturat és el mateix que l'utilitzat per a les comunicacions corporatives, amb optimització del cost i desplegament d'infraestructura, a diferència de l'opció analògica (CCTV) que requereix un cablejat coaxial.
 PoE (Power Over Ethernet).- La utilització de commutadors Ethernet amb funcionalitat PoE simplifica la instal·lació d'una Càmera IP. Utilitzant el mateix cable Ethernet es poden enviar dades i corrent elèctric a un dispositiu (càmera, …), sense la necessitat de comptar amb preses d'alimentació addicionals. Això resulta molt útil ja que generalment les càmeres de vigilància IP s'instal·len en llocs on l'alimentació elèctrica no és fàcilment accessible.
 Firewall.- Impedeixen l'accés ina causa de la xarxa de videovigilància IP.
 Reconeixement Facial.- Es tracta d'una tecnologia que permet analitzar de manera automàtica: - Gestions de tràfic (lectura de matrícules, comptatge de vehicles, velocitat mitjana del tràfic, vehicles en contra direcció, estadístiques d'ús de carrils). - Grans esdeveniments (comptar els participants en una manifestació, identificar els corredors a les curses populars, accessos a esdeveniments esportius, estadístiques d'edat, gènere o fins i tot d'estat d'ànim), entre altres usos.

Certificacions
L'European Committee for Electro Technical Standardization (CENELEC) va desenvolupar l'estàndard Grau de protecció IP (IEC 60529) per classificar els nivells de protecció mediambiental que les carcasses dels dispositius elèctrics presenten enfront dels objectes sòlids i líquids. La nomenclatura utilitzada per l'estàndard consta de les lletres IP (Ingress Protection) seguida de dos dígits; el primer indica el nivell de protecció enfront d'objectes sòlids (per exemple pols) i el segon enfront de líquids (per exemple aigua). D'aquesta forma un equip que disposi de certificació IP66 indica protecció total enfront de l'entrada de pols i rajos molt potents d'aigua, una certificació IP44 correspondria a un equip que presenta protecció d'entrada d'objectes sòlids majors d'1 mm i a rajos d'aigua.

Aplicacions pràctiques
L'ús més comú i pel qual van ser concebudes al principi és per a la detecció d'intrusions en espais, tancats o oberts, ja que el sistema pot ser instal·lat des d'oficines, centres comercials o aparcaments públics a l'aire lliure, entre d'altres. En aquest mateix sentit, el control de furts i robatoris en establiments comercials i magatzems és una altra de les finalitats més esteses en aquest tipus de sistemes.

No obstant això, les aplicacions de la videovigilància IP s'han anat incrementant a mesura que el programari ha avançat en prestacions. En aquest sentit, ja és possible realitzar control d'accessos, tant de persones com de vehicles; o el control de processos en cadenes de muntatge, reforçant així la prevenció de riscos laborals.

Recentment, els ajuntaments han estès l'ús que ja feien altres organismes d'aquests sistemes, com la DGT (Direcció General de Trànsit) per al control del trànsit, a la videovigilància d'espais oberts en zones conflictives, en un intent de reduir la criminalitat, prostitució, etc.

Legislació
La legislació espanyola és molt estricta a l'hora de regular la instal·lació i ús de càmeres de videovigilància, amb diverses Lleis Orgàniques que aborden la qüestió. Així mateix, l'Agència Espanyola de Protecció de Dades també dedica un apartat especial a aquest assumpte, en considerar que el seu ús pot afectar a persones identificades o identificables, per la qual cosa aquesta informació constitueix una dada de caràcter personal.
Les principals Lleis Orgàniques que regulen aquesta activitat són:

 La Llei Orgànica 1/1982, de 5 de maig,de Protecció Civil del Dret a l'honor, a la Intimitat Personal i a la Pròpia Imatge.
 La Llei 23/1992, de 30 de juliol de Seguretat Privada (LSP).
 La Llei Orgànica 4/1997, de 4 d'agost, per la qual es regula la utilització de càmeres de vídeo per les forces i cossos de seguretat en llocs públics.
 La Llei Orgànica 15/1999, de 13 de desembre, de Protecció de Dades de Caràcter Personal (RDLOPD). Aquesta és, sens dubte, la més rellevant quant a legislació recent, actualitzada i complementada a través de la Instrucció 1/2006, de 8 de novembre, de l'Agència Espanyola de Protecció de Dades, sobre el tractament de dades personals amb finalitats de vigilància a través de sistemes de càmeres o càmeres de vídeo, que ha establert jurisprudència.
 La Llei 'Ómnibus' 25/2009, de 22 de desembre, de modificació de diverses lleis per a la seva adaptació a la Llei sobre el lliure accés a les activitats de serveis i el seu exercici. Modifica, entre uns altres, l'article 5.1 de la LSP.

Entre els requisits mínims exigits per a la posada en marxa d'un sistema de videovigilància quan afecta a dades de caràcter personal destaquen:
• La instal·lació de càmeres o càmeres de vídeo només és admissible quan la finalitat de vigilància no pugui obtenir-se mitjançant altres mitjans que, sense exigir esforços desproporcionats, resultin menys intrusius per a la intimitat de les persones i per al seu dret a la protecció de dades de caràcter personal.

• Les càmeres i càmeres de vídeo instal·lades en espais privats no podran obtenir imatges d'espais públics tret que resulti imprescindible per a la finalitat de vigilància que es pretén, o resulti impossible evitar-ho per raó de la ubicació de les càmeres.

• Les imatges només seran tractades quan siguin adequades, pertinents i no intrusives en relació a l'àmbit i les finalitats determinades, legítimes i explícites. En cas de crear un fitxer d'imatges (i no només usar el vídeo en temps real), aquest haurà d'inscriure's en el Registre General i els interessats hauran de comptar amb impresos en els quals es detalli la informació sobre el fitxer i la seva finalitat, el destinatari de les dades, la possibilitat d'exercici dels drets per part de l'interessat i la identificació del responsable del fitxer.

• Les imatges no podran romandre emmagatzemades més d'un mes des de la data de la seva captura.

• Conforme a la Instrucció 1/2006 i en compliment del dret d'informació, els responsables que comptin amb sistemes de videovigilància hauran de col·locar, a les zones videovigilades, almenys un distintiu informatiu situat en lloc suficientment visible, tant en espais oberts com tancats.

Referències

Enllaços externs
 Marques de càmeres de seguretat
 Càmeres de vigilància

Seguretat informàtica
Espionatge
Pàgines amb traduccions sense revisar


text:
High Spirits Return to U.K. Festival
AUDREY WOODS
LONDON (AP) _ "The Last Night of the Proms," a very British evening of fine classical music and jolly tongue-in-cheek jingoism, returned to exuberant form Saturday.
A year ago, in the aftermath of the Sept. 11 terrorist attacks, the music was somber and concertgoers holding American and British flags stood to sing "The Star-spangled Banner" and "God Save The Queen."
On that night, American conductor Leonard Slatkin told the audience he and the members of the BBC Symphony Orchestra "use music tonight to express all the emotions we all feel."
Samuel Barber's "Adagio for Strings," spirituals from Michael Tippett's "A Child of Our Time" and the choral finale from Beethoven's Ninth Symphony replaced the usual favorites: "Land of Hope and Glory," "Rule Britannia!" and "Jerusalem."
The century-old summer series of Henry Wood Promenade Concerts _ known to one and all as The Proms _ customarily ends its 8-week run with silliness and a swaying, flag-waving audience belting out patriotic songs in London's cavernous Royal Albert Hall.
The music fanatics known as the "prommers," who pay $6.20 each for standing-room space, set the evening's tone.
Some come decked out in dinner jackets and black-tie, many show up in costumes, and a few carry teddy bears, balloons and other props. Silly hats often figure in the fun as the British show just how unreserved they can be.
The most enthusiastic prommers were at the front of the line Saturday, having waited since early Friday morning for their favorite standing places near the orchestra. Many were formally and vividly dressed, including one tall man in a gold lame tailcoat.
"It's quite a unique series of concerts," said Chris Cann, "There's nowhere else in the world you can experience so much great music."
"We spent 8 weeks with the same people," said Ben Killeen, in black tie. "We just love classical music," he said.
Holding more conventional seat tickets were James Marriott _ wearing a red, white and blue Union Jack shirt _ and his mother Jean Marriott. It was their first time at the last night.
"We've always wanted to come and finally got tickets," James Marriott said.
This year's final night also included folk song arrangements from Scotland, Wales and Ireland _ "Charlie is My Darling, "All Through the Night" and the Irish tune best known as "Danny Boy."
For those who wanted to join in the fun outdoors, huge screens were set up in London's Hyde Park; in Gateshead, northeast England; and for the first time in Belfast, Northern Ireland.
Broadway star Audra McDonald and Norwegian pianist Leif Ove Andsnes were on the evening's program.
Besides the 6,000 people in the vast and often stifling Victorian concert hall, and the estimated 100,000 who watch "Last Night" on giant TV screens, millions watch it on TV or hear it via the Internet or on radio around the world.
The concert series aims to bring first-rate music to large audiences, and for those who want to sit, ticket prices start at $9.30 and cost as much as $58.90.
http://www.bbc.co.uk/proms/about/lastnight.shtml


The large bobbin and orifice of this flyer allow spinning chunky and novelty yarns or production spinning and plying.
Includes a large 3/4" (19 mm) orifice bearing, jumbo flyer and 1 jumbo bobbin. Very quick and easy to fit – just swap the maid upright bearing.
Compatible with Traditional and Traveller wheels.


As a registered member, you can enjoy the following service.
Fund Library helps you keep track of your investments with daily updates and reports.
Page ID: 30:04:0000:00000000:1/24/2019:4:20:53 PM Duration of this visit: 0 sec.


Are You Addicted to Chocolate &/or Wine? Find Out What It's Costing You!
It sounds like a bold statement from what some would think of as a Coo-Coo Psychoanalyst. But, as I got to thinking about it more, it's pretty darn true! We are ultimately avoiding pain or gaining pleasure through our daily actions and decisions we make in each moment.
What's even crazier is that some of the things listed above, especially alcohol, money, drugs, and FOOD, help us to do both, avoid pain and gain pleasure! We've all had an experience where we were feeling sad, lonely, anxious, or depressed, and a pint of ice cream or bottle of wine, helped us to avoid those painful feelings and brought us instant relief and pleasure within moments.
Dr. William Glasser, an internationally recognized Psychiatrist, even states in his work that any substance that can both help us to avoid pain AND that gives us an immediate dose of pleasure, is what causes us to get addicted to certain activities, FOOD, and substances.
AWWWWH! Addiction…What Are We To Do?
First of all, don't be surprised or feel bad if you've been using food, drugs, money (retail therapy), or alcohol to cope with your feelings or have even become addicted to one of these substances. I'd say that all of us are to some extent, whether we want to admit or not!
But, now it's time to think about how this seemingly harmful addiction could be affecting our health & fitness goals, whatever they may be.
Next, I'll point out that studies show that we're more likely to try and avoid pain or painful feelings than to gain pleasure, so this is where you can outsmart The Addiction Trap. However, if you're suffering from severe addiction, please seek professional help, as the following points will only help mild addiction and cravings.
For example, if you're trying to lose weight or lead a healthier lifestyle, you will have to really think about the pain your current choices could cost you. It's easy to eat foods high in fat, salt, and sugar, NOW, but have you ever thought about what it's like to have Diabetes? It's a nasty disease that causes kidney failure, blindness, infections, even more weight gain, poor circulation, and weakness, just to name a few. What about heart disease or cancer? Really think about the agony those diseases and how your daily behavior choices today will compound over time and either cause pain or pleasure in the future!
This is something I learned from Kelly McGonigal, and her book The Willpower Instinct. We have a hard time imagining our future self sometimes, and how the actions we take today, affect the future self, as we are so hard-wired for immediate gratification of the current self.
But, what if you spent some time thinking of your future self and how he/she would feel if you took actions to take a little bit better care of yourself today? What would your future self tell you in this moment? Or, even imaging them thanking you for choosing your health, saving money, etc., in this moment because you've made life easier for your future self.
Kelly even suggested using a Free App like Aging Booth to snap a shot of your current self, and then it ages you, so you can put a face with your future self and feel more of an attachment to your future. Sounds weird, but there's been scientific studies on this that proves it works!
Some of our behaviors have come so automatic that we don't even realize we're pouring that glass of wine after a long, stressful day, or reaching for that piece of chocolate. A lot of the time, we are just doing what we ALWAYS DO! However, I'd be willing to bet that over time you've started eating more chocolate and drinking more wine to get the same dose of pleasure.
That's how addiction grabs ahold of you. You need more and more to get that high or dose of pleasure you're chasing to cope. This compounds on a daily basis to disrupt our health, both physically, emotionally, and mentally.
If you want to get better at catching The Addiction Trap and making a different decision in the moment, you have to Stop, Notice, & Think about your actions through increased Mindfulness & Self-Awareness. "How do I do that?", you may ask. I've got you covered! Click the link below and get started immediately.
Learn how to increase your Self-Control and Awareness INSTANTLY! Click HERE.
This week, focus on your addictions and how you're using them to cope. Think about how your choices today will affect your health goals tomorrow! Remember, once you decide to commit 100% to choosing something different, YOU WILL!
Today's post inspired by Day 3 of The 30 Day Sobriety Solution by Jack Canfield and Dave Andrews.
← Motivation Isn't a Feeling, Stop Waiting For It!


There is one simple system for drawing boundaries, and it's the best boundary system I've ever found. It's called "The Work", and it was developed by an American woman named Byron Katie.
When you look at it this way, it is clear where you need to draw your boundaries — around your own business.
Your job is to stay in your own business. That's where your happiness and your power is. That's where you're living with integrity.
When you're upset, it might be because you're in somebody else's business, where you have no power, and no right to be. When you're over there in somebody else's business, who is at home minding yours? Nobody. How lonely and isolating is that? Coming home to your own business can help you feel better.
The following exercise can help you notice the three kinds of business.
Answer: You're in your friend's business, taking responsibility for his feelings. Trust and respect him to take care of his own feelings – it is his job. Come back to your own business, which is being in touch with your own feelings and saying No to protect your health.
Answer: You're in your co-workers' business, trying to ensure that they like you. Whose business is it whom they like? It's theirs. Come back to your own business, which is liking yourself and advocating for yourself so you can enjoy the company party. It's also your business to like your co-workers as they deal with this tricky situation.
Answer: You're in your companions' business, trying to ensure that they like you. Whose business is it if they associate frustration with you? It's theirs. Come back to your own business, which is to like yourself, and take the time you need to find something safe to eat. It's also your business to like your companions as they deal with this tricky situation.
Answer: You're in Reality's business, thinking that you know how things should be. This is like the shadow complaining that the sun is moving in the wrong direction! It's hopeless. The shadow can kick and scream as it follows the sun, or it can follow the sun with dignity and grace, but either way, the shadow will follow the sun. Come back into your own business. Accept the reality that you have this disease, and choose to live with it with dignity and grace.
Answer: You're in your parents' business, taking responsibility for their happiness. Their happiness is their job, not yours! Come back to your own business, which is cultivating your own happiness while you live with the reality of this disease. (Who knows — your happy actions may accidentally spread happiness to your parents as well!) It's also your business to be happy about your parents, regardless of their happiness level.
Answer: You're in your in-laws' business, trying to get them to change. Come back to your own business, and do for yourself what you wish they would do: provide yourself with a safe kitchen. Maybe it's in a motel with a kitchenette, maybe it's in a rented RV outside their house, maybe it's in your own home while you talk to them on the phone.
Answer: You're in the server's business, taking responsibility for the server's feelings and wanting the server to like you. Let the server do their own work! Your job is to know your own feelings and like yourself so you can take care of your food safety. It's also your job to like the server as they deal with this tricky scenario.
Answer: You're in your own business, noticing how you feel and why you feel that way. You can now ask yourself, "What do I want from the pizza and from my co-workers?" If you want comfort and enjoyment from the pizza, give it to yourself by loving yourself and noticing the beauty of life as it is. If you want the pizza to give you hunger relief, find something else you can eat. If you want your co-workers to include you, open your eyes to the non-pizza ways that they do include you. Notice that being included is important to you, and look for more ways to include yourself in your own experience, and to include your co-workers. The power is yours, in your own business.


CVISNET provides several ICT solutions and services. This includes secure web hosting facilties. CVISNET also partners with commercial Internet providers to deliver basic connectivity and value-added services such as data and connection security and backup.
Currently, CVISNET provide Internet and data connectivity to more than 20 partner/clients. Connectivity products include Broadband, DSL and Wireless (including WiMax).


text:
\section{Introduction}

Angle-resolved photo-emission spectroscopy (ARPES) directly probes the
dispersion of electrons; identifying a kink associated with the
active optical phonon in the cuprates \cite{lanzara2001a}. Neutron scattering has shown an anomalous change in the phonon
spectrum at the superconducting transition, indicating an interesting role for phonons in the cuprates \cite{chung2003a}. Estimates of the magnitude
of the electron-phonon coupling, and the energy of the phonon mode put
the problem outside the limited region of applicability for BCS
theory, so schemes to cope with a wider range of parameters need to be
developed.  Moreover, since there a node in the superconducting gap
consistent with d-wave symmetry \cite{tsuei1994a}, any theory
implicating phonons as the mechanism must be able to explain the
unconventional order.

Electron-phonon (e-ph) interactions can be described by the following generic model,
\begin{eqnarray}
H &=& \sum_{{\bf k}\sigma}\epsilon_{{\bf k}}c^{\dagger}_{{\bf k},\sigma} c_{{\bf k},\sigma} + \sum_{kq} \frac{g_{{\bf q}}}{\sqrt{\omega_{{\bf q}}}} c^{\dagger}_{{\bf k}-{\bf q},\sigma}c_{{\bf k},\sigma} (b^{\dagger}_{{\bf q}}
 + b_{{\bf q}})\nonumber\\
&& \hspace{10mm} + \sum_{{\bf q}} \omega_{{\bf q}} (b^{\dagger}_{{\bf q}}b_{{\bf q}} + 1/2)
\end{eqnarray}
Here, $\hbar = 1$ and $\epsilon_{{\bf k}} = -2t(\cos(a k_x)+\cos(a k_y)) -
2t_{\perp}\cos(c k_z)$ with $t=0.25$ and $t_{\perp}=0.01$
(representing a quasi-2D system and taming the van-Hove
singularities). The Holstein model is a special case where $g_{{\bf q}}
= g_0$ and $\omega_{{\bf q}} = \omega_0$, for which $\lambda =
g_0^2/(\omega_0^2 W)$ is the dimensionless e-ph coupling
($W$ is the half-band width). The momentum-independent phonon
dispersion approximates an optical phonon, and the momentum-independent e-ph coupling corresponds to a completely local
interaction. A Coulomb pseudo-potential, $H_\mu = -
W\mu_c\sum_{{\bf k}{\bf q}\sigma} \langle
c^{\dagger}_{{\bf q}\sigma}c^{\dagger}_{-{\bf q}\bar{\sigma}} \rangle
c_{{\bf k}\sigma} c_{-{\bf k}\bar{\sigma}} + h.c.$, may be added
(i.e. Hubbard model at the Hartree--Fock level).

\begin{figure}[ht]
\begin{center}
\includegraphics[width=0.46\textwidth]{fig1.eps}
\end{center}
\caption{\label{fig:overview}(a) Overview of the diagrammatic
  representations of the self-energy used in this work. $\Sigma$ is
  the electron, and $\Pi$ the phonon self energy. The row labeled ME
  contains the vertex neglected and VC the corrected diagrams. (b)
  Schematic of the DCA (quasi-local) formalism for cluster size
  $N_C=4$. Within the squares $\Sigma({\bf k})\mapsto\Sigma({\bf K})$
  where ${\bf K}$ are represented by solid circles. Equivalently,
  $\Delta({\bf k})\mapsto\Delta({\bf K})$. A partial density of states
  (DOS) is associated with each sub-zone. DCA enables computations in
  the thermodynamic limit, via an equivalent cluster impurity
  problem.}
\end{figure}

\begin{figure*}[ht]
\begin{center}
\includegraphics[height=0.325\textwidth,angle=270]{fig2a.ps}
\includegraphics[height=0.325\textwidth,angle=270]{fig2b.ps}
\end{center}
\caption{\label{fig:one} (Colour online) Electron spectral functions
  comparing VC and ME approximations when cluster size $N_{C}=64$. The
  effects of vertex corrections are most pronounced for
  $\omega_0>W\lambda$, as expected from analysis of the parameter
  space \cite{haguenda}. Horizontal dashed lines indicate the
  renormalised phonon frequency at the $(\pi,0)$ zone-edge as computed
  within the self-consistent theory (i.e. the one which would be
  measured in a neutron experiment). In particular, only the vertex
  corrected theory shows a kink at the energy scale relating to the
  phonon frequency {\bf measured} at the $(\pi,0)$ point
  \cite{hague2003a} as reported in Ref. \cite{lanzara2001a}.}
\end{figure*}

Some treatments of the ARPES kink used a standard Eliashberg theory
with anisotropic coupling and an assumed $d$-wave order parameter for
fitting purposes \cite{devereaux2004a,cuk2004a}. The extended Eliashberg
approach that I have developed differs significantly from previous
work in the sense that it is fully self-consistent, with no prior
assumptions about the form of the order parameter (i.e. any $d$-wave
order arises directly from the self-consistency of the theory)
\cite{hague2005d,hague2006b}.

\section{Eliashberg theory and momentum: Failure for optical-phonon mediated $d$-wave states}

In this section, I discuss how quasi-local Eliashberg equations can be
constructed, and demonstrate how the lowest-order Fock diagram does
not contribute to the gap equations. The calculation is intended to be demonstrative, and shows that standard
Eliashberg equations fail for an optical phonon mediated $d$-wave
state.

The Eliashberg equations are computed from the
Fock contribution to the self-energy:
\begin{eqnarray}
\hat{\Sigma}({\bf k},i\omega_n) & = & -T\sum_{\omega_{n'}}\int \frac{d{\bf q}}{(2\pi)^3}g^2_{{\bf q}}\hat{\tau}_3\hat{G}({\bf k}-{\bf q},\omega_{n'})\nonumber\\
& & \hspace{10mm}\times\hat{\tau}_3 K({\bf q},i\omega_n-i\omega_{n'})
\label{eqn:se}
\end{eqnarray}
and equate $\hat{\Sigma}$ with the approximate form,
\begin{equation}
\hat{\Sigma}\approx (1-Z_{{\bf k}})i\omega_{n}\hat{\tau}_0 + \Delta_{{\bf k}}(i\omega_n)\hat{\tau}_1 + \chi\hat{\tau}_3
\end{equation}
Normally the Eliashberg equations are computed using a local
(momentum-independent) approximation. However, to examine $d$-wave
states, the local approximation is not sufficient. Substituting the
Green function
$\hat{G}({\bf k},i\omega_n)^{-1}=i\omega_n\hat{\tau}_0-\zeta_{{\bf k}}\hat{\tau}_3-\hat{\Sigma}$
in eq. \ref{eqn:se} ($\zeta_{{\bf k}}=\epsilon_{{\bf k}}-\mu$, $\hat{\tau}$ are Pauli matrices and $\mu$ is
the chemical potential), and treating the gap function as constant in
sub-zones of ${\bf k}$-space in the manner of DCA, one obtains a
quasi-local approximation for the Eliashberg equations,
\begin{equation}
\Delta_{n,{\bf K}} = \lambda T \sum_{n'{\bf Q}}\int d\zeta \frac{\bar{K}(n,n'){\mathcal{D}}_{{\bf K}-{\bf Q}}(\zeta)\Delta_{n',{\bf K}-{\bf Q}}}{Z^2_{{\bf K}-{\bf Q}}\omega_{n'}^2 + \zeta^2+\Delta^2_{n',{\bf K}-{\bf Q}}}
\label{eqn:qlapprox}
\end{equation}
When gap functions have $d$-wave symmetry, $\Delta_{\pi,0} =
-\Delta_{0,\pi}$ and $\Delta_{0,0} = \Delta_{\pi,\pi} = 0$, and the
partial DOS ${\mathcal{D}}(0,\pi) = {\mathcal{D}}(\pi,0)$ has the symmetry of the lattice, it is
immediately clear that the $\mathcal{O}(\lambda)$ contribution to the
quasi-local Eliashberg equations vanishes, and 2nd order terms must be
considered. When there is some weak momentum dependence in the e-ph
coupling and phonon frequency, this cancellation will not be exact,
but the contribution from 2nd-order terms can still be expected to be
the largest in the perturbation series. Thus a fully extended set of
Eliashberg equations including vertex corrections needs to be
constructed. Currently, it is not possible to construct a similar approximation to eq. \ref{eqn:qlapprox} for the vertex corrected theory. However a numerical
approach using the full DCA equations is available to enlighten some
aspects of the e-ph problem.

The rest of this article concerns results from an extended Eliashberg
theory with momentum dependence and vertex corrections determined
numerically using DCA. No form for the order parameter is assumed in
advance and full forms for the Green functions and self-energies are
used. Full details of the translation of the diagrams in Fig. \ref{fig:overview}(a) may be found in
ref. \cite{hague2005d}.

\section{Normal state spectroscopy}

Figure \ref{fig:one} shows image plots of the electron spectral
functions \cite{hague2003a}. Vertex corrections are most pronounced for
$\omega_0>W\lambda$, as expected from analysis of the parameter space
\cite{haguenda}. In particular, the vertex corrected theory shows
a kink at the energy scale relating to the phonon frequency {\bf
measured} at the $(\pi,0)$ point (i.e. renormalised zone edge phonon
frequency) in agreement with the ARPES measurements in
Ref. \cite{lanzara2001a}.

Phonon spectral functions are shown in Fig. \ref{fig:two}. The phonon
renormalisation is extremely small for $\omega_0 = 0.4W$. In contrast,
modes at the $(\pi,\pi)$ point in the Brillouin zone are strongly
softened for $\omega_0 = 0.2W$ when vertex corrections are not taken
into account. The second order terms act against the softening and
reinforce the theory. A small reduction in spectral weight is seen mid
way along the $\Gamma$-X and $\Gamma$-W lines when
$\omega_0>W\lambda$. This might be a precursor to the strong softening
seen in Ref. \cite{chung2003a} on passing through the transition
temperature, but further analysis of the superconducting state is
necessary to be sure.

\begin{figure*}[ht]
\begin{center}
\includegraphics[width=0.65\textwidth, height=6cm]{fig3.eps}
\end{center}
\caption{\label{fig:two} (Colour online) Phonon spectral
functions. The phonon renormalisation is moderate for $\omega_0
= 0.4W$, $N_{C}=64$. White points show the values computed from $\omega^2 - \omega_0^2(1-{\rm Re}[\Pi(\omega)])=0$ for clarification. (a) Modes at the W point in
the Brillouin zone are almost completely softened in the theory
without vertex corrections (a split mode is indicated in panel (b)). Vertex
corrections act against that softening and reinforce the theory (c,d). There is an indication of reduction of spectral weight half way between the high symmetry points when $\omega_0>W\lambda$, perhaps with similar origin to that in the neutron results \cite{chung2003a}}
\end{figure*}

\section{Evolution of the order parameter}

\begin{figure*}[ht]
\begin{center}
\includegraphics[width=0.8\textwidth]{fig4.eps}
\end{center}
\caption{\label{fig:three} Anomalous density as $\mu$ is varied first upwards from half-filling and then back from large
filling showing two types of solutions to the self-consistent
equations. $\mu_C = 1.2$, $\lambda = 0.6$, $N_C=4$ and $\omega_0/W = 0.4$. (a)
Around half-filling ($n=1$), there is only one solution with $d$-wave
order. This persists to $n=1.175$ where the order parameter
spontaneously changes to $s$-wave order (b,c). The reduction in
$d$-wave magnitude is reminiscent of a quantum critical transition.
When decreasing $\mu$ from dense filling, the order parameter is a
conventional $s$-wave (d), which persists below $n=1.175$, i.e. there
are 2 solutions (e). Below $n=1.05$ there is only one solution. Close
to $n=1.05$, the $s$-wave solution has an extended-$s$ character, as
can be seen in panel (f).}
\end{figure*}

$d$-wave superconductivity is one of the remarkable results from the
theory extended with vertex corrections. Figure \ref{fig:three} shows
the anomalous density as the chemical potential is varied first
upwards from half-filling and then back from large filling showing
that two solutions are stable. A small $\mu_c = 1.2$ is
applied. $\lambda = 0.6$ and $\omega_0 / W = 0.4$. Starting with a
half-filled solution and increasing, then decreasing the chemical
potential, first $d$-wave and then (on decreasing from high electron
density) $s$-wave solutions to the self-consistent equations are found
(as detailed in the caption of Fig. \ref{fig:three}). Highly
anisotropic solutions form as the Fermi-surface approaches the
van-Hove points. In the $d$-wave state, the first order terms are not
the leading order of the perturbation theory in $\lambda$. It was
argued in Ref. \cite{hague2006b} that this was in part due to the
nearly flat phonon spectrum, so that the phonon propagator
$D({\bf k},\omega)\approx D(\omega)$ and the 1st order contribution to
the anomalous self-energy $W\lambda\sum_{{\bf q}}
D({\bf q})F({\bf k}-{\bf q})$ is small ($F$ is the anomalous Green
function). The anomalous contribution to the pseudopotential term is
$\phi_C = W\mu_C \sum_{\bf k} F({\bf k})$. Since $F$ is modulated in the
$d$-wave state, then the contribution of the pseudopotential term is
zero. In the $s$-wave state, $F$ is not modulated, and the resulting
finite contribution destroys the $s$-wave order for large enough
$\mu_C$, thus selecting a dominant $d$-wave contribution. The phonon
spectra in Fig. \ref{fig:two} demonstrate that so long as $\omega_0 >
W\lambda$, then this condition is met, and 2nd order terms are
essential. 2nd order terms remain the leading order correction to the
anomalous self-energy, even for the larger $\lambda$ used here. It is
clear that the 2nd order terms are similar for both repulsive and
attractive models, and thus it is perhaps not surprising that both
attractive and repulsive models show a $d$-wave state.

\section{Summary and Outlook}

I have described spectroscopic results and order parameters from an
extended Eliashberg-style theory with vertex and momentum
corrections. The extended theory is essential for the investigation of
d-wave superconductivity mediated by optical phonons, since the vertex
corrections are the lowest order terms in the perturbation expansion
in electron-phonon coupling $\lambda$. Indeed, d-wave
superconductivity is immediately predicted with such an extension.

There are two remaining areas which require further investigation. The
first involves a better treatment of the Coulomb repulsion, which is
currently only treated as a simple Hartree-Fock pseudopotential. In
particular, the ability to treat large repulsion and
antiferromagnetism is essential for high-$T_C$ materials. Treatment of
momentum dependent e-ph coupling would also be of interest. However,
the overriding challenge at this stage is to convert the numerical
results into a coherent analytic theory with vertex corrections.

redpajama_set_name: RedPajamaArXiv


All Standard Double rooms with no sea view, have twin or double beds, TV, private bathrooms with showers, fridges, tea & coffee making facilities and private balconies.
WIFI available. Maximum child age is 14 years. Rooms may have twin or double beds. Photos shown may be representative of either standard or superior room type.


text:
Family Caregivers Unite!
August 28th 2012:How to Survive Caring for Aging Parents
Jacqueline Marcell wrote 'Elder Rage', her best-selling book, out of her experience caring for her parents with Alzheimer's disease undiagnosed for over a year. She talks about her professional career and her life as a family caregiver involved with family members with Alzheimer's disease. She explains what Elder Rage is and what makes it such a challenge for family caregivers. She discusses the range of challenges that arise for family caregivers caring for a family member with Alzheimer's disease, such as the first things that family caregivers notice, high-risk behaviors, and the particular
Archives Available on VoiceAmerica Variety Channel
Jacqueline Marcell
Jacqueline Marcell was a television executive. She barely survived as family caregiver for her challenging father and sweet mother, both with Alzheimer's undiagnosed for over a year. The experience led her to write 'Elder Rage', www.ElderRage.com, a Book-of-the-Month Club selection receiving over 450 5-Star Amazon reviews. It's required reading at numerous universities, and considered for a film. She's received 'Advocate of the Year' from the National Association of Women Business Owners at their Remarkable Women Awards. She's an international speaker who's presented at hundreds of events including the California Governor's Conference, National Academy of Elde


No, i hope it's more that ModuleDescriptor will be an interface.
So we can have our own module descriptor builder.
>descriptors?  That's going to be a real pain.
>>> kinds of constrained names.
>>> some unusual characters, though not hyphens or slashes .
>>> names already in the language.
>>> semicolons (`;`), and left square brackets (`[`) are forbidden .
>>>     source language if need be, so we reserve that character now.
>>>     combine module names with version strings.
>>>     `\@` to stand for `\`, `:`, and `@`, respectively.
>>> and `@`; and forbid the non-printing ASCII characters (< 0x20).
>>> structures that represent the actual class names .
>>> kinds of class-file structures for module and package names.
>>> will be adjusted to refer to these new kinds of tagged structures.