Enemy of the State by Curtis Edmonds --<EMAIL_ADDRESS>Stephen Covey is not a moviemaker, and unfortunately, compulsive moviegoing is not one of The Seven Habits of Highly Effective People. But the best-selling author has something to teach us about the moviemaking process, and Enemy of the State serves as a vehicle for an Important Life Lesson in spite of itself.
Covey uses the metaphor of the personal savings account to describe individual integrity.  If you have high reserves in this account, you're better able to handle personal adversity. You can also make withdrawals from this account by doing things that undermine your personal integrity. (Example: "Enemy of the State is a non-stop roller-coaster of a movie! Be sure to catch this thrill ride!" Curtis Edmonds, freelance movie reviewer.)
Just as all of us have our own integrity accounts, actors have their own accounts that they've built up over the years. When they turn in good performances, they build up reservoirs of goodwill in the hearts and minds of the audience. These reservoirs can be depleted by a bad performance or filled to overflowing by great work. And if the actor's balance is very high, he can cash in some of that balance and turn in a performance where he doesn't have to do much heavy lifting. That's exactly what happens in Enemy of the State. Producer Jerry Bruckheimer has assembled a team of good actors -- Will Smith, Gene Hackman, Jon Voight, Barry Pepper -- and inserted them into a man-on-the-run plotline where everything happens at high speed and character development is sacrificed for special effects.
The plot appears to be more complicated in the movie than it is on the trailers, but it really isn't. Prominent labor lawyer Will Smith has something that the government wants, and they chase him the whole entire movie in order to get it. The "something" in this case is a videotape of the murder of a Congressman by the National Security Agency. We know this, because the opening scene of the movie tells us the who and the why of the murder, instead of leaving us in the dark and letting us figure out what's happening at the same time Smith does. To its credit, Enemy of the State has a decent subplot involving the Mafia that distracts Smith -- but instead of letting the audience play along, we're cursed with our superior knowledge the whole way.
The novelty of the movie is supposed to be the use of satellite reconnisance to monitor Smith's every move. The satellite photography is outstanding, however they got it, but it's edited very jerkily and I think it's giving me a headache. The movie ends up being one chase scene after another, and all the chases seem cribbed from other, better movies. There's a dash of The Fugitive in a tunnel scene, a shot of John Grisham's whole lawyer-in-danger thing, a dab of Patriot Games in the satellite imagery, and generous splashes here and there of Quentin Tarantino, but the whole concoction never comes together. (In fact, there's enough Tarantino influence in Enemy of the State to make one wonder what QT might have done with the script and these actors -- not to mention that he might have been a good choice to play one of the geeky high-tech spies.)
To make matters worse, the actors in Enemy of the State aren't playing actual characters. Instead, they're playing their on-screen personas. Smith's character is the Smooth Action Hero, leavened with one-liners. The Smooth Action Hero is more mature than in Men In Black or Independence Day: the wisecracks are still there, but they're toned down somewhat. Hackman plays a renegade government agent who is trapped into helping Smith do the spy stuff, and he plays his part in the same Grumpy Old Commander persona that he displayed in Crimson Tide, his last effort with Scott. Voight is coming off evil performances in Mission: Impossible and The Rainmaker that mirror his performance as an oily National Security Agency executive. And Pepper, fresh from his bravura performance as a Southern sharpshooter in Saving Private Ryan, plays an NSA assassin who happens to have a Southern accent. All the above performances were pretty good -- save maybe for Voight's -- and they're what sustains Enemy of the State and what allows the actors to make big, huge withdrawals from their integrity accounts. Tom Sizemore, almost unrecognizable as a Mafia tough guy, looks to be the only actor who's not phoning in his performance.
Enemy of the State is not a bad movie, necessarily, it's just formulaic and derivative and dumb. It's not filmmaking so much as it's film processing, just throwing in bits from other movies into the cinematic Cuisinart and hoping everything comes out OK. What you get is a moderately entertaining movie with some good actors turning in average performances. Instead of being a win-win movie, (to return to the Covey bit for a second) it's a win-lose movie -- a win at the box office, a loss for the audience.
Rating: B-
--
-- Curtis Edmonds<EMAIL_ADDRESS>Movie Reviews: http://us.imdb.com/M/reviews_by?Curtis+Edmonds
Hollywood Stock Exchange: http://www.hsbr.org/brokers/blueduck/
"Tabasco sauce is to bachelor cooking what forgiveness is to sin."
-- P.J. O'Rourke
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Table 1. Baseline characteristics as a percentage of the sample, unless indicated otherwise
|
Intervention (n = 456) |
Control (n = 451) |
Total sample (n = 907) |
Significant difference I and C |
Intervention (n = 456) :0 |
Intervention (n = 456) :1 |
Control (n = 451) :0 |
Control (n = 451) :1 |
Total sample (n = 907) :0 |
Total sample (n = 907) :1 |
| Male |
60.3 |
60.1 |
60.2 |
n.s. |
60.3 |
60.3 |
60.1 |
60.1 |
60.2 |
60.2 |
| Age, mean (SD) |
20.9 (1.7) |
20.8 (1.7) |
20.8 (1.7) |
n.s. |
20.9 |
1.7 |
20.8 |
1.7 |
20.8 |
1.7 |
| Education |
|
|
|
n.s. |
|
|
|
|
|
|
| Higher professional education |
26.5 |
25.9 |
26.2 |
|
26.5 |
26.5 |
25.9 |
25.9 |
26.2 |
26.2 |
| University |
73.2 |
73.8 |
73.5 |
|
73.2 |
73.2 |
73.8 |
73.8 |
73.5 |
73.5 |
| Moderators |
|
|
|
|
|
|
|
|
|
|
| _{a} |
|
|
|
n.s. |
|
|
|
|
|
|
| Contemplation stage_{b} |
20.4 |
22.4 |
21.4 |
|
20.4 |
20.4 |
22.4 |
22.4 |
21.4 |
21.4 |
| Problem drinking |
38.8 |
39.2 |
39.0 |
|
38.8 |
38.8 |
39.2 |
39.2 |
39.0 |
39.0 |
| Freshmen |
23.3 |
19.3 |
21.3 |
|
23.3 |
23.3 |
19.3 |
19.3 |
21.3 |
21.3 |
| Fraternity or sorority membership |
50.4 |
52.3 |
51.4 |
|
50.4 |
50.4 |
52.3 |
52.3 |
51.4 |
51.4 |
| Measures |
|
|
|
|
|
|
|
|
|
|
| _{c} |
|
|
|
n.s. |
|
|
|
|
|
|
| Heavy drinking |
82.2 |
82.3 |
82.2 |
|
82.2 |
82.2 |
82.3 |
82.3 |
82.2 |
82.2 |
| Frequency of binge drinking |
81.8 |
81.6 |
81.7 |
|
81.8 |
81.8 |
81.6 |
81.6 |
81.7 |
81.7 |
| Weekly alcohol consumption, mean (SD) |
22.0 (15.9) |
21.6 (16.0) |
21.8 (15.9) |
|
22.0 |
15.9 |
21.6 |
16.0 |
21.8 |
15.9 |
| _{aNote. All differences between conditions were non-significant (P > 0.05). SD, standard deviation; T1, 1-month follow-up.} Readiness to change alcohol consumption was assessed through one item asking the participants which statement applied best to them. Participants selecting ‘I want to reduce drinking alcohol within the upcoming 6 months’or ‘I want to reduce drinking alcohol within the upcoming month’were considered to be in _{bthe contemplation stage of change, meaning that they were willing to reduce their alcohol consumption in the near future.} _{c Assessed with the AUDIT and dichotomized into 0 = “no problem drinking”(AUDIT score of ≤15) and 1 = “problem drinking”(AUDIT score of ≥16).} Drinking > 14 or 21 (female/male) glasses of standard units of alcohol per week and/or drinking five or more glasses of standard alcohol units per occasion at least once per week (=binge drinking). |
corpus-oa-uclii-01/10.1093.alcalc.ags133/tables/table1/table.svg.html
|
Table 2. Percentage of heavy drinking and frequency of binge drinking at the 1- and 6-month follow-up by condition (WDYD intervention versus control): intention-to-treat (multiple imputation) and completers-only analyses
|
Intervention |
Control |
|
|
|
|
|
|
n |
% |
n |
% |
OR |
95% CI |
P |
95% CI :0 |
95% CI :1 |
| Heavy drinking |
|
|
|
|
|
|
|
|
|
| 1-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
456 |
81.5 |
451 |
82.8 |
0.92 |
[0.64–1.31] |
0.63 |
0.64 |
1.31 |
| Completers-only |
412 |
81.6 |
409 |
83.1 |
0.90 |
[0.62–1.29] |
0.55 |
0.62 |
1.29 |
| 6-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
456 |
68.0 |
451 |
66.0 |
1.10 |
[0.83–1.46] |
0.52 |
0.83 |
1.46 |
| Completers-only |
412 |
67.5 |
409 |
65.5 |
1.09 |
[0.82–1.46] |
0.55 |
0.82 |
1.46 |
| Frequency of binge drinking |
|
|
|
|
|
|
|
|
|
| 1-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
456 |
80.2 |
451 |
82.3 |
0.88 |
[0.61–1.25] |
0.46 |
0.61 |
1.25 |
| Completers-only |
412 |
80.6 |
409 |
82.9 |
0.86 |
[0.60–1.22] |
0.39 |
0.60 |
1.22 |
| 6-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
456 |
67.0 |
451 |
65.2 |
1.09 |
[0.82–1.44] |
0.56 |
0.82 |
1.44 |
| Completers-only |
412 |
66.7 |
409 |
65.0 |
1.08 |
[0.81–1.44] |
0.61 |
0.81 |
1.44 |
|
corpus-oa-uclii-01/10.1093.alcalc.ags133/tables/table2/table.svg.html
|
Table 3. Weekly alcohol consumption SDs at the 1- and 6-month follow-up by condition (WDYD intervention versus control): intention-to-treat (multiple imputation) and completers-only analyses
|
Intervention |
Control |
|
|
|
|
|
|
M |
SD |
M |
SD |
β |
95% CI |
P |
95% CI :0 |
95% CI :1 |
| 1-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
28.6 |
22.6 |
31.0 |
26.9 |
-0.06 |
[-6.11 to 0.45] |
0.09 |
-6.11 |
0.45 |
| Completers-only |
28.4 |
22.9 |
31.7 |
27.5 |
-0.07 |
[-6.74 to 0.20] |
0.07 |
-6.74 |
0.20 |
| 6-month follow-up |
|
|
|
|
|
|
|
|
|
| Intention-to-treat |
21.5 |
20.6 |
22.4 |
20.5 |
-0.02 |
[-3.61 to 1.88] |
0.54 |
-3.61 |
1.88 |
| Completers-only |
21.2 |
20.7 |
22.3 |
20.6 |
-0.03 |
[-3.94 to 1.72] |
0.44 |
-3.94 |
1.72 |
|
corpus-oa-uclii-01/10.1093.alcalc.ags133/tables/table3/table.svg.html
|
Table 4. Moderating effects on heavy drinking and frequency of binge drinking using logistic regression (intention-to-treat analysis) at the 1- and 6-month follow-up
|
1-month follow-up |
6-month follow-up |
1-month follow-up |
6-month follow-up |
|
|
|
OR |
95% CI |
P |
OR |
95% CI |
P |
95% CI :0 |
95% CI :1 |
95% CI :0 |
95% CI :1 |
| Heavy drinking by |
|
|
|
|
|
|
|
|
|
|
| Gender |
0.72 |
[0.35–1.44] |
0.35 |
1.39 |
[0.78–2.49] |
0.27 |
0.35 |
1.44 |
0.78 |
2.49 |
| Readiness to change T0 |
0.61 |
[0.26–1.48] |
0.28 |
1.28 |
[0.64–2.55] |
0.49 |
0.26 |
1.48 |
0.64 |
2.55 |
| Problem drinking T0 |
0.75 |
[0.35–1.65] |
0.48 |
0.74 |
[0.41–1.33] |
0.31 |
0.35 |
1.65 |
0.41 |
1.33 |
| Freshmen T0 |
1.04 |
[0.45–2.38] |
0.93 |
1.15 |
[0.57–2.33] |
0.69 |
0.45 |
2.38 |
0.57 |
2.33 |
| Fraternity or sorority membership T0 |
1.07 |
[0.53–2.18] |
0.85 |
0.87 |
[0.48–1.56] |
0.63 |
0.53 |
2.18 |
0.48 |
1.56 |
| Carnival participation T1 |
0.78 |
[0.31–1.94] |
0.59 |
0.99 |
[0.55–1.80] |
0.99 |
0.31 |
1.94 |
0.55 |
1.80 |
| Frequency of binge drinking by |
|
|
|
|
|
|
|
|
|
|
| Gender |
0.75 |
[0.37–1.52] |
0.43 |
1.38 |
[0.78–2.44] |
0.27 |
0.37 |
1.52 |
0.78 |
2.44 |
| Readiness to change T0 |
0.67 |
[0.28–1.61] |
0.37 |
1.30 |
[0.65–2.59] |
0.45 |
0.28 |
1.61 |
0.65 |
2.59 |
| Problem drinking T0 |
0.70 |
[0.32–1.49] |
0.35 |
0.75 |
[0.41–1.36] |
0.33 |
0.32 |
1.49 |
0.41 |
1.36 |
| Freshmen T0 |
1.00 |
[0.45–2.24] |
0.99 |
1.14 |
[0.57–2.32] |
0.71 |
0.45 |
2.24 |
0.57 |
2.32 |
| Fraternity or sorority membership T0 |
1.08 |
[0.54–2.18] |
0.83 |
0.90 |
[0.50–1.61] |
0.72 |
0.54 |
2.18 |
0.50 |
1.61 |
| Carnival participation T1 |
0.83 |
[0.33–2.09] |
0.69 |
1.06 |
[0.59–1.91] |
0.84 |
0.33 |
2.09 |
0.59 |
1.91 |
| Note. T0, baseline assessment; T1, 1-month follow-up. |
corpus-oa-uclii-01/10.1093.alcalc.ags133/tables/table4/table.svg.html
|
Table 5. Moderating effects on weekly alcohol consumption using linear regression (intention-to-treat analysis) at the 1- and 6-month follow-up
|
1-month follow-up |
6-month follow-up |
1-month follow-up |
6-month follow-up |
|
|
|
β |
95% CI |
P |
β |
95% CI |
P |
95% CI :0 |
95% CI :1 |
95% CI :0 |
95% CI :1 |
| Weekly alcohol consumption by |
|
|
|
|
|
|
|
|
|
|
| Gender |
0.10 |
[-3.12 to 9.67] |
0.32 |
0.05 |
[-4.14 to 6.69] |
0.64 |
-3.12 |
9.67 |
-4.14 |
6.69 |
| Readiness to change T0 |
-0.10 |
[-15.89 to 0.06] |
0.05 |
-0.02 |
[-8.01 to 5.27] |
0.69 |
-15.89 |
0.06 |
-8.01 |
5.27 |
| Problem drinking T0 |
-0.12 |
[-14.09 to -1.24] |
0.02 |
-0.02 |
[-6.69 to 4.37] |
0.68 |
-14.09 |
-1.24 |
-6.69 |
4.37 |
| Freshmen T0 |
-0.01 |
[-8.65 to 7.50] |
0.89 |
0.04 |
[-3.78 to 9.58] |
0.40 |
-8.65 |
7.50 |
-3.78 |
9.58 |
| Fraternity or sorority membership T0 |
0.12 |
[-3.16 to 10.06] |
0.31 |
0.00 |
[-5.36 to 5.45] |
0.99 |
-3.16 |
10.06 |
-5.36 |
5.45 |
| Carnival participation T1 |
-0.12 |
[-13.52 to -1.74] |
0.01 |
-0.05 |
[-7.84 to 3.21] |
0.41 |
-13.52 |
-1.74 |
-7.84 |
3.21 |
| Note. T0, baseline assessment; T1, 1-month follow-up. |
corpus-oa-uclii-01/10.1093.alcalc.ags133/tables/table5/table.svg.html
|


