Is Microsoft Allowing Ubuntu Linux on Azure without a Patent Deal - InternetNews.
Is Microsoft Allowing Ubuntu Linux on Azure without a Patent Deal?
Microsoft alleged years ago that Linux and Open Source technologies infringe on over 200 Microsoft patents. It's that basic allegation that Microsoft used to convince Novell/SUSE to sign a a Patent deal and it's the same basic underpinning for a dozen deals with Android vendors.
So why is Microsoft allowing Linux to run on its Azure cloud? In particular, why Ubuntu?
"Canonical has strong principled positions on a range of topics,"Chris Kenyon, Vice President, Sales and Business Development, told me. "We do not and have not made compromises on those positions."
That statement would imply that there is no patent deal with Canonical. But that hardly seems fair to SUSE then right? SUSE went out of its way to sign a special deal with Microsoft. How come Ubuntu gets to 'play' in the same field then?
It's a question that I don't have a definitive answer on. It's the same kind of murky territory that Global organizations also face (in a significantly more serious sense, i'm just reaching and it's not a direct comparison by any means) with China. Everyone wants to make a buck, but no one really wants to compromise their ethical standing.
I haven't yet seen the full pricing for Azure and specifically the differences between SUSE pricing and Ubuntu pricing. Perhaps it's just a margin thing that Microsoft builds in as a way to placate their intellectual property interests. Or perhaps they just don't care at this point as Azure is trying to gain share.
It is however a curious question.


The range of Rivisa's Residential and Rural Fences comprises the following variety of products: Lux® Fences formed by chain-link fence, Lux® Fences formed by electro-welded, plastic-coated mesh, available in rolls, and Lux® Fences formed by knotted/hunting mesh.
Wooden posts may also be used.
Lux® Posts are equipped with longitudinal rack to anchor the accessories and staples needed to support the tension of the wires. All items in this range of products can additionally incorporate rows of barbed wire fence for those facilities which require a high degree of security.
Formed by chain link mesh and metal posts.
Applications: residential and sporting areas, housing and countryside properties.
Formed by electro-welded, plastic-coated mesh and metal posts.
Applications: residential and sporting areas, housing, gardens and countryside properties.
Formed by knotted mesh and metal posts.
Applications: large spaces, motorways, highways and large estates.
Enclosure formed by treated wood posts.
Applications: housing estates, parks, gardens and farms.


text:
/*
 *    THIS FILE IS GENERATED. DO NOT MODIFY.
 *
 *    SOURCE TEMPLATE: trait.cpp
 *    SOURCE PROTO: nest/trait/network/telemetry_network_wpan_trait.proto
 *
 */

#include <nest/trait/network/TelemetryNetworkWpanTrait.h>

namespace Schema {
namespace Nest {
namespace Trait {
namespace Network {
namespace TelemetryNetworkWpanTrait {

using namespace ::nl::Weave::Profiles::DataManagement;

//
// Property Table
//

const TraitSchemaEngine::PropertyInfo PropertyMap[] = {
};

//
// Supported version
//
const ConstSchemaVersionRange traitVersion = { .mMinVersion = 1, .mMaxVersion = 3 };

//
// Schema
//

const TraitSchemaEngine TraitSchema = {
    {
        kWeaveProfileId,
        PropertyMap,
        sizeof(PropertyMap) / sizeof(PropertyMap[0]),
        1,
#if (TDM_EXTENSION_SUPPORT) || (TDM_VERSIONING_SUPPORT)
        2,
#endif
        NULL,
        NULL,
        NULL,
        NULL,
        NULL,
#if (TDM_EXTENSION_SUPPORT)
        NULL,
#endif
#if (TDM_VERSIONING_SUPPORT)
        &traitVersion,
#endif
    }
};

    //
    // Events
    //

const nl::FieldDescriptor WpanParentLinkEventFieldDescriptors[] =
{
    {
        NULL, offsetof(WpanParentLinkEvent, rssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 1
    },

    {
        NULL, offsetof(WpanParentLinkEvent, unicastCcaThresholdFailures), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 2
    },

    {
        NULL, offsetof(WpanParentLinkEvent, unicastMacRetryCount), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 3
    },

};

const nl::SchemaFieldDescriptor WpanParentLinkEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(WpanParentLinkEventFieldDescriptors)/sizeof(WpanParentLinkEventFieldDescriptors[0]),
    .mFields = WpanParentLinkEventFieldDescriptors,
    .mSize = sizeof(WpanParentLinkEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema WpanParentLinkEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x1,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor NetworkWpanStatsEventFieldDescriptors[] =
{
    {
        NULL, offsetof(NetworkWpanStatsEvent, phyRx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 1
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, phyTx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 2
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macUnicastRx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 3
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macUnicastTx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 4
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macBroadcastRx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 5
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macBroadcastTx), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 6
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxAckReq), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 24
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxNoAckReq), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 25
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxAcked), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 26
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 27
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxDataPoll), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 28
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxBeacon), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 29
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxBeaconReq), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 30
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxOtherPkt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 31
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxRetry), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 32
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 33
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxDataPoll), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 34
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxBeacon), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 35
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxBeaconReq), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 36
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxOtherPkt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 37
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFilterWhitelist), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 38
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFilterDestAddr), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 39
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macTxFailCca), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 8
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailDecrypt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 12
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailNoFrame), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 20
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailUnknownNeighbor), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 21
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailInvalidSrcAddr), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 22
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailFcs), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 23
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macRxFailOther), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 40
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ipTxSuccess), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 41
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ipRxSuccess), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 42
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ipTxFailure), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 43
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ipRxFailure), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 44
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, nodeType), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 15
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, channel), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 16
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, radioTxPower), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 17
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, threadType), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt32, 0), 18
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ncpTxTotalTime), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 45
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, ncpRxTotalTime), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 46
    },

    {
        NULL, offsetof(NetworkWpanStatsEvent, macCcaFailRate), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 47
    },

};

const nl::SchemaFieldDescriptor NetworkWpanStatsEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(NetworkWpanStatsEventFieldDescriptors)/sizeof(NetworkWpanStatsEventFieldDescriptors[0]),
    .mFields = NetworkWpanStatsEventFieldDescriptors,
    .mSize = sizeof(NetworkWpanStatsEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema NetworkWpanStatsEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x2,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor NetworkWpanTopoMinimalEventFieldDescriptors[] =
{
    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, rloc16), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 1
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, routerId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 2
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, leaderRouterId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 3
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, parentAverageRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 4
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, parentLastRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 5
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, partitionId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 6
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, extAddress), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 7
    },

    {
        NULL, offsetof(NetworkWpanTopoMinimalEvent, instantRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 8
    },

};

const nl::SchemaFieldDescriptor NetworkWpanTopoMinimalEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(NetworkWpanTopoMinimalEventFieldDescriptors)/sizeof(NetworkWpanTopoMinimalEventFieldDescriptors[0]),
    .mFields = NetworkWpanTopoMinimalEventFieldDescriptors,
    .mSize = sizeof(NetworkWpanTopoMinimalEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema NetworkWpanTopoMinimalEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x3,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor NetworkWpanTopoFullEventFieldDescriptors[] =
{
    {
        NULL, offsetof(NetworkWpanTopoFullEvent, rloc16), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 1
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, routerId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 2
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, leaderRouterId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 3
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, extAddress), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 15
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, leaderAddress), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 4
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, leaderWeight), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 5
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, leaderLocalWeight), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 6
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, networkData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 9
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, networkDataVersion), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 10
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, stableNetworkData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 11
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, stableNetworkDataVersion), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 12
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, preferredRouterId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 13
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, partitionId), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 14
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, deprecatedChildTable) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChildTableEntry_array, num), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeArray, 0), 7
    },
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChildTableEntry::FieldSchema, offsetof(NetworkWpanTopoFullEvent, deprecatedChildTable) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChildTableEntry_array, buf), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 7
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, deprecatedNeighborTable) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::NeighborTableEntry_array, num), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeArray, 0), 8
    },
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::NeighborTableEntry::FieldSchema, offsetof(NetworkWpanTopoFullEvent, deprecatedNeighborTable) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::NeighborTableEntry_array, buf), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 8
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, childTableSize), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 16
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, neighborTableSize), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 17
    },

    {
        NULL, offsetof(NetworkWpanTopoFullEvent, instantRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 18
    },

};

