.
In order to use the BrokenRules object within our Person object, we need to declare and create a Private variable to hold the new object. Add the following line of code to the General Declarations section of our Person class module:
Private WithEvents objValid As BrokenRules
We also need to add code in the Person object's Class_Initialize routine to create an object for this variable:
Private Sub Class_Initialize()
Set objValid = New BrokenRules
objValid.RuleBroken "SSN", True
End Sub
Notice, here, that we're forcing the "SSN" rule to be considered broken straight away. This is important, because, as the programmer, we know that the value is blank to begin with, so we need to make sure the business rule is enforced right from the start by indicating that it's broken.
An important note about events. An object can't raise events until it has been fully instantiated, and an object isn't instantiated until after the Class_Initialize routine is complete. This means that any RaiseEvent statements called during the Class_Initialize routine won't actually raise any events – which is what we'd really like to have happen.
In this example, we're indicating that a rule is broken, so the BrokenRule event should fire; but it won't, because we're still in the Class_Initialize routine.
Handling the BrokenRule and NoBrokenRules Events
Our Person object needs to handle the events that will be created by the BrokenRules object we just created. To make it easier for the UI developer, we'll also have our Person object raise an event to let the UI know when the Person object becomes valid or invalid.
This first line that we'll add to handle these events goes in the General Declarations section of the Person class module, and it declares the Valid event. We'll use this event to indicate when our Person object switches between being valid and invalid:
Event Valid(IsValid As Boolean)
As we've seen, our BrokenRules object raises two events of its own: BrokenRule and NoBrokenRules. The BrokenRule event will be fired whenever a new rule is broken, while the NoBrokenRules will be fired any time the number of broken rules reaches zero.
By adding the following code to our Person object, we'll be able to react to these events by raising our own Valid event to tell the UI whether the Person object is currently valid:
Private Sub objValid_BrokenRule()
RaiseEvent Valid(False)
End Sub
Private Sub objValid_NoBrokenRules()
RaiseEvent Valid(True)
End Sub
If the BrokenRule event is fired then we know that at least one of our Person object's rules is broken. We can then raise our Valid event with a False parameter to indicate to the UI that the Person object is currently invalid. Likewise, when we receive a NoBrokenRules event, we can raise our Valid event with a True parameter to indicate to the UI that there are no broken rules and that our Person object is currently valid.
Implementing the IsValid Property
When we started this discussion, it was with the intent of creating an IsValid property on our Person object so that the UI could check to see if the object was valid at any given point. By implementing the Valid event in the previous section, we've actually provided a better solution; but we can't assume that the UI can actually receive events, since not all development tools provide support for them. The IsValid property therefore remains very important.
Fortunately, our BrokenRules object makes implementation of the IsValid property very trivial. The BrokenRules object provides us with a count of the number of broken rules, and if that count is zero then we know that there are no rules broken. No broken business rules translates very nicely into a valid Person object.
To implement our IsValid property, let's enter the following code into the Person class module:
Public Property Get IsValid() As Boolean
IsValid = (objValid.Count = 0)
End Property
This property simply returns a Boolean value that's based on whether the broken rule count equals zero or not.
Enforcing the SSN Business Rules
In our Person object's Class_Initialize routine, we added a line to indicate that our SSN field was invalid. Since we're making it a required field, and all fields in a brand new object are blank, we know that the rule is broken during the initialization of the class.
We can therefore finish the job by adding some code to check our business rules within the Person object's Property Let routine for our SSN property:
Public Property Let SSN(Value As String)
If Len(Value) > 11 Then _Err.Raise vbObjectError + 1001, "Person", "SSN too long"
udtPerson.SSN = Value
objValid.RuleBroken "SSN", (Len(Trim$(udtPerson.SSN)) <> 11)
End Property
What we've done, here, is simply call the RuleBroken method of our BrokenRules object, passing it the name of our rule "SSN" and a Boolean to indicate whether the rule is currently broken. In this case, the rule just checks to make sure the value is exactly 11 characters long.
Anywhere that we need to enforce a rule in our object, we just need to add a single line of code with the rule's name and a Boolean to indicate if it's broken or unbroken. All the other details are handled through the BrokenRules object and the events that it fires.
Using the Valid Event and IsValid Property in the UI
At this point, we've implemented the BrokenRules object to keep track of how many business rules are broken within a business object. We've also enhanced our business object, Person, to take advantage of the new BrokenRules object. All that remains is to enhance our user interface to take advantage of the Valid event and IsValid property that we just added to our Person object.
A rich user-interface should be able to enable or disable the OK and Apply buttons as appropriate, so that they're only available to the user if the object is actually valid at the time. Most users dislike clicking on a button only to be told that the requested operation can't be performed. Ideally, when an operation can't be performed, the associated buttons should be disabled.
In our case, the OK and Apply buttons are only valid if the business object itself is valid. If the business object isn't valid then we can't save it, so both the OK and the Apply button should be disabled.
Adding the EnableOK Subroutine
The easiest way to manage the enabling and disabling of these buttons is to put the code in a central routine in the form. In our case, we'll need to add the following routine to our EditPerson form in the PersonDemo project:
Private Sub EnableOK(IsOK As Boolean)
cmdOK.Enabled = IsOK
cmdApply.Enabled = IsOK
End Sub
Using the IsValid Property
When the Edit Person form loads, the first thing it needs to do is make sure that the buttons are enabled properly. We need to check the Person object's IsValid property in our Form_Load routine to find out if the business object is valid at this point. Add this line of code to the EditPerson form's Form_Load routine:
Private Sub Form_Load()
Set objPerson = New Person
EnableOK objPerson.IsValid
End Sub
All we need to do is call our EnableOK subroutine, passing the Person object's IsValid property value as a parameter. If the object is valid, we'll be passing a True value, which will indicate that the OK and Apply buttons are to be enabled.
It might look as if we could rely on the Person object's Valid event to fire as the object was created. We could then act on that event to enable or disable the two buttons on our form. Unfortunately, objects can't raise events as they are being created, so there is no way for our Person object to raise its Valid event while it's starting up. This means we can't rely on the Valid event to tell us whether the object is valid as our form is first loading.
Responding to the Valid Event
Once the EditPerson form is loaded and the user is interacting with it, we can rely on the Person object to raise its Valid event to tell the form whether it is currently valid. In our EditPerson form, we can add code to respond to this event, enabling and disabling the OK and Apply buttons as appropriate:
Private Sub objPerson_Valid(IsValid As Boolean)
EnableOK IsValid
End Sub
Since the object will raise this event any time it changes from valid to invalid or back, the UI developer can rely on this event to enable or disable the buttons for the life of the form. All we need to do is call our EnableOK subroutine, passing the IsValid parameter value to EnableOK to indicate whether to enable or disable the two buttons.
Removing the SSN Change Event Code
As our form currently stands, we have code in the Change event of the txtSSN control to trap any error raised by our business object. Now that we've enhanced the business object to utilize the BrokenRules


4 ways the policing community are making a difference in diversity & inclusion
Our friends in the policing community recognize, value and celebrate the diversity in the world around us. Each force stands together to advocate for a workplace that reflects the communities they serve and protect. In this blog, we share how four policing organizations are making a difference in the diversity and inclusion space.
1. Creating equal opportunities for everyone, Essex Police
A diverse workforce is what strengthens any organization. And, Essex Police are championing workplace diversity with their 'We Value Difference' recruitment campaign.
Inclusive recruitment is necessary in achieving workplace diversity. How we write our job descriptions, facilitate job applications, adjust the interview process, and indeed, advertise career opportunities, are all elements which affect the diversity of our applicants and successful candidates.
Throughout their 'We Value Difference' campaign, Essex Police demonstrate the diversity of their workforce, in an effort to 'dispel the myths that you have to be a certain 'type' of person to be a police officer'. With their slogan, 'One team. One family. One county. One force', they highlight that their workforce is simply made up of different people, with the same values. With a focus on shared values, the campaign invites candidates from all walks of life - and really highlights their commitment to diversity, inclusion and equality.
"Our officers don't let their differences hold them back. They embrace them and use them as strengths – whether it's their age and experience, their language, their gender, or their cultural background, everyone has something unique to bring to the workforce." - Essex Police
Take a look at their recent advertisement;
2. Actively listening. Thoughtfully adapting. Proactively supporting, the Metropolitan Police
Being a truly inclusive organization is about actively examining your current situation - and being proactive in addressing your identified challenges. The Metropolitan Police have been demonstrating their commitment to inclusion, recently sharing with us how they uncovered, addressed, and improved personal challenges of their own.
Their extensive work began as they aimed to understand how well they were doing, particularly in relation to disability inclusion. A review by the Business Disability Forum found some areas that required improvement. In the time that followed, they talked to their people to understand the cause of the identified challenges. They actively listened, until they had a complete understanding of the challenges, and why they existed.
Finally, they were able to start addressing the challenges with some thoughtful adjustments. Taking into consideration the points raised by their workforce, they began to redesign their policies, processes and procedures.
Today, they're proactively supporting their workforce with a workplace adjustments process redesigned to meet the needs and desires of their staff. Key elements include workplace adjustment and carers passports; a centralized hub for easier coordination with stakeholders; a tiered system, providing employees with autonomy to self-approve adjustments; and, appointment of a Senior Champion to keep disability confidence high on the agenda.
3. Celebrating difference & championing an inclusive culture, Merseyside police
In addition to taking positive action with your diversity and inclusion initiatives, it's also important to create a culture of belonging - an environment where employees feel comfortable and confident to be who they are. This can be helped by openly talking about diversity, and celebrating the strengths it brings. Not only do Merseyside Police have a range of staff support networks and associations, they also dedicate time for their organization to share, learn, promote and celebrate inclusivity.
Over National Inclusion Week this year, they kicked off an educational series where the departments across their force came together to inspire one other. They held webinars and talks from key speakers to educate each other on a diverse range of topics. Discussions ranged from unconscious bias, to neurodiversity, and the menopause.
Alongside this, they continued their conversations over social media, sharing the differences that make their employees unique - and sharing why diversity, equality and inclusion is high on their agenda.
"We realize that the organization will only be truly inclusive when each and every Merseyside Police officer and staff member recognizes, appreciates and champions difference so that people across our force, individually and as one team, can do their best work." - Merseyside Police
4. Supporting D&I in the workplace and beyond, Hertfordshire Constabulary
Extending their initiatives to the wider community, Hertfordshire Constabulary actively advocate for equality and inclusion for everyone. Last year, they displayed a big presence, and were involved in many initiatives across different groups.
They hosted and took part in a mix of educational and celebratory events, to understand the challenges different groups faced, and identify how better to support inclusion in their community. Working alongside other organizations, they also aimed to support the health, safety and wellbeing of vulnerable groups. Some of these included;
 - Tailored workshops on addiction and mental health, helping to educate officers on how to best interact with people fighting addiction and mental health challenges
 - LGBT+ conference held by Hertfordshire Constabulary, with sessions from police officers, community partners and the LGBT+ community.
 - Continued efforts to grow their Key Individual Network, a group of 800+ people representing their diverse communities.
 - Think Safe courses delivered to adults with learning disabilities, in partnership with the Community Learning Disability Service, Hertfordshire Fire and Rescue Service and Hertfordshire Constabulary.
 - Free to be' workshops, delivered to students in an effort to promote anti-bullying and encourage students to challenge prejudice;
 - Watford's 'We' campaign, an anti-discrimination campaign in conjuction with Watford Football Club, to celebrate difference and tackle discrimination