|
| Local Properties | ||
| Managed Object Types | Data Object Types | All Properties | All Methods |
This class represents a node on which OVF sections can be defined. The possible node types are OstNodeType.envelope, OstNodeType.virtualSystem or OstNodeType.virtualSystemCollection, corresponding to the identically named OVF element types.
Since the node contains a list of children, it can also be regarded as a tree. This tree mirrors the structure of the OVF descriptor. It is provided to OVF consumers as a more convenient way to navigate and modify the OVF than by working directly on the XML.
Properties
| Name | Type | Description |
|---|---|---|
| child* | OvfConsumerOstNode[] |
The list of child nodes. As dictated by OVF, this list is subject to the
following rules:
|
| entity* | ManagedObjectReference
to a ManagedEntity |
The VM or vApp corresponding to this node.
This field is set when this OstNode represents an existing managed entity.
The entity is unset on nodes of type OstNodeType.envelope.
|
| id | xsd:string |
The OVF id of the Content (VirtualSystem or VirtualSystemCollection)
element. Empty on the envelope node.
|
| section* | OvfConsumerOvfSection[] |
The list of sections on this node.
|
| type | xsd:string |
The type of the node. Possible values are defined in the OstNodeType enum.
Since the OstNode tree structure mirrors the structure of the OVF descriptor,
only one Envelope node is defined, and it is always the root of the tree.
|
| Properties inherited from DynamicData | ||
| None |
| Top of page | Local Properties | ||
| Managed Object Types | Data Object Types | All Properties | All Methods |


The generated jQuery plugin
jquery.controller.plugin
When you create a controller, it creates a jQuery plugin that can be
used to:
Create controllers on an element or elements
Call controller methods
Update a controller
For example, the following controller:
$.Controller("My.Widget",{
say : function(){
alert(this.options.message);
}
})
creates a jQuery.fn.my_widget method that you can use like:
// create my_widget on each .thing
$(".thing").my_widget({message : "Hello"})
// alerts "Hello"
$(".thing").my_widget("say");
// updates the message option
$(".thing").my_widget({message : "World"});
// alerts "World"
$(".thing").my_widget("say");
Note that in every case, the my_widget plugin
returns the original jQuery collection for chaining ($('.thing')). If you want to
get a value from a controller, use the [jQuery.fn.controllers] or [jQuery.fn.controller].
Creating controllers
When a controller's jQuery plugin helper is used on a jQuery collection, it goes to each
element and tests if it has a controller instance on the element. If it does not, it creates one.
It calls new YourController with the element and any additional arguments you passed
to the jQuery plugin helper. So for example, say there are 2 elements in $('.thing').
This:
$(".thing").my_widget({message : "Hello"})
Does the exact same thing as:
var things = $('.thing'),
options = {message : "Hello"};
new My.Widget(things[0],options);
new My.Widget(things[1],options);
Note, when a new Class is created, it calls your
class's prototype setup and init methods. Read [jQuery.Controller.prototype.setup controller's setup]
for the details on what happens when a new controller is created.
Calling methods on controllers
Once a Controller is already on an element, you can call methods on it with the same jQuery
helper. The first param to the helper is the name of the method, the following params are
passed to the jQuery function. For example:
$.Controller("Adder",{
sum : function(first, second, third){
this.element.text(first+second+third);
}
})
// add an adder to the page
$("#myadder").adder()
// show the sum of 1+2+3
$("#myadder").adder("sum",1,2,3);
Naming
By default, a controller's jQuery helper is the controller name:
When you create a controller, it creates a jQuery plugin that can be used to:
For example, the following controller:
creates a
jQuery.fn.my_widget
method that you can use like:Note that in every case, the my_widget plugin returns the original jQuery collection for chaining (
$('.thing')
). If you want to get a value from a controller, use the [jQuery.fn.controllers] or [jQuery.fn.controller].Creating controllers
When a controller's jQuery plugin helper is used on a jQuery collection, it goes to each element and tests if it has a controller instance on the element. If it does not, it creates one.
It calls
new YourController
with the element and any additional arguments you passed to the jQuery plugin helper. So for example, say there are 2 elements in$('.thing')
.This:
Does the exact same thing as:
Note, when a
new Class
is created, it calls your class's prototype setup and init methods. Read [jQuery.Controller.prototype.setup controller's setup] for the details on what happens when a new controller is created.Calling methods on controllers
Once a Controller is already on an element, you can call methods on it with the same jQuery helper. The first param to the helper is the name of the method, the following params are passed to the jQuery function. For example:
Naming
By default, a controller's jQuery helper is the controller name:
Here are some examples:
You can overwrite the Controller's default name by setting a static pluginName property:


Thank You For Participating In The
Not
-Hack-A-Thon!
Please Wait For The Contest To Start
While you are waiting, you can review the skills that you will need to participate!
NEXT PROBLEM


Lazy photons at the LHC
Title: “Search for long-lived particles using delayed photons in proton-proton collisions at $\sqrt{s}$ = 13 TeV”
Author: CMS Collaboration
Reference: https://arxiv.org/abs/1909.06166 (submitted to Phys. Rev. D)
(Originally published on Particle Bites)
An interesting group of searches for new physics at the LHC that has been gaining more attention in recent years relies on reconstructing and identifying physics objects that are displaced from the original proton-proton collision point. Several theoretical models predict such signatures due to the decay of long-lived particles (LLPs) that are produced in these collisions. Theories with LLPs typically feature a suppression of the available phase space for the decay of these particles, or a weak coupling between them and Standard Model (SM) particles.
An appealing feature of these signatures is that backgrounds can be greatly reduced by searching for displaced objects, since most SM physics display only prompt particles (i.e. produced immediately following the collision within the primary vertex resolution). Given that the sensitivity to new physics is determined both by the presence of signal events as well as by the absence of background events, the sensitivity to models with LLPs is increased with the expectation of low SM backgrounds.
A recent search for new physics with LLPs performed by the CMS Collaboration uses delayed photons as its driving experimental signature. For this search, events of interest contain delayed photons and missing transverse momentum (MET$^1$). This signature is predicted in the LHC by various theories such as Gauge-Mediated Supersymmetry Breaking (GMSB), where long-lived supersymmetric particles produced in proton-proton (pp) collisions decay in a peculiar pattern, giving rise to stable particles that escape the detector (hence the MET) and also photons that are displaced from the interaction point. The expected signature is shown in Figure 1.
The main challenge of this analysis is the physics reconstruction of delayed photons, something that the LHC experiments were not originally designed to do. Both the detector and the physics software are optimized for prompt objects originating from the pp interaction point, where the vast majority of relevant physics happens at the LHC. This difference is illustrated in Figure 2.
In order to reconstruct delayed photons, a separate reconstruction algorithm was developed that specifically looked for signs of photons out-of-sync with the pp collision. Before this development, out-of-time photons in the detector were considered something of an ‘incomplete or misleading reconstruction’ and discarded from the analysis workflow.
In order to use delayed photons in analysis, a precise understanding of CMS’s calorimeter timing capabilities is required. The collaboration measured the timing resolution of the electromagnetic calorimeter to be around 400 ps, and that sets the detector’s sensitivity to delayed photons.
Other relevant components of this analysis include a dedicated trigger (for 2017 data), developed to select events consistent with a single displaced photon. The identification of a displaced photon at the trigger level relies on the shape of the electromagnetic shower it deposits on the calorimeter: displaced photons produce a more elliptical shower, whereas prompt photons produce a more circular one. In addition, an auxiliary trigger (used for 2016 data, before the special trigger was developed) requires two photons, but no displacement.
The event selection requires one or two well-reconstructed high-momentum photons in the detector (depending on year), and at least 3 jets. The two main kinematic features of the event, the large arrival time (i.e. consistent with time of production delayed relative to the pp collision) and large MET, are used instead to extract the signal and the background yields (see below).
In general for LLP searches, it is difficult to estimate the expected background from Monte Carlo (MC) simulation alone, since a large fraction of backgrounds are due to detector inefficiencies and/or physics events that have poor MC modeling. Instead, this analysis estimates the background from the data itself, by using the so-called ‘ABCD’ method.
The ABCD method consists of placing events in data that pass the signal selection on a 2D histogram, with a suitable choice of two kinematic quantities as the X and Y variables. These two variables must be uncorrelated, a very important assumption. Then this histogram is divided into 4 regions or ‘bins’, and the one with the highest fraction of expected signal events becomes the ‘signal’ bin (call it the ‘C’ bin). The other three bins should contain mostly background events, and with the assumption that X and Y variables are uncorrelated, it is possible to predict the background in C by using the observed backgrounds in A, B, and D:
$$C_{\textrm{pred}} = \frac{B_{\textrm{obs}} \times D_{\textrm{obs}}}{A_{\textrm{obs}}}$$
Using this data-driven background prediction for the C bin, all that remains is to compare the actual observed yield in C to figure out if there is an excess, which could be attributed to the new physics under investigation:
$$\textrm{excess} = C_{\textrm{obs}} - C_{\textrm{pred}}$$
As an example, Table 1 shows the number of background events predicted and the number of events in data observed for the 2016 run.
Combining all the data, the CMS Collaboration did not find an excess of events over the expected background, which would have suggested evidence of new physics. Using statistical analysis, the collaboration can place upper limits on the possible mass and lifetime of new supersymmetric particles predicted by GMSB, based on the absence of excess events. The final result of this analysis is shown in Figure 3, where a mass of up to 500 GeV for the neutralino particle is excluded for lifetimes of 1 meter (here we measure lifetime in units of length by multiplying by the speed of light: $c\tau$ = 1 meter).
The mass coverage of this search is higher than the previous search done by the ATLAS Collaboration with run 1 data (i.e. years 2010-2012 only), with a much higher sensitivity to longer lifetimes (up to a factor of 10 depending on the mass). But the ATLAS detector has a longitudinally-segmented calorimeter which allows them to precisely measure the direction of displaced photons, and when they do release their results for this search using run 2 data (2016-2018), it should also feature quite a large gain in sensitivity, potentially overshadowing this CMS result. So stay tuned for this exciting cat-and-mouse game between LHC experiments!
Further Reading
- CMS’s press release: https://cms.cern/news/its-never-too-late-photons-cms
- CERN article about LLPs: https://home.cern/news/news/experiments/long-lived-physics
- Symmetry magazine article about LLPs: https://www.symmetrymagazine.org/article/the-secret-lives-of-long-lived-particles
Footnotes
1: Here we use the notation MET instead of $P_T^{\textrm{miss}}$ when referring to missing transverse momentum for typesetting reasons.