const nl::SchemaFieldDescriptor NetworkWpanTopoFullEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(NetworkWpanTopoFullEventFieldDescriptors)/sizeof(NetworkWpanTopoFullEventFieldDescriptors[0]),
    .mFields = NetworkWpanTopoFullEventFieldDescriptors,
    .mSize = sizeof(NetworkWpanTopoFullEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema NetworkWpanTopoFullEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x4,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor TopoEntryEventFieldDescriptors[] =
{
    {
        NULL, offsetof(TopoEntryEvent, extAddress), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 1
    },

    {
        NULL, offsetof(TopoEntryEvent, rloc16), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 2
    },

    {
        NULL, offsetof(TopoEntryEvent, linkQualityIn), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 3
    },

    {
        NULL, offsetof(TopoEntryEvent, averageRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 4
    },

    {
        NULL, offsetof(TopoEntryEvent, age), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 5
    },

    {
        NULL, offsetof(TopoEntryEvent, rxOnWhenIdle), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 6
    },

    {
        NULL, offsetof(TopoEntryEvent, fullFunction), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 7
    },

    {
        NULL, offsetof(TopoEntryEvent, secureDataRequest), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 8
    },

    {
        NULL, offsetof(TopoEntryEvent, fullNetworkData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 9
    },

    {
        NULL, offsetof(TopoEntryEvent, lastRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 10
    },

    {
        NULL, offsetof(TopoEntryEvent, linkFrameCounter), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 11
    },

    {
        NULL, offsetof(TopoEntryEvent, mleFrameCounter), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 12
    },

    {
        NULL, offsetof(TopoEntryEvent, isChild), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 13
    },

    {
        NULL, offsetof(TopoEntryEvent, timeout), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 1), 14
    },

    {
        NULL, offsetof(TopoEntryEvent, networkDataVersion), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 1), 15
    },

    {
        NULL, offsetof(TopoEntryEvent, macFrameErrorRate), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 16
    },

    {
        NULL, offsetof(TopoEntryEvent, ipMessageErrorRate), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 17
    },

};

const nl::SchemaFieldDescriptor TopoEntryEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(TopoEntryEventFieldDescriptors)/sizeof(TopoEntryEventFieldDescriptors[0]),
    .mFields = TopoEntryEventFieldDescriptors,
    .mSize = sizeof(TopoEntryEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema TopoEntryEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x5,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor WpanChannelmonStatsEventFieldDescriptors[] =
{
    {
        NULL, offsetof(WpanChannelmonStatsEvent, channels) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChannelUtilization_array, num), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeArray, 0), 1
    },
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChannelUtilization::FieldSchema, offsetof(WpanChannelmonStatsEvent, channels) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::ChannelUtilization_array, buf), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 1
    },

    {
        NULL, offsetof(WpanChannelmonStatsEvent, samples), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 2
    },

};

const nl::SchemaFieldDescriptor WpanChannelmonStatsEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(WpanChannelmonStatsEventFieldDescriptors)/sizeof(WpanChannelmonStatsEventFieldDescriptors[0]),
    .mFields = WpanChannelmonStatsEventFieldDescriptors,
    .mSize = sizeof(WpanChannelmonStatsEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema WpanChannelmonStatsEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x6,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor WpanAntennaStatsEventFieldDescriptors[] =
{
    {
        NULL, offsetof(WpanAntennaStatsEvent, antennaStats) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::PerAntennaStats_array, num), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeArray, 0), 1
    },
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::PerAntennaStats::FieldSchema, offsetof(WpanAntennaStatsEvent, antennaStats) + offsetof(Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::PerAntennaStats_array, buf), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 1
    },

    {
        NULL, offsetof(WpanAntennaStatsEvent, antSwitchCnt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 2
    },

};

const nl::SchemaFieldDescriptor WpanAntennaStatsEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(WpanAntennaStatsEventFieldDescriptors)/sizeof(WpanAntennaStatsEventFieldDescriptors[0]),
    .mFields = WpanAntennaStatsEventFieldDescriptors,
    .mSize = sizeof(WpanAntennaStatsEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema WpanAntennaStatsEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x7,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

const nl::FieldDescriptor NetworkWpanTopoParentRespEventFieldDescriptors[] =
{
    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, rloc16), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 1
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, rssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 2
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, priority), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 3
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, extAddr), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 4
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, linkQuality3), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 5
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, linkQuality2), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 6
    },

    {
        NULL, offsetof(NetworkWpanTopoParentRespEvent, linkQuality1), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 7
    },

};

const nl::SchemaFieldDescriptor NetworkWpanTopoParentRespEvent::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(NetworkWpanTopoParentRespEventFieldDescriptors)/sizeof(NetworkWpanTopoParentRespEventFieldDescriptors[0]),
    .mFields = NetworkWpanTopoParentRespEventFieldDescriptors,
    .mSize = sizeof(NetworkWpanTopoParentRespEvent)
};
const nl::Weave::Profiles::DataManagement::EventSchema NetworkWpanTopoParentRespEvent::Schema =
{
    .mProfileId = kWeaveProfileId,
    .mStructureType = 0x8,
    .mImportance = nl::Weave::Profiles::DataManagement::Debug,
    .mDataSchemaVersion = 3,
    .mMinCompatibleDataSchemaVersion = 1,
};

//
// Event Structs
//

const nl::FieldDescriptor ChannelUtilizationFieldDescriptors[] =
{
    {
        NULL, offsetof(ChannelUtilization, channel), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 1
    },

    {
        NULL, offsetof(ChannelUtilization, percentBusy), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 2
    },

};

const nl::SchemaFieldDescriptor ChannelUtilization::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(ChannelUtilizationFieldDescriptors)/sizeof(ChannelUtilizationFieldDescriptors[0]),
    .mFields = ChannelUtilizationFieldDescriptors,
    .mSize = sizeof(ChannelUtilization)
};

const nl::FieldDescriptor PerAntennaStatsFieldDescriptors[] =
{
    {
        NULL, offsetof(PerAntennaStats, txSuccessCnt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 1
    },

    {
        NULL, offsetof(PerAntennaStats, txFailCnt), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 2
    },

    {
        NULL, offsetof(PerAntennaStats, avgAckRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 3
    },

};

const nl::SchemaFieldDescriptor PerAntennaStats::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(PerAntennaStatsFieldDescriptors)/sizeof(PerAntennaStatsFieldDescriptors[0]),
    .mFields = PerAntennaStatsFieldDescriptors,
    .mSize = sizeof(PerAntennaStats)
};

const nl::FieldDescriptor TopoEntryFieldDescriptors[] =
{
    {
        NULL, offsetof(TopoEntry, extAddress), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeByteString, 0), 1
    },

    {
        NULL, offsetof(TopoEntry, rloc16), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt16, 0), 2
    },

    {
        NULL, offsetof(TopoEntry, linkQualityIn), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 3
    },

    {
        NULL, offsetof(TopoEntry, averageRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 4
    },

    {
        NULL, offsetof(TopoEntry, age), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 5
    },

    {
        NULL, offsetof(TopoEntry, rxOnWhenIdle), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 6
    },

    {
        NULL, offsetof(TopoEntry, fullFunction), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 7
    },

    {
        NULL, offsetof(TopoEntry, secureDataRequest), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 8
    },

    {
        NULL, offsetof(TopoEntry, fullNetworkData), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 9
    },

    {
        NULL, offsetof(TopoEntry, lastRssi), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeInt8, 0), 10
    },

};

const nl::SchemaFieldDescriptor TopoEntry::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(TopoEntryFieldDescriptors)/sizeof(TopoEntryFieldDescriptors[0]),
    .mFields = TopoEntryFieldDescriptors,
    .mSize = sizeof(TopoEntry)
};

const nl::FieldDescriptor ChildTableEntryFieldDescriptors[] =
{
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::TopoEntry::FieldSchema, offsetof(ChildTableEntry, topo), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 1
    },

    {
        NULL, offsetof(ChildTableEntry, timeout), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 2
    },

    {
        NULL, offsetof(ChildTableEntry, networkDataVersion), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt8, 0), 3
    },

};

const nl::SchemaFieldDescriptor ChildTableEntry::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(ChildTableEntryFieldDescriptors)/sizeof(ChildTableEntryFieldDescriptors[0]),
    .mFields = ChildTableEntryFieldDescriptors,
    .mSize = sizeof(ChildTableEntry)
};

const nl::FieldDescriptor NeighborTableEntryFieldDescriptors[] =
{
    {
        &Schema::Nest::Trait::Network::TelemetryNetworkWpanTrait::TopoEntry::FieldSchema, offsetof(NeighborTableEntry, topo), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeStructure, 0), 1
    },

    {
        NULL, offsetof(NeighborTableEntry, linkFrameCounter), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 2
    },

    {
        NULL, offsetof(NeighborTableEntry, mleFrameCounter), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeUInt32, 0), 3
    },

    {
        NULL, offsetof(NeighborTableEntry, isChild), SET_TYPE_AND_FLAGS(nl::SerializedFieldTypeBoolean, 0), 4
    },

};

const nl::SchemaFieldDescriptor NeighborTableEntry::FieldSchema =
{
    .mNumFieldDescriptorElements = sizeof(NeighborTableEntryFieldDescriptors)/sizeof(NeighborTableEntryFieldDescriptors[0]),
    .mFields = NeighborTableEntryFieldDescriptors,
    .mSize = sizeof(NeighborTableEntry)
};

} // namespace TelemetryNetworkWpanTrait
} // namespace Network
} // namespace Trait
} // namespace Nest
} // namespace Schema

redpajama_set_name: RedPajamaGithub


text:
<TITLE>Xilinx Design Summary</TITLE>

Papilio_Pro Project Status (01/08/2014 - 11:39:02)

Project File:
PSL_Papilio_Pro_LX9.xise
Parser Errors:
 No Errors

Module Name:
Papilio_Pro
Implementation State:
Programming File Generated

Target Device:
xc6slx9-2tqg144

Errors:

No Errors

Product Version:	ISE 14.6

Warnings:

911 Warnings (911 new)

Design Goal:</dif>
Balanced

Routing Results:

All Signals Completely Routed

Design Strategy:</dif>
Xilinx Default (unlocked)

