text:
// --------------------------------------------------------------------------------------------------------------------
// <copyright file="PlotView.cs" company="OxyPlot">
//   Copyright (c) 2014 OxyPlot contributors
// </copyright>
// <summary>
//   Represents a control that displays a <see cref="PlotModel" />.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

namespace OxyPlot.WindowsUniversal
{
    using System;
    using System.Collections.ObjectModel;
    using System.Linq;
    using System.Threading;

    using OxyPlot.Series;

    using Windows.ApplicationModel.DataTransfer;
    using Windows.Devices.Input;
    using Windows.Foundation;
    using Windows.System;
    using Windows.UI.Core;
    using Windows.UI.Xaml;
    using Windows.UI.Xaml.Controls;
    using Windows.UI.Xaml.Input;
    using Windows.UI.Xaml.Media.Imaging;

    /// <summary>
    /// Represents a control that displays a <see cref="PlotModel" />.
    /// </summary>
    [TemplatePart(Name = PartGrid, Type = typeof(Grid))]
    public class PlotView : Control, IPlotView
    {
        /// <summary>
        /// Identifies the <see cref="Controller"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty ControllerProperty =
            DependencyProperty.Register("Controller", typeof(IPlotController), typeof(PlotView), new PropertyMetadata(null));

        /// <summary>
        /// Identifies the <see cref="DefaultTrackerTemplate"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty DefaultTrackerTemplateProperty =
            DependencyProperty.Register(
                "DefaultTrackerTemplate", typeof(ControlTemplate), typeof(PlotView), new PropertyMetadata(null));

        /// <summary>
        /// Identifies the <see cref="HandleRightClicks"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty HandleRightClicksProperty =
            DependencyProperty.Register("HandleRightClicks", typeof(bool), typeof(PlotView), new PropertyMetadata(true));

        /// <summary>
        /// Identifies the <see cref="IsMouseWheelEnabled"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty IsMouseWheelEnabledProperty =
            DependencyProperty.Register("IsMouseWheelEnabled", typeof(bool), typeof(PlotView), new PropertyMetadata(true));

        /// <summary>
        /// Identifies the <see cref="Model"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty ModelProperty = DependencyProperty.Register(
            "Model", typeof(PlotModel), typeof(PlotView), new PropertyMetadata(null, ModelChanged));

        /// <summary>
        /// Identifies the <see cref="ZoomRectangleTemplate"/> dependency property.
        /// </summary>
        public static readonly DependencyProperty ZoomRectangleTemplateProperty =
            DependencyProperty.Register(
                "ZoomRectangleTemplate", typeof(ControlTemplate), typeof(PlotView), new PropertyMetadata(null));

        /// <summary>
        /// The Grid PART constant.
        /// </summary>
        private const string PartGrid = "PART_Grid";

        /// <summary>
        /// The model lock.
        /// </summary>
        private readonly object modelLock = new object();

        /// <summary>
        /// The tracker definitions.
        /// </summary>
        private readonly ObservableCollection<TrackerDefinition> trackerDefinitions;

        /// <summary>
        /// The canvas.
        /// </summary>
        private Canvas canvas;

        /// <summary>
        /// The current model.
        /// </summary>
        private PlotModel currentModel;

        /// <summary>
        /// The current tracker.
        /// </summary>
        private FrameworkElement currentTracker;

        /// <summary>
        /// The grid.
        /// </summary>
        private Grid grid;

        /// <summary>
        /// The default controller.
        /// </summary>
        private IPlotController defaultController;

        /// <summary>
        /// The state of the Alt key.
        /// </summary>
        private bool isAltPressed;

        /// <summary>
        /// The state of the Windows key.
        /// </summary>
        private bool isWindowsPressed;

        /// <summary>
        /// The state of the Control key.
        /// </summary>
        private bool isControlPressed;

        /// <summary>
        /// The is PlotView invalidated.
        /// </summary>
        private int isPlotInvalidated;

        /// <summary>
        /// The is shift pressed.
        /// </summary>
        private bool isShiftPressed;

        /// <summary>
        /// The overlays.
        /// </summary>
        private Canvas overlays;

        /// <summary>
        /// The render context
        /// </summary>
        private RenderContext renderContext;

        /// <summary>
        /// The zoom control.
        /// </summary>
        private ContentControl zoomRectangle;

        /// <summary>
        /// Initializes a new instance of the <see cref = "PlotView" /> class.
        /// </summary>
        public PlotView()
        {
            this.DefaultStyleKey = typeof(PlotView);

            this.trackerDefinitions = new ObservableCollection<TrackerDefinition>();
            this.Loaded += this.OnLoaded;
            this.SizeChanged += this.OnSizeChanged;
            this.ManipulationMode = ManipulationModes.Scale | ManipulationModes.TranslateX
                                    | ManipulationModes.TranslateY;
        }

        /// <summary>
        /// Gets or sets the PlotView controller.
        /// </summary>
        /// <value>The PlotView controller.</value>
        public IPlotController Controller
        {
            get { return (IPlotController)this.GetValue(ControllerProperty); }
            set { this.SetValue(ControllerProperty, value); }
        }

        /// <summary>
        /// Gets or sets the default tracker template.
        /// </summary>
        public ControlTemplate DefaultTrackerTemplate
        {
            get
            {
                return (ControlTemplate)this.GetValue(DefaultTrackerTemplateProperty);
            }

            set
            {
                this.SetValue(DefaultTrackerTemplateProperty, value);
            }
        }

        /// <summary>
        /// Gets or sets a value indicating whether to handle right clicks.
        /// </summary>
        public bool HandleRightClicks
        {
            get
            {
                return (bool)this.GetValue(HandleRightClicksProperty);
            }

            set
            {
                this.SetValue(HandleRightClicksProperty, value);
            }
        }

        /// <summary>
        /// Gets or sets a value indicating whether IsMouseWheelEnabled.
        /// </summary>
        public bool IsMouseWheelEnabled
        {
            get
            {
                return (bool)this.GetValue(IsMouseWheelEnabledProperty);
            }

            set
            {
                this.SetValue(IsMouseWheelEnabledProperty, value);
            }
        }

        /// <summary>
        /// Gets or sets the <see cref="PlotModel" /> to show.
        /// </summary>
        /// <value>The <see cref="PlotModel" />.</value>
        public PlotModel Model
        {
            get
            {
                return (PlotModel)this.GetValue(ModelProperty);
            }

            set
            {
                this.SetValue(ModelProperty, value);
            }
        }

        /// <summary>
        /// Gets or sets the zoom rectangle template.
        /// </summary>
        /// <value>The zoom rectangle template.</value>
        public ControlTemplate ZoomRectangleTemplate
        {
            get
            {
                return (ControlTemplate)this.GetValue(ZoomRectangleTemplateProperty);
            }

            set
            {
                this.SetValue(ZoomRectangleTemplateProperty, value);
            }
        }

        /// <summary>
        /// Gets the tracker definitions.
        /// </summary>
        /// <value>The tracker definitions.</value>
        public ObservableCollection<TrackerDefinition> TrackerDefinitions
        {
            get
            {
                return this.trackerDefinitions;
            }
        }

        /// <summary>
        /// Gets the actual model in the view.
        /// </summary>
        /// <value>
        /// The actual model.
        /// </value>
        Model IView.ActualModel
        {
            get
            {
                return this.Model;
            }
        }

        /// <summary>
        /// Gets the actual model.
        /// </summary>
        /// <value>The actual model.</value>
        public PlotModel ActualModel
        {
            get
            {
                return this.currentModel;
            }
        }

        /// <summary>
        /// Gets the actual controller.
        /// </summary>
        /// <value>
        /// The actual <see cref="IController" />.
        /// </value>
        IController IView.ActualController
        {
            get
            {
                return this.ActualController;
            }
        }

        /// <summary>
        /// Gets the coordinates of the client area of the view.
        /// </summary>
        public OxyRect ClientArea
        {
            get
            {
                return new OxyRect(0, 0, this.ActualWidth, this.ActualHeight);
            }
        }

        /// <summary>
        /// Gets the actual PlotView controller.
        /// </summary>
        /// <value>The actual PlotView controller.</value>
        public IPlotController ActualController
        {
            get
            {
                return this.Controller ?? (this.defaultController ?? (this.defaultController = new PlotController()));
            }
        }

        /// <summary>
        /// Hides the tracker.
        /// </summary>
        public void HideTracker()
        {
            if (this.currentTracker != null)
            {
                this.overlays.Children.Remove(this.currentTracker);
                this.currentTracker = null;
            }
        }

        /// <summary>
        /// Hides the zoom rectangle.
        /// </summary>
        public void HideZoomRectangle()
        {
            this.zoomRectangle.Visibility = Visibility.Collapsed;
        }

        /// <summary>
        /// Invalidate the PlotView (not blocking the UI thread)
        /// </summary>
        /// <param name="update">if set to <c>true</c>, the data collections will be updated.</param>
        public void InvalidatePlot(bool update = true)
        {
            this.UpdateModel(update);

            if (Interlocked.CompareExchange(ref this.isPlotInvalidated, 1, 0) == 0)
            {
                // Invalidate the arrange state for the element.
                // After the invalidation, the element will have its layout updated,
                // which will occur asynchronously unless subsequently forced by UpdateLayout.
                this.BeginInvoke(this.InvalidateArrange);
            }
        }

        /// <summary>
        /// Sets the cursor.
        /// </summary>
        /// <param name="cursor">The cursor.</param>
        public void SetCursorType(CursorType cursor)
        {
            var type = CoreCursorType.Arrow;
            switch (cursor)
            {
                case CursorType.Default:
                    type = CoreCursorType.Arrow;
                    break;
                case CursorType.Pan:
                    type = CoreCursorType.Hand;
                    break;
                case CursorType.ZoomHorizontal:
                    type = CoreCursorType.SizeWestEast;
                    break;
                case CursorType.ZoomVertical:
                    type = CoreCursorType.SizeNorthSouth;
                    break;
                case CursorType.ZoomRectangle:
                    type = CoreCursorType.SizeNorthwestSoutheast;
                    break;
            }

            Window.Current.CoreWindow.PointerCursor = new CoreCursor(type, 1);
        }