Diff - Left File: Common/BinaryAttachment.xsd (2012v2.2) Right File: Common/BinaryAttachment.xsd (2013v1.0)
OLD: Common/BinaryAttachment.xsd (2012v2.2)
NEW: Common/BinaryAttachment.xsd (2013v1.0)
OLD line(s): 7
<TaxYear>2012</TaxYear>
NEW line(s): 7
<TaxYear>2013</TaxYear>


Haredim to Liberman: 'The monster of hatred and anti-Semitism in the Knesset'
Haredi MKs accuse Avigdor Liberman of anti-Semitism for declaring haredi and Arab parties part of 'anti-Zionist axis.'
by Arutz Sheva StaffMKs from the haredi political parties strongly criticized Yisrael Beyteinu chairman Avigdor Liberman, who compared the haredi parties to the Joint Arab List, calling both part of "a true anti-Zionist axis."
Deputy Health Minister Yaakov Litzman (United Torah Judaism) stated: "We witnessed today a disgraceful and ugly horror show of 'Yvette' Liberman, full of ignorance and hatred, which would make the historic haters of the Jewish religion and the people of Israel proud. Unfortunately, it can be said that anti-Semitism was rediscovered today."
According to Litzman, at the same time that President Reuven Rivlin is calling for tolerance and an end to incitement, "today we see in the Knesset the monster of abysmal hatred which is unacceptable and illogical."
"Before he slanders the haredim by accusing them of anti-state activities, he should make a mental accounting of how he has cooperated with us over the years," he added.
"I urge Israel's public leaders to take responsibility before we reach a situation where haredim will be harmed by Liberman's harsh and ugly incitement."
Finance Committee Chairman MK Moshe Gafni rose to speak and said: "We do not recall such anti-Semitism in the Knesset before. Not even from Ahmad Tibi. Does this corrupt man know what we are doing?
"Who are you? Nothing," he declared.


interface AutoFocusCallback
Callback interface used to notify on completion of camera auto focus.
abstract fun onAutoFocus(success: Boolean): Unit
Called when the camera auto focus completes. If the camera does not support auto-focus and autoFocus is called, onAutoFocus will be called immediately with a fake value of |