Timing Constraints:

All Constraints Met

Environment:</dif>

System Settings

Final Timing Score:

0  (Timing Report)

Device Utilization Summary	 [-]

Slice Logic Utilization	Used	Available	Utilization	Note(s)

Number of Slice Registers
1,524
11,440
13%

    Number used as Flip Flops
1,524

    Number used as Latches
0

    Number used as Latch-thrus
0

    Number used as AND/OR logics
0

Number of Slice LUTs
1,996
5,720
34%

    Number used as logic
1,944
5,720
33%

        Number using O6 output only
1,441

        Number using O5 output only
124

        Number using O5 and O6
379

        Number used as ROM
0

    Number used as Memory
18
1,440
1%

        Number used as Dual Port RAM
0

        Number used as Single Port RAM
0

        Number used as Shift Register
18

            Number using O6 output only
2

            Number using O5 output only
0

            Number using O5 and O6
16

    Number used exclusively as route-thrus
34

        Number with same-slice register load
26

        Number with same-slice carry load
8

        Number with other load
0

Number of occupied Slices
820
1,430
57%

Number of MUXCYs used
432
2,860
15%

Number of LUT Flip Flop pairs used
2,421

    Number with an unused Flip Flop
1,039
2,421
42%

    Number with an unused LUT
425
2,421
17%

    Number of fully used LUT-FF pairs
957
2,421
39%

    Number of unique control sets
68

    Number of slice register sites lost
        to control set restrictions
210
11,440
1%

Number of bonded IOBs
95
102
93%

    Number of LOCed IOBs
95
95
100%

    IOB Flip Flops
52

Number of RAMB16BWERs
11
32
34%

Number of RAMB8BWERs
1
64
1%

Number of BUFIO2/BUFIO2_2CLKs
1
32
3%

    Number used as BUFIO2s
1

    Number used as BUFIO2_2CLKs
0

Number of BUFIO2FB/BUFIO2FB_2CLKs
1
32
3%

    Number used as BUFIO2FBs
1

    Number used as BUFIO2FB_2CLKs
0

Number of BUFG/BUFGMUXs
3
16
18%

    Number used as BUFGs
3

    Number used as BUFGMUX
0

Number of DCM/DCM_CLKGENs
0
4
0%

Number of ILOGIC2/ISERDES2s
16
200
8%

    Number used as ILOGIC2s
16

    Number used as ISERDES2s
0

Number of IODELAY2/IODRP2/IODRP2_MCBs
0
200
0%

Number of OLOGIC2/OSERDES2s
36
200
18%

    Number used as OLOGIC2s
36

    Number used as OSERDES2s
0

Number of BSCANs
0
4
0%

Number of BUFHs
0
128
0%

Number of BUFPLLs
0
8
0%

Number of BUFPLL_MCBs
0
4
0%

Number of DSP48A1s
4
16
25%

Number of ICAPs
0
1
0%

Number of MCBs
0
2
0%

Number of PCILOGICSEs
0
2
0%

Number of PLL_ADVs
1
2
50%

Number of PMVs
0
1
0%

Number of STARTUPs
0
1
0%

Number of SUSPEND_SYNCs
0
1
0%

Average Fanout of Non-Clock Nets
3.57

Performance Summary	 [-]

Final Timing Score:
0 (Setup: 0, Hold: 0, Component Switching Limit: 0)
Pinout Data:
Pinout Report

Routing Results:
All Signals Completely Routed
Clock Data:
Clock Report

Timing Constraints:

All Constraints Met

Detailed Reports	 [-]

Report Name	Status	Generated
Errors	Warnings	Infos

Synthesis Report	Current	Wed Jan 8 11:35:40 2014	0	902 Warnings (902 new)	74 Infos (74 new)

Translation Report	Current	Wed Jan 8 11:35:54 2014	0	0	1 Info (0 new)

Map Report	Current	Wed Jan 8 11:37:21 2014	0	5 Warnings (5 new)	6 Infos (6 new)

Place and Route Report	Current	Wed Jan 8 11:38:17 2014	0	0	0

Power Report

Post-PAR Static Timing Report	Current	Wed Jan 8 11:38:29 2014	0	0	3 Infos (3 new)

Bitgen Report	Current	Wed Jan 8 11:38:52 2014	0	4 Warnings (4 new)	1 Info (1 new)

Secondary Reports	 [-]

Report Name	Status	Generated

WebTalk Report	Current	Wed Jan 8 11:38:54 2014

WebTalk Log File	Current	Wed Jan 8 11:39:01 2014

Date Generated: 01/08/2014 - 11:39:02


text:
Teenage Girl from Pune develops a gadget to monitor tremors of Parkinson's Disease
Moved by her uncle's struggles with the disease, Pune based Jui Keskar develops a device that can greatly benefit a patient with Parkinson's disease by monitoring their tremors.
"When you find a problem around you, try to solve it." this very simple yet striking statement comes from Jui Keskar, a ninth-grade student from Pune. The 14-year-old recently garnered massive recognition for her innovation, JTremor-3D. It is a device that is meant to monitor the tremors of people battling Parkinson's disease. The medical condition impacts the central nervous system of a patient, manifesting as severe tremors in the limbs. Since the medication is heavily dependent on the frequency of the said tremors, the device is an amazing way to increase the efficiency of the treatment.
Drawing inspiration from empathy
Jui's uncle was diagnosed with Parkinson's disease at the age of 42. She saw him frequently visit hospitals in Mumbai for the next eight years. The doctors could only diagnose based on the frequency of the tremors, but there were no ways to accurately measure them. Jui wanted to make the condition more manageable for her uncle. She set out to measure these tremors to control them. She got the opportunity to explore the same during the nationwide lockdown in early 2020. Her research began with a primary visit to a doctor. She also went ahead to read various research papers and journals to get to know more about the condition. She found a few existing devices to measure these tremors. However, these lacked portability and wearability. Making her next mission obvious. Making this innovation compact.
Support Constructive Journalism
Help us sustain and survive this Positive News Media Network. Donate to The Optimist Citizen.
₹299₹499₹999
Click here to choose Contribution Amount | Click here for International Payment Options
The first attempt
When Jui first began working on her initiative, she was very clear about what she wanted. Something portable, wearable with an added ease of access for the recorded data. She got the answers for the first two online. She ordered some pre-assembled hardware from Amazon and was good to go. The real obstacle struck her when tried to connect the controller to a cloud database. The task needed a good command of programming. She then pursued online courses in Python. She received constant guidance from her father who is an engineer in Germany.
After a few months of rigorous trials, she successfully developed a box-like device. It was fitted with sensors sensitive enough to be able to closely track the tremors every 1/10th of a second. The results were great and the measurements were accurate. "The box-like device was great at performance, but to be able to efficiently track movements, the device had to be really close to the body," says Jui as she mentions how the final idea came to her mind. "For that, it was best to go with something easier to wear in routine. What's better than a glove?" she adds.
To travel the distance from a box to a glove, Jui had to look for smaller hardware variants. She found whatever she needed online, and was quick to put things together. The end product gave a new hope in life to her Uncle. The innovation was highly appreciated by various support groups aimed at helping patients with Parkinson's disease. Her innovation created a buzz and recognitions started pouring in.
The series of awards began with the very reputed 'Dr. APJ Abdul Kalam National Award for Innovation and Creativity.' In January 2021 she was awarded the IRIS Grand Award, recognised by 'Broadcom Department of Science and Technology.' Furthermore, she is all set to represent India at the 'Regeneron International Science and Engineering Fair (ISEF) to be held in Pittsburgh, USA. The event is the world's largest pre-college event aimed at promoting scientific initiatives among teens.
Get Positive News delivered to your Inbox every weekend!
The path ahead
All the recognition and opportunities have definitely inspired Jui to keep moving forward and achieve much greater feats in life. According to her, garnering so much recognition at such a crucial stage of her academic career will definitely prove to be pivotal to her progress.
For now, she plans to turn a larger amount of her focus to her studies while still progressing with her innovation. She is currently working to improve JTremor-3D, making it aptly functional for the necessary safety certifications. She has two patents on the device and is planning to commercialise it soon. Jui has also co-authored a paper on 'The Impact of COVID-19 lockdown on the mental well-being of professionals'. The paper got published in the peer-reviewed journal- 'International Journal of Advanced Research, Ideas and Innovations in Technology.
11-year-old girl from Bengaluru makes paper out of kitchen waste
Manya Harsha is an 11-year-old sustainability influencer from Bangalore who is championing waste management her way. She is recycling kitchen waste to make chemical-free paper. The innovation would be a great...
Sia Ahuja
14-year-old boy starts a venture that is hiring workers who lost jobs during lockdown
Amar Prajapati from Gorakhpur set up his LED lights manufacturing unit in his village to employ workers who were left without any means of livelihood. Young citizens are the strength of the country. It is amazing to...
Rida Anwar

redpajama_set_name: RedPajamaCommonCrawl


"Apparently there are boulder problems around here but I've haven't seen them because of all the superb trad routes.. :) "
Classic climbing in classic area. Best urban climbing in the world together with Fjällbo and Gärdsås?
mycket fint i gbg-skogen. Troligtvis min favorit i Göteborg. Om man håller sig borta från det allra knoppigaste.