        /// <summary>
        /// Shows the tracker.
        /// </summary>
        /// <param name="trackerHitResult">The tracker data.</param>
        public void ShowTracker(TrackerHitResult trackerHitResult)
        {
            if (trackerHitResult == null)
            {
                this.HideTracker();
                return;
            }

            var ts = trackerHitResult.Series as ITrackableSeries;
            var trackerTemplate = this.DefaultTrackerTemplate;
            if (ts != null && !string.IsNullOrEmpty(ts.TrackerKey))
            {
                var match = this.TrackerDefinitions.FirstOrDefault(t => t.TrackerKey == ts.TrackerKey);
                if (match != null)
                {
                    trackerTemplate = match.TrackerTemplate;
                }
            }

            if (trackerTemplate == null)
            {
                this.HideTracker();
                return;
            }

            var tracker = new ContentControl { Template = trackerTemplate };

            if (tracker != this.currentTracker)
            {
                this.HideTracker();
                this.overlays.Children.Add(tracker);
                this.currentTracker = tracker;
            }

            if (this.currentTracker != null)
            {
                this.currentTracker.DataContext = trackerHitResult;
            }
        }

        /// <summary>
        /// Shows the zoom rectangle.
        /// </summary>
        /// <param name="r">The rectangle.</param>
        public void ShowZoomRectangle(OxyRect r)
        {
            this.zoomRectangle.Width = r.Width;
            this.zoomRectangle.Height = r.Height;
            Canvas.SetLeft(this.zoomRectangle, r.Left);
            Canvas.SetTop(this.zoomRectangle, r.Top);
            this.zoomRectangle.Template = this.ZoomRectangleTemplate;
            this.zoomRectangle.Visibility = Visibility.Visible;
        }

        /// <summary>
        /// Renders the PlotView to a bitmap.
        /// </summary>
        /// <returns>A bitmap.</returns>
        public WriteableBitmap ToBitmap()
        {
            throw new NotImplementedException();

            // var bmp = new RenderTargetBitmap(
            // (int)this.ActualWidth, (int)this.ActualHeight, 96, 96, PixelFormats.Pbgra32);
            // bmp.Render(this);
            // return bmp;
        }

        /// <summary>
        /// Stores text on the clipboard.
        /// </summary>
        /// <param name="text">The text.</param>
        void IPlotView.SetClipboardText(string text)
        {
            var pkg = new DataPackage();
            pkg.SetText(text);

            // TODO: Clipboard.SetContent(pkg);
        }

        /// <summary>
        /// Invoked whenever application code or internal processes (such as a rebuilding layout pass) call ApplyTemplate. In simplest terms, this means the method is called just before a UI element displays in your app. Override this method to influence the default post-template logic of a class.
        /// </summary>
        protected override void OnApplyTemplate()
        {
            base.OnApplyTemplate();

            this.grid = this.GetTemplateChild(PartGrid) as Grid;
            if (this.grid == null)
            {
                return;
            }

            this.canvas = new Canvas { IsHitTestVisible = false };
            this.grid.Children.Add(this.canvas);
            this.canvas.UpdateLayout();

            this.renderContext = new RenderContext(this.canvas);

            this.overlays = new Canvas();
            this.grid.Children.Add(this.overlays);

            this.zoomRectangle = new ContentControl();
            this.overlays.Children.Add(this.zoomRectangle);
        }

        /// <summary>
        /// Called before the KeyDown event occurs.
        /// </summary>
        /// <param name="e">The data for the event.</param>
        protected override void OnKeyDown(KeyRoutedEventArgs e)
        {
            switch (e.Key)
            {
                case VirtualKey.Control:
                    this.isControlPressed = true;
                    break;
                case VirtualKey.Shift:
                    this.isShiftPressed = true;
                    break;
                case VirtualKey.Menu:
                    this.isAltPressed = true;
                    break;
                case VirtualKey.LeftWindows:
                case VirtualKey.RightWindows:
                    this.isWindowsPressed = true;
                    break;
            }

            var modifiers = OxyModifierKeys.None;
            if (this.isControlPressed)
            {
                modifiers |= OxyModifierKeys.Control;
            }

            if (this.isAltPressed)
            {
                modifiers |= OxyModifierKeys.Control;
            }

            if (this.isShiftPressed)
            {
                modifiers |= OxyModifierKeys.Shift;
            }

            if (this.isWindowsPressed)
            {
                modifiers |= OxyModifierKeys.Windows;
            }

            if (e.Handled)
            {
                return;
            }

            var args = new OxyKeyEventArgs
                           {
                               Key = e.Key.Convert(),
                               ModifierKeys = modifiers,
                           };

            e.Handled = this.ActualController.HandleKeyDown(this, args);
        }

        /// <summary>
        /// Called before the KeyUp event occurs.
        /// </summary>
        /// <param name="e">The data for the event.</param>
        protected override void OnKeyUp(KeyRoutedEventArgs e)
        {
            base.OnKeyUp(e);
            switch (e.Key)
            {
                case VirtualKey.Control:
                    this.isControlPressed = false;
                    break;
                case VirtualKey.Shift:
                    this.isShiftPressed = false;
                    break;
                case VirtualKey.Menu:
                    this.isAltPressed = false;
                    break;
                case VirtualKey.LeftWindows:
                case VirtualKey.RightWindows:
                    this.isWindowsPressed = false;
                    break;
            }
        }