Standard prmtop information %FLAG TITLE %FORMAT(20a4) (ITITL(i), i=1,20) ITITL : title %FLAG POINTERS %FORMAT(10i8) NATOM, NTYPES, NBONH, MBONA, NTHETH, MTHETA, NPHIH, MPHIA, NHPARM, NPARM, NNB, NRES, NBONA, NTHETA, NPHIA, NUMBND, NUMANG, NPTRA, NATYP, NPHB, IFPERT, NBPER, NGPER, NDPER, MBPER, MGPER, MDPER, IFBOX, NMXRS, IFCAP, NUMEXTRA, NCOPY NATOM : total number of atoms NTYPES : total number of distinct atom types NBONH : number of bonds containing hydrogen MBONA : number of bonds not containing hydrogen NTHETH : number of angles containing hydrogen MTHETA : number of angles not containing hydrogen NPHIH : number of dihedrals containing hydrogen MPHIA : number of dihedrals not containing hydrogen NHPARM : currently not used NPARM : used to determine if addles created prmtop NNB : number of excluded atoms NRES : number of residues NBONA : MBONA + number of constraint bonds NTHETA : MTHETA + number of constraint angles NPHIA : MPHIA + number of constraint dihedrals NUMBND : number of unique bond types NUMANG : number of unique angle types NPTRA : number of unique dihedral types NATYP : number of atom types in parameter file, see SOLTY below NPHB : number of distinct 10-12 hydrogen bond pair types IFPERT : set to 1 if perturbation info is to be read in NBPER : number of bonds to be perturbed NGPER : number of angles to be perturbed NDPER : number of dihedrals to be perturbed MBPER : number of bonds with atoms completely in perturbed group MGPER : number of angles with atoms completely in perturbed group MDPER : number of dihedrals with atoms completely in perturbed groups IFBOX : set to 1 if standard periodic box, 2 when truncated octahedral NMXRS : number of atoms in the largest residue IFCAP : set to 1 if the CAP option from edit was specified NUMEXTRA : number of extra points found in topology NCOPY : number of PIMD slices / number of beads %FLAG ATOM_NAME %FORMAT(20a4) (IGRAPH(i), i=1,NATOM) IGRAPH : the user-specified atoms names %FLAG CHARGE %FORMAT(5E16.8) (CHARGE(i), i=1,NATOM) CHARGE : the atom charges. (Divide by 18.2223 to convert to charge in units of the electron charge) %FLAG MASS %FORMAT(5E16.8) (AMASS(i), i=1,NATOM) AMASS : the atom masses %FLAG ATOM_TYPE_INDEX %FORMAT(1OI8) (IAC(i), i=1,NATOM) IAC : index for the atom types involved in Lennard Jones (6-12) interactions. See ICO below. %FLAG NUMBER_EXCLUDED_ATOMS %FORMAT(10I8) (NUMEX(i), i=1,NATOM) NUMEX : total number of excluded atoms for atom "i". Also called IBLO. See NATEX below. %FLAG NONBONDED_PARM_INDEX %FORMAT(10I8) (ICO(i), i=1,NTYPES*NTYPES) ICO : provides the index to the nonbon parameter arrays CN1, CN2 and ASOL, BSOL. All possible 6-12 or 10-12 atoms type interactions are represented. NOTE: A particular atom type can have either a 10-12 or a 6-12 interaction, but not both. The index is calculated as follows: index = ICO(NTYPES*(IAC(i)-1)+IAC(j)) If index is positive, this is an index into the 6-12 parameter arrays (CN1 and CN2) otherwise it is an index into the 10-12 parameter arrays (ASOL and BSOL). %FLAG RESIDUE_LABEL %FORMAT(20A4) (LBRES(i), i=1,NRES) LBRES : names of each of the residues %FLAG RESIDUE_POINTER %FORMAT(10I8) (IPRES(i), i=1,NRES) IPRES : atoms in each residue are listed for atom "i" in IPRES(i) to IPRES(i+1)-1 %FLAG BOND_FORCE_CONSTANT %FORMAT(5E16.8) (RK(i), i=1,NUMBND) RK : force constant for the bonds of each type, kcal/mol %FLAG BOND_EQUIL_VALUE %FORMAT(5E16.8) (REQ(i), i=1,NUMBND) REQ : the equilibrium bond length for the bonds of each type, angstroms %FLAG ANGLE_FORCE_CONSTANT %FORMAT(5E16.8) (TK(i), i=1,NUMANG) TK : force constant for the angles of each type, kcal/mol A**2 %FLAG ANGLE_EQUIL_VALUE %FORMAT(5E16.8) (TEQ(i), i=1,NUMANG) TEQ : the equilibrium angle for the angles of each type, radians %FLAG DIHEDRAL_FORCE_CONSTANT %FORMAT(5E16.8) (PK(i), i=1,NPTRA) PK : force constant for the dihedrals of each type, kcal/mol %FLAG DIHEDRAL_PERIODICITY %FORMAT(5E16.8) (PN(i), i=1,NPTRA) PN : periodicity of the dihedral of a given type %FLAG DIHEDRAL_PHASE %FORMAT(5E16.8) (PHASE(i), i=1,NPTRA) PHASE : phase of the dihedral of a given type, radians %FLAG SCEE_SCALE_FACTOR %FORMAT(5E16.8) (ONE_SCEE(i), i=1,NPTRA) ONE_SCEE : 1-4 electrostatic scaling constant. It is inverted right after it's read in for performance reasons. This allows variable 1-4 scaling. If not present, it defaults to 1.2 for all dihedrals. Therefore, the default ONE_SCEE value in the code is 1.0/1.2 %FLAG SCNB_SCALE_FACTOR %FORMAT(5E16.8) (ONE_SCNB(i), i=1,NPTRA) ONE_SCNB : 1-4 VDW scaling constant. It is inverted right after it's read in. This allows variable 1-4 scaling. If not present, it defaults to 2.0 for all dihedrals. Therefore, the default ONE_SCNB value in the code is 1.0/2.0 %FLAG SOLTY %FORMAT(5E16.8) (SOLTY(i), i=1,NATYP) SOLTY : currently unused (reserved for future use) %FLAG LENNARD_JONES_ACOEF %FORMAT(5E16.8) (CN1(i), i=1,NTYPES*(NTYPES+1)/2) CN1 : Lennard Jones r**12 terms for all possible atom type interactions, indexed by ICO and IAC; for atom i and j where i < j, the index into this array is as follows (assuming the value of ICO(index) is positive): CN1(ICO(NTYPES*(IAC(i)-1)+IAC(j))). %FLAG LENNARD_JONES_BCOEF %FORMAT(5E16.8) (CN2(i), i=1,NTYPES*(NTYPES+1)/2) CN2 : Lennard Jones r**6 terms for all possible atom type interactions. Indexed like CN1 above.NOTE: the atom numbers in the following arrays that describe bonds, angles, and dihedrals are coordinate array indexes for runtime speed. The true atom number equals the absolute value of the number divided by three, plus one. In the case of the dihedrals, if the fourth atom is negative, this implies that the dihedral is an improper. If the third atom is negative, this implies that the end group interations are to be ignored. End group interactions are ignored, for example, in dihedrals of various ring systems (to prevent double counting of 1-4 interactions) and in multiterm dihedrals.
%FLAG BONDS_INC_HYDROGEN %FORMAT(10I8) (IBH(i),JBH(i),ICBH(i), i=1,NBONH) IBH : atom involved in bond "i", bond contains hydrogen JBH : atom involved in bond "i", bond contains hydrogen ICBH : index into parameter arrays RK and REQ %FLAG BONDS_WITHOUT_HYDROGEN %FORMAT(10I8) (IB(i),JB(i),ICB(i), i=1,NBONA) IB : atom involved in bond "i", bond does not contain hydrogen JB : atom involved in bond "i", bond does not contain hydrogen ICB : index into parameter arrays RK and REQ %FLAG ANGLES_INC_HYDROGEN %FORMAT(10I8) (ITH(i),JTH(i),KTH(i),ICTH(i), i=1,NTHETH) ITH : atom involved in angle "i", angle contains hydrogen JTH : atom involved in angle "i", angle contains hydrogen KTH : atom involved in angle "i", angle contains hydrogen ICTH : index into parameter arrays TK and TEQ for angle ITH(i)-JTH(i)-KTH(i) %FLAG ANGLES_WITHOUT_HYDROGEN %FORMAT(10I8) (IT(i),JT(i),KT(i),ICT(i), i=1,NTHETA) IT : atom involved in angle "i", angle does not contain hydrogen JT : atom involved in angle "i", angle does not contain hydrogen KT : atom involved in angle "i", angle does not contain hydrogen ICT : index into parameter arrays TK and TEQ for angle IT(i)-JT(i)-KT(i) %FLAG DIHEDRALS_INC_HYDROGEN %FORMAT(10I8) (IPH(i),JPH(i),KPH(i),LPH(i),ICPH(i), i=1,NPHIH) IPH : atom involved in dihedral "i", dihedral contains hydrogen JPH : atom involved in dihedral "i", dihedral contains hydrogen KPH : atom involved in dihedral "i", dihedral contains hydrogen LPH : atom involved in dihedral "i", dihedral contains hydrogen ICPH : index into parameter arrays PK, PN, PHASE, ONE_SCEE, and ONE_SCNB for dihedral IPH(i)-JPH(i)-KPH(i)-LPH(i) %FLAG DIHEDRALS_WITHOUT_HYDROGEN %FORMAT(10I8) (IP(i),JP(i),KP(i),LP(i),ICP(i), i=1,NPHIA) IP : atom involved in dihedral "i", dihedral does not contain hydrogen JP : atom involved in dihedral "i", dihedral does not contain hydrogen KP : atom involved in dihedral "i", dihedral does not contain hydrogen LP : atom involved in dihedral "i", dihedral does not contain hydrogen ICP : index into parameter arrays PK, PN, PHASE, ONE_SCEE, and ONE_SCNB for dihedral IPH(i)-JPH(i)-KPH(i)-LPH(i). Note, if the periodicity is negative, this implies the following entry in the PK, PN, and PHASE arrays is another term in a multitermed dihedral. %FLAG EXCLUDED_ATOMS_LIST %FORMAT(10I8) (INB(i), i=1,NNB) INB : the excluded atom list. To get the excluded list for atom "i" you need to traverse the NUMEX list, adding up all the previous NUMEX values, since NUMEX(i) holds the number of excluded atoms for atom "i", not the index into the NATEX list. Let IEXCL = SUM(NUMEX(j), j=1,i-1), then excluded atoms are INB(IEXCL) to INB(IEXCL+NUMEX(i)). Note, this array was called NATEX at one point, and while in most places it is now INB, it is still called NATEX in some places (especially in pmemd) %FLAG HBOND_ACOEF %FORMAT(5E16.8) (ASOL(i), i=1,NPHB) ASOL : the value for the r**12 term for hydrogen bonds of all possible types. Index into these arrays is equivalent to the CN1 and CN2 arrays, however the index is negative. For example, for atoms i and j, with i < j, the index is -ICO(NTYPES*(IAC(i)-1+IAC(j)). Note: Amber must be compiled with -DHAS_10_12 in order to make use of this term! %FLAG HBOND_BCOEF %FORMAT(5E16.8) (BSOL(i), i=1,NPHB) BSOL : the value for the r**10 term for hydrogen bonds of all possible types. Indexed like ASOL. Note: same restriction applies for use. %FLAG HBCUT %FORMAT(5E16.8) (HBCUT(i), i=1,NPHB) HBCUT : no longer in use %FLAG AMBER_ATOM_TYPE %FORMAT(20A4) (ISYMBL(i), i=1,NATOM) ISYMBL : the AMBER atom types for each atom %FLAG TREE_CHAIN_CLASSIFICATION %FORMAT(20A4) (ITREE(i), i=1,NATOM) ITREE : the list of tree joining information, classified into five types. M -- main chain, S -- side chain, B -- branch point, 3 -- branch into three chains, E -- end of the chain %FLAG JOIN_ARRAY %FORMAT(10I8) (JOIN(i), i=1,NATOM) JOIN : tree joining information, potentially used in ancient analysis programs. Currently unused in sander or gibbs. %FLAG IROTAT %FORMAT(10I8) (IROTAT(i), i = 1, NATOM) IROTAT : apparently the last atom that would move if atom i was rotated, however the meaning has been lost over time. Currently unused in sander or gibbs. %FLAG RADIUS_SET %FORMAT(1a80) TYPE TYPE : the radius set chosen inside LEaP %FLAG RADII %FORMAT(5E16.8) (RBORN(i), i=1,NATOM) RBORN : Generalized Born intrinsic dielectric radii %FLAG SCREEN %FORMAT(5E16.8) (FS(i), i=1,NATOM) FS : Screening parameters used in Generalized Born
%FLAG SOLVENT_POINTERS %FORMAT(3I8) IPTRES, NSPM, NSPSOL IPTRES : final residue that is considered part of the solute, reset in sander and gibbs NSPM : total number of molecules NSPSOL : the first solvent "molecule" %FLAG ATOMS_PER_MOLECULE %FORMAT(10I8) (NSP(i), i=1,NSPM) NSP : the total number of atoms in each molecule, necessary to correctly perform the pressure scaling. %FLAG BOX_DIMENSIONS %FORMAT(5E16.8) OLDBETA, BOX(1), BOX(2), BOX(3) OLDBETA : periodic box, angle between the XY and YZ planes in degrees. This is now redundant, as it is present in the inpcrd files. It is ignored here. BOX : the periodic box lengths in the X, Y, and Z directions. This is now redundant, as it is present in the inpcrd files. It is ignored here.
%FLAG CAP_INFO %FORMAT(10I8) NATCAP NATCAP : last atom before the start of the cap of waters placed by edit %FLAG CAP_INFO2 %FORMAT(5E16.8) CUTCAP, XCAP, YCAP, ZCAP CUTCAP : the distance from the center of the cap to the outside XCAP : X coordinate for the center of the cap YCAP : Y coordinate for the center of the cap ZCAP : Z coordinate for the center of the cap
FORMAT(12I6) (IBPER(i), JBPER(i), i=1,NBPER) IBPER : atoms involved in perturbed bonds JBPER : atoms involved in perturbed bonds FORMAT(12I6) (ICBPER(i), i=1,2*NBPER) ICBPER : pointer into the bond parameter arrays RK and REQ for the perturbed bonds. ICBPER(i) represents lambda=1 and ICBPER(i+NBPER) represents lambda=0. FORMAT(12I6) (ITPER(i), JTPER(i), KTPER(i), i=1,NGPER) IPTER : atoms involved in perturbed angles JTPER : atoms involved in perturbed angles KTPER : atoms involved in perturbed angles FORMAT(12I6) (ICTPER(i), i=1,2*NGPER) ICTPER : pointer into the angle parameter arrays TK and TEQ for the perturbed angles. ICTPER(i) represents lambda=0 and ICTPER(i+NGPER) represents lambda=1. FORMAT(12I6) (IPPER(i), JPPER(i), KPPER(i), LPPER(i), i=1,NDPER) IPPER : atoms involved in perturbed dihedrals JPPER : atoms involved in perturbed dihedrals KPPER : atoms involved in perturbed dihedrals LPPER : atoms involved in pertrubed dihedrals FORMAT(12I6) (ICPPER(i), i=1,2*NDPER) ICPPER : pointer into the dihedral parameter arrays PK, PN and PHASE for the perturbed dihedrals. ICPPER(i) represents lambda=1 and ICPPER(i+NGPER) represents lambda=0. FORMAT(20A4) (LABRES(i), i=1,NRES) LABRES : residue names at lambda=0 FORMAT(20A4) (IGRPER(i), i=1,NATOM) IGRPER : atomic names at lambda=0 FORMAT(20A4) (ISMPER(i), i=1,NATOM) ISMPER : atomic symbols at lambda=0 FORMAT(5E16.8) (ALMPER(i), i=1,NATOM) ALMPER : unused currently in gibbs FORMAT(12I6) (IAPER(i), i=1,NATOM) IAPER : IAPER(i) = 1 if the atom is being perturbed FORMAT(12I6) (IACPER(i), i=1,NATOM) IACPER : index for the atom types involved in Lennard Jones interactions at lambda=0. Similar to IAC above. See ICO above. FORMAT(5E16.8) (CGPER(i), i=1,NATOM) CGPER : atomic charges at lambda=0
%FLAG POLARIZABILITY %FORMAT(5E18.8) (ATPOL(i), i=1,NATOM) ATPOL : atomic polarizabilities
FORMAT(5E18.8) (ATPOL1(i), i=1,NATOM) ATPOL1 : atomic polarizabilities at lambda = 1 (above is at lambda = 0)
FORMAT(20A4) ITITL ITITL : the title of the current run, from the AMBER parameter/topology file FORMAT(I5,5E15.7) NATOM,TIME NATOM : total number of atoms in coordinate file TIME : option, current time in the simulation (picoseconds) FORMAT(6F12.7) (X(i), Y(i), Z(i), i = 1,NATOM) X,Y,Z : coordinates
FORMAT(6F12.7) (VX(i), VY(i), VZ(i), i = 1,NATOM) VX,VY,VZ : velocities (units: Angstroms per 1/20.455 ps)
FORMAT(6F12.7) BOX(1), BOX(2), BOX(3) BOX : size of the periodic boxNote: in AMBER 4.1 if the EWALD option is turned on, the box angles will also be written out in the same format.
FORMAT(20A4) ITITL ITITL : the title of the current run, from the AMBER parameter/topology fileThe following snapshot is written every NTWX steps in the trajectory (specified in the control input file):
FORMAT(10F8.3) (X(i), Y(i), Z(i), i=1,NATOM) X,Y,Z : coordinates or velocities (velocity units: Angstroms per 1/20.455 ps)
FORMAT(10F8.3) BOX(1), BOX(2), BOX(3) BOX : size of periodic box
Beginning with AMBER 9, a binary file format for trajectory data based on NetCDF is supported by sander, pmemd and ptraj. This format is supported by VMD beginning with version 1.8.4.
The AMBER Trajectory NetCDF Convention, describes the layout of dimensions, variables and attributes within the file. It is also available as a PDF.
Force field information on the file frcfld: The following sec- tion of this document describes the format of the AMBER Force Field Parameter File. It is not expected that the user will ordinarily modify this file; rather modifications should ordi- narily be entered through the frcmod file described further below. Of course, major changes, such as using the AMBER/OPLS force field rather than the AMBER one, would best be made by changing this file. WARNING: multiple entries for the same atom symbols within a single frcfld or frcmod file can lead to unde- fined results, e.g. if there are two definitions of angle ener- gies between atom types A, B and C one of them is picked arbi- trarily. - 1 - ITITL FORMAT(20A4) ITITL A title for identification of the parameter set. ------------------------------------------------------------------------ - 2 - ***** INPUT FOR ATOM SYMBOLS AND MASSES ***** KNDSYM , AMASS, ATPOL FORMAT(A2,2X,F10.2x,f10.2) KNDSYM The unique atom symbol used in the system. AMASS Atomic mass of the center having the symbol "KNDSYM". ATPOL The atomic polarizability for each atom (in A**3) This is the type of polarizability used in sander and gibbs. No parameters are supplied for this since the feature is still in development (Amber 4.1). NOTE: All the unique atomic symbols and their masses must be read. The input is terminated by a blank card. ------------------------------------------------------------------------ - 3 - ***** INPUT FOR ATOM SYMBOLS THAT ARE HYDROPHILIC ***** JSOLTY(I) FORMAT(20(A2,2X)) JSOLTY(I) The atom symbols which are hydrophilic in solution. This information is read but not used. The input is terminated when a blank value is read for the atom symbol. ------------------------------------------------------------------------ - 4 - ***** INPUT FOR BOND LENGTH PARAMETERS ***** IBT , JBT , RK , REQ FORMAT(A2,1X,A2,2F10.2) IBT,JBT Atom symbols for the two bonded atoms. RK The harmonic force constant for the bond "IBT"-"JBT". The unit is kcal/mol/(A**2). REQ The equilibrium bond length for the above bond in angstroms The input is terminated by a blank card. ------------------------------------------------------------------------ - 5 - ***** INPUT FOR BOND ANGLE PARAMETERS ***** ITT , JTT , KTT , TK , TEQ FORMAT(A2,1X,A2,1X,A2,2F10.2) ITT,... The atom symbols for the atoms making an angle. TK The harmonic force constants for the angle "ITT"-"JTT"- "KTT" in units of kcal/mol/(rad**2) (radians are the traditional unit for angle parameters in force fields). TEQ The equilibrium bond angle for the above angle in degrees. The input is terminated by a blank card. ------------------------------------------------------------------------ - 6 - ***** INPUT FOR DIHEDRAL PARAMETERS ***** IPT , JPT , KPT , LPT , IDIVF , PK , PHASE , PN FORMAT(A2,1X,A2,1X,A2,1X,A2,I4,3F15.2) IPT, ... The atom symbols for the atoms forming a dihedral angle. If IPT .eq. 'X ' .and. LPT .eq. 'X ' then any dihedrals in the system involving the atoms "JPT" and and "KPT" are assigned the same parameters. This is called the general dihedral type and is of the form "X "-"JPT"-"KPT"-"X ". IDIVF The factor by which the torsional barrier is divided. Consult Weiner, et al., JACS 106:765 (1984) p. 769 for details. Basically, the actual torsional potential is (PK/IDIVF) * (1 + cos(PN*phi - PHASE)) PK The barrier height divided by a factor of 2. PHASE The phase shift angle in the torsional function. The unit is degrees. PN The periodicity of the torsional barrier. NOTE: If PN .lt. 0.0 then the torsional potential is assumed to have more than one term, and the values of the rest of the terms are read from the next cards until a positive PN is encountered. The negative value of pn is used only for identifying the existence of the next term and only the absolute value of PN is kept. The input is terminated by a blank card. ------------------------------------------------------------------------ - 7 - ***** INPUT FOR IMPROPER DIHEDRAL PARAMETERS ***** IPT , JPT , KPT , LPT , IDIVF , PK , PHASE , PN FORMAT(A2,1X,A2,1X,A2,1X,A2,I4,3F15.2) The input is the same as in for the dihedrals except that the torsional barrier height is NOT divided by the factor idivf. The improper torsions are defined between any four atoms not bonded (in a successive fashion) with each other as in the case of "regular" or "proper" dihedrals. Improper dihedrals are used to keep certain groups planar and to prevent the racemization of certain centers in the united atom model. Consult the above reference for details. Important note: all general type improper dihedrals (e.g. x -x -ct-hc) should appear before all specifics (ct-ct-ct-hc) in the parm list. Otherwise the generals will override the specific with no warning. The input is terminated by a blank card. ------------------------------------------------------------------------ - 8 - ***** INPUT FOR H-BOND 10-12 POTENTIAL PARAMETERS ***** KT1 , KT2 , A , B , ASOLN , BSOLN , HCUT , IC FORMAT(2X,A2,2X,A2,2x,5F10.2,I2) KT1,KT2 The atom symbols for the atom pairs for which the parameters are defined. A The coefficient of the 12th power term (A/(r**12)). B The coefficient of the 10th power term (-B/(r**10)). ASOLN Not used BSOLN Not used HCUT Not used IC Not used ------------------------------------------------------------------------ - 9 - ***** INPUT FOR EQUIVALENCING ATOM SYMBOLS FOR THE NON-BONDED 6-12 POTENTIAL PARAMETERS ***** IORG , IEQV(I) , I = 1 , 19 FORMAT(20(A2,2X)) IORG The atom symbols to which other atom symbols are to be equivalenced in generating the 6-12 potential parameters. IEQV(I) The atoms symbols which are to be equivalenced to the atom symbol "IORG". If more than 19 atom symbols have to be equivalenced to a given atom symbol they can be included as extra cards. It is advisable not to equivalence any hydrogen bond atom type atoms with any other atom types. NOTE: The input is terminated by a blank card. ------------------------------------------------------------------------ - 10 - ***** INPUT FOR THE 6-12 POTENTIAL PARAMETERS ***** LABEL , KINDNB FORMAT(A4,6X,A2) LABEL The name of the non-bonded input parameter to be used. It has to be matched with "NAMNB" read through unit 5. The program searches the file to load the the required non-bonded parameters. If that name is not found the run will be terminated. KINDNB Flag for the type of 6-12 parameters. 'SK' Slater-Kirkwood parameters are input. see "caution" below. 'RE' van der Waals radius and the potential well depth parameters are read. 'AC' The 6-12 potential coefficients are read. NOTE: All the non equivalenced atoms' parameters have to be given. The input is terminated when label .eq. 'END' ------------------------------------------------------------------------ CAUTION: the polarizabilities mentioned below are NOT the polarizabilities used in the sander (min/md) code. KINDNB 'SK' parameters are not currently part of the AMBER force field. See card 2, ATPOL for sander polarizability. - 10A - ***** ONLY IF KINDNB .EQ. 'SK' ***** LTYNB , POL , XNEFF , RMIN FORMAT(2X,A2,6X,3F10.6) LTYNB Atom symbol. POL Atomic polarizability for the atom centers having the the above symbol. XNEFF Effective number of electrons on the atom centers having the above symbol. RMIN van der Waals radius of the atom center having the above symbol. ------------------------------------------------------------------------ - 10B - ***** ONLY IF KINDNB .EQ. 'RE' ***** LTYNB , R , EDEP LTYNB Atom symbol. R The van der Waals radius of the atoms having the symbol "LTYNB" (Angstoms) EDEP The 6-12 potential well depth. (kcal/mol) ------------------------------------------------------------------------ - 10C - ***** ONLY IF KINDNB .EQ. 'AC' ***** LTYNB , A , C LTYNB Atom symbol. A The coefficient of the 12th power term (A/r**12). C The coefficient of the 6th power term (-C/r**6).
Modified force field parameters in file frcmod: This file is normally the one that will be changed by the user. It consists of a 1-card title, followed by a blank line, then keyword sec- tions. The allowed keywords (appearing in columns 1-4) are: MASS follow this card by card of type - 2 - listed in the unit 10 instructions above. End with a blank line. BOND follow this card by card of type - 4 - listed in the unit 10 instructions above. End with a blank line. ANGL follow this card by card of type - 5 - listed in the unit 10 instructions above. End with a blank line. DIHE follow this card by card of type - 6 - listed in the unit 10 instructions above. End with a blank line. IMPR follow this card by card of type - 7 - listed in the unit 10 instructions above. End with a blank line. HBON follow this card by card of type - 8 - listed in the unit 10 instructions above. End with a blank line. NONB follow this card by card of type - 10A, B or C - listed in the unit 10 instructions above. E.g. if you specify STDA in parm.in for the "regular" parm.dat file, this is the convention that will be used when reading frcmod. End with a blank line. Any or all of the keywords may be missing, if you have no changes for that section. The entire file can be missing if you have no changes at all to make to the standard force field. Restrictions: note that you cannot modify the equivalence pat- tern set up in the standard force field. If you have parameters in the frcmod file that modify val- ues in the standard parameter file, and if iparml is set to 2, then both the original and the modified parameters will be printed to the output file. The modified parameters will be marked with asterisks, and it is these values that will be used in subsequent calculations.


Linear Regression¶
Introduction¶
In statistics, linear regression is a linear approach to modeling the relationship between a scalar response (or dependent variable) and one or more explanatory variables (or independent variables). The case of one explanatory variable is called simple linear regression. For more than one explanatory variable, the process is called multiple linear regression. This term is distinct from multivariate linear regression, where multiple correlated dependent variables are predicted, rather than a single scalar variable.
The Simple Linear Regression Model¶
The simplest deterministic mathematical relationship between two variables \(x\) and \(y\) is a linear relationship: \(y = \beta_0 + \beta_1 x\).
The objective of this section is to develop an equivalent linear probabilistic model.
If the two (random) variables are probabilistically related, then for a fixed value of x, there is uncertainty in the value of the second variable.
So we assume \(Y = \beta_0 + \beta_1 x + \varepsilon\), where \(\varepsilon\) is a random variable.
Two variables are related linearly “on average” if for fixed x the actual value of Y differs from its expected value by a random amount (i.e. there is random error).
A Linear Probabilistic Model¶
Definition: (The Simple Linear Regression Model)
There are parameters \(\beta_0\), \(\beta_1\), and \(\sigma^2\), such that for any fixed value of the independent variable \(x\), the dependent variable is a random variable related to \(x\) through the model equation
The quantity \(\varepsilon\) in the model equation is the “error” - a random variable, assumed to be symmetrically distributed with
(no assumption made about the distribution of \(\varepsilon\), yet)
\(\boldsymbol{X}\): the independent, predictor, or explanatory variable (usually known).
\(\boldsymbol{Y}\): the dependent or response variable. For fixed \(x\), \(Y\) will be random variable.
\(\boldsymbol{\varepsilon}\): the random deviation or random error term. For fixed \(x\), \(\varepsilon\) will be random variable.
\(\boldsymbol{\beta_0}\): the average value of \(Y\) when \(x\) is zero (the intercept of the true regression line)
\(\boldsymbol{\beta_1}\): the expected (average) change in \(Y\) associated with a 1-unit increase in the value of \(x\). (the slope of the true regression line)
The points \((x_1, y_1),\dots,(x_n, y_n)\) resulting from \(n\) independent observations will then be scattered about the true regression line:
Estimating Model Parameters¶
The values of \(\beta_0\), \(beta_1\), and \(sigma\) will almost never be known to an investigator.
Instead, sample data consists of n observed pairs \((x_1, y_1),\dots,(x_n, y_n)\) from which the model parameters and the true regression line itself can be estimated.
The data (pairs) are assumed to have been obtained independently of one another.
The “best fit” line is motivated by the principle of least squares, which can be traced back to the German mathematician Gauss (1777–1855):
A line provides the best fit to the data if the sum of the squared vertical distances (deviations) from the observed points to that line is as small as it can be.
The sum of squared vertical deviations from the points \((x_1, y_1),\dots,(x_n, y_n)\)
The point estimates of \(\beta_0\) and \(\beta_1\), denoted by and, are called the least squares estimates – they are those values that minimize \(f(b_0, b_1)\).
The fitted regression line or least squares line is then the line whose equation is \(y=\hat{\beta}_{0}+\hat{\beta}_{1} x\).
The minimizing values of \(b_0\) and \(b_1\) are found by taking partial derivatives of \(f(b_0, b_1)\) with respect to both \(b_0\) and \(b_1\), equating them both to zero [analogously to \(f'(b)=0\) in univariate calculus], and solving the equations
The least squares estimate of the slope coefficient \(\beta_1\) of the true regression line is
Shortcut formulas for the numerator and denominator of \(\hat{\beta_1}\) are
The least squares estimate of the intercept \(b_0\) of the true regression line is
Usage¶
Imagine that we have following points and we want to build a linear regression model:
X |
Y |
|---|---|
1.0 |
1.0 |
2.0 |
2.0 |
3.0 |
1.3 |
4.0 |
3.75 |
5.0 |
2.25 |
Then the code will look like this:
// example_linear_regression.cpp
#include <iostream>
#include "../src/numerary.hpp" // Numerary library
using namespace std;
using namespace numerary;
/* The main function */
int main() {
const int N = 5; // Number of points
double *X = new double[N], *Y = new double[N], *predicted_kc = new double[2];
X[0] = 1.0; Y[0] = 1.0;
X[1] = 2.0; Y[1] = 2.0;
X[2] = 3.0; Y[2] = 1.3;
X[3] = 4.0; Y[3] = 3.75;
X[4] = 5.0; Y[4] = 2.25;
// Get predicted linear regression line
predicted_kc = Numerary::linear_regression(X, Y, N);
// Equation of regression line
cout << "y = " << predicted_kc[0] << "*x + " << predicted_kc[1] << endl;
// Reallocate memory
delete[] X;
delete[] Y;
delete[] predicted_kc;
return 0;
}


{% load custom_tags %}
Amazon is currently experiencing degradation on their service. They are working to resolve it.
Once we get access to our data and backups we'll work as fast as possible to restore our service. We apologize for the inconvenience.


Certified search trees
Consider the development in searchtrees.v .
Define a type for search trees in sort Set>, and
consider new specifications for occur test, insertion and deletion.
Solution
The development search_set.v
contains the definition of a type sch_tree in sort
Set, and defines new specifications named
sch_insert_spec, sch_rm_spec, etc.
It ends with two functions transforming the older specifications into the
new ones, and viceversa.
Going home
Pierre Castéran


Install Appkit on your home screen, and access it just like a regular app. It really is that simple!
Install Appkit on your home screen, and access it just like a regular app. Open your Safari menu and tap "Add to Home Screen".


Preparation time
less than 30 mins
Cooking time
over 2 hours
Serves
Serves 4
Dietary
This filling, slow-cooked, vegetarian hotpot with fluffy, buttery dumplings, is a cheap and easy family staple. This dish is perfect for batch cooking, just divide it up into indiviudal portions and you will always have warming stew at your fingertips, check the tips section for freezing instructions.
Equipment and preparation: For this recipe you will need a 6.5 litre/11½ pint slow-cooker.
This meal provides 629 kcal, 13g protein, 79g carbohydrate (of which 24g sugars), 29g fat (of which 11g saturates), 16g fibre and 1.8g salt per portion.
Heat the oil in a large, non-stick frying pan over a medium heat. Add the vegetables, in batches if necessary, and fry for 4-5 minutes, stirring regularly, until lightly browned all over. Season with salt and pepper.
Transfer the vegetables to the slow-cooker, sprinkle over the flour and stir well. Add the chopped tomatoes, tomato purée, chilli flakes and pesto and stir again. Pour over the stock and stir. Cover and cook on high for 4 hours.
After the hotpot has been cooking for 3½ hours, make the dumplings. Put the flour in a large mixing bowl and season with salt and pepper.
Coarsely grate one-quarter of the frozen butter into the flour. Toss the mixture to coat the butter lightly in the flour. Add the remaining butter in three more batches, grating and tossing it in the same way. This should prevent the dumpling dough from clumping and yield light, fluffy dumplings.
Stir in enough cold water to bring the mixture together as a soft, squidy dough. Divide into 12 equally sized pieces and roll each into a ball.
Remove the lid from the slow-cooker, stir in the spinach until wilted, then arrange the dumplings gently on top. Replace the lid and continue to cook on high for a further 25-30 minutes, or until the dumplings are puffed-up and fluffy.
Spoon the hotpot onto serving plates with the dumplings on top.


Terraform Data Blocks: Surgeon General's Warning
Spicy Peppers Rating System | 🌶 - One Pepper | Bold and Zesty; Potentially Misinformation
Summary
Data blocks (Terraform Data sources) appear harmless, but aren’t. This is because every resource that relies on a data block is in danger of being replaced, because in some circumstances, data blocks are evaluated after apply. It’s just a matter of time.
I know the summary above didn’t make sense, so read on.
Data blocks explained
Data blocks, or data sources in Hashicorp’s parlance, are a convenient way to get at information. As a wise man once told me, data blocks are basically API calls (that retrieve data). I’ll refer to data sources as data blocks because in the code they are a data {}
block.
If you’re entirely unfamiliar with them, Hashicorp docs provide a a good overview.
As I’ve discovered, data blocks are convenient right up until Terraform wants to replace the entire Kubernetes cluster. Did I mention it was the entire Kubernetes cluster? Not just a node pool, no, the entire Kubernetes cluster. And as bad as that sounds, it was worse, actually–yes, it was the entire Kubernetes cluster, but it was most everything else, too.
The danger, by example
This remarkably friendly GitHub issue details the danger better than I can, but I’ll try anyway, with the minimum possible example. An MVP of failure, if you will.
In this example, we have two things:
- not managed by terraform: a subnet
subnet1
- managed by terraform: a network interface (think NIC, but in the cloud) which lives on the subnet
The Beginning: No Data Blocks, No Problems
In the beginning, we’ll start with no frills and no data blocks.
######################################
## The Beginning: No Data Blocks
######################################
# subnet already exists, not managed by terraform
resource "azurerm_network_interface" "example" {
# note it's a hardcoded string - a potential DRY violation! Call the cops
subnet_id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/examplerg/providers/Microsoft.Network/virtualNetworks/examplevnet/subnets/subnet1"
# ... (details omitted)
}
This creates a network interface that is placed on subnet1
.
And it works great! To specify which subnet to place the azurerm_network_interface
in, we’ve hardcoded the subnet_id
. This works, it’s safe, and any potential mistakes can be discovered during a terraform plan
.  And hard to read?
So here’s what we did next, for a little bit of convenience. Let’s call this scenario Trouble Ahead: Storm’s A-brewin'.
Trouble Ahead: Data Block Introduced
######################################
## Trouble Ahead: Data Block Introduced For Convenience
######################################
# subnet already exists - thus we reference it as a 'data' block
data "azurerm_subnet" "example" {
name = var.subnet_name
resource_group_name = var.resource_group_name
virtual_network_name = var.virtual_network_name
}
resource "azurerm_network_interface" "example" {
# note subnet_id is bound to a data block
subnet_id = data.azurerm_subnet.example.id
# ... (details omitted)
}
The network interface is still placed on subnet1
, but we’ve avoided using the full, ugly ID for subnet1
, and instead use variables (which we presumably use elsewhere anyways).
While this works perfectly on the initial terraform apply
, we are now in potential future danger of replacing our azurerm_network_interface
resource.
The danger is not immediate–so far, we’re still safe. To fall fully into the trap, we need to do a few specific things:
- Use a data block in a module
- Use outputs from that module
- Explicitly
depends_on
that module
And let me be clear that because no one on my team knew to avoid this, we built the terraform in such a way that the majority of our infrastructure was affected by such an issue. It’s not that difficult to do. Use data blocks freely and introduce modules as your terraform grows. In just a short time, you’ll be in trouble, just like me!
Let’s see what such a disaster looks like:
Imminent Doom: Don’t Hit That Apply Button
######################################
## Imminent Doom: Data Block + Module + depends_on
######################################
# ~~~~~~ vnet module.tf ~~~~~~
data "azurerm_subnet" "example" {
name = var.subnet_name
resource_group_name = var.resource_group_name
virtual_network_name = var.virtual_network_name
}
# ~~~~~~ main.tf ~~~~~~
module "vnet" {
# ... (details omitted)
}
resource "azurerm_network_interface" "example" {
# note subnet_id is bound to a data block, by way of the vnet module
subnet_id = module.vnet.subnet1.id
depends_on = [module.vnet]
}
We have introduced a vnet
module, which outputs the long, ugly subnet ID into a convenient variable. And use it, of course. Harmless, right? Let’s look at what terraform plan
tells us now:
# (the following is a partial `terraform plan` output)
# resource.azurerm_network_interface.example must be replaced
-/+ resource "azurerm_network_interface" "example" {
subnet_id = "...(omitted for space)..." -> (known after apply) # forces replacement
# ... (omitted)
}
The key phrase here that has burned itself into my retinas and haunts me at night is -> (known after apply) # forces replacement
. And congratulations, we’re about to replace all our infrastructure!
That’s a bad thing.
Explanation
So let’s walk through what happened, to the best of my understanding.
- We have resources in terraform.
- Those resources rely directly or indirectly on data blocks.
- The data blocks are in a module, and we explicitly
depends_on
that module. - Presumably (speculating), terraform can’t know the value of the output of the module until later than usual–during apply of the module–and because of this, it doesn’t know if values will change.
- Therefore, it chooses the only predictable choice, and assumes that yes, the value will change.
- And if this forces replacement of an entire resource, well, so be it.
- Anyway a big chunk of our infrastructure is now cursed by the dreaded
-> (known after apply) # forces replacement
message. - And though I haven’t tested it, according to the GitHub Issue at https://github.com/hashicorp/terraform/issues/28377 - terraform is not bluffing and will indeed destroy and replace our resources.
Alternate Explanations
There are two succinct, authoritative answers on the GitHub Issue thread explaining what’s happening:
Solution: Stop Using Data Blocks
One solution is to stop using data blocks. Here’s the example, ‘fixed’:
######################################
## The Path of Enlightenment: Not Relying On Data Blocks
######################################
# subnet already exists, not managed by terraform
resource "azurerm_network_interface" "example" {
# note it's a hardcoded string - what beautiful simplicity!
subnet_id = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/examplerg/providers/Microsoft.Network/virtualNetworks/examplevnet/subnets/subnet1"
# ... (details omitted)
}
Before enlightenment: chop wood, carry water. After enlightenment: chop wood, carry water.
And while I’ve hardcoded the subnet_id
in the enlightened example above, I would (and certainly have) extracted out either a local
variable or a module-level var
. And there’s certainly a guiding principle as to when to extract variables, but … (handwaving) go read a book.
Alternate Solutions: Import Everything, Stop Using depends_on
There are several real, alternate solutions to consider when dealing with data blocks.
- Import the resource into terraform, so you can replace the data block with a
resource
. Pinocchio is a real boy now!  This is probably the best solution, so long as you’re able to make it happen. - As the GitHub Issue mentions, avoid
depends_on
, especially if you don’t need it.
More “Solutions”
Here are some other things to consider.
- “Hello, Pulumi Incorporated? Yes? I hear you like both customers and money? Yes? That’s great! I’ll be right over!”
- Move into the mountains, live off of the land, make your own clothes. Don’t worry about medical care, just crush up leaves and rub them on whatever’s ailing you, and breathe in that fresh mountain air. Invigorating! Use your old work laptop as part of the shelter–a constant reminder of the old world and why you left it behind.  That’s what you tell yourself as you rub more crushed leaves on the rash. The rash is still growing, and it’s starting to burn now more than itch. It’s cold. Cold in the mountains.
Political Advocacy and a cry for help
I have several things to say:
- Political advocacy: I blame HashiCorp for casually tossing data blocks around in the documentation. Put a stern warning in there, Hashicorp. These things are productivity landmines.
- Hashicorp: seriously, these things are dangerous.
terraform validate
should warn me for every single data block I use. Sure, some data blocks can be used safely, as can sticks of dynamite. But let’s put some guardrails on these things, okay? - Am I missing something? I feel like I’m missing something obvious, and I wasted all this time writing up the issue, when (insert your simple explanation). Seriously, let me know if I’m doing something wrong. @pseale on twitter or
peter
@
pseale.com
.
tl;dr with bullet points and few words
- Terraform data sources scary, sometimes make big boom
- Thus, avoid
- Import as resource instead
- Or, hardcode instead
- Am I crazy?


== Technical Report ==
This section will communicate to the reader the technical details of the test and all of the aspects/components agreed upon as key success indicators within the pre engagement exercise. The technical report section will describe in detail the scope, information, attack path, impact and remediation suggestions of the test.
'''Introduction:'''
The introduction section of the technical report is intended to be an initial inventory of:
*Personnel involved in the testing from both the Client and Penetration Testing Team
*Contact information
*Assets involved in testing
*Objectives of Test
*Scope of Test
*Strength of Test
*Approach
*Threat/Grading Structure
This section should be a reference for the specific resources involved in the testing and the overall technical scope of the test.
'''Information Gathering:'''
Intelligence gathering and information assessment are the foundations of a good penetration test. The more informed the tester is about the environment, the better the results of the test will be. In this section, a number of items should be written up to show the CLIENT the extent of public and private information available through the execution of the Intelligence gathering phase of PTES. At a minimum, the results identified should be presented in 4 basic categories:
'''Passive Intelligence:'''
Intelligence gathered from indirect analysis such as DNS,Google dorking for IP/infrastructure related information. This section will focus on the techniques used to profile the technology in the CLIENT environment WITHOUT sending any traffic directly to the assets.
'''Active Intelligence:'''
This section will show the methods and results of tasks such as infrastructure mapping, port scanning, and architecture assessment and other foot printing activities. This section will focus on the techniques used to profile the technology in the CLIENT environment by sending traffic DIRECTLY to the assets.
'''Corporate Intelligence:'''
Information about the structure of the organization, business units, market share, vertical, and other corporate functions should be mapped to both business process and the previously identified physical assets being tested.
'''Personnel Intelligence:'''
Any and all information found during the intelligence collection phase which maps users to the CLIENT organization. This section should show the techniques used to harvest intelligence such as public/private employee depots, mail repositories, org charts and other items leading to the connection of employee/company.
'''Vulnerability Assessment:'''
Vulnerability assessment is the act of identifying the POTENTIAL vulnerabilities which exist in a TEST and the threat classification of each threat. In this section, a definition of the methods used to identify the vulnerability as well as the evidence/classification of the vulnerability should be present. In addition this section should include:
*Vulnerability Classification Levels
*Technical Vulnerabilities
**OSI Layer Vulns
**Scanner Found
**Manually identified
**Overall Exposure
*Logical Vulnerabilities
**NON OSI Vuln
**Type of vuln
**How/Where it is found
**Exposure
*Summary of Results
'''Exploitation/ Vulnerability Confirmation:'''
Exploitation or Vulnerability confirmation is the act of triggering the vulnerabilities identified in the previous sections to gain a specified level of access to the target asset. This section should review, in detail, all of the steps taken to confirm the defined vulnerability as well as the following:
*Exploitation Timeline
*Targets selected for Exploitation
*Exploitation Activities
**Directed Attack
***Target Hosts unable to be Exploited
***Target Hosts able to be Exploited
****Individual Host Information
****Attacks conducted
****Attacks Successful
****Level of access Granted +escalation path
****Remediation
*****Link to Vuln section reference
*****Additional Mitigating technique
*****Compensating control suggestion
*Indirect Attack
**Phishing
***Timeline/details of attack
***Targets identified
***Success/Fail ratio
***Level of access granted
**Clientside
***Timeline/details of attack
***Targets identified
***Success/Fail ratio
***Level of access granted
**Browser Side
***Timeline/details of attack
***Targets identified
***Success/Fail ratio
***Level of access granted
'''Post Exploitation:'''
One of the most critical items in all testing is the connection to ACTUAL impact on the CLIENT being tested. While the sections above relay the technical nature of the vulnerability and the ability to successfully take advantage of the flaw, the Post Exploitation section should tie the ability of exploitation to the actual risk to the business. In this area the following items should be evidenced through the use of screenshots, rich content retrieval, and examples of real world privileged user access:
*Privilege Escalation path
**Technique used
*Acquisition of Critical Information Defined by client
*Value of information
*Access to core business systems
*Access to compliance protected data sets
*Additional Information/Systems Accessed
*Ability of persistence
*Ability for exfiltration
*Countermeasure Effectiveness
*: This section should cover the effectiveness of countermeasures that are in place on the systems in scope. It should include sections on both active (proactive) and passive (reactive) countermeasures, as well as detailed information on any incident response activities triggered during the testing phase. A listing of countermeasures that were effective in resisting assessment activities will help the CLIENT better tune detection systems and processes to handle future intrusion attempts.
**Detection Capability
***FW/WAF/IDS/IPS
***Human
***DLP
***Log
**Response & effectiveness
'''Risk/Exposure:'''
Once the direct impact to the business is qualified through the evidence existing in the vulnerability, exploitation and post exploitation sections, the risk quantification can be conducted. In this section the results above are combined with the risk values, information criticality, corporate valuation, and derived business impact from the pre engagement section. This will give the CLIENT the ability to identify, visualize and monetize the vulnerabilities found throughout the testing and effectively weight their resolution against the CLIENTS business objectives. This section will cover the business risk in the following subsections:
*Evaluate incident frequency
**probable event frequency
**estimate threat capability (from 3 - threat modeling)
**Estimate controls strength (6)
**Compound vulnerability (5)
**Level of skill required
**Level of access required
*Estimate loss magnitude per incident
**Primary loss
**Secondary loss
**Identify risk root cause analysis
***Root Cause is never a patch
***Identify Failed Processes
*Derive Risk
**Threat
**Vulnerability
**Overlap
'''Conclusion:'''
Final overview of the test. It is suggested that this section echo portions of the overall test as well as support the growth of the CLIENT security posture. It should end on a positive note with the support and guidance to enable progress in the security program and a regimen of testing/security activity in the future to come.


| US Capacity Utilisation YoY (%) | ||||||
| Release Dt | For Month | Market Expectation | Kshitij Expectation | Previous | Released | Revision |
| 15-Dec-17 | Nov-17 | 2.4 | - | 2.1 | 2.1 | 2.3 |
| 17-Jan-18 | Dec-17 | 1.7 | 1.9 | 2.6 | 2.5 | 2.3 |
| 15-Feb-18 | Jan-18 | 3.2 | - | 2.2 | 2.4 | - |
| 16-Mar-18 | Feb-18 | - | - | 2.4 | - | - |
| Copyright: Kshitij Consultancy Services |


{% extends 'wl/base.html' %} {% load bootstrap3 %} {% load static %} {% block extra_css %} {% endblock %} {% block left_menu_items %}
The Department of Parks and Wildlife issues licences under the Wildlife Conservation Act 1950, the Wildlife Conservation Regulations 1970 and the Wildlife Conservation (Reptiles and Amphibians) Regulations 2002 to manage certain interactions with flora and fauna..
This web portal currently enables you to apply for, renew, and manage returns for the following licence types online.
Wildlife Conservation Regulations 1970:
Wildlife Conservation (Reptiles and Amphibians) Regulations 2002:
Additional licence types will be added to this online system over time.
Simply register an account, set up a profile, select the licence type you wish to apply for and get started.
For further information about the Wildlife Licensing System, contact<EMAIL_ADDRESS>If you already have a Parks and Wildlife customer account under another email address, please sign in with that account and add any additional email addresses as new profiles.
Submit your email to login or start the new-user registration process.
At the Department of Parks and Wildlife, we employ a password-less authentication system, meaning you never need to remember a password. When you need to login to a site, such as Wildlife Licensing, simply enter your email and an authentication link will be sent to your registered email address. From there, simply follow the link to complete the login process.


{% extends 'base.html' %} {% block content %}
Web apps, mainly planned to provide better access to bits of research software. More extensive explanations of the apps are available here.
Free to use under the MIT license, with no guarantees of anything course; code available on GitHub
. {% endblock %}


Scene Graph - OpenGL Under QML
The OpenGL under QML example shows how an application can make use of the QQuickWindow::beforeRendering() signal to draw custom OpenGL content under a Qt Quick scene. This signal is emitted at the start of every frame, before the scene graph starts its rendering, thus any OpenGL draw calls that are made as a response to this signal, will stack under the Qt Quick items.
As an alternative, applications that wish to render OpenGL content on top of the Qt Quick scene, can do so by connecting to the QQuickWindow::afterRendering() signal.
In this example, we will also see how it is possible to have values that are exposed to QML which affect the OpenGL rendering. We animate the threshold value using a NumberAnimation in the QML file and this value is used by the OpenGL shader program that draws the squircles.
class Squircle : public QQuickItem { Q_OBJECT Q_PROPERTY(qreal t READ t WRITE setT NOTIFY tChanged) public: Squircle(); qreal t() const { return m_t; } void setT(qreal t); signals: void tChanged(); public slots: void sync(); void cleanup(); private slots: void handleWindowChanged(QQuickWindow *win); private: qreal m_t; SquircleRenderer *m_renderer; };
First of all, we need an object we can expose to QML. This is a subclass of QQuickItem so we can easily access QQuickItem::window().
class SquircleRenderer : public QObject, protected QOpenGLFunctions { Q_OBJECT public: SquircleRenderer() : m_t(0), m_program(0) { } ~SquircleRenderer(); void setT(qreal t) { m_t = t; } void setViewportSize(const QSize &size) { m_viewportSize = size; } void setWindow(QQuickWindow *window) { m_window = window; } public slots: void paint(); private: QSize m_viewportSize; qreal m_t; QOpenGLShaderProgram *m_program; QQuickWindow *m_window; };
Then we need an object to take care of the rendering. This instance needs to be separated from the QQuickItem because the item lives in the GUI thread and the rendering potentially happens on the render thread. Since we want to connect to QQuickWindow::beforeRendering(), we make the renderer a QObject. The renderer contains a copy of all the state it needs, independent of the GUI thread.
Note: Don't be tempted to merge the two objects into one. QQuickItems may be deleted on the GUI thread while the render thread is rendering.
Lets move on to the implementation.
Squircle::Squircle() : m_t(0) , m_renderer(0) { connect(this, &QQuickItem::windowChanged, this, &Squircle::handleWindowChanged); }
The constructor of the Squircle
class simply initializes the values and connects to the window changed signal which we will use to prepare our renderer.
void Squircle::handleWindowChanged(QQuickWindow *win) { if (win) { connect(win, &QQuickWindow::beforeSynchronizing, this, &Squircle::sync, Qt::DirectConnection); connect(win, &QQuickWindow::sceneGraphInvalidated, this, &Squircle::cleanup, Qt::DirectConnection);
Once we have a window, we attach to the QQuickWindow::beforeSynchronizing() signal which we will use to create the renderer and to copy state into it safely. We also connect to the QQuickWindow::sceneGraphInvalidated() signal to handle the cleanup of the renderer.
Note: Since the Squircle object has affinity to the GUI thread and the signals are emitted from the rendering thread, it is crucial that the connections are made with Qt::DirectConnection. Failing to do so, will result in that the slots are invoked on the wrong thread with no OpenGL context present.
win->setClearBeforeRendering(false); } }
The default behavior of the scene graph is to clear the framebuffer before rendering. Since we render before the scene graph, we need to turn this clearing off. This means that we need to clear ourselves in the paint()
function.
void Squircle::sync() { if (!m_renderer) { m_renderer = new SquircleRenderer(); connect(window(), &QQuickWindow::beforeRendering, m_renderer, &SquircleRenderer::paint, Qt::DirectConnection); } m_renderer->setViewportSize(window()->size() * window()->devicePixelRatio()); m_renderer->setT(m_t); m_renderer->setWindow(window()); }
We use the sync()
function to initialize the renderer and to copy the state in our item into the renderer. When the renderer is created, we also connect the QQuickWindow::beforeRendering() to the renderer's paint()
slot.
Note: The QQuickWindow::beforeSynchronizing() signal is emitted on the rendering thread while the GUI thread is blocked, so it is safe to simply copy the value without any additional protection.
void Squircle::cleanup() { if (m_renderer) { delete m_renderer; m_renderer = 0; } } SquircleRenderer::~SquircleRenderer() { delete m_program; }
In the cleanup()
function we delete the renderer which in turn cleans up its own resources.
void Squircle::setT(qreal t) { if (t == m_t) return; m_t = t; emit tChanged(); if (window()) window()->update(); }
When the value of t
changes, we call QQuickWindow::update() rather than QQuickItem::update() because the former will force the entire window to be redrawn, even when the scene graph has not changed since the last frame.
void SquircleRenderer::paint() { if (!m_program) { initializeOpenGLFunctions(); m_program = new QOpenGLShaderProgram(); m_program->addCacheableShaderFromSourceCode(QOpenGLShader::Vertex, "attribute highp vec4 vertices;" "varying highp vec2 coords;" "void main() {" " gl_Position = vertices;" " coords = vertices.xy;" "}"); m_program->addCacheableShaderFromSourceCode(QOpenGLShader::Fragment, "uniform lowp float t;" "varying highp vec2 coords;" "void main() {" " lowp float i = 1. - (pow(abs(coords.x), 4.) + pow(abs(coords.y), 4.));" " i = smoothstep(t - 0.8, t + 0.8, i);" " i = floor(i * 20.) / 20.;" " gl_FragColor = vec4(coords * .5 + .5, i, i);" "}"); m_program->bindAttributeLocation("vertices", 0); m_program->link(); }
In the SquircleRenderer's paint()
function we start by initializing the shader program. By initializing the shader program here, we make sure that the OpenGL context is bound and that we are on the correct thread.
m_program->bind(); m_program->enableAttributeArray(0); float values[] = { -1, -1, 1, -1, -1, 1, 1, 1 }; m_program->setAttributeArray(0, GL_FLOAT, values, 2); m_program->setUniformValue("t", (float) m_t); glViewport(0, 0, m_viewportSize.width(), m_viewportSize.height()); glDisable(GL_DEPTH_TEST); glClearColor(0, 0, 0, 1); glClear(GL_COLOR_BUFFER_BIT); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); m_program->disableAttributeArray(0); m_program->release(); // Not strictly needed for this example, but generally useful for when // mixing with raw OpenGL. m_window->resetOpenGLState(); }
We use the shader program to draw the squircle. At the end of the paint
function we release the program and disable the attributes we used so that the OpenGL context is in a "clean" state for the scene graph to pick it up.
Note: If tracking the changes in the OpenGL context's state is not feasible, one can use the function QQuickWindow::resetOpenGLState() which will reset all state that the scene graph relies on.
int main(int argc, char **argv) { QGuiApplication app(argc, argv); qmlRegisterType<Squircle>("OpenGLUnderQML", 1, 0, "Squircle"); QQuickView view; view.setResizeMode(QQuickView::SizeRootObjectToView); view.setSource(QUrl("qrc:///scenegraph/openglunderqml/main.qml")); view.show(); return app.exec(); }
The application's main()
function instantiates a QQuickView and launches the main.qml
file. The only thing worth noting is that we export the Squircle
class to QML using the qmlRegisterType() macro.
import QtQuick 2.0 import OpenGLUnderQML 1.0 Item { width: 320 height: 480 Squircle { SequentialAnimation on t { NumberAnimation { to: 1; duration: 2500; easing.type: Easing.InQuad } NumberAnimation { to: 0; duration: 2500; easing.type: Easing.OutQuad } loops: Animation.Infinite running: true } }
We import the Squircle QML type with the name we registered in the main()
function. We then instantiate it and create a running NumberAnimation on its t
property.
Rectangle { color: Qt.rgba(1, 1, 1, 0.7) radius: 10 border.width: 1 border.color: "white" anchors.fill: label anchors.margins: -10 } Text { id: label color: "black" wrapMode: Text.WordWrap text: "The background here is a squircle rendered with raw OpenGL using the 'beforeRender()' signal in QQuickWindow. This text label and its border is rendered using QML" anchors.right: parent.right anchors.left: parent.left anchors.bottom: parent.bottom anchors.margins: 20 } }
Then we overlay a short descriptive text, so that it is clearly visible that we are in fact rendering OpenGL under our Qt Quick scene.
Files:


Install Bobby
~/.sbt/0.13/plugins/build.sbt
resolvers += Resolver.url( "hmrc-sbt-plugin-releases",
url("https://dl.bintray.com/hmrc/sbt-plugin-releases")
)(Resolver.ivyStylePatterns)
addSbtPlugin("uk.gov.hmrc" % "sbt-bobby" % "0.30.0")
sbt validate
Configure Bobby
~/.sbt/bobby.conf
deprecated-dependencies = https://some-url/bobby-deprecated.json
deprecated-dependencies = file:///~/.sbt/bobby-deprecated.json
~/.sbt/bobby-deprecated.json
{
"libraries":[
{
"organisation": "com.example",
"name": "mylibrary",
"range": "(,6.0.0)",
"reason": "Security vulnerability before v6",
"from": "2016-06-23"
}
],
"plugins":[]
}
Blacklist versions
| Range |
Meaning |
| (,1.0.0] |
Has to be newer than 1.0.0 |
| [1.0.0] |
Can't use v1.0.0 |
| [1.2.0,1.3.0] |
1.2.0 <= x <= 1.3.0 |
| [1.0.0,2.0.0) |
1.0.0 <= x < 2.0.0 |
| [1.5.0,) |
Has to be older than 1.5.0 |
| [*-SNAPSHOT] |
No SNAPSHOTs |
Build fail
Jenkins DSL
import javaposse.jobdsl.dsl.DslFactory
import uk.gov.hmrc.jenkinsjobs.domain.builder.SbtMicroserviceJobBuilder
new SbtMicroserviceJobBuilder('myamazeballs-service').
withScalaStyle().
withSCoverage().
build(this as DslFactory)
./gradlew clean test
Seed job to activate


<QtAlgorithms> - Generic Algorithms
The <QtAlgorithms> header includes the generic, template-based algorithms. More...
Functions
| uint | qCountLeadingZeroBits(quint32 v) |
| uint | qCountLeadingZeroBits(quint8 v) |
| uint | qCountLeadingZeroBits(quint16 v) |
| uint | qCountLeadingZeroBits(quint64 v) |
| uint | qCountTrailingZeroBits(quint32 v) |
| uint | qCountTrailingZeroBits(quint8 v) |
| uint | qCountTrailingZeroBits(quint16 v) |
| uint | qCountTrailingZeroBits(quint64 v) |
| void | qDeleteAll(ForwardIterator begin, ForwardIterator end) |
| void | qDeleteAll(const Container &c) |
| uint | qPopulationCount(quint32 v) |
| uint | qPopulationCount(quint8 v) |
| uint | qPopulationCount(quint16 v) |
| uint | qPopulationCount(quint64 v) |
Qt provides a number of global template functions in <QtAlgorithms>
that work on containers and perform small tasks to make life easier, such as qDeleteAll(), which invokes operator delete
on all items in a given container or in a given range. You can use these algorithms with any container class that provides STL-style iterators, including Qt's QList, QLinkedList, QVector, QMap, and QHash classes.
Most algorithms take STL-style iterators as parameters. The algorithms are generic in the sense that they aren't bound to a specific iterator class; you can use them with any iterators that meet a certain set of requirements.
Different algorithms can have different requirements for the iterators they accept. For example, qFill() accepts two forward iterators. The iterator types required are specified for each algorithm. If an iterator of the wrong type is passed (for example, if QList::ConstIterator is passed as an output iterator), you will always get a compiler error, although not necessarily a very informative one.
Some algorithms have special requirements on the value type stored in the containers. For example, qDeleteAll() requires that the value type is a non-const pointer type (for example, QWidget *). The value type requirements are specified for each algorithm, and the compiler will produce an error if a requirement isn't met.
The generic algorithms can be used on other container classes than those provided by Qt and STL. The syntax of STL-style iterators is modeled after C++ pointers, so it's possible to use plain arrays as containers and plain pointers as iterators. A common idiom is to use qBinaryFind() together with two static arrays: one that contains a list of keys, and another that contains a list of associated values. For example, the following code will look up an HTML entity (e.g., &
;) in the name_table
array and return the corresponding Unicode value from the value_table
if the entity is recognized:
QChar resolveEntity(const QString &entity) { static const QLatin1String name_table[] = { "AElig", "Aacute", ..., "zwnj" }; static const ushort value_table[] = { 0x0061, 0x00c1, ..., 0x200c }; int N = sizeof(name_table) / sizeof(name_table[0]); const QLatin1String *name = qBinaryFind(name_table, name_table + N, entity); int index = name - name_table; if (index == N) return QChar(); return QChar(value_table[index]); }
This kind of code is for advanced users only; for most applications, a QMap- or QHash-based approach would work just as well:
QChar resolveEntity(const QString &entity) { static QMap<QString, int> entityMap; if (!entityMap) { entityMap.insert("AElig", 0x0061); entityMap.insert("Aacute", 0x00c1); ... entityMap.insert("zwnj", 0x200c); } return QChar(entityMap.value(entity)); }
Types of Iterators
The algorithms have certain requirements on the iterator types they accept, and these are specified individually for each function. The compiler will produce an error if a requirement isn't met.
Input Iterators
An input iterator is an iterator that can be used for reading data sequentially from a container. It must provide the following operators: ==
and !=
for comparing two iterators, unary *
for retrieving the value stored in the item, and prefix ++
for advancing to the next item.
The Qt containers' iterator types (const and non-const) are all input iterators.
Output Iterators
An output iterator is an iterator that can be used for writing data sequentially to a container or to some output stream. It must provide the following operators: unary *
for writing a value (i.e., *it = val
) and prefix ++
for advancing to the next item.
The Qt containers' non-const iterator types are all output iterators.
Forward Iterators
A forward iterator is an iterator that meets the requirements of both input iterators and output iterators.
The Qt containers' non-const iterator types are all forward iterators.
Bidirectional Iterators
A bidirectional iterator is an iterator that meets the requirements of forward iterators but that in addition supports prefix --
for iterating backward.
The Qt containers' non-const iterator types are all bidirectional iterators.
Random Access Iterators
The last category, random access iterators, is the most powerful type of iterator. It supports all the requirements of a bidirectional iterator, and supports the following operations:
i += n | advances iterator i by n positions |
i -= n | moves iterator i back by n positions |
i + n or n + i | returns the iterator for the item n positions ahead of iterator i |
i - n | returns the iterator for the item n positions behind of iterator i |
i - j | returns the number of items between iterators i and j |
i[n] | same as *(i + n) |
i < j | returns true if iterator j comes after iterator i |
QList and QVector's non-const iterator types are random access iterators.
Qt and the STL Algorithms
Historically, Qt used to provide functions which were direct equivalents of many STL algorithmic functions. Starting with Qt 5.0, you are instead encouraged to use directly the implementations available in the STL; most of the Qt ones have been deprecated (although they are still available to keep the old code compiling).
Porting guidelines
Most of the times, an application using the deprecated Qt algorithmic functions can be easily ported to use the equivalent STL functions. You need to
- add the
#include <algorithm>
preprocessor directive; - replace the Qt functions with the STL counterparts, according to the table below.
| Qt function | STL function |
|---|---|
| qBinaryFind | std::binary_search or std::lower_bound |
| qCopy | std::copy |
| qCopyBackward | std::copy_backward |
| qEqual | std::equal |
| qFill | std::fill |
| qFind | std::find |
| qCount | std::count |
| qSort | std::sort |
| qStableSort | std::stable_sort |
| qLowerBound | std::lower_bound |
| qUpperBound | std::upper_bound |
| qLess | std::less |
| qGreater | std::greater |
The only cases in which the port may not be straightforward is if the old code relied on template specializations of the qLess() and/or the qSwap() functions, which were used internally by the implementations of the Qt algorithmic functions, but are instead ignored by the STL ones.
In case the old code relied on the specialization of the qLess() functor, then a workaround is explicitly passing an instance of the qLess() class to the STL function, for instance like this:
std::sort(container.begin(), container.end(), qLess<T>());
Instead, since it's not possible to pass a custom swapper functor to STL functions, the only workaround for a template specialization for qSwap() is providing the same specialization for std::swap()
.
See also container classes and <QtGlobal>.
Function Documentation
uint qCountLeadingZeroBits(quint32 v)
Returns the number of consecutive zero bits in v, when searching from the MSB. For example, qCountLeadingZeroBits(quint32(1)) returns 31 and qCountLeadingZeroBits(quint32(8)) returns 28.
This function was introduced in Qt 5.6.
uint qCountLeadingZeroBits(quint8 v)
Returns the number of consecutive zero bits in v, when searching from the MSB. For example, qCountLeadingZeroBits(quint8(1)) returns 7 and qCountLeadingZeroBits(quint8(8)) returns 4.
This function was introduced in Qt 5.6.
uint qCountLeadingZeroBits(quint16 v)
Returns the number of consecutive zero bits in v, when searching from the MSB. For example, qCountLeadingZeroBits(quint16(1)) returns 15 and qCountLeadingZeroBits(quint16(8)) returns 12.
This function was introduced in Qt 5.6.
uint qCountLeadingZeroBits(quint64 v)
Returns the number of consecutive zero bits in v, when searching from the MSB. For example, qCountLeadingZeroBits(quint64(1)) returns 63 and qCountLeadingZeroBits(quint64(8)) returns 60.
This function was introduced in Qt 5.6.
uint qCountTrailingZeroBits(quint32 v)
This is an overloaded function.
This function was introduced in Qt 5.6.
uint qCountTrailingZeroBits(quint8 v)
Returns the number of consecutive zero bits in v, when searching from the LSB. For example, qCountTrailingZeroBits(1) returns 0 and qCountTrailingZeroBits(8) returns 3.
This function was introduced in Qt 5.6.
uint qCountTrailingZeroBits(quint16 v)
This is an overloaded function.
This function was introduced in Qt 5.6.
uint qCountTrailingZeroBits(quint64 v)
This is an overloaded function.
This function was introduced in Qt 5.6.
void qDeleteAll(ForwardIterator begin, ForwardIterator end)
Deletes all the items in the range [begin, end) using the C++ delete
operator. The item type must be a pointer type (for example, QWidget *
).
Example:
QList<Employee *> list; list.append(new Employee("Blackpool", "Stephen")); list.append(new Employee("Twist", "Oliver")); qDeleteAll(list.begin(), list.end()); list.clear();
Notice that qDeleteAll() doesn't remove the items from the container; it merely calls delete
on them. In the example above, we call clear() on the container to remove the items.
This function can also be used to delete items stored in associative containers, such as QMap and QHash. Only the objects stored in each container will be deleted by this function; objects used as keys will not be deleted.
See also forward iterators.
void qDeleteAll(const Container &c)
This is an overloaded function.
This is the same as qDeleteAll(c.begin(), c.end()).
uint qPopulationCount(quint32 v)
This is an overloaded function.
This function was introduced in Qt 5.2.
uint qPopulationCount(quint8 v)
Returns the number of bits set in v. This number is also called the Hamming Weight of v.
This function was introduced in Qt 5.2.
uint qPopulationCount(quint16 v)
This is an overloaded function.
This function was introduced in Qt 5.2.
uint qPopulationCount(quint64 v)
This is an overloaded function.
This function was introduced in Qt 5.2.


IRunes
Home
Albums
Logout
Albums
♫ Create Album ✚
@albumsList@
CopyRight
Ⓒ
Sanity Design Studios. All rights reserved.