You can hear more about their initiatives in 'Policing Hertfordshire for everyone Issue 9'
We hope you've been inspired reading about the different approaches to D&I. At Texthelp, we've been supporting the policing community with inclusive technology, designed to empower a diverse workforce. Learn more in our case study with South Yorkshire Police.
P.S We'd love to hear what you're doing to make a difference in diversity, equality and inclusion. Let us know in the comments below!


Suppose you have two event delivery mechanisms, one for immediate (synchronous) delivery and one for delayed (asynchronous) delivery. The names sendEventNow() and sendEventLater() suggest themselves. If the intended audience is expected to know the "synchronous" terminology, you could also call them sendEventSynchronously() and sendEvent- Asynchronously(). Now, if you want to encourage your users to use synchronous deliv- ery (e.g., because it is more lightweight), you could name the synchronous method sendEvent() and keep sendEventLater() for the asynchronous case. If you would rather have them use asynchronous delivery (e.g., be- cause it merges consecutive events of the same type), you could name the synchronous method sendEventNow() and the asynchronous method sendEvent() or postEvent(). Qt! In Qt, sendEvent() is synchronous, and postEvent() is asynchronous. One way to keep them separated is to observe that sending an email is usu- ally much faster than posting a letter using regular mail. Still, the names could have been clearer. A similar principle applies when naming the parameter of a copy con- structor or of an assignment operator in C++. Because it offers good con- trast with the implicit this parameter, other is a good name. A poorer choice would be to call it after the class: // SUBOPTIMAL Car &Car::operator=(const Car &car) { m_model = car.m_model; m_year = car.m_year; m_mileage = car.m_mileage; ... return *this; } What is wrong with this? This method deals with two Cars: *this and car. The name car is appropriate in contexts where there is only one Car, but it is not helping much when there are two or more. 4.3 Beware of false consistency APIs, like good writing, should display symmetry. In his American English style book2 , William Strunk Jr. enjoins us to "express co-ordinate ideas in 2 William Strunk Jr., The Elements of Style, 1918. Available online at http://www. _URL_. 23
 23. 23. similar form", adding: This principle, that of parallel construction, requires that ex- pressions of similar content and function should be outwardly similar. The likeness of form enables the reader to recognize more readily the likeness of content and function. Familiar in- stances from the Bible are the Ten Commandments, the Beati- tudes, and the petitions of the Lord's Prayer. The ﬂip side of this rule is that asymmetry of function should be re- ﬂected by asymmetry of form. Consequently, if you make a habit of preﬁx- ing setter methods with "set" (e.g., setText()), then avoid that preﬁx for methods that aren't setters. Qt! This guideline has been violated every so often in Qt's history. The Qt 3 method QStatusBar::message(text, msecs) displayed a message in the status bar for a speciﬁed amount of milliseconds. The name looks like that of a getter, even though the method is non-const and returns void. For Qt 4, we considered renaming it setMessage() for "consistency". However, with its two parameters, the method doesn't feel quite like a setter. In the end, we settled for the name showMessage(), which doesn't suggest false analogies. The event delivery example from the previous guideline can also serve as illustration here. In C++, since a synchronous mechanism delivers the event immediately, the event can usually be created on the stack and passed as a const reference, as follows: KeyEvent event(KeyPress, key, state); sendEventNow(event); In contrast, the asynchronous mechanism requires creating the object using new, and the object is deleted after it has been delivered: KeyEvent *event = new KeyEvent(KeyPress, key, state); sendEventLater(event); Thanks to static typing, the compiler will catch the following bad idioms: // WON'T COMPILE KeyEvent *event = new KeyEvent(KeyPress, key, state); sendEventNow(event); // WON'T COMPILE KeyEvent event(KeyPress, key, state); sendEventLater(event); 24
 24. 24. False consistency would suggest making the two methods' signatures iden- tical, despite the asymmetry of function (namely, sendEventLater() takes ownership of the event, whereas sendEventNow() doesn't). Qt! In Qt, we walked straight into the trap: sendEvent() and postEvent() both take a pointer, which makes it very easy to leak memory or double- delete the event. From an API perspective, a better solution would have been to restore the symmetry by having sendEventNow() take ownership of the event or sendEventLater() copy it. However, this is less efﬁcient. To attract the favor of the gods, we must routinely sacriﬁce pure API design principles on the altars of performance and ease of implementation. 4.4 Avoid abbreviations In an API, abbreviations mean that users must remember which words are abbreviated, and in which contexts. For this reason, they should gener- ally be avoided. An exception is often made for very common, unambigu- ous forms such as "min", "max", "dir", "rect", and "prev", but then this convention must be applied consistently; otherwise, users will inadver- tently invoke setMaximumCost() instead of setMaxCost(), and the day after they will try to call setMaxWidth() instead of setMaximumWidth(). Although errors like this are caught by the compiler, they can aggravate users. Qt! The examples above come straight from Qt 4 (QCache and QWidget). Simi- larly, Qt 4 has QDir and QFileInfo::isDir() but also QFileDialog::set- Directory() and QProcess::workingDirectory(). This guideline applies to abbreviations, not to acronyms. To separate the two, listen in the hallway: XML is called XML, not Extensible Markup Language, so it qualiﬁes as an acronym; but JavaScript is JavaScript, not JS. In addition, since users don't have to type parameter names, abbrevia- tions are acceptable in that context, so long as their meaning is clear. 4.5 Prefer speciﬁc names to general names Prefer speciﬁc names to general ones, even if they sometimes seem too re- strictive. Remember that names occupy API real estate: Once a name is taken, it cannot be used for something else. This is especially an issue with class names, since a library might contain hundreds or even thousands of classes that need distinct names. Another reason for preferring more spe- ciﬁc names is that they are easier for users to relate to. 25
 25. 25. Qt! The QRegExp class provides support for regular expressions, but also for wildcards and ﬁxed strings. It could also have been called QStringPattern, but this more general name hides what the class is used for in the vast major- ity of cases, namely, regular expressions. For this reason, the name QRegExp is arguably the most appropriate for the class. If you need an error-reporting mechanism for SQL, call the abstract base class SqlErrorHandler rather than just ErrorHandler, even if the imple- mentation is not tied to SQL. Arguably, calling the class ErrorHandler could facilitate its reuse in other parts of the API, but in practice this kind of reuse is unlikely, because it is hard to foresee future requirements. Some- day, you might need an error handling mechanism for XML that is slightly different from the SQL error handing and call it XmlErrorHandler. Ten years down the road, you might ﬁnally discover a way to unify all error handlers—then, you will be thankful that the name ErrorHandler is still available, and use it as a base class for all the speciﬁc handler classes in the next version of the library, when you can break binary compatibility. Qt! For many years, Qt provided two APIs for XML: SAX and DOM. A nice, symmetric naming convention would have been to use QSax and QDom as the class preﬁxes, but unfortunately we settled for QXml for SAX and QDom for DOM. The asymmetry,


text:
The treasures are protected from 99% of the sun's harmful UV rays.
Named for several prominent conservationists, the Marsh-Billings-Rockefeller Mansion and National Historical Park came under the auspices of the United States National Park Service in 1987. Today the Park Service continues to manage and preserve the mansion along with its surrounding 550-acre mountain forest. The mansion abounds in precious irreplaceable furnishings, draperies, artwork, paneling, and floors that needed protection from the damaging rays of the sun.
Seeing how other national landmark sites have met similar challenges, the National Park Service turned to LLumar Window Film for help. LLumar N-1065 SR CDF, a solar control window film, reduces the sun's most damaging rays and is virtually invisible from either side of the glass. The Park Service had the film professionally installed on over 2,700 square feet (250 square meters) of complex multi-paneled windows.
Today, the treasures residing in the Marsh-Billings-Rockefeller Mansion are protected from 99% of the sun's harmful UV rays. This protection was achieved without affecting the mansion's original, elegant window façade. Visitors to the mansion are unaware that its windows are filmed, but the Park Service knows its valuable exhibits are protected from damage by the sun for generations to come.

source: openbmb/Ultra-FineWeb


3
Like in a title. Let's say I have normal polygon that overlaps other. And in my case, when the other polygon has holes or is splitted (like on attached image), normal methods "intersection" or "intersects" don't work.
One of my try was something like this, but it failed.
"some_feature" is that normal polygon.
# if polygon has holes, create new one without them
if len(feature.geometry().asPolygon()) > 1:
 feat = QgsFeature()
 geom = feature.geometry().asPolygon()
 feat.setGeometry(QgsGeometry.fromPolygon([geom[0]]))
 print(some_feature.geometry().intersection(feat.geometry()).area())
Below are some images, that show cases I'm talking about.
On the left is case with holes and on the right is one object as two polygons.
Does anyone have idea, how to achieve such thing?
4
 - what is "some_feature" defined as?
 – kttii
 Dec 19, 2016 at 20:50
 - It's just a polygon that I wanna compare with "feat"
 – DIV
 Dec 19, 2016 at 20:54
 - I don't see in your code where "some_feature" is defined. Is there more code than what you posted?
 – kttii
 Dec 19, 2016 at 21:45
 - That variable is not important, like I've said It's just normal polygon.
 – DIV
 Dec 19, 2016 at 22:37