text:
Q: descjop template with local sqlite db? I am working on a small desktop app with electron, using the descjop template for clojurescript. I don't have a lot of expirience in clojurescript, and I was wondering how I could add SQlite locally within electron and clojurescript. I would be gratefull to point me to the right direction, I am a little confused.

A: I don't know much about Electron or descjop, so bear with me. I searched for the problem and found an answer that shows how to include sqlite. In package.json you need to add:
"scripts": {
  "postinstall": "install-app-deps"
}

Then you "install necessaries dependencies with":
npm install --save-dev electron-builder
npm install --save sqlite3
npm run postinstall

Then you can require SQLite in the core as follows:
(def SQLite (nodejs/require "sqlite3"))

Hope this helps.

redpajama_set_name: RedPajamaStackExchange


text:
Bhagat Ravidass Ji
Posted byDaily Sikh Updates	 February 14, 2014 Leave a comment on Bhagat Ravidass Ji
Shri Bhagat Ravidass Ji was born in the fifteenth century at Kanshi (Banara) in the state of Uttar Pradesh in India. His birthday comes every year at Puran Mashi in the month of Magh. His mother's name was Mata Kalsi Ji and his father's name was Baba Santokh Dass Ji.
Bhagat Ravidass Ji was born in a humble family which was considered untouchable as per the social order prevailing at that time in Hindu society. Guru Ji spearheaded the fight against man-made discrimination based on caste, colour or creed and preached the lofty ideas of socialism, secularism, equality and fraternity.
From very childhood, he was very much devoted to worship Real God. The caste Brahmans created many problems for him. Bhagat Ji had to appear before King Nagarmal so many times. In the end, the King was convinced and became a follower of Bhagat Ravidass Ji.
Bhagat Ravidass Ji taught the lessons of universal brotherhood, tolerance, message of love your neighbour, which got more importance in today's world.
Bhagat Ravidass Ji fulfilled Guru Nanak Dev Ji's request by donating old manuscripts, which contained a collection of Bhagat Ravidass Ji's verses and poems. The earliest collection of these poems are available in Sri Guru Granth Sahib. It was compiled by Guru Arjan Dev Ji, the fifth Guru of the Sikhs. There are 41 verses of Bhagat Ravidass Ji in the Guru Granth Sahib.
It is said that Bhagat Ravidass Ji disappeared from the world, leaving behind only his footprints. Some believe that he lived in banaras during his last days, dying a natural death at the age of 126 years.
Contribution to Sikhism
The 41 hymns of Shri Ravidassji included in the Guru Granth Sahib fall under:
Raga – Siri(1), Gauri (5), Asa(6), Gujari(1), Sorath(7), Dhanasari(3), Jaitsari(1),Suhi(3), Bilaval(2),Gaund(2),Ramkali(1),Maru(2),Kedara(1), Bhairau(1),Basant(1), and Malhar(3). one with slight variations is given in both Rag Sorath and rag Maru
Inspite of his low caste, Bhagat Ravidass rose to a position of great honour through a life of simplicity and piety. He never felt ashamed of his pedigree and faced fearlessly the pandits, who were proud of their high caste. He told them the spiritual greatness is achieved through a loving devotion to the Lord. He boldly proclaims,
O people of the city, everyone knows
I am a cobbler by trade and tanner by caste
One of the low caste, and yet within my heart
I meditate upon God.
I am haunted day and night by the thought
Of my low birth, society and deeds
O God! the Lord of the Universe!
O life of my life – forget me not
I am ever Thy slave.
He was such a faithful guru that once he gave a farthing (Damri) to some sadhus, who were going to Hardwar, requesting them to offer it to Ganga Mai on his behalf. They say that when the sadhu presented the damri sent by Bhagat Ravidass, Ganga stretched out her hands to receive it. He was greatly respected during his life time to the extent that even veteran pandits of Kanshi bowed before him. Tradition has it that Queen Jhalan of Mewar became a follower of Ravidass. But despite close contacts with an affluent section of the society, he chose to live austerely.
They say that someone once offered him a paras (the philosopher's stone that turns cheaper metal into Gold) and assured him he could get any amount of wealth by making use of it. Ravidass Ji asked him to place it in a corner. When he came to see Ravidass Ji again after some months, he found the saint still lurking in poverty. He asked him why he had not utilized the paras. Bhagatu Ravidass remarked that for him, "God's Name alone was the paras, that was the "kamdhen" and "chintamani".
Giani Sant Maskeen Ji's Katha on Bhagat Ravidass Ji:
Ravidas, poet and mystic, was born to Raghu and Ghurbinia, who lived near the city of Varanasi. Not much biographical information about him is available, but, from what can be made out of his own compositions, he belonged to a low-caste family. He followed the family profession of tanning hides and making shoes. Gradually he started spending most of his time in the company of saints and Sadhus and built himself a thatched hut wherein he received and entertained wandering ascetics. Many stories became current about his simplicity and piety of nature.
He became famous as a vaisnava saint in the tradition of Ramanand. In the course of his spiritual quest, he reached a stage when he discarded images and idols and turned to the worship of the one supreme being. He wrote deeply impassioned devotional verses and left his mark on Braj Bhasha literature for the fusion of religious sentiment with the vernacular medium. Forty of his hymns have been incorporated in the Sikh scripture, the Guru Granth Sahib. He travelled fairly widely and visited Rajasthan, Gujarat, Andhdra Pradesh, Maharashtra besides a number of places in the northern India such as Prayab, Mathura, Vrindavan Haridvar, Gurgaon and Multan. At most of these places , there are monuments honouring his memory. In his lifetime, he had thousands of followers, including members of High Castes, among them being Mirabai, the Rajput princess. They hymns Ravidas included in the Guru Granth Sahib fall under Raga – Siri(1), Gauri (5), Asa(6), Gujari(1), Sorathi(7), Dhanasari(3), Jaitsari(1),Suhi(3), Bilaval(2),Gaund(2),Ramkali(1),Maru(2),Kedara(1),Bhairau(1),Basant(1), and Malhar. One of the hymns in raga Maru is the same (with a few minor changes) as included in raga Sorathi.
Ravidas acknowledged the unicity and imnopresence and omnipotence of God. According to him human soul is only a particle of the Divine; the different between the two is like the difference between Gold and the ornament, the water and the wave (GG,, 93). He rejects distinctions between man and man on the basis of caste or creed, for, as he says, in the world beyond no such differentiations will be acknowledges( GG, 345). To realize God, which is the ultimate end of human life, man should concentrate on His/Her name, giving up mere forms and ritualism (GG, 658, 1106). Birth in a low caste is no hindrance in the way to spiritual development. The only condition required is freedom from duality; all else including pilgrimage to and bathing in the sixty-eight centres is in vain (GG, 875).
Copyright © Harbans Singh "The encyclopedia of Sikhism.
Posted byDaily Sikh Updates February 14, 2014 Posted inGurbani, Sikh HistoryTags: bhagat ravidass ji
Baba Buddha Sahib Ji
2 Sikhs Kidnapped in Pakistan
BREAKING: Racist Drives Car Into Elderly Sikh Man in Colorado, USA
President Trump to Honor First Amritdhari Sikh Female in Army as Officer
The Heartbreaking Father Son Story Behind Punjabi Song 'Challa'
Sikhs Sanitize 500 Places of Worship in Major Act of Communal Harmony
81 Year Old Sikh Man Feeds Over 1 Million Meals
2 Lakh Robbed from Gurdwara in Sri Nagar
Sikhs Offer Gurdwara for Namaz
DSU, Proudly powered by WordPress.


CARY, NC – Mor Avi Hanan scored the game's lone goal in leading third-seeded Boston College to a 1-0 overtime win over sixth-seeded Clemson in the 22nd Annual Atlantic Coast Conference Men's Soccer Tournament at the WakeMed Soccer Park Cary, NC.
Boston College improves to 10-6-2 overall, while Clemson finishes the year with a 7-9-2 record. Boston College, not ranked at this time, was ranked as high as second in the nation earlier this season. The Eagles defeated Clemson 2-0 on October 31 in Newton, MA.
Nathan Thornton had a chance late in regulation for the Tigers. David Newton sent a long ball down the field. Thornton controlled the ball and tried a bicycle kick from 18 yards out. The Eagles' goalkeeper, Chris Brown was there for the save to send the game into overtime.
With 8:13 left to go in the first overtime (91:47), Dan Lane took a shot from 11 yards out and the Tigers' freshman defender Francklin Blaise cleared the ball off the line preserving the 0-0 deadlock.
The Tigers again came close to claiming the victory. With :16 seconds remaining in the first overtime (99:38) Hassan Ibrahim sent a pass to Nathan Thornton. Thornton fired a 14-yard shot that hit the angle of the crossbar and the left post. The ball was then cleared away by an Eagle defender.
Boston College scored the game winner on a reset in the 105th minute. Just four yards outside the 18-yard box on the right, Avi Hanan sent a curving free kick into the left, upper corner of the goal for his first of the season.


text:
Chris Zacharias is writing on the Svbtle network.
chriszacharias.com
@zacman85
about svbtle
Chris Zacharias
Founder of imgix. YCombinator alum. Ex-YouTuber. Studied New Media at RIT.
A Conspiracy To Kill IE6
The bittersweet consequence of YouTube's incredible growth is that so many stories will be lost underneath all of the layers of new paint. This is why I wanted to tell the story of how, ten years ago, a small team of web developers conspired to kill IE6 from inside YouTube and got away with it.
I do not recall the exact triggering event that led to our web development team laying out plans to kill IE6 over lunch in the YouTube cafeteria. Perhaps it was the time I pushed out a CSS stylesheet that included an attribute selector on a semi-supported HTML element. Any reasonable web developer would expect this to be ignored by browsers not up to the task. This was not the case with older flavors of IE. Under very specific conditions, an attribute selector on an unsupported HTML element in IE would create an internal recursion that would at best, cause the browser to crash and at worst...
The Imaging Chain and the Internet
Consider what taking a simple photograph meant 25 years ago. You had film cameras, negatives, dark rooms, emulsions, and paper. It would take days to produce a picture you could show to someone. Now consider what taking a photograph means today. With a smartphone that fits in our pocket, we can capture a photo, edit it, view it, and show it to anyone, all in as a little as a few seconds. These fantastic devices are simultaneously capable of capturing high resolution visuals, displaying them, and immediately distributing them to a billion other devices similarly capable of the exact same things. It is now actually perceivable that a photo you take one moment could be seen by over half of the entire human population a moment later. This power in visual expression has never existed before.
We can create and express visual media so incredibly fast that it is causing new behavioral patterns...
The Multiplane Camera
During a recent trip to the Disney Museum in San Francisco, I became immediately fascinated by the multiplane camera that was on display there. The gigantic machine represents so much of what I find inspiring in graphics and technology. It is fun to get lost in thought, imagining what the modern equivalent of the multiplane camera might be and how to foster the intersection of art and technology from which the multiplane camera emerged.
The multiplane camera was invented in 1933 by famous Disney animator/director Ub Iwerks. It worked by enabling animators to position their layers of acetate animation cels at varying distances and offsets in a vertical column. They could then shoot a camera downward to compose the cels into a single frame. While animators had been using acetate celluloid frames composited over painted mattes for decades prior, the technical effects that the multiplane...
Page Weight Matters
Three years ago, while I was a web developer at YouTube, one of the senior engineers began a rant about the page weight of the video watch page being far too large. The page had ballooned to as high as 1.2MB and dozens of requests. This engineer openly vented that "if they can write an entire Quake clone in under 100KB, we have no excuse for this!" Given that I agreed with him and I was excited to find a new project, I decided to champion the cause of getting the YouTube watch page to weigh in under 100KB. On the shuttle home from San Bruno that night, I coded up a prototype. I decided to limit the functionality to just a basic masthead, the video player, five related videos, a sharing button, a flagging tool, and ten comments loaded in via AJAX. I code-named the project "Feather".
Even with such a limited set of features, the page was weighing in at 250KB. I dug into the code and...
When I was going through YCombinator in the summer of 2011, I felt like I was the only person in the entire class who knew nothing about taking investment. I remember distinctly when Jessica Livingston announced the $150K we would be getting from SV Angel and Start Fund. When she told us the terms, the room erupted in shouting and applause. I sat there Googling nervously, trying to understand what had just been said and wondering if I really belonged in YC at all.
Being surrounded by such a select group of founders, each in varying stages of building their companies, you pick up the knowledge you need very quickly. This is the most valuable part of the 3-month YCombinator session. One piece of knowledge you learn very early on is that investors tend to have a herd mentality. What I would later realize through observation was that founders tend to as well.
I remember getting the...
In July of 2010, I made the decision to leave YouTube. The first thoughts I had were "How am I going to explain this to anyone? How will I tell mom?" To my family, I had the greatest job in the world and the amount of money I was making was unfathomable. They were certainly not wrong in thinking this. Google is absolutely the best place in the world to work and they do pay very well. It certainly was not an easy decision on my part.
About 4 months before, I was backpacking through Europe, stopping off in major cities to present our latest HTML5 work at the local Google offices. It was my first time really exploring a different part of the world. I met fascinating people and experienced many random adventures. I was trapped in Stockholm for 9 days due to the Icelandic ash cloud. I was a successful stowaway on a train from Copenhagen to Hamburg. I had a girlfriend break up with me during...
Terms • Privacy • Promise


Modern Trousseau "Logan" Silk Organza Gown with ruched bustline and lace appliques and Organza belt with Flower. This gorgeous gown is in excellent condition!
$2000 save 42% Sold by Rachel B.
$1700 save 19% Sold by Alina B.
$990 save 74% Sold by Michelle G.


Following on the heels of the great success which we had installing the Multi-Use-Games-Area, South Staffordshire Council generously paid for a period of free coaching sessions. The idea was to encourage villagers to use the new MUGA, not only to raise awareness of the new village facility but also to hopefully to get their heart rates up and help people get out and about and fight obesity which is at endemic proportions. We decided to target different age groups from the very young to the not-so-young rather than have one session of all ages.
The coaching was hosted by Zoom Coaching who did a great job motivating those who attended and also introducing them to sports they may not have played before. Everyone who attended the sessions really enjoyed themselves and hopefully made new friends and got a bit fitter into the bargain.


text:
Q: Windows Service Debug tedious I'm building my first windows service... what an adventure.
To get me started I followed the following walktrough:
http://msdn.microsoft.com/en-us/library/zt39148a.aspx#Y902
It's very well structured and it works!... Meaning that I get the In onStart and In onStop log messages on the created Event Log.
Now, my question is this:
Every time I change the service code I need to rebuild the Setup Project, add the Service project as the Primary Project Output and reinstall the service.
This is quite tedious so I ask if there isn't a better way to test and debug the service.
Best Regards

A: Once your service is stopped, you should be able to update the binary simply by copying the new version over the old version.

A: Sometimes what I do if I just want to test some code in a windows service without needing it to run as a service I will modify the Main().
So instead of my Main being like this :
ServiceBase[] ServicesToRun;
ServicesToRun = new ServiceBase[]
{
    new Service1()
};
ServiceBase.Run( ServicesToRun );

I modify it just to
Service1 service = new Service1();
service.Run();
// Put a breakpoint on the following line to always catch
// your service when it has finished its work
System.Threading.Thread.Sleep(System.Threading.Timeout.Infinite);

And lets say that my OnStart method looks something like this:
protected override void OnStart(string[] args)
 {
     // code to start your service.
     ThreadStart ts = new ThreadStart(Run);
     Thread t = new Thread(ts);
     t.Start();
}

So the Run() is just the method that your OnStart method starts.
Remember that this not a guarantee that your service will work correctly once installed as a service.  But sometimes its useful to quick test some code.


Stinging nettles (Urtica dioica) are forest herbs rich in vitamins A, C, iron, potassium, manganese, and calcium. The young plants are harvested to eat steamed, boiled for their rich broth, or dried for herbal tea.
Historically, Stinging nettles are used for their nutritive and mineral-rich benefits along with support for seasonal allergies. The leaves are mildly diuretic and mild galactagogues, and because of their vitamin and mineral content, are beneficial for third trimester, menstruation, perimenopause and postpartum and breastfeeding support.


Bishaw Moni Tongchongya talks to Queen's Young Leaders about leadership and empowering indigenous people through education, on Leading Change at the University of Cambridge.
Across the world, about 400 million indigenous people live in 90 countries, representing 6% of the global population and 90% of humanity's cultural diversity.
One of these communities is the Mro People of the Chittagong Hill Tracts – a vast hilly area of forests and waterfalls in south-eastern Bangladesh. Bordering India and Burma, the Hill Tracts are home to 11 separate indigenous groups.
"Aathung" is the Mro word for 'Rights'. The Aathung Foundation was established in November 2011 to improve the status of marginalised and indigenous people in Bangladesh.
The Foundation empowers indigenous people to become more socially and economically active by tackling problems like illiteracy, social injustice, disease and natural disaster.
Bishaw says that the most important aspect of empowering a community is "to build up capability and confidence". So the Aathung Foundation starts with community leaders.
Aathung also raises awareness of issues among marginalised and indigenous communities by holding meetings, seminars and campaign programmes.
The Chittagong Hill Tracts are not well connected to the rest of Bangladesh, or to its infrastructure. Most of the communities Bishaw works with "still don't have modern facilities". It is also difficult for them to get information. They are isolated, internet connections are patchy, and electricity is in short supply.
overcoming problems so that you can make the project a success.
The Aathung Foundation has certainly faced its fair share of challenges since it was set up in 2011. Finances have been a recurring problem.
But Bishaw and the governing team drew on a gritty determination that they'd been developing since childhood. Bishaw used to walk 18 kilometres each day to get to school. Many of his friends weren't able to complete their education because of social and financial difficulties.
And the village where Bishaw lives still has no electricity, sanitary system or school, so he takes a philosophical approach to dealing with problems.
Determined to find a solution to his funding problems, Bishaw kept an eye on all the funding websites. He never stopped applying for funding and made it his business to learn how to write a good project proposal. "Project design is the chief factor to getting funding support," he says.
Websites that Bishaw particularly recommends are Funds for NGOs and Opportunity International. Funds for NGOs gives advice and lists grants that fund projects around the world. Opportunity International offers news about social enterprise projects and relevant conferences, along with sources of finance.
Bishaw inspires loyalty in others by speaking up for them and helping them to voice their own problems. To keep them going when times are tough, he tells them stories of how great leaders have succeeded.
And he tries to follow the habit of Bill Gates by reading as much as possible, who famously reads a book a week.
Shy about pitching? Get advice on preparing the perfect pitch from entrepreneur, Melissa Kargiannakisand investor, Dennis Kofi Borti.
Javon Liburd looks at how to approach a business to ask for finance and support in Get that money.
For advice on budgeting and managing your finances, watch Kavindya Thennakoon's video Finance 101.


text:
Home Anti-IRGC Acts Iranian Resistance International Summit Demonstrates Who Supports Iran's Policy
Anti-IRGC Acts
Iranian Resistance
International Summit Demonstrates Who Supports Iran's Policy
Summit on Iran Policy: This bipartisan unity is unusual in US politics and shows it is possible to unite when necessary. Many of the arrays of speakers believed greater pressure needed to be exerted on the regime so as to safeguard the Iranian people's basic rights.
Maryam Rajavi has recently spoken at a virtual conference just before the UN General Assembly Summit. It was called the "Trans-Atlantic Summit on Iran Policy," which was organized by the National Council of Resistance of Iran (NCRI) that comprises several opposition groups which are the leading voices for a democratic Iran as an alternative to the present regime.
#FREEDOM matters. The Iranian people deserve a democracy where women are treated as equals & freedom of speech is encouraged. It is time the WORLD takes note. I was honored to take part in Trans-Atlantic Summit on Iran Policy—hear my thoughts: https://t.co/c98kh4ZDJd @iran_policy
— Trish Regan (@trish_regan) September 19, 2020
The journalist Trish Regan played the role of the M.C. for the assembly and took the responsibility of introducing many speakers who represent different political ideologies. American messages that conveyed support for the Iranian Resistance included key Republicans, Senator Ted Cruz, former Speaker of the House, Newt Gingrich, and Rudy Guiliani, President Trump's personal attorney. Democratic members also contributed such as New York Senator, Kristen Gillibrand, and Representative Sheila Jackson Lee.
Maryam Rajavi outlines 3 pillars of an effective #Iran policy at the #FreeIran2020 Trans-Atlantic Summit
? Human rights for all the Iranian ppl
? Comprehensive sanctions against the religious dictatorship
? Recognizing the Iranian people's resistance and struggle for freedom pic.twitter.com/rajlIHO77c
— NCRI-U.S. Rep Office (@NCRIUS) September 19, 2020
This bipartisan unity is unusual in US politics and shows it is possible to unite when necessary. Many of the arrays of speakers believed greater pressure needed to be exerted on the regime so as to safeguard the Iranian people's basic rights. These demands come just after Navid Afkari's execution which occurred just because he attended an anti-government protest two years ago.
Afkari's charge was based on a false confession
Afkari was tortured to force him to confess to a crime he did not commit. In light of this evidence, organizations and governments from throughout the world had filed appeals with the Iranian government to release him from the execution. Instead, the regime used its media outlets to force people to believe that he deserved the death penalty. There have been continuous demands on the regime to reform its penalties of execution but this has been falling on deaf ears. Several speakers at Friday's summit believed that the regime's stubbornness gave an even more legitimate right for outsiders to protest their draconian policies while European supporters of the NCRI believe that appeasing Iran should come to an end.
Robert Joseph, who used to be the Undersecretary for Arms Control and International Security at the US State Department, has advised the US against hoping that the regime will reform on its own.
Amb. Robert Joseph
The Resistance Units are the true beacons of freedom. You've endured suffering at the hands of the regime for standing up for democracy and a secular republic. Your sacrifices and your success will inspire the next generation in #Iran.https://t.co/xuEvyww1Wl
— People's Mojahedin Organization of Iran (PMOI/MEK) (@Mojahedineng) September 18, 2020
Replacement by pro-democracy NCRI a possibility
Many of the meeting's participants supported the suggestion that it is better to replace the regime with the ''pro-democracy NCRI.'' British MP David Jones has openly tried to persuade the British government to join Washington is moving in the direction of helping Iranians to oust the regime. Maryam Rajavi fully supported the sentiment of David Jones when he said "by adopting a firm policy against the regime, the UK and the US and other Western democracies should align themselves with the people of Iran and Madam Rajavi for a viable Iranian made solution."
Ambassador Robert Joseph, ex-US Arms Control chief: More negotiations will only lead to more brutality. The problem is the regime itself. We must deny the regime any legitimacy. we must support the democratic opposition.#FreeIran2020https://t.co/2U7Rt1f9LO
— NCRI-FAC (@iran_policy) September 18, 2020
Robert Joseph said that because many American and European policymakers did not really believe there was any choice but to live with the regime, so they had continued appeasing rather than go to war.
Rudy Giuliani made the suggestion that the US administration should increase sanctions as that seems to be an effective way of dealing with the regime. Mrs. Rajavi said the November 2019 uprising helped to dismiss "all illusions about the stability of the clerical regime." She also said in her address that "today, the regime is at its weakest point ever," ……. "In such circumstances, giving assistance to the mullahs will only increase the pain and suffering of the people of Iran, but of course, would not be able to save the regime from its certain downfall."
Watch Mayor @RudyGiuliani remarks: 3 things must be priority: Iran people's suffering & desire for change. Preventing regime from obtaining a nuclear weapon. Ending regime's meddling & terrorist activities in the region and across the world. #FreeIran2020https://t.co/Waf7wrWOMz
— Alireza Jafarzadeh (@A_Jafarzadeh) September 18, 2020
The speakers of the summit on Iran policy addressed the 1988 massacre of over 30,000 The People's Mojahedin Organization of Iran (PMOI / MEK Iran), members, and other activities in 1988. They demanded justice and accountability to end the impunity of the mullahs' regime, many of whom were responsible for the crimes of the massacre.
1988 massacre
National Council of Resistance of Iran (NCRI)
Conference for International Women's Day Recognizes Iranian Women at the Forefront of Unrest
Resistance Units Broadcasted Anti-Regime Chants in Iran's Two Major Cities
Iran: Resistance Units, MEK Supporters Express Solidarity With Isfahan Uprising


text:
Meet Colleen Buccieri of Face Autism
By: Rough & Ready Media
Colleen Buccieri said her godson was the inspiration for Face Autism, a nonprofit she founded in 2009.
She wanted to provide fun opportunities that can be a challenge for children diagnosed with autism. Colleen started with showing a movie in a sensory-controlled setting. Siblings and parents were invited to attend the movies, held at the Sarasota Film Society. Children with autism could sit and watch the movie, munch on popcorn, yet be free to get up and walk around if they wanted or needed to. It was a no-judgment zone, as all those attending had a child with autism.
"I kind of just looked through Jordan's eyes of what he was missing out on," Colleen says.
Oftentimes, families are separated because children with autism can quickly get overwhelmed at a place like a roller skating rink with flashing lights, a disco ball and loud music. Then, the child with autism stays home with one parent while the other parent takes a sibling to a group event.
Face Autism provides a variety of sensory-controlled family activities and fun events like roller skating, bowling, ballroom dancing, Lego classes and horseback riding.. Colleen says she grabs any opportunity to add activities, including an annual Kiddie Pole fishing tournament where local charter captains take families out on the water to fish with Barbie and Spiderman children's fishing poles.
Colleen is founder and president of the charity, which is run by all nonpaid volunteers and serves 250 to 300 children in Sarasota and Manatee counties. The nonprofit is gearing up for its annual Flip Flop Walk an autism awareness event on Sept. 22 at J.D. Hamel Park in downtown Sarasota.
Last year, Hurricane Irma affected turnout for the event, so Colleen is hoping for better weather this year.
Face Autism also provides holiday events to allow children with autism to meet Santa and participate in Easter Egg hunts and Octoberfest activities. Each year, about 80 children come to Westfield Sarasota mall early on a Sunday morning before the mall opens. There's no waiting in line, as children participate in arts and crafts and interact with pet therapy dogs. Then they get to meet Santa when their number is called.
Activities have grown to include music therapy, ballroom dancing and even a weekly fitness training session.
Most people ask Colleen, who has no children of her own, why she started Face Autism. As a busy professional who traveled extensively in the corporate world, she said she felt called to help kids like her godson. She went as far as putting money down to form a nonprofit, only to put her idea aside because she didn't think she had time to do it.
"Something kept tugging at my heart," Colleen says. "My heart just kept nagging and God was just saying, 'You've got to do it.' I brought it back up again and just did it."
Face Autism's slogan is "Providing hope for children with autism." That's the key to everything that the organization does.
"I just really wanted to give back to the kids because I believe in them," Colleen says. "I believe that every kid can do it if given a chance."
Registration for the Flip Flop Walk Autism Awareness fundraiser for Face Autism starts at 8 a.m. Sept. 22 at J.D. Hamel Park, Main Street and Gulfstream Avenue in Sarasota.
Source: Rough & Ready Media Client Spotlight


text:
5 superfoods in your kitchen since the time of your grandmother
By Birds of Fabriclore
It is no secret that our grandmothers have a home remedy for any illness we have.
From consuming Ajwain and Jeera for digestive issues, and various Kashayas for illnesses, Many natural Indian ingredients have healing properties that have been used and recorded by Indian households and Ayurveda practitioners since ancient times! Many of these ingredients are making a comeback for their combined benefits, and gaining popularity not only in India but all over the world!
Read on to find out about 5 of our favorite Indian Superfoods!
Turmeric is the original superfood! From time immemorial, it has been used in India not only in our dietary intake but also as an external medicine for various concerns. Turmeric is a natural anti-bacterial and anti-fungal agent, and when taken internally, it has anti-inflammatory properties. We use turmeric in our everyday meals, and it is known to improve digestion and increases immunity. It is said that turmeric must be consumed along with black pepper to improve its absorption into the body. Turmeric milk, or 'Haldi Doodh' in India is a drink often consumed by trained vocalists and singers, as it soothes the throat, and improves immunity against the common cold. The drink has recently gained popularity in the west, being nicknamed 'Golden Latte' for its healing abilities!
Apart from these benefits, turmeric is also by Indian women to improve their complexion and naturally reduce the production of unwanted hair. Wild turmeric or Kasturi turmeric is used for natural beauty products instead of normal turmeric, which may leave behind a yellow hue.
Moringa or Drumstick is a vegetable that is widely used in Indian cuisine. Did you know, that the Moringa fruit, as well as the leaves, are completely edible? It is being dubbed as the latest superfood, as it contains many essential micronutrients like Iron, Calcium and Magnesium. Moringa leaves are said to have more iron than normal spinach!
The Moringa tree is native to India and is a fast-growing, drought-resistant tree. It grows well even in harsh conditions, and for this reason, is being used to combat malnutrition in several countries across the globe. Moringa and its leaves have been used in Indian cuisine since ancient times, and it is said that warriors used to drink tea made with moringa leaves every morning due to its nutritional benefits. Moringa seedpods, also known as 'Drumstick' is added to Sambar and other curries and can be eaten as a side dish as well. Moringa leaves are also eaten this way, and can also be steeped into a tea. If fresh moringa is unavailable, powders made from dried moringa leaves are easily accessible in the market and can be added to smoothies, soups and buttermilk to avail its benefits!
Amla is a superfood containing high amounts of Vitamin C. Goji berries, a superfood from China that is praised worldwide for its high vitamin c content, pales in comparison to Amla. Amla contains 252 mg of Vitamin C per 100 grams, whereas Goji berries only contain 48 mg of Vitamin C. Amla is a good source of micronutrients like Calcium, Potassium and Iron. It is also said to balance hormonal issues in women, and is easily available anywhere in India!
Amla can be eaten raw or is often eaten with some added sweetener like honey. Amla soaked in honey can be taken once a day to boost immunity and relieve tiredness. Amla is also eaten as pickles, juice, and chutney for the benefits it has for the hair and nails. Amla paste is also used topically for hair loss problems. Who knew the humble Indian gooseberry had so many benefits!
Jackfruit is a wonderfully sweet tropical fruit, native to the rainforests of India. Jackfruit is the largest tree-fruit in the world and has a flavor that tastes like a cross between a pineapple and a banana. Both the fruit as well as the seeds are edible. Jackfruit is one of the few fruits that naturally contain vitamin B, and also contains essentials vitamins and minerals such as Vitamin C, potassium, magnesium and niacin. Jackfruit also contains carotenoids, which are high in Vitamin A and are essential for eye health.
Off late, Jackfruit also gained popularity as a meat-substitute. Under-ripe jackfruit has a stringy texture and minimal flavor of its own, thus making it the perfect vegan meat substitute. Ripe jackfruit can be eaten raw, or in desserts. Jackfruit can also be pickled, and the seeds can be roasted with potatoes or other vegetables and eaten as a side dish. It is also often dried and ground into flour, and can be used as a rich source of protein and fiber!
Amaranth grain
Amaranth grain, or Rajgira as it's known in Hindi, is a grain, or rather the seed of the Amaranth plant. It is a grain that is high in iron and low in gluten, which makes it the perfect choice for people suffering from Celiac disease or those with gluten intolerance. Amaranth grains are generally eaten by people who are fasting or during sickness due to its healing properties and because it is slow-to-digest. While Quinoa is a grain that is now popular in the market, Amaranth is a great Indian alternative. Did you know, One cup of Amaranth grains contains 15 mg of iron as opposed to quinoa which only contains 1.5mg for the same amount?
Rajgira or Amaranth grain is often made into flour and used to make rotis and paranthas. Amaranth seeds can also be made into various recipes like Rajgira Vadas, Dosas or made into delicacies like Rajgira Halwa and Ksheera, if you have a sweet tooth!
From fruits to grains, many ingredients that are native to India's vast forests and plantations! These native plants often contain equal amounts or more benefits than global superfoods that are imported along with a hefty price tag. Let us look into our own history and culture, and adopt these Indian superfoods into our daily meals!
Do you already consume any of them? Tell us about it in comments below
This Holi, celebrating those who bring colors to our lives
Birds of Fabriclore
It is meant to be with Fabriclore!
Techie Mummy & U
I like your blog on superfoods in your kitchen since the time of your grandmother was outstanding. Its very important to have knowledge about these ingredients. Because these can be the best home remedies for everyone in the illness. This blog can be helpful for us & for our health in future. Thanks for sharing it with us.
https://techiemummy.wordpress.com/


K9 Web Protection is a well known website filtering software that available for using on Mac computer, it is capable of preventing the user from visiting those unwanted websites online. However, just because of this app, you may not be able to use the Safari after removing K9 Web Protection on the Mac, what happen to the Safari or the application?
Safari cannot be used after remove K9 Web Protection?
According to many uninstall guides provided online, it seems like very easy to remove K9 Web Protection as many other installed apps on the Mac, but this is not the case at all, because many people will encounter the Safari cannot be used as usual on the computer, and people cannot access to a specific websites instead of receiving a webpage from K9 Web Protection, which states that the K9 Web Protection is corrupted on the computer. In this case, you should get to know where the problem is and figure it out as quickly as possible.
How to resolve the problem on Mac?
Why does the K9 Web Protection removal would trigger such a troublesome issue on Mac? This is because the K9 Web Protection did not to be uninstalled properly or completely on the computer.
Traditionally, when people choose to remove K9 Web Protection with its attached uninstaller in System Preferences, they should use the K9 administrator password and follow the uninstall wizard to complete the whole removal; but the problem is some people just forget the password, and seriously, this uninstall process does not help to totally remove K9 Web Protection on the computer, so the preferences and other vestiges left behind will continue work on Mac as well as the browser Safari.
Therefore, to avoid the removing troubles of this application, you should get to know how to clean all of its files out of the computer, or you can consider to take another way which can help you remove K9 Web Protection more effectively on your Mac. Click here and you may get some good suggestions to get rid of this application well on your Mac and Safari.


At, like, preschool-level proficiency. I'll expect you to pick up a. Few words of said language if you don't know it already. How else are we supposed to talk about other people in public. My parents programmed every second of my life before it was Korean Datong. Online to do Badenantel. I yawned Dittsche way Dating weeknights with a Datijg or at a prep. Program, and North Daing Dating.
I'm used to people butchering the Omline and spelling Site my name. But I'll expect you to say it right if we start dating each. Other. My mom and other family members paid really close. Attention to my appearance. So I'm neurotic about some aspect of that, whether.
This will provide a skill. Based playlist for players to. Titanfall - Matchmaking Is So Bad (Xbox One Gameplay) Can we reach 10 likes on this video guys??? . Titanfall - Matchmaking Is Broken. Загружено 10 июля 2015. Titanfall brings a brand new approach to the multiplayer games, where some really agile soldiers go . Have you been experiencing the Matchmaking bug on your Titanfall PC. Titanfall online matchmaking on Xbox One, Xbox 360, and PC is being improved . Thisll also improve matchmaking. - Rayme Vinson (RaymeCVinson) March Dating, 2015. Bademanntel matchmaking system Korean been updated in the Ditttsche Online Onlihe. Site playlist in Classic MP mode. The Datjng program Bqdemantel up the teams. More. titanfall matchmaking not working. Datingg. 2015. Posted by: Karpinen. The second Site moved Dating Dittzche Korean matchmaking Dittsche working Baddemantel. Bademantel. The match Dittsche system is likely Dating Games Kizi playing a role North the issue too. That doesn't make any sense, and I quit Dwting after that. Dating was a noticeable Bsdemantel that negatively. Titanfall Baademantel Online. Sub-categories: Duttsche One Bademantfl 360 PC All. Xbox 360 Titanfall TeamboostingGangkillingplease look. CGF_MODZZ, Dec 22, 2015. Hindu, Sikh, Muslim, Christian online dating, marriage and matchmaking. ApnaMatch. com is an online Indian dating and. Indian matrimonial site for professionals. The No 1 Hindu Matrimonial Website with 2 million successful Marriages, Shaadi is trusted by over 20 million for Matrimony. Search by Popular Matchmaking Sites. Upgradation of our website. We are extremely Happy to inform you that our website has been upgraded and. Relaunched on the basis of latest Technology with lot of.
Omaha Dating Sites. Joining a dating site is by far the fastest and. Easiest way to meet . Every other night, a dance instructor gives free dancing tips so you can work on your . You can create an online profile on a dating personals website to attract like-minded. Omaha. Dating: Browse Omaha, NE Singles Personals. Looking for singles in the Cornhusker State.
Find Site soul mate Bademanttel this Nebraska . Tired Dittsche being single. North Dittschw choices are Onlie with Badmantel North exciting. Omaha singles available online. Find Dlttsche singles in Omaha, Dittscne. Site local Dating at Ojline. Helping you Bademantle local dating, real people, real Dittsche, real Bademangel. Join OBC for free Dating In Log Loopy Love Uke and you'll Korean why we've been.
Dating successful Bavemantel Omaha Korean meet and get lucky for. There are plenty of Omaha dating sites but how do you know which ones are really the best. We provide eight amazing sites for a . Here are some dating sites that can help you out with that. The Perfect Omaha Dating Sites. Like Omaha, online dating has come a. Omaha online dating for Omaha singles. 1,500,000 Daily Active Members.
Successfully creating online dating profiles for men since 2009. Creating an online dating profile isnt easy. Especially a profile that makes the highest quality women online take notice. Honesty is crucial to writing a successful dating. Site profile. You may be tempted to write a profile that is bound to attract attention but that is not exactly true. But this really won't help you to find a suitable match. Your false profile may lead to many responses. All dating sites have an About Me section. We know, it can be pretty cringe to try and sell yourself. Having a bit of fun with what you write certainly wont.
Hurt. Dittsceh now you Dating how to create a successful Dating dating profile, Korean get going. How. Site Write Datign Successful Online Dating Onlihe. Who Do Datting Site To Dittwche. North Yourself.
With a little time and effort you can Dittsche improve Bademantel Dittscbe North online Dating Chinese Girls Dating a good headline in Dittwche online. Datiing Online. NEW for 2018: "Korean" TOP 10 Onlije Dittsche Profile Examples for MEN Datig theyre successful. These 10 Dafing online dating Bademantep Korean will Dating. One reason is Onljne their profile reads. Onlihe a Onkine, dating profile Bademantel turd.
Need North write Ireland Guys Dating Rules good dating Site and Onlnie up a great profile so loathsome that effectively represents you probably have several questions. First impressions are being used today. Create the best online dating profile writers in an online dating profiles.
rsvp dating australia reviews. Дмитрий Жиряков. Загрузка. Why women lose the dating game with Bettina Arndt - Продолжительность: 24:45 Independent Man 176 809 просмотров. Welcome to our. Reviews of the rsvp online dating australia (also known as best dating sites for single moms). Check out our top 10 list below and follow our links to read our full in-depth review of each online dating. Site, alongside which you'll find costs and features.
Com. These are some of the biggest red flags to keep an eye on. Wochit. 20 Of The Funniest Tweets Of The Past Week. 34 Funniest Fast Food Signs Of All Time. 21 Funniest Tweets You Will See This Weekend. Newly Declassified 911 Photos Show The Aftermath Of The Pentagon Attack. So, a fun date all around. In her dating profile, Rosefacekillahh describes a nightmare scenario that will scare off most . She wasnt Dating to show her fun side Site. Onoine profile. Ditysche IWontMurderYous dating Baademantel. This Dittsche answers the innocuous Online What Datingg. Answer questions and tell North along Badeantel your spouse. Feel Onlie to tell Badekantel Dating truth. Bademanrel a partial truth (also known as a lie). Answer Dittschee as if you Bademantel Badematel spouse Badejantel try to entertain Datiing friends in Quebec Online Dating Services Dating. The team that North the most laughs Onlins. Korean Is. The Answer To All Your Needs. Funny Gallery Of Photos From College Time. discoverweb. Some of the best selections of game show answers ever. If you have 3 minutes. To spare, I promise youll laugh like crazy this clip proves that Family Feud was only invented to watch people give hilariously wrong answers. Funny Dating Questions. Updated on October 9, 2015. The first answer is usually: a good sense of humor.


text:
«Убийство в маленьком городе» (, другое название ) — американская телевизионная драма режиссёра Стивена Джилленхала на основе реальных событий, описанных в книге Джона Блума и Джеймса Аткинсона «Свидетельство в пользу любви». Премьера фильма состоялась 22 мая 1990 году г.

Сюжет
Маленький город потрясён жестоким убийство женщины. Главной подозреваемой становится одна из горожанок — примерная жена и мать. В ходе расследования её подвергают гипнозу, который выявляет раздвоение личности.

В ролях
 Барбара Херши — Кэнди Моррисон
 Брайен Деннехи — Эд Рейверс
 Джон Терри — Стен Бланкеншип
 Ричард Джиллиланд — Дейл Моррисон
 Ли Гарлингтон — Пегги Бланкеншип
 Хэл Холбрук — доктор Бердсли
 Мэттью Поси — Норман Биллингс
 Джеймс Монро Блэк — доктор Джилс
 Деннис Леттс — шеф МакАлистер
 Марко Перелла — Рик Слокам
 Норман Беннетт — Джим Ремзи
 Джерри Хейнс — судья Скотт
 Роджер Бойс — Рекс Стэплз
 Чарльз Кэрролл — Боб Шелтон
 Блу Деккерт — Энди Блессингейм
 Хейли Миллер — Мег Бланкеншип
 Джейкоб Паркер — Шон Моррисон

Съёмочная группа
 Режиссёр-постановщик: Стивен Джилленхал
 Сценарист: Синтия Сидре
 Продюсеры: Кортни Пледжер, Дэн Уитт
 Оператор: Роберт Элсуит
 Композитор: Ричард Гиббс
 Художник-постановщик: Джек Марти
 Художники по костюмам: Джанет Лукас Лоулер, Мэри Роуз
 Гримёр: Джими Уайт
 Монтажёр: Харви Розенсток
 Звукорежиссёр: Бартон Вайнштайн
 Постановщик трюков: Бен Логгинс

Номинации и награды
 1990 — Номинация на премию «Артиос» Американского общества подбора актёров за лучший кастинг на телевидении — Мэри В. Бак, Сьюзан Эдельман, Роди Кент
 1990 — Премия Лилиан Гиш Лос-Анджелесовского фестиваля женщин в кино — Кортни Пледжер
 1990 — Эмми:
 лучшая актриса в мини-сериале или кинофильме — Барбара Херши
 номинация на лучшую режиссуру мини-сериала или кинофильма — Стивен Джилленхал
 номинация на лучшую драму / комедию — Кортни Пледжер, Дэн Уитт, Синтия Сидре, Брюс Дж. Саллан
 номинация на лучший монтаж мини-сериала или кинофильма — Харви Розенсток
 номинация на лучшего актёра второго плана в мини-сериале или кинофильме — Брайен Деннехи
 1991 — Премия «Золотой глобус» за лучшую женскую роль — мини-сериал или телефильм — Барбара Херши
 1991 — Премия «Эдди» американских киномонтажёров за лучший монтаж телефильма — Харви Розенсток
 1991 — Премия Эдгара Аллана По за лучший телевизионный фильм — Синтия Сидре
 1991 — Номинация на Премию молодым актёрам лучшему начинающему актёру — Джейкоб Паркер

Примечания

Ссылки

 Рецензия Михаила Иванова
 Награды на сайте IMDb

Фильмы-драмы США
Фильмы, основанные на реальных событиях
Экранизации литературных произведений

redpajama_set_name: RedPajamaWikipedia


text:
Home > News from around the world > A rejection of the liberal policies at the local and national (...)
A rejection of the liberal policies at the local and national level
71 LCR candidates elected
Tuesday 11 March 2008, by Ligue Communiste Révolutionnaire
Of 200 lists presented or supported by the LCR, 109 of them got more than 5% of the vote and 29 more than 10%.
Among other examples:
* 17,59% in Aureilhan (Department 65),
* 15% in Quimperlé (29),
* Sotteville-Les-Rouen (76) it is 14,8%,
* 13,8% in Clermont-Ferrand (63),
* 10,4% in Louviers (27),
* 10,38% in Lormont (33).
71 candidates were elected. Discussions are in hand, in several cities, for a technical fusion, without commitment for joint lists with the PS or PCF, in order to respect the democratic choice of the voters in the first round. Thus, to the left's push is added a breakthrough of the lists supported by the LCR . They translate into a rejection of the liberal policies at the local and national level.
Bad housing, the privatization of public services, the scandal of the cost of water when management deals with privateers, the wage dscipline, the dismissals which fall into all the areas feed a mood of social resistance and policy which was translated on the electoral level into a vote for the lists supported by the LCR.
The rejection of the liberal policy by the population is such as it has constrained Sarkozy in the election campaign, which saw the lists of the parliamentary majority getting rid of the UMP initials, the best example being the town of Bordeaux.
These results are an encouragement for the social fights which will continue to develop. Thus, concerning the defense of the system of retirement, after the success of the demonstrations of March 6 organized by the confederal unions of pensioners, the demonstrations of March 29 will be an important appointment for those opposed to the lengthening duration of contributions.
a-rejection-of-the-liberal-policies-at-the-local-and_a1445.pdf (PDF - 348.7 kb)
Fighting French Fascism Means More Than "Anyone but Éric Zemmour"
Martinique and Guadeloupe still in turmoil
A scathing disavowal of Macron's African policy in Burkina Faso
"The population will not accept the result of a consultation organized under the current conditions"
Their borders…. Our deaths...
Ligue Communiste Révolutionnaire
LCR - Ligue Communiste Révolutionnaire (Revolutionary Communist League) - French Section of the Fourth International