        /// <summary>
        /// Called before the ManipulationStarted event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnManipulationStarted(ManipulationStartedRoutedEventArgs e)
        {
            base.OnManipulationStarted(e);

            if (e.Handled)
            {
                return;
            }

            if (e.PointerDeviceType == PointerDeviceType.Touch)
            {
                this.Focus(FocusState.Pointer);
                e.Handled = this.ActualController.HandleTouchStarted(this, e.ToTouchEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the ManipulationDelta event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnManipulationDelta(ManipulationDeltaRoutedEventArgs e)
        {
            base.OnManipulationDelta(e);

            if (e.Handled)
            {
                return;
            }

            if (e.PointerDeviceType == PointerDeviceType.Touch)
            {
                e.Handled = this.ActualController.HandleTouchDelta(this, e.ToTouchEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the ManipulationCompleted event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnManipulationCompleted(ManipulationCompletedRoutedEventArgs e)
        {
            base.OnManipulationCompleted(e);

            if (e.Handled)
            {
                return;
            }

            if (e.PointerDeviceType == PointerDeviceType.Touch)
            {
                e.Handled = this.ActualController.HandleTouchCompleted(this, e.ToTouchEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the PointerPressed event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerPressed(PointerRoutedEventArgs e)
        {
            base.OnPointerPressed(e);

            if (e.Handled)
            {
                return;
            }

            if (e.Pointer.PointerDeviceType == PointerDeviceType.Mouse)
            {
                this.Focus(FocusState.Pointer);
                this.CapturePointer(e.Pointer);

                e.Handled = this.ActualController.HandleMouseDown(this, e.ToMouseDownEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the PointerMoved event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerMoved(PointerRoutedEventArgs e)
        {
            base.OnPointerMoved(e);

            if (e.Handled)
            {
                return;
            }

            if (e.Pointer.PointerDeviceType == PointerDeviceType.Mouse)
            {
                e.Handled = this.ActualController.HandleMouseMove(this, e.ToMouseEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the PointerReleased event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerReleased(PointerRoutedEventArgs e)
        {
            base.OnPointerReleased(e);

            if (e.Handled)
            {
                return;
            }

            if (e.Pointer.PointerDeviceType == PointerDeviceType.Mouse)
            {
                this.ReleasePointerCapture(e.Pointer);
                e.Handled = this.ActualController.HandleMouseUp(this, e.ToMouseEventArgs(this));
            }
        }

        /// <summary>
        /// Called before the PointerWheelChanged event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerWheelChanged(PointerRoutedEventArgs e)
        {
            base.OnPointerWheelChanged(e);

            if (e.Handled || !this.IsMouseWheelEnabled)
            {
                return;
            }

            e.Handled = this.ActualController.HandleMouseWheel(this, e.ToMouseWheelEventArgs(this));
        }

        /// <summary>
        /// Called before the PointerEntered event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerEntered(PointerRoutedEventArgs e)
        {
            base.OnPointerEntered(e);
            if (e.Handled)
            {
                return;
            }

            e.Handled = this.ActualController.HandleMouseEnter(this, e.ToMouseEventArgs(this));
        }

        /// <summary>
        /// Called before the PointerExited event occurs.
        /// </summary>
        /// <param name="e">Event data for the event.</param>
        protected override void OnPointerExited(PointerRoutedEventArgs e)
        {
            base.OnPointerExited(e);
            if (e.Handled)
            {
                return;
            }

            e.Handled = this.ActualController.HandleMouseLeave(this, e.ToMouseEventArgs(this));
        }

        /// <summary>
        /// Provides the behavior for the Arrange pass of layout. Classes can override this method to define their own Arrange pass behavior.
        /// </summary>
        /// <param name="finalSize">The final area within the parent that this object should use to arrange itself and its children.</param>
        /// <returns>The actual size that is used after the element is arranged in layout.</returns>
        protected override Size ArrangeOverride(Size finalSize)
        {
            if (this.ActualWidth > 0 && this.ActualHeight > 0)
            {
                if (Interlocked.CompareExchange(ref this.isPlotInvalidated, 0, 1) == 1)
                {
                    this.UpdateVisuals();
                }
            }

            return base.ArrangeOverride(finalSize);
        }

        /// <summary>
        /// Called when the <see cref="Model" /> property is changed.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="Windows.UI.Xaml.DependencyPropertyChangedEventArgs" /> instance containing the event data.</param>
        private static void ModelChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
        {
            ((PlotView)sender).OnModelChanged();
        }

        /// <summary>
        /// Called when the control is loaded.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="Windows.UI.Xaml.RoutedEventArgs" /> instance containing the event data.</param>
        private void OnLoaded(object sender, RoutedEventArgs e)
        {
            // Make sure InvalidateArrange is called when the PlotView is invalidated
            Interlocked.Exchange(ref this.isPlotInvalidated, 0);
            this.InvalidatePlot();
        }

        /// <summary>
        /// Called when the model is changed.
        /// </summary>
        private void OnModelChanged()
        {
            lock (this.modelLock)
            {
                if (this.currentModel != null)
                {
                    ((IPlotModel)this.currentModel).AttachPlotView(null);
                    this.currentModel = null;
                }

                if (this.Model != null)
                {
                    if (this.Model.PlotView != null)
                    {
                        throw new InvalidOperationException(
                            "This PlotModel is already in use by some other PlotView control.");
                    }

                    ((IPlotModel)this.Model).AttachPlotView(this);
                    this.currentModel = this.Model;
                }
            }

            this.InvalidatePlot();
        }

        /// <summary>
        /// Called when the size of the control is changed.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="Windows.UI.Xaml.SizeChangedEventArgs" /> instance containing the event data.</param>
        private void OnSizeChanged(object sender, SizeChangedEventArgs e)
        {
            this.InvalidatePlot(false);
        }

        /// <summary>
        /// Updates the model.
        /// </summary>
        /// <param name="update">if set to <c>true</c>, the data collections will be updated.</param>
        private void UpdateModel(bool update)
        {
            if (this.ActualModel != null)
            {
                ((IPlotModel)this.ActualModel).Update(update);
            }
        }

        /// <summary>
        /// Updates the visuals.
        /// </summary>
        private void UpdateVisuals()
        {
            if (this.canvas == null || this.renderContext == null)
            {
                return;
            }

            // Clear the canvas
            this.canvas.Children.Clear();

            if (this.ActualModel != null && !this.ActualModel.Background.IsUndefined())
            {
                this.canvas.Background = this.ActualModel.Background.ToBrush();
            }
            else
            {
                this.canvas.Background = null;
            }

            if (this.ActualModel != null)
            {
                ((IPlotModel)this.ActualModel).Render(this.renderContext, this.canvas.ActualWidth, this.canvas.ActualHeight);
            }
        }

        /// <summary>
        /// Invokes the specified action on the UI Thread (without blocking the calling thread).
        /// </summary>
        /// <param name="action">The action.</param>
        private void BeginInvoke(Action action)
        {
            if (!this.Dispatcher.HasThreadAccess)
            {
                // TODO: Fix warning?
                // Because this call is not awaited, execution of the current method continues before the call is completed.
                // Consider applying the 'await' operator to the result of the call.
#pragma warning disable 4014
                this.Dispatcher.RunAsync(CoreDispatcherPriority.Low, () => action());
#pragma warning restore 4014
            }
            else
            {
                action();
            }
        }
    }
}


Fantastic beachfront condo on Park Shore Beach! Beautifully decorated 3 bedroom, 3 bathroom condo. Enjoy views of the bay and the Gulf of Mexico. The guest bedroom also have views of the Gulf. The views continue to the master bedroom which has a king sized bed. Gulfside features 24 hour security, library, fitness room, community room, heated pool and 2 gas grills. Venetian Village is just a short walk away and has fabulous restaurants and shopping along the bay.
For additional information contact Torey Wendling at torey.wendling@premiersir.com.


With the 100 Happy Days having been conquered, I was really excited and insisted at least thrice (in two minutes!) about reading my blog.
And I just kept looking around because this was turning awkward! Not 'cuz I was hiding a relationship from her (Gosh! There has to be one to hide one!), but 'cuz she starts reading my stuff after so long and stumbles across this? Of all posts, why this? Now, she would be more curious about my relationship with a guy rather than my relationship with words!
And I went all out with an "Absolutely not!".
Life Note To Self : Mothers know best. If they refrain from reading your work, let them! They are just saving you the embarrassment.
P.S. : My mother's a working woman with an almost liberal mind by Indian standards. But I guess, not liberal enough to save me the blushes!


English Premier League is the most competitive league in Europe as well as in the whole world. All the matches are unpredictable here. There are several derby matches are scheduled in every season in the Premier League fixture. Beside the derby matches, there are many high profile matches are scheduled.
In Premier League, Manchester United will play against Liverpool; Tottenham will play against Arsenal; Chelsea will play against Arsenal; Manchester United will play against Manchester City; Arsenal will play against Manchester City; Liverpool will play against Manchester city. These are the remaining big matches of this season.
Chelsea's match against Tottenham will be very exciting because it is a derby match. Chelsea is now the League leader and Tottenham is now in fifth position. Chelsea will fight to keep their first position. On the other hand, Tottenham will fight to get in top four so that they can play in UEFA Champions League in next season. In White Hart Lane, Chelsea vs Tottenham match was drawn by 1-1. This time the match is in Stamford Bridge where Chelsea is unbeaten under Jose Mourinho.
The Grand National is the most important and the priceless National Hunt Horse Race in the whole world. It is not only the most popular and well known to a lot of people who usually do not see or bet on the horse races but it is also one of the most controversial horse race which causes maximum injuries to the horses taking part in these races. It is similarly unsafe for the jockey who can also loose their life because of rigorous injuries they get during races.
The Grand National restricts the participation of the horses that are lesser than six years of age. This restriction is as it is a Grade 3 handicap chase (horses are made to run with loads carried on their backs). The race is for a distance of 7,242 m at Aintree Racecourse, Liverpool and is held in the month of April on Saturdays.
The very first Grand National was held in the year 1839 at Aintree and the horse which won the race was Lottery, as the name itself implies. Manifesto, the horse that ran the most as compared to other horses, also took part in eight renewals races, the event that was held in 1895-1904. The Grand National has formed a history after Lottery won this Racing event held back in 1839, at Aintree which was the initial race ever held. The Grand National has become one of the main sporting events of the UK with Grand National odds being widely available.
Aintree Racetrack is the worlds most famous, most popular and quite renowned and often spoken about, the John Smith's Grand National. It is run over two trails covering 16 fences. They need to jump every fence excluding the two, that are The Chair and The Water jump. Aintree Grand National is one of the most scheduled days for gambling and risking on the horses taking part in the Grand National. The atmosphere and the enthusiasm of the people coming from the entire world is just unparalleled. For some it might be the first bet of their lives. Aintree racetrack is one of the toughest tracks with 16 steeplechase fences comprising The Chair, Canal Turn, Becher's Book. The name itself creates shivers to the professional jockeys of the world. The Aintree Racecourse includesa Mildmay course which is comparatively smaller and contains hurdles and fences. There is one common fence called The Water Jump, which is a common fence in between the two courses, The National course and The Mildmay Course.
The first legal race is still a mystery that remains unsolved. People usually believe that the first race was held in 1836 and the Duke succeeded this race. Then during the First World War, Aintree racecourse remained closed for quite sometime and due to this Gatwick Racecourse was chosen to compete for the races. The race at the Aintree racecourse is the most thrilling incident for both, the millions of audience who come to watch the race and the experts that are the jockeys. You come to know wonderful stories of the horses and their jockeys' who with all the brave attempts try to compete the races by jumping over every Aintree hedges. Foinavon, in 1967, was the only horse amongst other horses that could sensibly cross over the smallest hedge during the astonishing race.
Abd-El-Kader, was the very first duel winner for two successive years in 1850 and 1851, who won the race. In the year 1869, The Lamp grabbed the title of the winner and further managed to win after 3 years again. The father-son duo presented remarkably well, in 1999, and won the Grand National. Paul Carberry, the jockeyand Tommy Carberry who was a trainer helped Bobbyjo to victory. Before winning the National, it is compulsory for almost sixteen horses to pass the Grade1. The Grand National Horse Race is one of the most difficult races where several expert horse riders have failed to succeed the title. The Grand National Horse Race is the most awaited event where millions of people from all over the world wait in anticipation for the race where all well skilled horses with their professional jockeys take pride to take part in.
There's a start of the year sale on UKSoccerShop, in which they offer up to 50% off some merchandise, including 12-13 jerseys for some major teams such as AC Milan, Inter Milan, Liverpool or Manchester United.
As soccer appeals to people of all ages the list of soccer memorabilia and merchandise is endless and grows daily. Some of the hot-selling soccer merchandise includes – Soccer Part Packs, Soccer Plates, Soccer Sling Bags, Soccer Necklaces, Soccer Magnets, Soccer Player Posters, Soccer Blankets, Soccer Napkins, Soccer Tablecloths, Soccer Flags, Soccer Whistles, Soccer Memo Pads, Soccer Metallic Bounce Balls, Soccer Stickers, Soccer Key Chains, Soccer Dog Tags, Soccer Visors, Soccer Caps, Soccer Mouse Pads, Soccer Stress Balls, Soccer Earrings, Soccer Paperweights and the biggest of World Cup 2010 Soccer Vuvuzelas.
Soccer fans are more vocal than those of any other game because so much happens so fast in such short moments of time. The game is constantly changing and fans love to comment and get loud while watching the game. This is probably the reason why the Vuvuzela was such a hit of World Cup 2010. Soccer is called the beautiful game and is undoubtedly the most widespread and popular sport across the world. Soccer fans are known to be almost fanatical and extreme buyers of soccer merchandise. The game and everything attached to it has a very strong pull for these fans.
The biggest soccer merchandise item is undoubtedly the jerseys. Every club has unique jersey designs and every world cup has the jersey designs for the countries changing, though the basic colors and elements stay the same. Fans always want the latest versions unless an older design has nostalgic value in the form of their country of favorite club having been winners at the time.
Soccer Merchandise is available at both official and unofficial sellers. For example if you want the exact same Vuvuzela that was used by the crowds in the World Cup you will of course have to source it from the official Vuvuzela company's website. Other merchandise too is either sold from the official FIFA authorized outlets. The difference between the official merchandise sellers and the general sellers is most often the logos and the official emblems. True soccer lovers really only care about the game and most of the time it doesn't matter to them if the FIFA logo or other official logos are present on the items they purchase. They just want soccer.
No other sport probably has so many themed items available as merchandise as soccer. It is proof that soccer is the most popular sport in the world. No matter what the colors are on the latest official soccer ball, the black and white soccer ball is forever the most recognizable symbol of soccer.
The best thing about soccer merchandise is that it is in demand at all times and all-round the year. The demand for soccer merchandise peaks phenomenally around the world cup and other major soccer events but show a soccer fan some soccer merchandise and see how tough it is for them to resist buying at least one item.
Even those who are not hard-core soccer fans find cannot resist the charms of the black and white ball. Any soccer merchandise item is sporty, young, energetic and youthful and makes a good gift almost at every occasion.
We all know that globally, soccer is the most favorite athletic activity. This is one of the sport events where people from a foreign nation cheer for another country to win. Soccer is so popular that it has become a trend in most countries to teach it to children who are in their early years of schooling. Another game that shares its popularity with soccer, though vastly different, is poker. Poker is even coined as the universal card game. These two have more things in common than you can possibly imagine.
First, there are worldwide competitions that cater to both. Soccer has a World Cup which happens every four years, and poker has the World Series of Poker where different nationalities compete to win a coveted championship title. These events have always been closely monitored by fans all over the world. Both forayed into virtual gaming; for soccer, video games like Football Manager, FIFA World Cup South Africa, Nintendo World Cup, Kick Off, Sega Soccer Slam, Sensible World of Soccer and World Soccer Winning Eleven 8 International went live for audiences who want to take soccer into their living room. For poker, there's always partycasino.com for your online gaming needs. One of the advantages of playing poker at partycasino.com is you're not limited to traditional Texas Hold'em since there are nine video poker games for you to choose from. You can have your choice of Flamingo Poker, Jacks or Better, Joker Poker Deuces Wild, Jungle Rumble Draw Poker, Kooka Keno Poker, Mega Deuces Wild Poker, Mega Joker Poker, Multi Hand Jacks or Better and Tens or Better. You'll never get bored with this variety of poker games; you may even try a different one for each day of the week.
Both soccer and poker involve strategy. In soccer and poker, you have to study your opponent and scrutinize every move they make so that you can act accordingly. Soccer players go from one position to another quickly on the field so that their opponent cannot predict what they're up to, just like in poker where you have to maintain a nonchalant attitude so other players won't know if you have a good or bad hand.
Victory depends on your tactics for both of these competitions. Soccer and poker players both must have great endurance. According to the sports website Balldigg.com, "Soccer players must have very good endurance in order to run short stretches at short intervals for 90 minutes or more in a game. Poker players on the other hand complain about the hardship of sitting at a poker table for 12 to 14 hours every day for a week during big poker tournaments, while at any time a tiny mistake can mean the end." Soccer players and poker players, therefore, share the same disciplined way of living.
We're all fans of both soccer and poker, and the good thing about admiring these two competitive games is we won't have to sacrifice one for the other. There's no one stopping us from playing both, so let's enjoy the two of them for as long as we can.
Kitbag's back with a bang in 2013 as they now offer up to 70% off their on-sale items! Not a bad offer at all!
What It Does: Free standard UK delivery for new customers only (not to be used in conjunction with any other promotion).
A bit sale just started on JD Sports in which prices go up to 50% down. It lasts while stocks last, so who knows?!
Kitbag's end-of-year sale is now in full force. They are offering up to 50% off thousands of items, amongst them the most important being the England home football shirt. Happy shopping!


Labs this summer & fall will focus on storytelling, game design, physical computing and design thinking.
dtown sparks is a POP-UP LEARNING LAB focused on harnessing the power of storytelling to educate, inspire, and empower students to become global changemakers and leaders. Our programs mix story, play, design, and coding to teach 21st century skills (communication, collaboration, critical thinking and creativity) in a fresh and exciting way. Our Lab harness student's creative efforts and channel them into real-world solutions for local community needs.
dtown sparks is a think and do local/global program that is rooted in a pedagogy developed by the LEARN DO SHARE initiative @ Columbia University. Founded by Lance Weiler who serves as the Director of Experiential Learning & Applied Creativity at Columbia University, dtown sparks is an innovative new program that is being prototyped in Doylestown. Our goal is to launch year-round after school, weekend and summer programing starting in 2017.
This summer and fall Weiler and the Connected Sparks team will be hosting a series of POP-UP LEARNING LABS throughout Doylestown. Some labs are free and others have a fee, however space is limited and available on a first come first serve basis.
dtown sparks is a grass-roots effort designed to provide summer, after-school and weekend programming for students K-12. If you are interested in becoming a sponsor, contact us below.
Are you interested in helping dtown sparks grow? Do you have computer skills? Are you an educator? Do you enjoy making and tinkering with things? Are you retried and looking to share your wisdom? If so we could use your help!
Special 6 week storytelling and game design workshop is coming to Doylestown. A limited number of students will have the unique opportunity to learn from industry experts as they step into a project based learning experience. Over the course of 6 weeks students grades 9th through 12th will learn how to design, build and run an "escape the room" game. A relatively new format, "escape the room" games combine physical space, puzzles and team play.
Space is limited. To read more about this unique opportunity see below.
A little robot scientist with a big heart named Lyka is coming to Doylestown this summer. She's traveled over 35,000 miles and has visited thousands of students around the world.
On Thursday, June 30th you'll have an opportunity to meet Lyka and help her to learn about the world, while problem solving and thinking critically about the things she needs to understand. You'll also teach her about empathy and communication. Each lab is limited to 15 participants which is available on a first come first serve bias. After we hit capacity we'll start a wait list.
dtown sparks events, labs, workshops and programs are staffed by a wonderful group of storytellers, makers, educators, programmers & engineers.
Lance Weiler is an award winning storyteller, an alumni of the Sundance Screenwriter's Lab and is the Director of Experiential Learning & Applied Creativity at Columbia University. He's been a Bucks County residence for most of his life.
Susie Kavanaugh is currently completing her masters in Cognitive Studies in Learning at Columbia University. Susie reviews and collaborates with the team on product design and media to ensure the experience is promoting collaboration, innovation, design, and imagination.
Barrie Adleberg is an imaginative play designer, master people connector, and expert kid experience translator. With an expertise in creative educational tech, Barrie loves bringing inspired products and programs to life through collaborative ideation.
Special thanks to our partners who help make dtown sparks possible. If you'd like to partner with us please drop us a line.


> Could you please provide more info on this?
> properly without exhibiting any of the problems you reported.
running sudo with the -H option.
there was no answer from the sudo maintainer.
I doubt think this bug can/should be fixed in the vim package.


text:
The Market Days of Bali
I was brought up on a farm, spending my spring days assisting in the calving and lambing that consumed the lives of the farmers. From the rich soils would come our vegetables – turnips, cabbages, potatoes and carrots – so I feel very much at home in the atmosphere of markets, especially those in Bali where every day is market day, and nearly every night too
To me the markets are like a second home, as well as where I feel the deepest roots of Balinese culture. Day in and day out there is always something new.
The traditional market of Bali begins early in the morning, with producers arriving to set up their goods to meet the demand from the resellers, who truck their purchases further afield into regional markets, where warung owners arrive to negotiate their daily supplies.
The trade continues through the day, although the markets are at their busiest between eight and nine. The housewives arrive in the afternoon to buy produce for the next day's meal.
The three best markets to see in Bali are the livestock market of Mengwi, which is right out in the countryside and offers that real Bali everyone likes to think is lost; the Jimbaran's Pasar Ikan, the wet fish market; and the grand bazaar, literally the Denpasar of Pasar Badung in the centre of Bali's overlooked capital city.
Make sure to travel light, carry a camera and be prepared for a long day.
While it is not everyone's cup of tea, the livestock market, Pasar Beringkit, for me is brilliant, with the pens, the confusion, the hustle and bustle and the rumble of the big trucks entering and exiting the mud-caked parking area.
The steam literally rises from the ground as the animals are carted, carried, dragged, pushed and pulled into their "areas". The market takes place four days a week. The Tuesday and Saturday markets sell mature stock ready for slaughter, while on Wednesday and Sunday the animals are sold for rearing.
The livestock here is all Balinese. Better bred, healthier meat means higher prices and an average adult beast can fetch between 15 to 18 million Rupiah, while a rearing calf can fetch as much as seven million.
Unlike many other livestock markets there is no auction, just negotiated sales. But while the market lacks the cacophony of the auctioneer there is still much to see and do. Men tussle with the cattle and the laneways are cluttered with pens full of fidgeting foul.
Crates, pens and perches full of chickens and ducks are up for sale along every corridor, manned by women who will barter over sales, gossip amongst themselves and whip out their phones at the slightest excuse to include yet more tongues in the conversation.
Cows in Pasar Beringkit
Crate of ducks
A Balinese food stall
Balinese offerings stall
Out to the edges other creatures are traded with longer lives in mind. Dangling bird cages contain tiny budgerigars, love birds, parrots and little finches while rabbits munch their way through piles of kangkong while waiting to be taken up as family pets, rather than popped in the pot.
It's a lively market if you can get there at dawn. By midday the bustle has dwindled and the few people left are selling daily goods and foodstuff to the locals with only the muddied footprints and soiled ground to indicate the morning's activity.
Buying and bargaining livestock
Regular watchers of my YouTube channel will know how much I love to visit markets. I love the level of excitement in the deals and trading and the jokes that pass between the seller and the buyer as they bargain hard and in this episode we are at the Beringkit Livestock Market, the biggest cattle market in Bali. It's my first time and I am here to buy livestock.
It's really exciting for me as we are selecting the animals for Canggu Cooking Retreat, our home farm, to really bring home our ideals of homegrown sustainable production.
I brought our vet with me, she knows a lot more about animals than I do and oh, the fun we had. Like a cat amongst pigeons, this was a woman in a traditionally man's world and as you will see not only did she cause a stir she also drove a very hard bargain. Share this new experience with me, take note of the tips and who knows you could be taking your very own goat, duck or cow home soon too!
Sunset: Jimbaran Fish Market
Markets have their own time frames. What is early morning to you is the end of a hard night's work for the fishermen of Jimbaran's Pasar Ikan.
Setting out at sunset, the life of the fishermen is a hard one. Some boats come in from as far as Papua, Ambon and the islands of Western Sumatra. Most of what you find in the market is fished from Java, frozen onboard, and ferried in by the satellite fleets that radiate across the seas at night.
Fishermen from Jimbaran Bay
You can find a great variety of fish, including the sword faced shiny black Marlin, yellow fin Tuna, Mahi Mahi, Sea Bass from the deep, and all kinds of reef fish like parrot fish and grouper.
The business of buying has developed into a highly professional operation with standardised weighing machines and pricing scales.
While the operation has modernised the service is the same; the first purchase of the day is greeted with glee, and the money handed over is slapped across the remaining fish to bring them luck. As a customer, you have to know your fish as your bargain barramundi could well be a sea bass in disguise.
Balinese woman behind her fish stall
Catch o'the day!
By Dusk: Denpasar Badung Market
The most compelling market though is Pasar Badung, Denpasar's grand market. Although housed in a sprawling storied building, it still spills out into the forecourt and arterial laneways. Luckily this market has bursts of activity that extend its operations throughout the day and into the night. So if an early morning visit is beyond you, you can arrive by dusk and still enjoy the bustling atmosphere of trade that takes place outside after the major market has closed.
Badung Market, recently rebuilt after a fire

redpajama_set_name: RedPajamaCommonCrawl


Voluntary on "Bachofen" (2016) was commissioned via the 2016 American Guild of Organists Auction for St. John's Lutheran Church in Sayville, New York. The piece is dedicated in thanksgiving for the life and ministry of the Rev. Robert C. Wittler (1926–2016), former pastor of the church and a great champion of the church's organ project. The work was commissioned for premiere at the dedication of the church's new organ.


During the long history of the IUE Project, a list of all refereed scientific publications was kept. They are given, alphabetically by first author, for the years from 1978 through the end of May 1997. The journals surveyed for this compilation are listed below, with the abbreviations used in the references.
Warning! There are over 3000 references listed!
Currently this is a simple text file. You can use the "Find" function of your web browser to search for specific names or other keywords.


I'm hearing it all over the place. In the casual conversations between moms outside the school, in the grocery lines, as I chat with friends online.
There is a collective exhaustion that hits us right about this time — and for good reason.
Winter is a time of inhalation.
As we descend into the darkest days of our year, our internal selves also need to retreat.
Just like our breath, every exhale must have a counterbalancing inhale. The rhythms of our yearly seasons, monthly cycles, and daily circadian clocks all speak of this inherent wisdom for a full and well life.
But our society elevates the exhalation.
We march to the beat of a drum that has no natural crescendo and decline — it is ever pushing, ever amplified, ever manic.
Until most of us find ourselves energetically gasping for breath.
During winter, we are being called inward to reflect and ponder. To consider what is growing within us and what is ready to be let go. To percolate ideas and plant dreams. To deeply replenish and restore ourselves from the previous seasons.
So, I find it makes perfect sense when women I talk to feel overly edgy, utterly uninspired, and emotionally paper-thin as we head into the deep of the winter season. It makes perfect sense because we aren't honoring and responding to our sacred core's needs. We are masking, deflecting and pushing through the signs that we need to shift gears and slow down externally and internally, for a spell.
I'm asking you to look at your emotional and mental well-being during the winter from the perspective of the wisdom of the seasons.
What could you bring into your life that would make space for more of a retreat, renewal and deep rest that your body, mind, and heart are craving? What could you remove from your life in order to better align with your deeper needs right now?
Think others you know may enjoy this article? Please share!
Thank you for this, Lisa! I have been so wanting a *retreat* from everything lately. I wanted to take December off (!! as if, right?) because I was feeling so tired and drained. You are right – we need to honour those seasonal rhythms and so I will not feel guilty about my need to retreat and regroup right now! Thanks for the encouragement.
I loved this post Lisa, it came at just the moment when I was asking myself "What is wrong with me, why have I become so lazy and unproductive all of a sudden?". Beautifully written, thank you so much for what you do!
Shantana! I just hopped over to read your (wonderful!) article- and saw that you talked about the Sabbath too!! (Synchronicity- I had just mentioned it in a comment above 🙂 ) Thanks for sharing your post- it's beautiful and so true!
THANK YOU for the PERFECTLY TIMED reminder.
Thank you for sharing this, Lisa. This is exactly how I feel and it is reassuring to know I'm not the only one. I'm striving to do more career wise and family wise, but more so because I feel like I "should" when really I want to be able to have a slower pace to be able to enjoy the moments with my daughter, husband, friends and family. I can't find the joy and passion in each day and realize that I need to recharge and listen to my inner voice. Now, how to to act on that? Your two questions are helping.
I just saw this in my inbox and it is totally me right now! Lazy, uninspired and tired!! We are wrapping up homeschool this week and next and not starting back until January. All the Christmas presents are bought and mostly wrapped. I'll be taking a couple weeks off blogging – except for writing future posts for enjoyment. Looking forward to rest and recharging with the family for the next few weeks!
I read this post this morning and have been thinking today about what I should bring into my life to find renewal. For me, one thing that will help tremendously (and just has because I did it) is a simple ritual of sipping chamomile tea and taking a few minutes to write each night. And for this to be renewing, I have to remove some of the distractions that would keep me up late and be more intentional about how I spend my time after kids are in bed. Thanks so much for the post!


text:
The Monthly Review
geredigeerd door Ralph Griffiths, George Edward Griffiths
only part of the head shaven before the visit to Omra, and the rest completed immediately afterwards. The walk round the Kaaba may be repeated as often as the pilgrim thinks fit; and the more frequently the more meritorious. Most foreigners do it twice daily,—in the evening and before daybreak.
• When all the necessary rites have been gone through at Mecca, the whole concourse of visiters repair in a body to Mount Arafat, which is the grand day of the pilgrimage.'—Vol. 2, 241 to 343.'
We must now conclude, recommending this able and elaborate work to our readers, as the only one in the English language to which they can refer with the expectation of obtaining satisfactory information on the history and national character of the Arabs.
ART. VI.—Excursions in New South Wales, Western Australia,
and Van Dieman's Land, during the Years 1830, 1831, 1832, and 1833. By Lieut. BRETON, R. N. 1 vol. large 8vo. Lon
don: R. Bentley. 1833. The object which Lieutenant Breton professes to have in view in sending forth the present work to the world, will be admitted to be truly useful as it is honourable to himself, namely, to open the eyes of those emigrants who may be induced, by exaggerated statements, to proceed to Australia in order to fix their final residence in that country. He says, that already too many persons, led by what they perused in books, have quitted their native country, under the delusion that the region to which they were proceeding, comprised, within its precincts, all the delights of a paradise. Unfortunately, the authors of such fascinating descriptions are mostly respectable persons whose characters cannot possibly allow them to be suspected of mis-statement; but, somehow or other, the chief portion of them have an interest either temporary or permanent in one or more of these colonies. The author's testimony, however, cannot be impugned for any such reason; and, judging of him by the evidence which the whole work affords us, we should conclude that his report and his conclusions are very fairly entitled to confidence.
The worthy lieutenant commences by administering a caution to all candidates for the voyage to the settlements in Australasia, that they should never rely on the announcement of the day for sailing. This admonition is addressed particularly to those who are to embark at a distance from their homes, for the author is acquainted with the case of a family who proceeded from Aberdeen to London, to be in time for a ship which the agent had declared would sail on a particular day, They were indeed in time; for, after having perfected their arrangements and paid the passage-money, they had to live for three good months in the cheap district of the metropolis.
per ton.
to notice, were made in the latter part of the year 1829, since
The fare he states to be on the average Cabiny from 801. to 901.; Stern Cabin, 401. to 50l. extra; Steerage, 201. to 301. The freight for baggage, &c. taken in the hold, is froin 21. 158. to 81.
*!!.." VT183 The average passage to Sydney and Hobart Town is about four months, and to Swan River three weeks less.
He recommends all emigrants to bring out seeds and plants, and birds, provided they have a taste for such euriosities. Those who have no certain place to begin cultivating after their arrival in the colony, may present their plants or cuttings to the Botanical Garden in the colony, and they will obtain them again without any risk of the failure of such articles in their own soil. 1 After these preliminary counsels, Lieutenant Breton proceeds to give an account of his voyage, which he says, lasted only sixteen weeks, during which no incidents or events of any kind worth relating occurred; and the ship arrived safely at Swan River. It is proper to state, that the remarks of the author which we are about
which, considerable improvements have been made in these coloa nies. Freemantle, for instance, he describes as a town destitute of good water, and even what it did afford, he considers as very in different. But it is matter of certainty that this town is now amur ply supplied with excellent water. It took the lieutenant three weeks to effect his journey from Freemantle near Swan River, it to Sidney, and his experience in the latter place, induces him to hint to the emigrant to take lodgings as soon as possible, for that if he remains at a hotel, he will find his cash disappearing with a celerity which it will much puzzle him to attempt to estimate." Particular care is essential also to the emigrant, as to the connections which he may form, and the acquaintance he may make, and he should listen with great distrust to the reports which he ! hears of the various districts of the settlement. No emigrant should settle, he says, before he spends at least a couple of months in a thorough examination, of the various accessible parts of the colony. Furniture should always be purchased in London, or be carried with the emigrant from his native place. With respect to i travelling in the colony, the only convenient, in the lieutenant's opinion, " in the bush,"* at least, is on horseback. In this man. ner, therefore, the emigrant will proceed into the interior, putting up at the different inns so long as he journeys on the high road, and when he quits it, at the houses of the settlers,t who will al
*" Bush" is the term commonly used for, country per se:
" he resides in the Bush," implies that the person does not reside in or very near, a town. It also signifies a forest; and is an expression well understood, and much employed in the colonies.
+ By "Settlers," is meant the farmers only: and by" colonists," the whole of the free inhabitants.
ways give him a cordial reception. If there is no hábitation at hand, a bark hut may be constructed in a few minutes. In some parts of the colony it will be necessary to have a pack-horse to carry provisions, and, in that case, a tent may easily be taken--a tent-pole can always be procured at the spot where the traveller bivouacks. The most convenient dress is a shooting suit, and the following articles should be carried when a person sets out on one of these excursions: La gun, some matches, a compass, tomahawk, blanket, and tether-rope for his horse, with some bacon and flour, and any other necessaries that may be deemed requisite; some tea, in a cannister, must not be omitted; it is almost meat and drink to a person when on one of these expeditions, as the author says he knows from experience, and far preferable to spirits. He also recommends the traveller to take a brace of good kangaroo dogs, as they will frequently prove of great use--indeed he will often be indebted to them for a dinner. It is indispensable that the valise, or saddle-bags, be made so as not to gall the horse, and that the saddle be always well dried, beaten, and brushed; without these precautions the animal will, in hot weather, be quite certain of having a sore back. Two or three persons setting off thus farnished, and having with them a servant, or a couple of natives, might enjoy themselves greatly, if at all partial to travelling. Many objects would excite their interest in a country totally different from any other they may have previously visited.
The lieutenant next directs the emigrant's attention to those districts of the interior, where good land may be found vacant. The details must prove valuable to emigrants, but for general readers they would be tedious. Besides, a map would be essential, in order to enable the reader to comprehend the relations of the different localities which are pointed out. We cannot however part with this portion of the work, without expressing our sense of the great importance which the geographical details contained in it must prove to emigrants, who are necessarily ignorant of the nature of the soil, and of the manner in which the most convenient portions of it may be obtained by new comers. Families who proceed to such distant settlements, in order to have that natural enjoyment of the full fruits of their industry, which unfortunately is denied them at home, are objects of sympathy with all who have it in their power to afford them assistance, and we do not hesitate to award to the author of this volume the credit of participating in that sympathy with disinterestedness, which bears the tokens of its virtuous source in the zeal, the labour and research that characterize the work before us. In passing over therefore this portion of the work, we feel that we are dismissing one of the most important features of the work; but our excuse is, that the circumstances which call upon us to do so are imperative. Before we enter into the account which the author gives us of the natives, the productions, manners, customs, &c. of the chief
VOL. III. (1833) NO. III.
scene itself,vwe shall accompany lieutenant Breton to New Zealand, which has now become an object of no inconsiderable interest to our government. With respect to the general appearance of this place, it did not present any traces of forests of consequence near the bay, but much of the land is, the lieutenant observes, concealed by brushwood or fern, while the gullies, or ravines, are filled with a variety of trees that form an almost impenetrable wilderness. Nor is there an
s there any level land on its shores not even a few acres, except in one or two places, where a small patch of yery, trifling extent may bed discerned. The soil is extremely rich, both close to the water and upon eminences of considerable height, and apparently adapted for all the purposes of husbandry, but he found no grass.7 lwol hliw long yang gods 25
The natives, he describes, as oa fine race of people, being well formed, athletic, and active. One of them was afterwards brought over in the vessel in which the Lieutenant returned home, and on the voyage gave a proof of his muscular powers by lifting one of the crew by the heels, and knocking his head against the anchori The New Zealanders are tattooed to a greater or less extent, the chiefs being amongst those who have the largest number of the discolourations. In the latter, the countenance seems to be marked in every pore. In most of the natives, however, the face and the rear had alone been tatooed; indeed, the latter was frequently far more elaborately ornamented than the former, and the effect was so ludicrous as to excite mirth, in which the people themselves joined, though well aware o of the cause of it. Some of them had long hair, while in others it was short and curly: they took little trouble in dressing it. je Istiv Erst aldieceg es griol as biova o y Lieutenant Breton, however, is not altogether so gallant as to delude his imagination into the idea that ugliness is beauty • he declares wholly against the pretensions of the New Zealand ladies to the latter qualification, and he adds, that the only good-looking female whom he saw in the country, was the daughter of an Englishman, and a native woman. The New Zealanders, however, do not appear to be the brave and heroic men which the early navigators so often stated them to be; and with respect to their domestic economy, it has been represented, that they are prone to the unnatural regimen of cannibals. The mention of this latter race of monsters draws forth some observations from the author, on the nature and history of that diabolical practice, which are peculiarly worthy of attention, as they place the question in rather a consoling point of view for those who can sigh for the humiliation of human nature. We need give no recommendation of these remarks to the reader.
lots! All voyagers unite in believing those people to be anthropophagi, but they have not been proved to be so from any absolute predilection for human flesh. It is supposed they believe, (and as many of their theological opinions are well known, the conjecture probably is a correct one,) that if
the body of an enemy be devoured, his soul will pass into everlasting fire, there to be tormented to the end of time; but if interred with all due formality, it will be received into a habitation more congenial to it. Even granting this not to be the fact, those persons who have been most among them, and who had opportunities of studying their character, assert most positively, that in eating an enemy whom they have slain, they are persuaded they will become possessed of the valour and abilities of the defunct.
Cook observes, that for the prevalence of this horrible custom, the want of animal food was one; but how far this is deducible
le from facts or circumstances, left for those to find out who advanced it. In every part of New Zealand where he had been, fish was in such plenty that the natives caught as much as served themselves and his crew. They had also plenty of dogs; nor was there any want of wild fowl, which they know very well how to kill : so that neither this nor the want of food of any kind can be the reason. 3d If such was Cook's opinion sixty years since, it is not likely that at the present time, when in addition to fish and fern root, the natives have abundance of potatoes, maize, and pork, they would eat human flesh from preference. "Human flesh, remarks one of our best historians, was never used as common food in any country, and the various relations concerning people who
ho reckoned it among the stated means of subsistence, flow from the credulity and and mistakes of travellers." di mi
ao stuoloo The most strange instance of cannibalism known to exist, is that practised by the Battas, a nation of Sumatra ; their anthropophagism however is judicial, for they do ni
not eat their enemies, only those condemned to death for some crime. In one respect the New Zealanders must be more humane than those miscreants, as they never wantonly inflict pain, putting the victim to death at once, instead of employing the revolting mode, common with the Battas, of cutting up a human being in such a manner as to avoid, as long as possible, injuring a vital part. quia9tb ni eldoott o** For my own part, I must still maintain that there is no proof of any nation being naturally cannibals; although, from constantly indulging in a vindictive feeling towards their foes, they may not only have overcome the repugnance usually felt by mankind to eat human flesh, but even to have contracted a liking for it. Pp. 169, 170, 171, 172. dow sis met
The only novel facts which Lieutenant Breton states under the head of manners and customs of the New Zealanders, are connected with their mode of burial. He informs us, that the body being put into a box, or coffin, is then secured on a stand, or on the lower branch of a tree, where it remains until quite decayed; after which the bones are buried with much ceremony. But on particular occasions a hut is erected, in which the body is placed in a sitting posture, with the most valuable property of the deceased; the ground is then tabooed, so that no native dare approach it, nor can any foreigner do so with impunity. The captain of a vessel informed me that he once looked into a hut of this description, not being aware at the time tabooed spot
t was held so sacred. There were in it three skeletons, and, judging from the property left with them, he supposed them to be the remains of persons of some consequence. His curiosity cost him a disturbance with the


text:
* Updates stylesheets path to just styles for upcoming Atom 1.0 release

## 0.3.0
* Switching to new modern Atom theme conventions

## 0.1.0 - First Release
* Every feature added
* Every bug fixed

redpajama_set_name: RedPajamaGithub


I am coordinating the volunteers and press for the Essex Youth Triathlon, August 7th. It is a great event to promote healthy, happy kiddies in our communities! We need lots of help the day of and leading up to the event. Below is a little info!
The Essex Board of Health is holding our second annual Essex Youth Triathlon on Sat. August 7th; targeting youth of all abilities ages 5-15 on the North Shore & Cape Ann, but open to all. The goal of the Board of Health is to encourage activity & healthy habits in our youth that they can take with them into a healthy adulthood. Last year we had over 120 participate & complete the race. This year, we are planning for 200 – 250.
Next Post Don't Overlook Me! I'm Pineapple Weed!


Firm: Tiffany & Bosco P.A.
RICHARD HIMELRICK is a 30-year trial lawyer. His practice centers on business litigation with an emphasis on securities cases. He chairs Tiffany & Bosco's Civil and Commercial Litigation Department. He is listed in The Best Lawyers in America, Southwest Super Lawyers, Litigation Counsel of America, and is a member of Scribes—The American Society of Legal Writers and the Arizona State Bar Class Actions and Derivative Suits Committee.
He represents clients in business disputes in both state and federal court. His cases often involve investment fraud including the defense of administrative actions brought by securities regulators.
Rich is currently lead counsel for a certified class of investors who bought mortgage-backed note investments issued by two insolvent companies. See Facciola v. Greenberg Traurig, LLP, 281 F.R.D. 363 (D. Ariz. 2012). The case alleges that the notes were sold in what became a Ponzi scheme. Defendants include the issuers' management, two national law firms that acted as securities counsel, and the lead issuer's auditors. The case settled as to the issuer's management and securities counsel for $89 million. The case is continuing against the auditors.
Rich was also lead trial counsel for the plaintiff class in an action certified on behalf of Arizona investors who purchased stocks under Olde Discount Corporation's "commission-free" programs. After a three week trial, the case settled during jury deliberations for $21 million, which represented a return to investors of over 115% of their out-of-pocket losses.
He was co-trial counsel for the plaintiffs in a class action filed on behalf of 11,000 investors who invested over $500 million with the Baptist Foundation of Arizona and its subsidiaries. During the sixth day of trial against BFA's auditor, Arthur Andersen, the case settled for $217 million. The year before he was lead class counsel in a related action that led to a $21 million settlement with BFA's outside attorneys. In another case, he represented three minority stockholders in a suit alleging shareholder oppression. For over a decade, the three plaintiffs had received only nominal dividends. The week before trial the case settled for $19.5 million.
Aiding or Encouraging Securities Fraud after Sell v. Gama, Arizona Attorney, February 2014, at 40.
A Historical Introduction to Arizona's Securities Laws, 7 Ariz. Summit L. Rev. ____ (forthcoming Spring 2014), available at http://ssrn.com/abstract=2164493.
Turning 60: Bud Jacobson, Earl Hastings, and Arizona's 1951 Securities Act, Arizona Attorney, December 2011, at 22.
The Importance of Statutory Text: from Scienter to Nonstatutory Defenses under Arizona Securities Law, 41 Ariz. St. L.J. 49 (2009).
Fighting Investment Fraud: State Securities Law and Administrative Precedent, Arizona Attorney, April 2003, at 24.
Judicial Deference to SEC Precedent, 9 PIABA B.J. 61 (Winter 2002).
Spreads, Markups, Sales Credits and Trading Costs, 9 PIABA B.J. 43 (Summer 2002) (co-authored with Craig McCann, Ph.D.).
Arizona Securities Fraud Liability: Charting a Non-Federal Path, 32 Ariz. St. L. J. 203 (2000).
Pleading Securities Fraud, 43 Md. L. Rev. 342 (1984).


text:
Art Dealers Association of Canada > Exhibitions > Ontario > Stephen Bulger Gallery > BRUNO BARBEY: Witness of Things Past
BRUNO BARBEY: Witness of Things Past
Exhibition Dates: March 10 – April 14, 2018
Opening Reception: Saturday, March 10, 2-5pm
Stephen Bulger Gallery is pleased to present "Witness of Things Past", our first solo exhibition of work by the internationally renowned Magnum photographer Bruno Barbey. This exhibition offers a survey of some of his best-known black and white photographs as well as colour works made over the course of his remarkable career.
Barbey's professional career began in the early 1960s when, over a four-year period, he photographed his series "The Italians". Barbey perceived the Italian people as protagonists of a 'theatrical world' and aimed to capture the spirit of a nation through his striking black and white portraiture. This series presents a modern Commedia dell'arte of beggars, priests, nuns, carabinieri, prostitutes, Mafiosi, and other archetypal figures whose exotic charms stand as a testament to the life and times of Italy in the 1960s. The resulting book remains on the short list of many photography experts and continues to entrance readers to this day.
Over the past five decades, Barbey has photographed on all seven continents and documented wars and conflicts in Nigeria, Vietnam, the Middle East, Bangladesh, Cambodia, Northern Ireland, Iraq, and Kuwait. The colour photographs in this exhibition feature Barbey's work from abroad and show the exceptional talent he has for capturing the human condition all around the globe. Barbey's striking use of colour gives insight into the lives of his subjects and proves him to be a modern master of photography.
Bruno Barbey (born 1941, Morocco) has dual nationality, French and Swiss. He studied photography and graphic arts at the École des Arts et Métiers in Vevey, Switzerland. His work was recently the subject of a retrospective exhibition at La Maison Européenne de la Photographie, Paris, which is currently touring internationally, and of a major monograph entitled Passages, which was published simultaneously. Barbey has received numerous awards for his work, including the French National Order of Merit. In 2016, Barbey was elected a member of the French Academy of Fine Arts, Institut de France. His photographs are exhibited worldwide, held in numerous museum collections, have appeared in major magazines, and he has published over 30 books. Today, he is photographing extensively in China, where he is publishing a book about China from the cultural revolution to today, as well as a new book on the 50th anniversary of the May 1968 protests in France.
March 10, 2018 - April 14, 2018
Stephen Bulger Gallery
BulgerGallery.com
1356 Dundas Street West
Toronto, Ontario M6J 1Y2
Hours: Tuesday – Saturday 11:00 am – 6:00 pm
As well as by appointment or by chance.
info@bulgergallery.com
Register for Exhibition: BRUNO BARBEY: Witness of Things Past
Choose time: 11:00 am - 6:00 am
Your ticket for the: BRUNO BARBEY: Witness of Things Past


text:
Q: Bottom OverFlowed import 'package:flutter/material.dart';
//import 'package:font_awesome_flutter/font_awesome_flutter.dart';
//import 'package:flutter/widgets.dart';
//import 'package:typicons_flutter/typicons_flutter.dart';

void main() async {
  runApp(MaterialApp(
    home: Home(),
    theme: new ThemeData(
      hintColor: Colors.white,
      primaryColor: Colors.black,
    ),
  ));
}

class Home extends StatefulWidget {
  Home({Key key}) : super(key: key);

  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.white,
      appBar: AppBar(
        title: Text(
          "Calcular Cerveja",
          style: TextStyle(color: Colors.white),
        ),
        backgroundColor: Colors.orange,
        centerTitle: true,
      ),
      body: Container(
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.stretch,
          children: <Widget>[
            Image.asset(
              'assets/ber2.png',
              width: 250.0,
              height: 250.0,
            ),
            Container(
              padding: EdgeInsets.all(15.0),
              child: Column(
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: <Widget>[
                  Divider(),
                  TextField(
                    decoration: InputDecoration(
                      hintText: "Teste",
                      labelText: "teste",
                      border: OutlineInputBorder(),
                    ),
                  ),
                ],
              ),
            ),
          ],
        ),
      ),
    );
  }
}

Por que está dando bottom overflowed pessoal?

A: Está dando Bottom Overflowed ao clicar no TextField e abrir o teclado, certo?
Isso ocorre porque ao clicar no TextField a árvore de widgets é atualizada com o teclado aparecendo ao topo, com isso, o espaço que antes estava livre para renderizar o body do Scaffold foi alterado.
Para ilustrar, coloque o body dentro de um LayoutBuilder, esse builder é chamado sempre que as constraints (basicamente o tamanho disponível) do layout forem alteradas:
body: LayoutBuilder(
    builder:
        (BuildContext context, BoxConstraints constraints) {
      print('Height ${constraints.maxHeight}');
      print('Width ${constraints.maxWidth}');

      return Column(
        crossAxisAlignment: CrossAxisAlignment.stretch,
        children: <Widget>[
          Image.asset(
            'assets/Y.png',
            width: 250.0,
            height: 250.0,
          ),
          Container(
            padding: EdgeInsets.all(15.0),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.stretch,
              children: <Widget>[
                Divider(),
                TextField(
                  decoration: InputDecoration(
                    hintText: "Teste",
                    labelText: "teste",
                    border: OutlineInputBorder(),
                  ),
                ),
              ],
            ),
          ),
        ],
      );
    },
  )

Ao rodar você verá algo no log como:

I/flutter (18148): Height 560.0
I/flutter (18148): Width 360.0

E ao clicar no TextField:

I/flutter (18148): Height 278.0
I/flutter (18148): Width 360.0

Ou seja, a 'altura' disponível para renderizar o body foi alterada. Por conta disso, já não cabe mais o TextField na tela, ocorrendo um famoso erro de 'Overflowed'.
Para corrigir isso é simples, você precisa avisar o layout que ele deve se ajustar sem que ocorra erro, no seu caso, a solução mais simples é colocar o body dentro de um SingleChildScrollView, que irá se ajustar com um scroll para telas menores ou espaços menores.
body: SingleChildScrollView(
    child: Column(
      crossAxisAlignment: CrossAxisAlignment.stretch,
      children: <Widget>[
        Image.asset(
          'assets/Y.png',
          width: 250.0,
          height: 250.0,
        ),
        Container(
          padding: EdgeInsets.all(15.0),
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.stretch,
            children: <Widget>[
              Divider(),
              TextField(
                decoration: InputDecoration(
                  hintText: "Teste",
                  labelText: "teste",
                  border: OutlineInputBorder(),
                ),
              ),
            ],
          ),
        ),
      ],
    ),
  ),

redpajama_set_name: RedPajamaStackExchange


Arriba 20 Hospital Puerta De Hierro Majadahonda Cuadro Medico – All of the images are posted by %krsauthor% in Hospital Puerta De Hierro Majadahonda Cuadro Medico. Various added info and photographs are also accessible in other Hospital Puerta De Hierro Majadahonda Cuadro Medico group. The writer will keep posting the gallery at the Hospital Puerta De Hierro Majadahonda Cuadro Medico of our site. The final words we want to convey is the images put up in the Hospital Puerta De Hierro Majadahonda Cuadro Medico is aspired to give you a lot more ideas.
The Hospital Puerta De Hierro Majadahonda Cuadro Medico photos are for Hospital Puerta De Hierro Majadahonda Cuadro Medico and they are included in our album in the post. You can download all of the images by clicking 'save as' choice button. Not in any way feel hesitated to capture them.
We will update more images in the Hospital Puerta De Hierro Majadahonda Cuadro Medico. When you are in need of more photographs, simply look up yet another category in this post and you will find various ideas. Revisit our post for far more tips and very good issues each day.
We hope you can find what you need here. We always effort to show a picture with HD resolution or at least with perfect images. Hospital Puerta De Hierro Majadahonda Cuadro Medico Of La sociedad Europea De Cologa Médica Reacredita Al Hospital can be beneficial inspiration for those who seek an image according specific categories; you can find it in this site. Finally all pictures we have been displayed in this site will inspire you all..


text:
Australian nuclear agency joins search for missing radioactive capsule
Home»Iran»President warns of plans to hurt Iran through virtual space – Political News
President warns of plans to hurt Iran through virtual space – Political News
Speaking at an event marking Students' Day at the University of Tehran on Wednesday, Raisi called the day a symbol of hostility, insight and a sense of responsibility in the country's student community.
"Indeed, Azar 16 (December 7) should be a symbol and expression of growth, and knowledge of the country's situation by universities should always be respected," Raisi said, adding that his official website reported.
Referring to the constant year-round communication between the government and the country's student community, the president said, "I believe that there is a need for communication between the government and the universities, and the universities, government think tanks, We can help the government solve the country's problems."
The president said, "Today our university has defeated its enemies. So they have created chaos in this space and tried to close the classrooms, but educated professors and students will not allow it." I did," he added.
Emphasizing the difference between anxiety and protest, Raishi said that while protest aims to improve the situation and build things, the result of anxiety is destruction and anxiety.
"Americans definitely do not want a strong Iran and they want to destroy Iran like Afghanistan, Syria, Libya and other countries that have been invaded by this country, but Iran does not want other countries and Unlike territories, honor and dignity never allow such conspiracies to be carried out by Americans.
Referring to why the enemy is angry with the country's universities and student community, the president said, "Our universities are the source of all progress in our country today, and are the source of all progress in science and technology, the nuclear industry, and the sciences of aerospace." It is an honor to be honored by the College of Defense and Security achievements.
"Today, the most authoritarian and dictatorial government in the world is the governing body of the United States of America, and December 7th is the day we fight against the world's ultra-dictator – the United States," he added.
Asked about the state of the Internet, Raisi said: "I remember the promises made about cyberspace, but the point is, what if an enemy wants to use this space to disrupt the country? Why? Restrictions are an attempt by the enemy to create unrest within the country based on this space, and we need to know that things will be different once things normalize."
He also pointed out the use of the capacity of the cultural and academic centers by the government, saying, "The government listens to the opinions of others even if they have different political tastes, and the 13th administration has decided to use universities to solve problems. We welcome revitalization," he said. problem. "
Previous ArticleAmazon Creates Over 1,000 Jobs at Loveland Center, Colorado
Next Article Women of Iran: Heroes of the Year 2022


Obesity and dysglycaemia are major risk factors for type 2 diabetes. We determined if obese people undergoing laparoscopic adjustable gastric banding (LAGB) had a reduced risk of progressing from impaired fasting glucose (IFG) to diabetes.
This was a retrospective cohort study of obese people with IFG who underwent LAGB. Weight and diabetes outcomes after a minimum follow-up period of 4 years (mean ± SD 6.1 ± 1.7 years) were compared with those of Australian adults with IFG from a population-based study (AusDiab).
We identified 281 LAGB patients with baseline IFG. Their mean ± SD age and BMI were 46 ± 9 years and 46 ± 9 kg/m2, respectively. The diabetes incidence for patients in the lowest, middle and highest weight loss tertile were 19.1, 3.4 and 1.8 cases/1,000 person-years, respectively. The AusDiab cohort had a lower BMI (28 ± 5 kg/m2) and a diabetes incidence of 12.5 cases/1,000 person-years. This increased to 20.5 cases/1,000 person-years when analysis was restricted to the 322 obese AusDiab participants, which was higher than the overall rate of 8.2 cases/1,000 person-years seen in the LAGB group (p = 0.02). Multivariable analysis of the combined LAGB and AusDiab data suggested that LAGB was associated with ∼75% lower risk of diabetes (OR 0.24 [95% CI 0.10, 0.57], p = 0.004).
In obese people with IFG, weight loss after LAGB is associated with a substantially reduced risk of progressing to diabetes over ≥4 years. Bariatric surgery may be an effective diabetes prevention strategy in this population.
John M. Wentworth and Tamishta Hensman contributed equally to this work.
We are grateful to our patients and the participants of the AusDiab Study. We thank M. Mehmet and A. McNeil for assistance with collating biochemical data. Also, for their invaluable contribution to the set-up and field activities of AusDiab, we are enormously grateful to A. Allman, B. Atkins, S. Bennett, A. Bonney, S. Chadban, M. de Courten, M. Dalton, D. Dunstan, T. Dwyer, H. Jahangir, D. Jolley, D. McCarty, A. Meehan, N. Meinig, S. Murray, K. O'Dea, K. Polkinghorne, P. Phillips, C. Reid, A. Stewart, R. Tapp, H. Taylor, T. Welborn, T. Whalen, F. Wilson and P. Zimmet.
The work was funded primarily by the Monash University Centre for Obesity Research and Education. It was supported by Victorian State Government Operational Infrastructure Support and Australian Government NHMRC IRIISS. JES is supported by a National Health and Medical Research Council Fellowship (586623). The AusDiab Study, co-coordinated by the Baker IDI Heart and the Diabetes Institute, gratefully acknowledges the generous support given by: National Health and Medical Research Council (NHMRC grant 233200); Australian Government Department of Health and Ageing; Abbott Australasia; Alphapharm; AstraZeneca; Bristol-Myers Squibb; City Health Centre-Diabetes Service – Canberra; Department of Health and Community Services – Northern Territory; Department of Health and Human Services – Tasmania; Department of Health – New South Wales; Department of Health – Western Australia; Department of Health – South Australia; Department of Human Services – Victoria; Diabetes Australia; Diabetes Australia Northern Territory; Eli Lilly Australia; Estate of the Late Edward Wilson; GlaxoSmithKline; Jack Brockhoff Foundation; Janssen-Cilag; Kidney Health Australia; Marian & FH Flack Trust; Menzies Research Institute; Merck Sharp & Dohme; Novartis Pharmaceuticals; Novo Nordisk Pharmaceuticals; Pfizer; Pratt Foundation; Queensland Health; Roche Diagnostics Australia; Royal Prince Alfred Hospital, Sydney; Sanofi Aventis; Sanofi-synthelabo; and the Victorian Government's OIS Program. The Centre for Obesity Research and Education (CORE) at Monash University receives grants from Allergan and Applied Medical for research and educational support. The grants are not tied to any specified research projects and the grantors have no control over the protocol, analysis and reporting of any studies.
All authors contributed to conception and design, acquisition of data, analysis and interpretation of data. JMW and PEO drafted the manuscript and revised it with all other authors, who also approved the final version. JMW takes full responsibility for the work as a whole, including the study design, access to data, and the decision to submit and publish the manuscript.


Mollem National Park of Goa is one of the biggest Goa National Park and perhaps the most popular wildlife sanctuaries in Goa. The national park is spread across an area about 240 sq km (93 sq miles). This place is located at the Sanguem taluk, which is at the Western Ghats of South India. This National Park is spread from Goa to Karnataka. It is located about 58 kms from Panaji, which is the Capital of Goa.
There are also many famous tourist attractions situated near this place. Some of the famous tourist attractions near to Mollem National Park are : Dudhsagar Falls and Kadamba Dynasty.
This place was known as Mollem Game Sanctuary in the past. This Mollem Game Sanctuary was declared as Bhagwan Mahavir Wildlife Sanctuary in the year 1969 and later it was named as Mollem National Park in the year 1978.
Bhagwan Mahavir Wildlife Sanctuary is one of the famous tourist spot in Goa as it is a dense and ever green forest and the favorite place for the nature lovers. The types of tree species found in Mollem National Park of Goa are Lagerstroemia, Dalbergia, Terminalia, Xylia etc.
The mammals found in Bhagwan Mahavir Wildlife Sanctuary and Mollem National Park Goa includes barking deer, Leopard, common langur, flying squirrel, malabar giant squirrel, pangolin, slender loris, spotted deer, wild dog, bengal tiger, bonnet macaque, civet, gaur, mouse deer, porcupine, sambar and wild boar etc. Some of the popular birds found in Mollem National Park are Drongo, Fairy bluebird, Greater Indian hornbill, Malabar pied hornbill, Shrikes, Grey jungle fowl, Large green barbet, Malabar pied hornbill, Sri Lanka Frogmouth, Grey-headed myna and many more.
Besides mammals and birds many species of Butterflies are found here. The types of Butterflies found here include Blue Mormon, Lime Butterfly, Southern Birdwing, Common Mime, Crimson Rose, Common Jezebel etc. There are also many species of Snakes found in this forest, which include Indian rock python, Bronzeback Tree Snake, russell's viper, common krait, malabar pit viper, Indian cobra, rat snake, king cobra, hump-nosed pit viper and many more.
In the park, you may find cobwebs, different and colorful butterflies and graceful poison-less spiders, and other species if you would like to enjoy those natural creatures and much more on the way to your journey, you may then simply drive and take in views of the alert porcupines, jungle cats, barking deer, civets, flying squirrels and cobras.
Since this is a forest area, it is strongly recommended to plan your travel to reach this place well before dark. Make sure you have hotel/reservations for your stay. Travelling without advance booking may help you get the best deals in the hotels, provided there are rooms available. However, I wouldn't recommend a visit to this place without advance hotel booking. You may not want to wandering in the jungle looking for rooms. If you are looking for a resort kind of stay in the jungle, look at jungle resorts like "Dudhsagar Spa Resort".
If you like to plan your visit to Mollem National Park, you can contact the Range Forest Officer of the park on the phone number 0832-2224747 or 0832-2225926.
Most of the Indians and Foreigners who love natural activity never fails to visit Mollem National Park and they hardly miss this location even though it is quite far from Goa's main city center, Mollem National park has very rare species of fauna, flora, different species, birds and animal life.
Mollem National Park assist tourists to stay in outdoor tents within the range and they assist you to set up a campsite to experience and enjoy the nature.