1 Answer 1
3
I don't know why normal methods "intersection" or "intersects" don't work in your script for polygons with holes or multi parts but, in my script, they did. I used polygon layers of next image (where attributes table belongs to multipart layer):
enter image description here
My complete script is:
registry = QgsMapLayerRegistry.instance()
polygon3_test_holes = registry.mapLayersByName('polygon3_test_holes')
polygon7_test = registry.mapLayersByName('polygon7_test')
polygon_multipart = registry.mapLayersByName('polygon_multipart')
featp3_hole = polygon3_test_holes[0].getFeatures().next()
featp7_test = polygon7_test[0].getFeatures().next()
feat_multip = polygon_multipart[0].getFeatures().next()
epsg = polygon3_test_holes[0].crs().postgisSrid()
uri = "Polygon?crs=epsg:" + str(epsg) + "&field=id:integer""&index=yes"
mem_layer = QgsVectorLayer(uri,
 'polygon',
 'memory')
prov = mem_layer.dataProvider()
if featp3_hole.geometry().intersects(featp7_test.geometry()):
 geom = featp3_hole.geometry().intersection(featp7_test.geometry())
 feat = QgsFeature()
 feat.setAttributes([1])
 feat.setGeometry(geom)
 prov.addFeatures([feat])
if featp3_hole.geometry().intersects(feat_multip.geometry()):
 geom = featp3_hole.geometry().intersection(feat_multip.geometry())
 feat = QgsFeature()
 feat.setAttributes([2])
 feat.setGeometry(geom)
 prov.addFeatures([feat])
QgsMapLayerRegistry.instance().addMapLayer(mem_layer)
After running the script at the Python Console of QGIS, I got memory layer (violet) of next image (where it was selected second feature):
enter image description here
Memory layer is a valid layer (it was corroborated directly at command line).
>>>layer = iface.activeLayer() #memory layer
>>>new_feat = layer.getFeatures().next()
>>>new_feat.geometry().isGeosValid()
True
Editing Note:
To validate feature geometry:
layer = iface.activeLayer()
feats = [ feat for feat in layer.getFeatures() ]
for feat in feats:
 if feat.geometry().isGeosValid():
 pass
 else:
 print "geometry is not valid for ID: ", feat.attribute("ID")
4
 - First of all, thanks for your time, xunilk. It helped me in some way, but not solved a problem. Anyway, now I know at least, that a polygons cause problems. I've used your script on new created polygons and result is like yours, but when I do the same with my "original" layers, I got nothing. So, now I have to figure out whats wrong with my polygons :/
 – DIV
 Dec 20, 2016 at 22:07
 - See my Editing Note. I put a script in it to validate geometry for each feature. Change feat.attribute("ID") for adapting to attribute name field in your case.
 – xunilk
 Dec 21, 2016 at 11:47
 - It works. Some of my polygons are not valid. Do you know how I can fix this? Found something like v.clean and it's good for some of them, but maybe you know better way?
 – DIV
 Dec 21, 2016 at 12:50
 - You can also use 'Topology Checker' plugin of QGIS.
 – xunilk
 Dec 21, 2016 at 14:26
Your Answer
By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.
Not the answer you're looking for? Browse other questions tagged or ask your own question.


Let's go to the Bastion The spirit of the Domaine
A unique place
À la découverte du bastion
"La Tour des filles "(Girls' tower) is part of the 5 bastions still present in Beaune. It was built at the beginning of the 16th century and was named after women with loose morals who lived nearby. It was renamed in the meantime "Bastion de l'Oratoire", because of the chapel adjoined. Used since the beginning of Domaine Chanson, the Bastion houses barrels where the wines of the domaine are aged.
When Mars and Bacchus meet
The construction of this real defence tower was decided under Louis XI and achieved under François Ier. Built as a defence tower and classified as an historic monument with its 8-metres thick walls, it became the property of Chanson under the Revolution. The constant temperature and humidity guaranteed by its walls make it an ideal cellar.
Today on 4 different levels, the fourth built in 1826, the Bastion Chanson is entirely dedicated to wine ageing. The first three house red wines where each floor is destined for a vintage. As for the fourth floor, it accommodates white wines.
À la découverte du bastion
Roots that stretch over several centuries... Discover Chanson history!


text:
Adopted as a norm at the United Nations World Summit in 2005 the Responsibility to Protect - known as R2P - refers to the obligation of states towards their populations, and towards all populations at risk of genocide and other large-scale atrocities.
The R2P commitment is outlined in three pillars;
- Pillar 1:The sovereign states have an obligation and carry the primary responsibility to protect their citizens from mass atrocities
- Pillar 2:The International Community has the responsibility to assist states in capacity building to fulfill this responsibility to prevent mass atrocities before, during and after conflict
- Pillar 3:If the state in question fails to act appropriately, the responsibility to do so – in a timely and decisive matter either diplomatically, humanitarianly, peacefully and as a large resort by stronger measures - falls to a larger community of states.
R2P works on the premise of three additional elements;
- The Responsibility to Prevent:The obligation to prevent mass atrocities, develop early warning systems and address the root causes of conflict
- The Responsibility to React:A commitment of measures which should be taken in the face of mass atrocities
- The Responsibility to Rebuild:The obligations of the International Community post-intervention to rebuild and prevent the reoccurrence of mass violence.


Binary package "roary" in ubuntu kinetic
high speed stand alone pan genome pipeline
 Roary is a high speed stand alone pan genome pipeline, which takes annotated
 assemblies in GFF3 format (as produced, for instance, by Prokka) and calculates
 the pan genome. Using a standard desktop PC, it can analyse datasets with
 thousands of samples, something which is computationally infeasible with
 existing methods, without compromising the quality of the results. 128 samples
 can be analysed in under 1 hour using 1 GB of RAM and a single processor.
 To perform this analysis using existing methods would take weeks and hundreds
 of GB of RAM. Roary is not intended for meta-genomics or for comparing
 extremely diverse sets of genomes.


NSS Annapolis
From Wikipedia, the free encyclopedia
Jump to: navigation, search
The 3 remaining towers of the NSS Annapolis.
NSS Annapolis, officially known as Naval Communications Station Washington, D.C. Transmitter or NavCommStaWashingtonDC(T), was a Very Low Frequency (VLF) and High Frequency (HF) transmitter station operated by the United States Navy.
It was located at Greenbury Point, in Anne Arundel County, across the Severn River from Annapolis, Maryland at coordinates 38°58′40″N 76°27′12″W / 38.97778°N 76.45333°W / 38.97778; -76.45333. NSS Annapolis was used by the USN for submarine communication. The station consisted of an umbrella antenna supported by a 1,200-foot (365.76 m) high central mast, which was insulated against ground, 6 guyed masts of 800-foot (243.84 m) and 3 freestanding towers of the same height.
The huge towers were a local landmark, and served as a visual reporting point for aircraft landing at the nearby Baltimore-Washington International (BWI) airport. A golf course ran through the VLF antenna farm; special rules addressed hitting a tower with a ball (usually stroke and distance). The NSS HF receiver station, and the headquarters for NavCommStaWashingtonDC(T), was located at the Naval Communications Station in Cheltenham, Maryland until 1969. In late 1969, the receiver station at Cheltenham closed and a new receiver station was activated at Sugar Grove, West Virginia.
NSS began transmitting in September, 1918 using 500 kilowatt Poulson Arc transmitters. However, arc transmitters were significantly inferior to the then state-of-the-art Alexanderson alternator and the arc transmitters were replaced by more modern vacuum tube transmitters in 1931. VLF, or "longwave" radio was the standard at the time for long range radio transmission, later to be generally replaced by shortwave.
VLF later became essential for communicating with submerged submarines, a critically important capability as submarines became strategic missile platforms. The NSS transmitter fed one million watts of radio energy to its antenna, and during idle times, transmitted the string "W W W VVV VVV VVV DE NSS NSS NSS" in Morse code. The power was so high and the frequency so low, one could hear the signal on practically any kind of receiver anywhere in the Annapolis area (not to mention within some people's dental work). Actual messages were also sent in Morse code, but were either prearranged code signals or were encrypted.
Rendered obsolete by satellite technology and the end of the cold war, NSS ceased operation and most of all of the antennas and most of the towers were demolished in 1999. Only three of the smaller towers were preserved for historic reasons.
External links[edit]


text:
This question already has an answer here:
I find each time I read a line, the end of of line character is included as well (showing as '$' in vi set list command) and am wondering how to automatically remove it when reading from a file?
From the print output, you can see end of line is output each time so that it seems two lines are printed each time.
Here is the code and input file, with output,
import sys fileInput = open(sys.argv, 'r') for line in fileInput: print line python TestLineParse.py TestInput.txt.csv 216 218 219 248 head TestInput.txt.csv 216 218 219 248


text:
Learning through a rich diversity of experiences is integral to our teaching and learning strategy. At Bedford Girls' School we believe that learning should not be confined within the walls of the classroom - our girls' learning is enhanced by varied and challenging experiences beyond the classroom.
Our trips and excursions programme focuses on developing, over time, a wide range of personal, physical and intellectual skills in a wonderful range of environments from the city to the countryside, from local to international and from the developed to the developing world.
Experiential learning encourages young people to develop resilience, independence and team work. It can lead to a deeper and richer understanding of concepts taught in the classroom. It teaches important life skills such as co-operation, interpersonal communication and most importantly helps build a connected community through an appreciation and understanding of different cultures and environments.
Follow our trip blog Visits & Voyages to discover more about our travels.


How can I get a modern translation of The Jew of Malta
Expert Answers
An illustration of the letter 'A' in a speech bubbles
Interesting question! Technically, Christopher Marlowe wrote his play The Jew of Malta in what linguists consider Modern English. Without going into too much detail, Modern English as we know it begins after what linguists call The Great Vowel Shift. This event marked major historical changes in the sounds and vocabulary of the English language. Medieval English is hardly recognizable for modern English speakers and requires a translation to be understood.
By contrast, The Jew of Malta is intelligible for modern readers. However, that does not mean it is easy! Much of the syntax from the 1590 play is archaic, and the metered iambic structure can be confusing. However, if you pay attention, Marlowe's word-choice contains few words unknown to most modern English users.
Examine Barabas's first six lines from the opening scene of The Jew of Malta to illustrate this point.
So that of thus much that return was made;
And of the third part of the Persian ships
There was the venture summed and satisfied.
As for those Samnites and the men of Uz
That bought my Spanish oils and wines of Greece,
Here have I pursed their paltry silverlings.
As you can see in this excerpt, two of these unknown words are references to places (Uz) and people (Sanmites) that are unfamiliar to modern audiences. A modern translation would not change this unfamiliarity. The verb "pursed" is still in use but uncommon. "Silverlings" is a reference to silver coins. The meanings of both examples are discernible from their broader context. Although the sentence structure can be convoluted to suit the iambic pentameter of Marlowe's play, the actual language of the play is straightforward. I would argue that no translation of The Jew of Malta is required. Although there are some paraphrased versions, most of the versions of Christopher Marlowe's play online use the exact language of the 1592 original.
Perhaps what might best help you is an annotated version to help you with unfamiliar allusions and words that are dated. There are several that you can find for free across the Internet and a few that you can purchase in print. eNotes study guides can also help clear up areas of confusion you may have about the plot and characters. I hope this helps!
Approved by eNotes Editorial Team
An illustration of the letter 'A' in a speech bubbles
An interesting question. There are numerous electronic versions of "The Jew of Malta" available. One is provided by eNotes; other sites provide other versions. However, most of the versions I'm familiar with—perhaps all—keep the original vocabulary, or at least part of it. The version at this website is pretty clear:
I'd use it and the eNotes summary and explanation and between the two you should have a clear modern version.
Approved by eNotes Editorial Team
Soaring plane image
We'll help your grades soar
 - 30,000+ book summaries
 - 20% study tools discount
 - Ad-free content
 - PDF downloads
 - 300,000+ answers
 - 5-star customer support
Start your 48-Hour Free Trial


text:
The paper discusses experimental and numerical seismic analyses of typical connections and wall systems used in cross-laminated (X-Lam) timber buildings. An extended experimental programme on typical X-Lam connections was performed at IVALSA Trees and Timber Institute. In addition, cyclic tests were also carried out on full-scale single and coupled X-Lam wall panels with different configurations and mechanical connectors subjected to lateral force. An advanced non-linear hysteretic spring to describe accurately the cyclic behaviour of
connections was implemented in ABAQUS finite element software package as an external subroutine. The FE model with the springs calibrated on single connection tests was then used to reproduce numerically the behaviour of X-Lam wall panels, and the results were compared with the outcomes of experimental full-scale tests carried out at IVALSA. The developed model is suitable for evaluating dissipated energy and seismic vulnerability of X-Lam structures.


text:
The Shepherd without Sheep. Dr Ivan Šubašić and the OSS Shepherd Project
This paper, based almost entirely on the OSS New York Office's Secret Intelligence (SI) files, declassified only in l986, deals with the activities and affiliation of Dr Ivan Šubašić, the former Governor of Croatia and the last Prime Minister of the Yugoslav Royal Government in Exile in London, with the OSS. The original Penetration of Yugoslavia Project of September 1943, which was intended to win the Croat Home Guards (Domobrans) over to the side of the Allies to fight together with Tito's Partisans against the German invaders, was not implemented. Since 1942, Dr Ivan Šubašić kept in close touch with the OSS and in August 1943 he formally joined this intelligence service. From 17 May 1944 to 15 February 1945 a series of cables, named the Ivan Cables and later the Shepherd Cables Series #2, provides very important political information on the activities of the Prime Minister, Dr Ivan Šubašić, and King Peter II of Yugoslavia, their relations with the British, and the negotiations with Marshal Tito. This intelligence was outside the scope of the regular diplomatic activities of the US Embassy in London, and any leakage would have seriously jeopardized British-American relations.
Authors who publish with this journal agree to the following terms:
- Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
- Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
- Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See The Effect of Open Access).

source: m-a-p/FineFineWeb


latter value as \(f(x)\) for some function \(f\text{.}\) As the true length is \(x+\dx\text{,}\) one really should have computed \(f(x+\dx)\text{.}\) The difference between \(f(x)\) and \(f(x+\dx)\) is the propagated error.
How close are \(f(x)\) and \(f(x+\dx)\text{?}\) This is a difference in "y" values:
\begin{equation*} f(x+\dx)-f(x) = \dy \approx dy\text{.} \end{equation*}
We can approximate the propagated error using differentials.
Example 4.4.12. Using differentials to approximate propagated error.
A steel ball bearing is to be manufactured with a diameter of 2 cm. The manufacturing process has a tolerance of \(\pm 0.1\)mm in the diameter. Given that the density of steel is about 7.85 gcm3, estimate the propagated error in the mass of the ball bearing.
Solution
The mass of a ball bearing is found using the equation "mass = volume × density." In this situation the mass function is a product of the radius of the ball bearing, hence it is \(m = 7.85\frac43\pi r^3\text{.}\) The differential of the mass is
\begin{equation*} dm = 31.4\pi r^2 dr\text{.} \end{equation*}
The radius is to be 1 cm; the manufacturing tolerance in the radius is \(\pm 0.05\)mm, or \(\pm 0.005\)cm. The propagated error is approximately:
\begin{align*} \Delta m \amp \approx dm\\ \amp = 31.4\pi (1)^2 (\pm 0.005)\\ \amp = \pm 0.493\text{g} \end{align*}
Is this error significant? It certainly depends on the application, but we can get an idea by computing the relative error. The ratio between amount of error to the total mass is
\begin{align*} \frac{dm}{m} \amp = \pm \frac{0.493}{7.85\frac43\pi}\\ \amp =\pm \frac{0.493}{32.88}\\ \amp =\pm 0.015\text{,} \end{align*}
or \(\pm 1.5\%\text{.}\)
We leave it to the reader to confirm this, but if the diameter of the ball was supposed to be 10 cm, the same manufacturing tolerance would give a propagated error in mass of \(\pm12.33\)g, which corresponds to a percent error of \(\pm0.188\%\text{.}\) While the amount of error is much greater (\(12.33 \gt 0.493\)), the percent error is much lower.
Exercises Exercises
Terms and Concepts
1.
 - True
 - False
Given a differentiable function \(y=f(x)\text{,}\) we are generally free to choose a value for \(dx\text{,}\) which then determines the value of \(dy\text{.}\)
2.
 - True
 - False
The symbols "\(dx\)" and "\(\dx\)" represent the same concept.
3.
 - True
 - False
The symbols "\(dy\)" and "\(\dy\)" represent the same concept.
4.
 - True
 - False
Differentials are important in the study of integration.
5.
How are differentials and tangent lines related?
6.
 - True
 - False
In real life, differentials are used to approximate function values when the function itself is not known.
Problems
Use differentials to approximate the given value by hand.
7.
\({2.05^{2}}\)
8.
\({5.93^{2}}\)
9.
\({5.1^{3}}\)
10.
\({6.8^{3}}\)
11.
\({\sqrt{16.5}}\)
12.
\({\sqrt{24}}\)
13.
\({\sqrt[3]{63}}\)
14.
\({\sqrt[3]{8.5}}\)
15.
\({\sin\!\left(3\right)}\)
16.
\({e^{0.1}}\)
Compute the differential \(dy\text{.}\)
17.
\(y={x^{2}+3x-5}\)
18.
\(y={x^{7}-x^{5}}\)
19.
\(y=\displaystyle{\frac{1}{4x^{2}}}\)
20.
\(y={\left(2x+\sin\!\left(x\right)\right)^{2}}\)
21.
\(y={x^{2}+e^{3x}}\)
22.
\(y=\displaystyle{\frac{4}{x^{4}}}\)
23.
\(y=\displaystyle{\frac{2x}{\tan\!\left(x\right)+1}}\)
24.
\(y={\ln\!\left(5x\right)}\)
25.
\(y={e^{x}\sin\!\left(x\right)}\)
26.
\(y={\cos\!\left(\sin\!\left(x\right)\right)}\)
27.
\(y=\displaystyle{\frac{x+1}{x+2}}\)
28.
\(y={3^{x}\ln\!\left(x\right)}\)
29.
\(y={x\ln\!\left(x\right)-x}\)
30.
\(y={\ln\!\left(\sec\!\left(x\right)\right)}\)
31.
A set of plastic spheres are to be made with a diameter of \({1\ {\rm cm}}\text{.}\) If the manufacturing process is accurate to \({1\ {\rm mm}}\text{,}\) what is the propagated error in volume of the spheres?
32.
The distance, in feet, a stone drops in \(t\) seconds is given by \(d(t) = 16t^2\text{.}\) The depth of a hole is to be approximated by dropping a rock and listening for it to hit the bottom. What is the propagated error if the time measurement is accurate to \(2/10\) of a second and the measured time is:
 1. \(2\) seconds?
 2. \(5\) seconds?
33.
What is the propagated error in the measurement of the cross sectional area of a circular log if the diameter is measured at \(15''\text{,}\) accurate to \(1/4''\text{?}\)
34.
A wall is to be painted that is \(9'\) high and is measured to be \(15',\,1''\) long. Find the propagated error in the measurement of the wall's surface area if the measurement is accurate to \(1/-2''\text{.}\)
The following exercises explore some issues related to surveying in which distances are approximated using other measured distances and measured angles. (Hint: Convert all angles to radians before computing.)
35.
The length \(L\) of a long wall is to be approximated. The angle \(\theta\text{,}\) as shown in the diagram (not to scale), is measured to be \(85.2^\circ\text{,}\) accurate to \(1^\circ\text{.}\) Assume that the triangle formed is a right triangle.
 1. What is the measured length \(L\) of the wall?
 2. What is the propagated error?
 3. What is the percent error?
36.
The length \(L\) of a long wall is to be approximated. The angle \(\theta\text{,}\) as shown in the diagram (not to scale), is measured to be \(71.5^\circ\text{,}\) accurate to \(1^\circ\text{


text:
Neural network-based sensorless direct power control of permanent magnet synchronous motor
Artikel i vetenskaplig tidskrift, 2016
In this paper, a sensorless permanent magnet synchronous motor (PMSM) drive was presented based on direct power control (DPC) technique. To estimate the rotor's position and speed of PMSM, a drastic sensorless strategy was developed according to artificial neural network (ANN) to reduce the cost of the drive and enhance the reliability. The proposed sensorless scheme was an innovative model reference adaptive system (MRAS) speed observer for DPC control PMSM drives. The suggested MRAS speed observer employed the current model as an adaptive model. The ANN was then designed and trained online by employing a back propagation network (BPN) algorithm. Performance of the proposed strategy was adopted using simulation analysis. The results showed the fast dynamic response, low ripples in motor's currents, power, and electromagnetic torque, as well as good performance in tracking speed and power references.
Artificial neural network
Direct power control


text:
After-Hours / Urgent Care
PAD Dallas is open on Saturdays until 12N and Sundays until 2PM. There may be times when your child needs in-office assistance when our office is closed. Please consider the following when deciding between an After-Hours / Urgent Care Facility and an Emergency Room visit:
Benefits of Urgent Care:
- Primarily staffed by pediatricians
- Equipped to handle non-life-threatening situations
- Fast and cost-effective alternative to the emergency department.
Comparing Urgent Care and the Emergency Department:
Time: Urgent care visits average 30 minutes vs. 2+ hours for the Emergency Department
Cost: Urgent care visits average $50 – $150 vs. $1,233 at the emergency department.
For patients with insurance, a co-payment will almost always be higher for emergency department visits than for urgent care visits.
PAD recommends the following Pediatric Urgent Care clinics in the Metroplex: (click on links for location options)
Pediatric Emergency Rooms:
The emergency department is meant for the following:
- Life-threatening situations
- Serious and sudden medical conditions
If you or a loved one is experiencing a life-threatening emergency, call 9-1-1 or find safe transportation to the emergency department near you.
- Medical City Dallas Hospital
- Children's Medical Center in Dallas
- Children's Medical Center at Legacy in Plano


BWITI communities in central AFRICA
Deep in the jungle of central Africa, where the oldest genetic pools are located, our ancestral roots; grows a plant called Tabernanthe iboga: a door to the world of the dead and the ancestors.
"I swam through rivers of various colors and walked a very long way to the country of the ancestors. There I saw many of the people I had met in life. My parents and grandparents were bigger and gave strong advice that I still follow. They took me to the gods. "
 -Banzie Initiate
Iboga has a history of traditional use in healing rituals and initiation rites for thousands of years. Its use originates with the Pygmies, the people of the forest, who later share their knowledge with other neighboring Mitsogo tribes until it spreads through Gabon reaching even Cameroon, Congo, and Zaire.
Like many visionary and initiatory plants, iboga is a key that provides access to other ways of being and states of consciousness. Intense psychological conditioning that includes rites of confession, contacting and honoring the ancestors and building a deep psychic inventory are part of the encounter of initiates with this sacred root.
For the followers of the Bwiti religion, Iboga is an indispensable means through which humans can truly communicate with the deepest abysses of their own souls and with the spirits of their ancestors.
 -Iboga: The Visionary Root of African Shamanism, Vincent Ravalec
Micodi is a Pygmy Massango and Mitsogo village that has lovingly adopted us and initiated us into this secret cult called Bwiti.
Our initiating mothers of Micodi explain that Bwiti is secret because it refers to a dimension that is only accessible through the initiation and consumption of very large quantities of sacred wood (Iboga). Bwiti cannot be described with words... Bwiti is "the one who has traveled to the world of the dead and the ancestors."
This sacred wood is not taken lightly, it usually involves long and complex ceremonies of initiation and transition. It is taken in rites of passage, for example, to travel from childhood to adulthood or in cases of very serious illness. During the initiation, the door to the world of death opens allowing the ancestors to come to heal us, empower us and guide us for what is coming in our next stage.
ONCA has one of its sites in the Micodí village. We are supporting some of the main challenges that the mystical traditions of these tenacious people face.
© 2019 | Panthera ONCA | All Rights Reserved


Anders Lim
Faint Clouds - Poem by Anders Lim
Connecting with the Earth once more
I comprehend the depths of its core
The gap of failure and success
As thin as paper, uncompressed
Greenest grass and flowery hills
Why do breezes feel like chills
Tropical suns and oceans wide
Why does sorrow hit on every tide
If every cloud has a silver lining
What would the faintest clouds
Reveal in his timing?
Listen to this poem:
Comments about Faint Clouds by Anders Lim
There is no comment submitted by members..
Read this poem in other languages
This poem has not been translated into any other language yet.
I would like to translate this poem »
word flags
What do you think this poem is about?
Poem Submitted: Thursday, May 1, 2008
[Hata Bildir]


megaSteve4 megaSteve4 - 19 days ago 10
SQL Question
query that would count and increment the number of duplicate instances of that record
Using Access 2010.
So if I had a table
COL1
A
B
A
C
A
and the run the query I would get the output in COL2 where 'A' is duplicated three times and its COL2 value is in turn incremented.
COL1 | COL2
A | 1
B | 1
A | 2
C | 1
A | 3
Answer
Add a field to your table. Choose AutoNumber as its data type and make it the table's primary key. I named the field ID, so my version of your sample data looks like this ...
ID COL1
 1 A
 2 B
 3 A
 4 C
 5 A
The SELECT statement below returns this result set ...
ID COL1 COL2a COL2b
 1 A 1 1
 2 B 1 1
 3 A 2 2
 4 C 1 1
 5 A 3 3
COL2a and COL2b show 2 methods to achieve the same result. DCount is Access-specific, and required quotes around the m.COL1 text values. The second approach, COL2b, uses a correlated subquery so could work in a different database if you choose. And with that approach, you wouldn't need to bother about quoting text values.
Either approach basically requires the db engine run an additional query for each row of the result set. So, with a huge table, performance will be a concern. Indexing will help there. Add an index on COL1 if there isn't one already. ID already has an index since it's the primary key.
If you can't add a field, and the table doesn't already include another suitable field, then I think you're out of luck. You won't be able to get what you want with an Access query.
SELECT
 m.ID,
 m.COL1,
 DCount(
 "*",
 "MyTable",
 "COL1 = '" & m.COL1 & "' AND ID <= " & m.ID
 ) AS COL2a,
 (
 SELECT Count(*)
 FROM MyTable AS m2
 WHERE m2.COL1 = m.COL1 AND m2.ID <= m.ID
 ) AS COL2b
FROM MyTable2 AS m
ORDER BY m.ID;
Comments


*nix Documentation Project
· Home
 + man pages
· Linux HOWTOs
· FreeBSD Tips
· *niX Forums
 man pages->IRIX man pages -> mtune (4)
Title
Content
Arch
Section

Contents
mtune(4) mtune(4)
NAME [Toc] [Back]
 mtune - default system tunable parameters
DESCRIPTION [Toc] [Back]
 The directory /var/sysgen/mtune contains information about all the system
 tunable parameters, including default values. The files in this
 directory should never be changed. Instead, use the systune(1M) utility
 to change parameters in the /var/sysgen/stune file.
 Each loadable module can have its own mtune file, which is placed in the
 mtune directory and has the same name as the module. Parameters in an
 mtune file may be grouped together in groups, according to the nature of
 the parameters. For example, all parameters dealing with the number of
 processes that can run on the system at any given time are grouped
 together in the numproc group in the kernel module. The syntax of an
 mtune module file is given below:
 [group_name: [flag]]
 parameter_clauses
 Names that end with a colon character, :, are group names. Parameters
 can be grouped together in groups so that one sanity checking function
 can be used to verify the values and the dependencies between these
 variables. The group name is optional if there is only one group in the
 module. For this case, the configuration tools use the module name as
 the group name.
 The group name is followed by a flag. The flag can be either run or
 static. If the flag is run, this group of tunable variables can be
 changed with the command systune on a running system. Otherwise, the
 variables are set at initialization time and can be changed only by
 creating a new kernel and booting that kernel. Modules with no group
 specifier or a group specifier without a flag default to static.
 Each tunable parameter is specified by a single line, a parameter clause,
 in the file. Blank lines and lines beginning with # or * are considered
 comments and are ignored. The syntax for each line is:
 name[,tag] default_value [[min_value [max_value [ll|LL]]
 name The name of the tunable parameter. It is used to pass
 the value to the system when a kernel is built or
 changed by systune command. Since this name is made
 into a global variable name, using a long descriptive
 name is useful to avoid any name collisions.
 tag This optional field is separated from name by a comma.
 It is used to qualify whether the tunable parameter
 should be used in the configuration being built. This
 allows a single tune file to be used in multiple
 different configurations. Parameters without any tag
 are always used, those with a tag are only used if the
 Page 1
mtune(4) mtune(4)
 tag matches one of the tags specified in the system file
 (see system(4)). Only one tag is permitted on a given
 line.
 default_value The default value of the tunable parameter. If the
 value is not specified in the stune file, this value is
 used when the system is built. This value is mandatory.
 min_value The minimum allowable value for the tunable parameter.
 If the parameter is set in the stune file, the lboot
 command checks that the new value is equal to or greater
 than this value. The command systune also verifies the
 new value against this value before changing the system.
 This field is optional; a value of 0 is equivalent to
 not specifying a value.
 max_value The maximum allowable value for the tunable parameter.
 If the parameter is set in the stune file, the lboot
 command checks that the new value is equal to or less
 than this value. The command systune also verifies the
 new value against this value before changing the system.
 This field is optional; a value of 0 is equivalent to
 not specifying a value.
 ll|LL By default, each tunable parameter is represented by an
 global variable in the kernel of type int (32 bits).
 Some tunable parameters may need to be specified as 64
 bit quantities. Adding an ll or LL to the end of the
 parameter specification causes lboot to represent the
 parameter as a long long.
FILES [Toc] [Back]
 /var/sysgen/mtune/* default system tunable parameters
 /var/sysgen/stune local settings for system tunable parameters
 /var/sysgen/system/* master system configuration files
SEE ALSO [Toc] [Back]

 lboot(1M), systune(1M), stune(4), system(4).
 PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
stune IRIX local settings for system tunable parameters
systune IRIX display and set tunable parameters
kctune HP-UX manage kernel tunable parameters
tune2fs Linux adjust tunable filesystem parameters on second extended filesystems
settune_txn HP-UX sets the values of kernel tunable parameters in a transaction
tuneinfo2 HP-UX retrieve detailed information about kernel tunable parameters
kcalarm HP-UX add, delete, or list kernel tunable alarms, as well as turn kernel tunable monitoring on and off.
mvSetImageDefaults IRIX set default parameters for tracks
putprdfnam HP-UX manipulate system default database entry for a trusted system
getprdfnam HP-UX manipulate system default database entry for a trusted system
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service


text:
Date of Award
Master of Science
Department of Engineering Physics
Christopher S. Williams, PhD.
A method to improve the efficiency of photon collection in thin planar HPGe detectors was investigated. The method involved implementing a second HPGe detector to collect Compton scattered photons from the primary detector and incorporating coincident interactions in the two detectors that sum to the full energy event into the energy spectrum. This method is termed Compton rescue because the Compton scattered photons make a partial energy deposition in the primary detector and are added back to the spectrum after being detected by the second detector. This research has implications on improving the efficiency of positron annihilation spectroscopy (PAS) techniques including the use of the method in angular correlation of annihilation radiation (ACAR) and Doppler-broadening of annihilation radiation (DBAR) applications. The effect of using Compton rescue on the energy and spatial resolution on these two PAS techniques was investigated. The research was conducted in two phases: simulation, in which a Monte-Carlo program was used to predict the effectiveness of the Compton rescue method based on photon interaction simulations, and experiment, in which a position-sensitive HPGe detector and a large coaxial HPGe detector were used to implement Compton rescue. A two-detector DBAR experiment on single-crystal Ni was conducted using the Compton rescue setup to illustrate its utility.
DTIC Accession Number
Stevenson, Alexander W., "Improving the Efficiency of Photon Collection by Compton Rescue" (2011). Theses and Dissertations. 1475.


text:
Permaculture Training Begins September 15 in Dobbs Ferry: September 15, September 22, October 20 and November 3, 10 and 17
Roots & Wings visit Claudia Joseph (fourth) at the Old Stone House permaculture garden
Registration is now open for Permaculture Accelerated Training Certification, which will be taught over six Saturdays beginning September 15, at Roots & Wings in Dobbs Ferry. Led by Claudia Joseph of the New York Permaculture Exchange, the course will include classes, fieldwork and projects. Remaining sessions will be on September 22, October 20 and November 3, 10 and 17.
The course covers traditional permaculture topics used in whole-systems design, such as energy, climate, shelter, community, food, waste streams and water management, using current information from experts and practical knowledge from traditional sources.
Joseph is certified by the Permaculture Institute of North America and Permaculture USA. As the director of environmental programs at the Old Stone House, in Park Slope, Brooklyn, she has designed and installed a permanent useful landscape and offers programs promoting community sustainability. She has taught for institutions including the New York Botanical Garden, New York City Parks and the New York Open Center.
"I've never taught a permaculture course like this one," she says. "Instead of talking about the coming climate change, it's here. We need to come together as communities now more than ever."
So participants can step into the rapid transition that is happening now, Joseph will emphasize social cooperation and positive change. Participants will learn design skills and biological gardening through hands-on experience and direct observation, interact with a landscape designed to survive climate chaos and explore stewardship of an undefined public commons.


The coronavirus pandemic has had a massive effect on schools around Berkshire.
There have been numerous cases of pupils being sent home after positive coronavirus tests since the start of the pandemic.
Some schools have also had to close completely for deep cleaning and others have had to send massive amounts of pupils into self-isolation.
For example, at the time of writing there are around 200 pupils at Maiden Erlegh School in Silverdale Road, Earley, who have been sent home after positive tests there, prompting one parent to question why schools are open at all.
Managing schools has been extremely difficult for headteachers and staff, especially as the future of 2021's GCSE and A level exams remains uncertain.
What the uncertainty has prompted is parents in towns like Reading, Windsor, Maidenhead, Bracknell, Wokingham and Slough, to question whether the pandemic might have any impact on the Christmas holidays.
BerkshireLive email updates: We bring the stories to you
BerkshireLive put the question to the Department for Education.
A spokesperson said there are measures in place which do allow schools to change their holidays if they feel the need. They said any changes to holidays would have to be agreed with the local authority.
For example, a school in Berkshire could add a week to its Christmas holidays if it felt the need, but it would mean shortening another holiday like Easter to balance out.
But the spokesperson stressed, in terms of government policy, there are no plans at all to have a blanket change to the Christmas holidays.
They said: "We are prioritising children's and young people's education and wellbeing, by keeping nurseries, schools, colleges and universities open.
"The Chief Medical Officer remains of the view that schools should remain open, and has highlighted the damage caused by not being in education to children's learning, development and mental health.
"There are no plans for schools to break up for Christmas early."
Local authorities in Berkshire also said they would follow government guidelines on any changes, but stressed there were no plans at the moment from any school.


text:
Maxwell's equations are,
Where the vectors are defined in the usual way. Also,
Taking a Fourier transform with respect to the time variable, we have,
See ''Electromagnetics" for more.
The integral form is also commonly given.
Energy of the Field
Power Flow into a Volume
The Poynting vector gives the direction of power flow. The Poynting vector is given by,
It has the units, watts per square meter.
The power flow through a differential area id given by. The power flow through a volume is then given by summing up the power flow through the area enclosing that volume, thus:
Expanding by Maxwell's equations,
The first summand is the power density of the vacuum electromagnetic field; the second and third summands, when integrated, are the power dissipation by magnetic and electric dipoles; the fourth summand, when integrated is power dissipation by current.
Reference: ECE525 Lasers and Detectors. notes taken in class, 2010. Instructor: Joyce Poon.

source: HuggingFaceFW/fineweb-edu


text:
# Wolfeo API
The Wolfeo API allows you to use Wolfeo as part of your production and website. The API provides a limited access to some of Wolfeo's features and functions. This API is subject to change and will be improved over time.
# Getting Started
The Wolfeo API is a RESTful API that returns a JSON response. Communication is via HTTPS and an API Secret Key. An API Secret Key can be created in your settings inside your Wolfeo account.
# API Limits
The API has some limitations as below.
- Up to 2k Contacts can be added (START and PRO users).
- Up to 10k Contacts can be added (ELITE users).
API calls limits:
- 10 calls per second or 600 per minute.
If you want to send more than 10 calls per second, you should consider to create your own queue. Wolfeo WILL REJECT any calls above these limits.
# Creating a Secret Key
The first step in order to communicate with the Wolfeo API is to generate your secret api key. To do so, you MUST HAVE a Wolfeo paid account. The API won't work with free trial user accounts.
Log in to your Wolfeo account and then go to Settings then API.
Click on the Generate API key button to create your API key.
You can choose a name for your API key as you wish (optional):
And finally click on Generate to see your API key.
Now that you have successfully generated your API key you can start to communicate with the API.
Here's an example of how you can communicate:
curl --request GET "_URL_
If the connection is successful, the API will return
the email returned is the email associated with the account the API key belongs too.


text:
NFL Donation Emphasizes Focus on Brain Injuries
The National Football League announced last week that they will donate $30 million to the National Institutes of Health (NIH) to focus on advancing science and research to provide understandings for brain injuries and other medical issues. The NIH is one of the world's leading medical research centers, and the donation will help the NIH specifically focus on mild traumatic brain injuries. Officials also suggest that the research could address other medical issues such as joint disease, heat and hydration-related illnesses, and sudden cardiac death in youth athletes.
According to the NIH, 1.7 million Americans suffer a traumatic brain injury each year, while about 50,000 people die annually from head injury. Because of the complications that may not be readily apparent, including changes in thoughts, sensation, speech, or emotions, traumatic brain injury is often known as the "silent epidemic." The Center for Disease Control and Prevention notes that traumatic brain injury contributes to about 30% of all injury-related deaths in the United States.
As a way to educate local communities about the importance of recognizing head injury symptoms and how to treat them, Crumley Roberts recently launched the Crumley Roberts Safety Clinics. The clinics cover the importance of hydration, heat-related injuries, eye safety and much more. These interactive half-hour presentations are tailored to provide helpful information on preventing illnesses and injuries that go beyond discussion of the typical sprains, cuts, and bruises associated with youth sports.Free Initial Consultation


Puppet Enterprise 2017.3
Use the rules endpoint to translate a group's rule condition into PuppetDB query syntax.
POST /v1/rules/translate
Translate a group's rule condition into PuppetDB query syntax.
Request format
The request's body should contain a rule condition as it would appear in the rule field of a group object. See the documentation on rule grammar for a complete description of how these conditions can be structured.
Response format
The response is a PuppetDB query string that can be used with PuppetDB nodes endpoint in order to see which nodes would satisfy the rule condition (i.e., would be classified into a group with that rule).
Error responses
Rules that use structured or trusted facts cannot be converted into PuppetDB queries, because PuppetDB does not yet support structured or trusted facts. If the rule cannot be translated into a PuppetDB query, the server will return a 422 Unprocessable Entity response containing the usual JSON error object. The error object will have a kind of "untranslatable-rule", a msg that describes why the rule cannot be translated, and contain the received rule in details.
If the request does not contain a valid rule, the server will return a 400 Bad Request response with the usual JSON error object. If the rule was not valid JSON, the error's kind will be "malformed-request", the msg will state that the request's body could not be parsed as JSON, and the details will contain the request's body as received by the server.
If the rule does not conform to the rule grammar, the kind key will be "schema-violation, and the details key will be an object with submitted, schema, and error keys which respectively describe the submitted object, the schema that object should conform to, and how the submitted object failed to conform to the schema.
Back to top


text:
01 Jan Best Rated Hitting Program
How do you teach kids the complexities of core hitting mechanics, specifically rotation and hands inside the ball?
Hitting a baseball or softball, youth players become confused easy, as their mind and body comprehend the complexities of a power swing.
Consequently, learning core mechanics becomes challenging. For example, instructing players rotational hitting mechanics is difficult as their attention draws to the bat; as a result, the player focuses on their arms, as opposed to their core muscles. Another example is coaching, "hands inside the ball;" the task is virtually impossible.
Luckily, we have developed a simple hitting program to make life easier for coaches, and parents.


Project
General
Profile
Actions
Porting Guide: MSM/QSD
Introduction
Many people bought many different phones, and some of them whish to help replicant and/or to port replicant to their phones or devices.
This guide will show what was done for the htc dream, so these people can understand the process better.
When talking about porting, this page talks about re-using existing product definitions. You will not learn how to
build Android for a device not currently supported by Android. Instead, you will learn how to build a version of
[Cyanogenmod _URL_ without proprietary parts.
To gain more insight in the Android build system, refer to Android Build System documentation which is part of
Android Platform Developer's Guide. You should find an answer there if you have any questions about the Makefiles referenced in this document.
Note: The Android Build System documentation above has been removed. You can find a mirror of the (outdated) documentation here and here.
Terminology
The RIL is the radio interface library, that is to say, a library that talks to the modem, usually (but not always) trough AT commands.
Basically the modem runs on a separate CPU,and there is some sort of communication needed between the main CPU and the modem CPU to make telephony work. For instance, the modem must tell you when you've got a call, and you must tell the modem that you want to call someone.
TODO: point to 0707 standard or newer
Help with source code
Keep in mind that on most devices, the full source code of the kernel is released.
However, some userspace libraries, or dlopened libraries (libraries loaded at runtime after the application started) are proprietary software,
so if you're porting to a new CPU/SOC keep in mind that you have the source code to the kernel interfaces.
That can help a lot, and sometimes there is even some sort of documentation in the headers.
Build the source
The first thing to do is to download the replicant sources:
BuildDream can be used as a reference: download and build the sources for your device.
Let's say the user has a HTC Wildfire. It is useful to know the codename of the device in question, which is "Buzz" in case
of the Wildfire.
You need to configure the build tree for our device. By default, a generic image
for the Android emulator will be built.
In BuildDream, you would use the following command to set up the build:
lunch cyanogen_dream_sapphire-eng
Now, since you are not building for the HTC dream, you need to identify the right command that corresponds to your device.
In order to do that, run the following command and look at its output.
$ source build/envsetup.sh
including device/geeksphone/one/vendorsetup.sh
including device/htc/ace/vendorsetup.sh
including device/htc/bravoc/vendorsetup.sh
including device/htc/bravo/vendorsetup.sh
including device/htc/buzz/vendorsetup.sh
including device/htc/glacier/vendorsetup.sh
including device/htc/heroc/vendorsetup.sh
including device/htc/inc/vendorsetup.sh
including device/htc/legend/vendorsetup.sh
including device/htc/liberty/vendorsetup.sh
including device/htc/supersonic/vendorsetup.sh
including device/htc/vision/vendorsetup.sh
including device/motorola/sholes/vendorsetup.sh
including device/nvidia/harmony/vendorsetup.sh
including vendor/cyanogen/vendorsetup.sh
The last line is important:
$ cat vendor/cyanogen/vendorsetup.sh
add_lunch_combo cyanogen_ace-eng
add_lunch_combo cyanogen_bravo-eng
add_lunch_combo cyanogen_bravoc-eng
add_lunch_combo cyanogen_buzz-eng
add_lunch_combo cyanogen_dream_sapphire-eng
add_lunch_combo cyanogen_espresso-eng
add_lunch_combo cyanogen_glacier-eng
add_lunch_combo cyanogen_harmony-eng
add_lunch_combo cyanogen_hero-eng
add_lunch_combo cyanogen_heroc-eng
add_lunch_combo cyanogen_inc-eng
add_lunch_combo cyanogen_legend-eng
add_lunch_combo cyanogen_liberty-eng
add_lunch_combo cyanogen_one-eng
add_lunch_combo cyanogen_passion-eng
add_lunch_combo cyanogen_sholes-eng
add_lunch_combo cyanogen_supersonic-eng
add_lunch_combo cyanogen_vibrant-eng
add_lunch_combo cyanogen_vision-eng
add_lunch_combo cyanogen_z71-eng
PATH=$PATH:$PWD/vendor/cyanogen/tools ; export PATH
The output include the list of supported (by cyanogenmod) devices.
For instance if you have the Wildfire (codename 'buzz') phone do:
lunch cyanogen_buzz-eng
Then build the source, backup what's on your device, including the operating system, and flash the new replicant image.
Then test what works and what doesn't.
The images are located in
out/target/product/dream_sapphire
in the case of the HTC Dream. You need to look in the path that corresponds to your device.
Trying free replacements
The source code you just built contains some free replacements for the proprietary
libraries shipped by your phone vendor with the default firmware.
A list of proprietary libraries is available in
device/htc/dream_sapphire/extract-files.sh
Note: don't run this file, just look at it. If you run it, the proprietary files will be copied from your phone into the build tree. A build containing proprietary files would put you and
your users at risk. Additionally, it is illegal to redistribute such build, because the libraries are not redistributable(the copyright owner didn't allow you to redistribute them).
RIL test
I will take the example of how to use the free RIL (Radio Interface Library) to see if it works fine without modifications:
The proprietary RIL library (which you don't have in the phone) location is found looking at the extract-files.sh
here's a part of extract-files.sh:
adb pull /system/lib/libhtc_ril.so ../../../vendor/htc/$DEVICE/proprietary/libhtc_ril.so
Note: don't run this command, just look at it. If you run it, the proprietary files will be copied from your phone into the build tree. A build containing proprietary files would put you and
your users at risk. Additionally, it is illegal to redistribute such build, because the libraries are not redistributable(the copyright owner didn't allow you to redistribute them).
So looking at the above line the proprietary RIL is located here on the phone:
/system/lib/libhtc_ril.so
while the free ril is located here (known fact):
/system/lib/libreference-ril.so
In order to test the free RIL you could be tempted to do that:
# ./adb remount
# ./adb shell
mv /system/lib/libreference-ril.so /system/lib/libhtc_ril.so
But that wouldn't work as it wouldn't be using the right serial port, the correct way to try that is to use getprop/setprop:
# ./adb shell
# setprop
usage: setprop <key> <value>
What you can do to set the libre RIL is - possibly - this:
./adb shell
setprop rild.libpath /system/lib/libreference-ril.so
setprop rild.libargs -d/dev/smd0
Here's how it looks on a working replicant on the HTC Dream:
# ./adb shell
# getprop | grep ril
[ro.ril.hsxpa]: r2
[ro.ril.gprsclass]: r10
[rild.libpath]: [/system/lib/libreference-ril.so]
[rild.libargs]: [-d/dev/smd0]
[init.svc.ril-daemon]: [running]
[ro.ril.def.agps.mode]: r2
[gsm.version.ril-impl]: [android reference-ril 1.0]
 - /dev/smd0 is the (emulated) serial port
 - /system/lib/libreference-ril.so is where to look for the RIL hardware specific library
Then, you can kill the ril daemon:
./adb shell killall rild
Then try the reference RIL. You can see debugging things and such by doing:
./adb


mStable is a protocol uniting stablecoins, lending, and swapping into a robust standard with the goal to help create an asset economy that is more secure and usable than the sum of its parts.
mStable is:
 - A permissionless protocol for unifying, securing and governing tokenized assets
 - An SDK for DApps and exchanges to simplify and expand stablecoin user experience
 - A platform for zero slippage swaps
 - A mechanism to earn a native interest rate on your mStable assets
 - An open reward pool to bootstrap liquidity, utility and a decentralized community of governors.
mStable united stablecoins and other tokenized assets through its own tokens called mASSETS. Each mASSET is pegged to a unique asset, such as fiat currency, commodities, consumer price indices, or cryptocurrency. However, mASSETS derive their value from a basket of whitelisted tokens representing the same asset. There are three primary functions for mASSETS within the mStable protocol: MINT, SWAP, and SAVE.
mStable is currently offering a liquidity mining incentive for those who provide liquidity to the mUSD/USDC Balancer pool.
mStable was first announced in February 2020 by CEO James Simpson. The team building mStable is Stability Labs, a software development company based in Berlin.
mStable was created due to three major issues faced by stablecoin users:
 - Significant fragmentation of same-peg assets
 - Lack of native yield when it is being increasingly demanded by users
 - Concentrated counter-party risk and lack of protection against complete capital loss
As the DeFi ecosystem continues to grow, users are faced with too many choices for tokens that represent the same thing. Right now DAI, USDT, USDC, PAX, TUSD, CUSD, GUSD, and more all serve the same purpose; to replicate the value of $1 US Dollar. There are differences in mechanisms and functionality between them but the end goal remains the same. This fragmentation allows users to choose at the cost of liquidity and confusion.
On top of this, users who choose a single token are exposed to potentially catastrophic risk. Maintaining an asset peg relies on relatively new systems or third party trus which may be susceptible to losing their value. By unifying pegged assets and rolling them up into a single mASSET, the risk is reduced and users benefit from a more resilient system.
The three primary mASSET functions are MINT, SWAP, and SAVE. Before diving into each one it's important to define a bASSET, which is a 'basket asset', or a non-mStable asset that makes up a portion of the value of a mASSET.
Each mASSET uses a smart contract to facilitate minting and redemption while holding its collateral. Users can deposit a bASSET and receive the corresponding mASSET at a 1:1 ratio. For example, if you send 10 USDC to the mUSD contract, you will receive 10 mUSD back.
Users are rewarded for minting mASSETS – like mUSD – with MTA governance tokens. This reward mechanism will be expanded upon in the 'Meta' section.
Users can reverse the minting process by using a Redeem function within the mASSET contract. They can choose which bASSET(s) to receive upon redemption, and their mASSET amount is subsequently burned.
Swapping is the exchange of one whitelisted bASSET for another at a 1:1 ratio through the use of a straight-line bonding curve. There is no price slippage on swaps, and any amount can be swapped provided the total does not breach weight requirements. mStable charges a fixed fee on every swap performed on the protocol.
Allowing users to swap at a 1:1 ratio introduces the need to maintain balance in the basket. As a result, mStable has implemented maximum weights for each bASSET, represented as a percentage of the total basket value. When a bASSET hits its maximum weight, the rules for minting, redeeming, and swapping are changed to help with re-balancing. For example, if a bASSET has a maximum weight of 35% and it hits this percentage, all minting, redeeming, or swapping that would push the bASSET above 35% is paused. Once other mASSET activities reduce the bASSET weight, those activities can resume.
All mASSETS earn interest within the mStable ecosystem, equal to the average interest earned by the bASSETS it represents plus platform fees. This is done by lending the bASSETS on other DeFi platforms like Aave or Compound and distributing mStable swap fees to mASSET holders. As interest and fees accrue new mASSETS are minted and distributed to all mASSET holders that opted in to receiving interest. This means that mASSETS are used to represent liquidity share and the tokenized asset simultaneously, unique from many other platforms that implement separate liquidity tokens. Additionally, there will always be a portion of mASSETS being used as a medium of exchange, held offline, or not deposited in the SAVE contract. Between this fact and distributing swap fees to mASSET holders, mStable aims to maintain an interest rate above competing DeFi yield products.
Meta Token
Meta (MTA) is mStable's native protocol token serving three primary functions:
 - To act as the ultimate source of re-collateralization
 - To coordinate governance
 - To incentivize the bootstrapping of mASSET liquidity, utility, and a community of Governors
Within the mStable protocol, re-collateralization is the mechanism that protects mASSETS when a bASSET loses its peg. For this to work, MTA is deposited into an mASSET contract to over-collateralize the mASSET. In the event that a bASSET loses its peg, mStable governors vote to remove the bASSET from the basket. The MTA in the contract is then sold for the corresponding mASSET and the purchased mASSETS are burned until the remaining pool of that mASSET is equal to the rest of the basket, and the system is re-collateralized. This mechanism is set to launch with mStable Phase 2.
Governors in the mStable ecosystem are MTA holders that have skin in the game and will be responsible for setting and maintaining system risk parameters. MTA holders must stake their tokens to act as a governor, and will earn a percentage of bASSET interest, swap and redemption fees as a result. Governors will be able to vote on protocol proposals that encompass:
 - Addition/removal of mASSETS
 - Addition/removal of bASSETS
 - Redemption and minting fees
 - Selection of oracles
 - Upgradability of system modules: re-collateralization and governance
To incentivize the bootstrapping of minting, liquidity, and utility of mASSETS, mStable has allocated 20,000,000 MTA (20% of total supply) to an open reward pool. This pool can also be tapped into by users that lock their mASSETS in utility generating DeFi services like liquidity and lending pools, and applications that integrate the mStable SDK or mStable assets. These rewards are paid out monthly and will increase for mStable's first 15 months before slowly declining until the pool is exhausted. The projected MTA allocation is shown below:
How to Get Involved?
To stay up with mStable, follow them on Twitter, read the blog or join the conversation on Discord.
Sign up for This Week in DeFi


text:
An English editor is a person who is engaged in the work of editing the manuscript or the written text that has to be published. The editor is an expert in the language and has good command over the language in which he is doing the work of editing.
In the modern days English is developing as the common language that is being used in writing and in the corporate world. An editor is needed in both the sectors that is, in creative writing and for editing the written documents, mails and other texts which are commonly used in business dealings.
Importance of English Editor
The editor plays an important role in the publication and business sector as it is in his hand to detect all the errors that occur during writing and rectify them before it is finally published or sent to the concerned recipient. The editor has to do to two types of editing.
One is copyediting which is commonly known as proofreading and the other is content editing which is related to higher level of editing as the editor makes major changes in the original manuscript so that the ideas of the writer is brought to a level which can be easily understood by the reader.
A good editor must have good command over English language and through knowledge of grammar as he has to ensure that the final copy that is sent after editing is correct, comprehensible, the ideas are clear, there is a consistency in the text and the text is concise. Professional English editors are very helpful for people who use English as a second language.


text:
Then get it delivered in under 60 minutes. Boom, simple.
Sort by: Featured
All about brandy
How do they make brandy?
Brandy, or sometimes known as brandewijn, originates from the distillation of wine. Distillers use a wide variety of wines to craft the spirit. So yes, brandy can, and often does, come from grapes. Besides grapes, distillers use other fruits ingredients like apricot, peach, apples, pear, cherry and plum, too. That's how they make fruit brandies (think: beloved favorites, apple brandy and peach brandy) with many different notes like applejack and French eau-de-vie.
After the distilling process, the producers let brandy age in a wooden casket, so the liquor achieves its typical caramel color. At minimum, brandy needs to age for two years. If the producer chooses a casket they already used for other liquors, the spirit will have a more complex flavor. Most fruit brandies are unaged.
Winemakers invented this distilled spirit accidentally centuries ago while trying recipes to make their wines more "compact" to ship them more easily. They wanted to remove some of the water from the wines to transport them more easily, then add the same amount of water once the barrels reached their destinations.
Soon, they realized this distilled spirit had a way more complex flavor than the original wine. They changed their minds: instead of watering it down again, they started to sell it as "brandy."
WHAT IS THE DIFFERENCE BETWEEN COGNAC AND BRANDY?
Brandy is to Cognac sort of what sparkling wine is to Champagne. By that we mean all Cognac is brandy but not all brandy is Cognac. Cognac must be made in the Cognac region of France, while brandy can be made anywhere.
WHAT IS THE DIFFERENCE BETWEEN BRANDY AND PISCO?
Similar to the Cognac vs brandy situation - pisco is brandy. It's made the same way - by distilling fermented grape juice into the spirit we know. The difference between pisco and brandy is that pisco must be made in Peru or Chile.
WHAT'S THE DIFFERENCE BETWEEN BRANDY AND ARMAGNAC?
Brandy and armagnac are similar in the sense that they're both made from white wine grapes. The big difference between the two is distillation. Brandy is twice distilled - usually using what's called a pot still. Armagnac on the other hand goes through a different distillation called column distillation.
ARE FRUIT BRANDIES STILL BRANDY?
Yes - though you can sometimes see them called liqueur or schnapps. You'll see this most often with fruit brandys, like apple, cherry and peach.
WHAT DOES VS AND VSOP MEAN?
These are ratings to determine the age of a brandy. VS brandies have aged at least three years, while the VSOP brandies have aged at least four years. VS stands for "very special" and VSOP for "very special old pale." There are also XO (extra old) brandies, which age for at least six and a half years. Lastly, there are Hors d'Age or vintage spirit aged brandies that originated 10 years or more before sale.
Are you ready to choose your own? Search brandy varieties on Driz online or see if we're already in your city. You can click these links to search for Drizly in your city, and look for liquor stores on Drizly near you.


text:
Julie started doing genealogy to get her mother into the DAR, and to discover the identity of her grandmother. Now she hopes to use her knowledge and experience to help others learn about their ancestors. She is a member of Johnson County Genealogical Society, Ozarks Genealogical Society, the Association of Professional Genealogists, the James Ross Chapter Daughters of the American Revolution, and Soule Kindred. She has recently started Walnut Hill Genealogy to help others find their family connections. You can read her blog where she writes about books about history, historical fiction, and biography at walnuthillgenealogy.com.
What happened to the Pilgrims? – Julie Crain Miguel; Intermediate; (Saturday at 12:45 PM)
I discuss how/where in England early colonists came from and what influenced aspects of their lives, including naming traditions and probate. I also trace one Pilgrim line through different locations and denominations.


text:
Yield and Rheological Behaviors of Magnetorheological Fluids
Magnetorheological (MR) fluids are materials that respond to an applied magnetic field with the change of their yield and rheological behaviors. In this paper, the yield and rheological behaviors of MR fluids are discussed. Based on the microstructure of magnetic chain a theoretical model is developed to analyze the effect of an applied magnetic field on the yield stress of MR fluids. Bingham model is used to describe the rheological behaviors of MR fluids subject to an applied magnetic field. The results show that altering the strength of an applied field can control the yield stress of MR fluids. The shear stress increases as the strength of an applied magnetic field increases, and it hardly changes with the increase of shear strain rate. MR fluids exhibit Bingham plastic model.
Zhengyi Jiang and Chunliang Zhang
J. M. He et al., "Yield and Rheological Behaviors of Magnetorheological Fluids", Advanced Materials Research, Vols. 97-101, pp. 875-879, 2010


text:
The FIBA Europe Centre for Basketball Research will aim to:
- Be the leading European centre of development, coordination & supply of world class basketball researches
- Enhance basketball by generating evidence based knowledge
- Offer an independent product evaluation possibility to basketball equipment manufacturers e.g. Shoes, training kits, etc.
- Bring together academics & students from all over Europe
- Organise a bi-annual Research Conference at different venues across Europe
- Organise & coordinate research interest group network meetings
- Promote the transfer of knowledge from academic research to applied practice through the publication of "Basketball Research" journal
- Promote "Basketball Research" worldwide
A selection of the facilities available includes:
- Large motion analysis lab with 3D motion capture for technique analysis
- Biomechanical analysis using isokinetic dynamometry, force platforms, EMG, accelerometry, etc.
- Complete physiology sports science facilities including gas & blood analysis;
- Qualified and accredited staff in interdisciplinary research, sport psychology, physiology.
Motion and Performance Centre (Mobile laboratory)
- The Motion and Performance Centre has also developed and built the first fully equipped mobile motion analysis laboratory in Europe.
- The Motion and Performance Centre Mobile Laboratory is an articulated vehicle that deploys into a motion analysis laboratory equipped with 2 force plates and a full motion capture system. The mobile laboratory comprises a 36 square metre, air-conditioned, laboratory space, washroom facilities and administration area.
- This unique facility can be deployed at the client's site, allowing Motion and Performance Centre to bring its technical capability to the client.


text:
Amberley War Memorial is of c1920 date and comprises a limestone tapering column with a carved wheel cross, set in a stone plinth and stepped platform.
Reason for Listing
Amberley War Memorial, Gloucestershire is designated at Grade II, for the following principal reasons:
* Historic: it has strong cultural and historical significance within both a local and national context;
* Communal: it forms a poignant reminder of the effects of tragic world events on this local community;
* Architectural: although a simple monument, it is an elegant and dignified memorial that contributes to its setting in an historic village with the Cotswolds Area of Outstanding Natural Beauty.
This war memorial was commissioned by Amberley War Memorial Committee, founded in 1919, and is shown on the Ordnance Survey Map of 1922. The War Memorial Committee later became the Amberley branch of the Royal British Legion which, in 1949, added to the memorial the names of the nine men killed in World War II.
A war memorial of c.1920 date. It is constructed of local limestone with a copper bolted band around the power part of the column. It comprises a carved wheel cross atop a tall, octagonal, tapering column, approximately 4.5 metres in height. Below the cross is a carved collar with a geometric pattern. The base of the column is square and set on a larger square plinth with moulded corners. The north face of the plinth is inscribed: OUR GLORIOUS DEAD _PHONE_. The other three faces of the base are inscribed with the names, ranks, and regiments/services of the 21 commemorated dead of World War I. The plinth sits on a three-stepped platform. On the north face of the upper most step is inscribed _PHONE_. The remaining three faces of this step are inscribed with the names, ranks, decorations and regiments/services of the 9 commemorated fallen of World War II.
Source: English Heritage
Listed building text is © Crown Copyright. Reproduced under licence.