The terms introduced in this section provide additional ways to describe the provenance among Entities, Activities, and Agents. The additional terms are illustrated in the following figure and can be separated into five different categories.
The first category extends the Starting Point terms with subclasses, subproperties, and one superproperty.
Three subclasses of Agent (prov:Person, prov:Organization, and prov:SoftwareAgent) and three subclasses of Entity are provided (prov:Collection, prov:Bundle, and prov:Plan).
A prov:Collection is an Entity that provides a structure (e.g. set, list, etc.) to some constituents (which are themselves Entities). The prov:Collection class can be used to express the provenance of the collection itself: e.g. who maintains the collection (attribution), which members it contains as it evolves, and how it was assembled. The prov:hadMember property is used to assert membership in a collection.
A prov:Bundle is a named set of provenance descriptions, which may itself have provenance. The named provenance descriptions may be expressed as PROV-O or in some other form. The subclass of Bundle that contains PROV-O assertions is not provided by PROV-O, since it is more appropriate to do so using other recommendations, standards, or technologies. In any case, a Bundle of PROV-O assertions is an abstract set of RDF triples, and adding or removing a triple creates a distinct Bundle of PROV-O assertions.
A prov:Plan is an entity that represents a set of actions or steps intended by one or more agents to achieve some goals.
More general and more specific properties are also provided by the expanded terms. More generally, the property prov:wasInfluencedBy is a superproperty that relates any influenced Entity, Activity, or Agent to any other influencing Entity, Activity, or Agent that had an effect on its characteristics. More specifically, three subproperties of prov:wasDerivedFrom are provided for certain kinds of derivation among Entities: prov:wasQuotedFrom cites a potentially larger Entity (such as a book, blog, or image) from which a new Entity was created by repeating some or all of the original, prov:wasRevisionOf indicates that the derived Entity contains substantial content from the original Entity (e.g., two editions of a book), and prov:hadPrimarySource cites an older Entity produced by some agent with direct experience and knowledge about the topic (such as a reading from a sensor, or a journal written during an historical event).
The second category relates Entities according to their levels of abstraction, where some Entities may present more specific aspects than their more general counterparts. While prov:specializationOf links a more specific Entity to a more general one (e.g., today's BBC news home page versus BBC's news home page on any day), prov:alternateOf links Entities that present aspects of the same thing, but not necessarily the same aspects or at the same time (e.g., the serialization of a document in different formats). prov:mentionOf is a special type of prov:specializationOf whose subject presents as an aspect a particular prov:Bundle in which its more general Entity was described (prov:asInBundle is used to cite the Bundle in which the generalization was mentioned).
The prov:mentionOf and prov:asInBundle properties are "at risk" and may be removed from this specification based on feedback. Please send feedback to<EMAIL_ADDRESS>These two properties are used to encode the PROV-DM's Mention construct, which might be removed from PROV if implementation experience reveals problems with supporting this construct.
The third category allows further description of Entities. The property prov:value holds a literal value for the Entity. For example, the prov:value of a quote could be a string of the sentences stated, or the prov:value of an Entity involved in a numeric calculation could be the xsd:integer four. The property prov:atLocation can be used to describe the prov:Location of any Entity, Activity, Agent, or prov:InstantaneousEvent (i.e., generation, usage, or invalidation of an entity and the starting or ending of an activity). The properties used to describe instances of prov:Location are outside the scope of PROV-O; reuse of other existing vocabulary is encouraged.
The fourth category describes the lifetime of an Entity beyond being generated by an Activity and used by other Activities. For example, a painting could not have been displayed before it was painted, and it could not be sold after it was destroyed by fire. Similar to how Activities have start and end times, an Entity may be bound by points in time for which it was generated or is no longer usable. The properties prov:generatedAtTime and prov:invalidatedAtTime can be used to bound the starting and ending moments of an Entity's existence. The Activities that led to the generation or invalidation of an Entity can be provided using prov:wasGeneratedBy and prov:wasInvalidatedBy, respectively. prov:generated and prov:invalidated are the inverses of prov:wasGeneratedBy and prov:wasInvalidatedBy, respectively, and are defined to facilitate Activity-as-subject as well as Entity-as-subject descriptions.
The fifth category describes the lifetime of an Activity beyond its start and end times and predecessor Activities. Activities may also be started or ended by Entities, which are described using the properties prov:wasStartedBy and prov:wasEndedBy, respectively. Since Entities may start or end Activities, and Agents may be Entities, then Agents may also start or end Activities.
We illustrate below the use of the expanded terms using the crime file example from the previous section as reference. After his previous actions, Derek then published a post about his work with the aggregated file.
{% escape %}{% include "includes/prov/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt1.ttl" %}{% endescape %}
Agent ex:derek
, acting again on behalf of the :national_newspaper_inc
organization,
published a post about his recent changes to the aggregated file (ex:aggregatedByRegions
) using the tool ex:postEditor
(which was included in a user action tracking system compliant to PROV).
Since he was the one who started and ended the publishing activity (ex:publicationActivity1123
), that information
was recorded as well. The post produced by ex:derek
(ex:post9821v1
) included a permanent link where the content of the latest version is shown
(ex:more-crime-happens-in-cities
) plus a snapshot of the content of the current version (ex:postContent0
). Derek also added additional metadata of the post, like the title.
However, shortly after having published the post, Derek detected a typo. He didn't want to record the activity that led to the new version, so he just created a new version and
summarized the changes in a revision of the original post (ex:post9821v2
). This revision was also an alternate of the original post,
since they were both forms of the long-standing blog.
Thus, the permalink to the latest version (ex:more-crime-happens-in-cities
) remained the same in the new revision, but a different URL was given for its snapshot (ex:postContent1
).
Shortly after Derek's post publication, Monica adapted the text for a wider audience in a new post (ex:post9822
). This version was a specialization of the original post,
and an alternate of the version modified by Derek. Since the provenance produced by the activities of Derek and Monica corresponded to different user views, the system
automatically published it in different prov:Bundles. The system also tagged them as the involved users
with the bundle (so as to be able to locate easily their actions) and added additional metadata, such as the date of creation of the bundle or the creator.
{% escape %}{% include "includes/prov/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt1_a.ttl" %}{% endescape %}
After some time, John wrote his own conclusions quoting the previous two posts:
{% escape %}{% include "includes/prov/examples/eg-25-extended-crime-file-example/rdf/extended-crime-file-pt2.ttl" %}{% endescape %}
Agent ex:John
also named the URI of the original source (ex:aggregatedByRegions
). All the provenance statements related to his post
are grouped in a new prov:Bundle.
Unfortunately, there was a problem in the servers where :post19201
was being stored, and all the data related to the post was lost permanently. Thus, the system
invalidated the entity automatically and notified John about the error.


|
Asylo
|
This library implements operations and utility functions on the proto and uint32 representations of the MISCSELECT structure. More...
#include <vector>
#include "absl/strings/string_view.h"
#include "asylo/identity/platform/sgx/architecture_bits.h"
#include "asylo/identity/platform/sgx/miscselect.pb.h"
#include "asylo/util/status.h"
#include "asylo/util/statusor.h"
Go to the source code of this file.
Namespaces | |
| asylo | |
| asylo::sgx | |
Functions | |
| bool | asylo::sgx::operator== (const Miscselect &lhs, const Miscselect &rhs) |
| Checks two Miscselect protos for equality. More... | |
| bool | asylo::sgx::operator!= (const Miscselect &lhs, const Miscselect &rhs) |
| Checks two Miscselect protos for inequality. More... | |
| Status | asylo::sgx::SetMiscselectBit (MiscselectBit bit, uint32_t *miscselect) |
Sets the given bit of miscselect to true, or returns a non-OK Status if the bit was invalid. More... | |
| Status | asylo::sgx::SetMiscselectBit (MiscselectBit bit, Miscselect *miscselect) |
| Status | asylo::sgx::ClearMiscselectBit (MiscselectBit bit, uint32_t *miscselect) |
Sets the given bit of miscselect to false, or returns a non-OK Status if the bit was invalid. More... | |
| Status | asylo::sgx::ClearMiscselectBit (MiscselectBit bit, Miscselect *miscselect) |
| StatusOr< bool > | asylo::sgx::IsMiscselectBitSet (MiscselectBit bit, uint32_t miscselect) |
Returns whether the given bit of miscselect is set, or returns a non-OK Status if the bit was invalid. More... | |
| StatusOr< bool > | asylo::sgx::IsMiscselectBitSet (MiscselectBit bit, const Miscselect &miscselect) |
| std::vector< absl::string_view > | asylo::sgx::GetPrintableMiscselectList (uint32_t miscselect) |
Returns a printable list of the bits set in miscselect . More... | |
| std::vector< absl::string_view > | asylo::sgx::GetPrintableMiscselectList (const Miscselect &miscselect) |
This library implements operations and utility functions on the proto and uint32 representations of the MISCSELECT structure.


Resistance to tumor necrosis factor induced apoptosis in vitro correlates with high metastatic capacity of cells in vivo.
Abstract
TNF is one of the cytokines secreted by the cells of the immune system. Our data demonstrate that those cell lines lacking capability to form metastatic tumors in vivo are susceptible to TNF induced apoptosis in vitro. However, cell lines with high metastatic potential are resistant to TNF in vitro. Furthermore, the same cell lines were resistant to cytolytic action of other cytotoxic proteins secreted by LAK cells. Our data showed that TNF resistance in vitro correlates with the increased level of transcription factor NF-kappaB. This finding may provide a tool to improve current protocols of immunotherapy and insights to how tumor cells are or are not killed by LAK cells.


Before we can invite you to assess you will need to sign into your account to complete the following:
- provide information about your skill areas
- declare any interests (yours or family members)
- sign your contract
Please sign into your account to complete these sections.
As this is a new service, you need to provide this information online even if you are an existing assessor with Innovate UK. Once your account is created this information will be saved.


#{docsController.tag.description}
Tip: Make sure the container you're in allows overflow to be shown, in case your Action Sheet is located towards the bottom of the container. (This may also be the case horizontally).
To fully understand the markup of the Action Sheet, please consult the Foundation for Apps Documentation.


Sahi Pro - Javascript Dialogs
Browser modal dialogs can be troublesome for automation testers. Since it is a modal,the browser does not proceed with automation unless someone acts upon these dialogs.
Sahi is built for parallel playback where browsers need not be in focus.
Sahi has specific mechanisms to deal with modal dialogs.
Sahi handles these dialogs by mocking them out. You will not see a dialog box when you playback via Sahi.
However you will be able to control the user interaction with these dialogs with specific Sahi APIs.
Alert
An alert box looks like this:There are 2 APIs used with alerts.
_lastAlert
Since Sahi Pro: 3.5Since Sahi OS: 2
_lastAlert([$allalerts])
Arguments
| $allalerts | boolean optional | If true, returns array of all alert messages. |
Details
Returns the last alerted message
Returns the last alerted message
//return array of all alerts in the browser.
var $allAlerts = _lastAlert(true);
//return only last alert.
var $lastAlert= _lastAlert();
info
At times, a UI action causes multiple alerts to appear. To handle such a scenario, one can use _lastAlert(true) and check the last few alerts.
info
$allalerts added in 6.0.0. Scripts written before 6.0.0 do NOT need changes.
_clearLastAlert
Since Sahi Pro: 3.5Since Sahi OS: 3
_clearLastAlert()
Arguments
| None |
Details
Removes the last alert from session so that further occurrence of alerts can be checked
Removes the last alert from session so that further occurrence of alerts can be checked
Alert Example
_click(_button("Click Me")); // trigger the alert
_assertEqual("abc", _lastAlert()); // verify the alert message
Confirm
A confirm dialog looks like this:In a confirm dialog the user can either press OK or Cancel.
Sahi by default clicks OK on the dialog. Sahi can also be told to press Cancel.
_lastConfirm
Since Sahi Pro: 3.5Since Sahi OS: 2
_lastConfirm([$allconfirms])
Arguments
| $allconfirms | boolean optional | If true, returns array of all confirm dialog messages. |
Details
_lastConfirm returns the last confirm dialog message.
_lastConfirm returns the last confirm dialog message.
//return array of all Confirms in the browser.
var $allConfirms = _lastConfirm(true);
//return only last Confirm.
var $lastConfirm= _lastConfirm();
info
At times, a UI action causes multiple confirmation dialogs to appear. To handle such a scenario, one can use _lastConfirm(true) and check the last few confirmation messages.
info
$allconfirms added in 6.0.0. Scripts written before 6.0.0 do NOT need changes.
_expectConfirm
Since Sahi Pro: 3.5Since Sahi OS: 2
_expectConfirm($message, $value[, $persist])
Arguments
| $message | string | message to expect in dialog. This can also be a regular expression |
| $value | boolean | if true will press OK when a confirm dialog with given message appears. If false, will click on Cancel. |
| $persist | boolean optional | if true, will accept a single _expectConfirm statement for all confirms coming after the statement. If false, will accept only the next confirm box to work with the _expectConfirm statement. Default is false. |
Details
_expectConfirm tells Sahi to react with OK or Cancel for a dialog with given message.
_expectConfirm tells Sahi to react with OK or Cancel for a dialog with given message.
_clearLastConfirm
Since Sahi Pro: 3.5Since Sahi OS: 3
_clearLastConfirm()
Arguments
| None |
Details
Removes the last confirm from session so that further occurrence of confirms can be checked
Removes the last confirm from session so that further occurrence of confirms can be checked
Confirm Example
// To click Cancel, use
_expectConfirm("/question/", false); // Tell Sahi to press Cancel for dialog with message containing "question"
_click(_button("Click For Confirm")); // Invoke the dialog
// Sahi would click cancel on it now
_assertEqual("Some question?", _lastConfirm()); // verify the actual confirm message
Prompt
A prompt box looks like this:A prompt dialog is not very commonly used. Sahi by default behaves as if OK was pressed without entering any text.
Sahi can be forced to enter text by setting an expectation via _expectPrompt API.
The message on the prompt box can be obtained later by _lastPrompt() API.
_lastPrompt
Since Sahi Pro: 3.5Since Sahi OS: 2
_lastPrompt([$allprompts])
Arguments
| $allprompts | boolean optional | If true, returns array of all prompt messages. |
Details
_lastPrompt returns the last prompt dialog message.
_lastPrompt returns the last prompt dialog message.
//return array of all Prompts in the browser.
var $allPrompts = _lastPrompt(true);
//return only last Prompt.
var $lastPrompt= _lastPrompt();
_expectPrompt
Since Sahi Pro: 3.5Since Sahi OS: 2
_expectPrompt($promptMessage, $response)
Arguments
| $promptMessage | string | message to expect in dialog. This can also be a regular expression |
| $response | string | Response to enter into the prompt. |
Details
_expectPrompt tells Sahi to respond with given response for a prompt dialog with given promptMessage.
_expectPrompt tells Sahi to respond with given response for a prompt dialog with given promptMessage.
_clearLastPrompt
Since Sahi Pro: 3.5Since Sahi OS: 3
_clearLastPrompt()
Arguments
| None |
Details
Removes the last prompt from session so that further occurrence of prompts can be checked
Removes the last prompt from session so that further occurrence of prompts can be checked
Prompt Example
_expectPrompt("/Some prom/", "abc"); // set expectation
_click(_button("Click For Prompt")); // click for prompt
// abc would be entered by Sahi in the prompt box.
_assertEqual(_lastPrompt(), "Some prompt?"); // verify the full prompt dialog message
Print dialog
Calling the print dilaog during functional test automation is not of much use.However, we can verify if window.print() was called using the following APIs
_printCalled
Since Sahi Pro: 3.5Since Sahi OS: 2
_printCalled()
Arguments
| None |
Details
Returns true if window.print() was called. Else false.
Returns true if window.print() was called. Else false.
_clearPrintCalled
Since Sahi Pro: 3.5Since Sahi OS: 2
_clearPrintCalled()
Arguments
| None |
Details
Resets _printCalled to false, so that _printCalled can be checked once more in the script.
Resets _printCalled to false, so that _printCalled can be checked once more in the script.


2 references to Clear
powershell-tests (2)
csharp\test_Prediction.cs (2)
193
slow.
Clear
();
194
fast.
Clear
();


Ever thought of ditching the mainstream choice and using dex for trading instead? We’ve prepared a list of the top decentralized exchanges, one of which could become your new favorite cryptocurrency trading platform. What is a trader’s worst nightmare? Imagine for a sec...


Single field editors provide a quick way of editing items on a page that should be editable from editing and formatting simple text elements to changing media items like images and videos.
Click any of the images, text items or the container below to see Articulate's field editor in action.
In this section we use the component editor to change the look and feel of the grid, but just like the section above, you can click on the individual images and change them using the field editor.
Sometimes you have a field that can't be easily with Articulate's default editors, in such cases you can simply create a custom field editor.
| Rank | Artist | Popular Song | Discovered On | # of Streams |
|---|---|---|---|---|
| 01. |
Norah Jones |
Don't Know Why |
Jul 05, 2002 |
156,970 |
| 02. |
Asa |
Good Thing |
Aug 26, 2019 |
90,237 |
| 03. |
H.E.R. |
Fate |
Nov 04, 2018 |
82,594 |
| 05. |
Alicia Keys |
28,000 days |
Jul 31, 2015 |
65,300 |
| 06. |
Aloe Blacc |
The Man |
Jan 11, 2014 |
33,152 |


This a demo application for showing how to run Spring Boot Security application on OpenShift Origin with a database store inMySQL.


--- title: Checkbox description: This component is used when you require users to select multiple items from a list. layout: layout-sidenav category: general react-link: ?path=/docs/components-form-formcheck--default-checkbox github-link: true toc: true --- {% capture checkbox-examples %}
Within the checkbox
Ensure that there is at least 16px of horizontal spacing between the checkbox and the label.
Checkboxes should be used:
Checkboxes should not be used:
List available options vertically
It is recommended to list options vertically as horizontal listings may confuse users and make it difficult to tell which label belongs to which option.
Use logical labels
Ensure that labels for checkboxes and groups are clear to the user.
Logical ordering
Ensure that options provided are organised in a meaningful way as this would help users to find the options easily.
Ensure there is enough spacing
Space options out and ensure there is adequate space for touch devices or mobile screens.


Input image:
Showing:
Drawing convergence:
Gamma
Threshold
Saturation
Projection:
Projection:
Projection:
Generating Elements:
Line width:
Number of elements:
Basic triangle:
Rotational symmetries at intersection between:
| straight lines | |
| circle and upper line | |
| circle and lower line |
Center circle:
Rotational symmetries at intersection with
| basic circle | |
| upper line | |
| lower line |
Resulting secondary triangles:
both lines and center circle:
upper line and both circles:
lower line and both circles:
Symmetry operations:
Output image:
Output image size:


A source-code getaway.
Let's take a look at a straightforward jQuery method, .text().
Eric Saxman | 'Andrelton' - 2015.
Find me on GitHub | LinkedIn.
Example: var headerText = $('h1').text();
If called with no arguments, as above, .text() simply returns the text of each element. To do this, it uses the .text() method on the local copy of jQuery, which references Sizzle's .getText().
If a new text string is provided, it sets the textContent of each node to that string.
https://code.jquery.com/jquery-2.1.4.js
jQuery.fn.extend({ text: function( value ) { return access( this, function( value ) { return value === undefined ? jQuery.text( this ) : this.empty().each(function() { if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { this.textContent = value; } }); }, null, value, arguments.length ); }, ...
Sizzle.js is a CSS selector library. It was developed as a part of jQuery, but it is designed to be easily used by other host libraries. It was substantially re-written many years after jQuery was originally released, and it competes well with other selector engines. It is included in-line in the jQuery library.
The jQuery method uses Sizzle's .getText() to get text from DOM nodes. The function flow is fairly straightforward, though it references a native DOM property that few developers may have encountered, nodeType.
If the elem argument is anything other that a single DOM node, getText builds up a string of text in the ret variable. If elem's node type is 'undefined', it is assumed to be an array of elements. getText is called for each element, and its text is added to ret.
If the node is an Element, Document, or DocumentFragment (this is where the nodeType number comes into play), getText returns the value in the .textContent property. If it is a literal text node (or the deprecated 'CDATASection' node...), the nodeValue is returned.
jQuery.text = Sizzle.getText; ... getText = Sizzle.getText = function( elem ) { var node, ret = "", i = 0, nodeType = elem.nodeType; if ( !nodeType ) { // If no nodeType, this is expected to be an array while ( (node = elem[i++]) ) { ret += getText( node ); } } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { if ( typeof elem.textContent === "string" ) { return elem.textContent; } else { // Traverse its children for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { ret += getText( elem ); } } } else if ( nodeType === 3 || nodeType === 4 ) { return elem.nodeValue; } return ret; };


How to watch Tesla’s ‘cybertruck’ reveal tonight in Canada
The event starts at 8pm PT/11pm ET
by Brad BennettTesla is set to reveal its first-generation electric truck tonight live from the west coast.
If this event is anything like the Model Y event, Tesla will live stream it on its website and it might even run a little late. The Model Y stream was at this URL last time, so it’s likely at that URL again. If it changes, MobileSyrup will update the post.
Tesla also has a Youtube channel that might broadcast the reveal as well.
We don’t know very much about the truck so far, but Musk has revealed a few details. You can read our previous post to learn about the already announced features.
As always, MobileSyrup will be watching the event as it unfolds, and we’ll have a post to detail all the new truck’s information shortly after it’s announced.


Ilya Loshkarev<EMAIL_ADDRESS>SFEDU 2016
// Defines position of the view in it's parent
var frame: CGRect
// Defines bounding rectangle for view's content
var bounds: CGRect
// Array of all subviews contained in the view
var subview: [UIView]
| UILabel | displays static text |
|---|---|
| UIImageView | displays an image or an animated sequence of images |
| UIScrollView | lets the user choose between certain options |
| UIButton | lets a user initiate behavior with a tap |
|---|---|
| UITextField | allows the user to input a single line of text |
| UISwitch | lets the user turn an option on and off |
| UISlider | enables users to interactively modify some adjustable value |
| UIDatePicker | is used for selecting a specific date, time, or both |
- touchDown
- touchDownRepeat
- touchUpInside
- touchUpOutside
- valueChanged
- editingDidEnd
- allEvents
- ...
button.addTarget(self,
action: #selector(buttonTouch(sender:)),
for: .touchUpInside)
Target — the object whose method is called
Action — the method of the object that is called
// Initiate View
loadView()
// View has been Initiated
viewDidLoad()
// View State Transitions
viewWillAppear()
viewDidAppear()
viewWillDisappear()
viewDidDisappear()
// View Size Changes
viewWillTransition(to:with:)
// Presents a view controller in a primary context
show(_:sender:)
// Presents a view controller in a secondary (or detail) context
showDetailViewController(_:sender:)
// Presents a view controller in a secondary (or detail) context
present(_:animated:completion:)
// Dismisses the view controller that was presented modally by the view controller
dismiss(animated:completion:)
Provides easy access to different views in an app
Each view can be a start of separate view stack
A segue represents the transition from one scene
to another
| Show | Push on top of main stack | |
|---|---|---|
| Show Detail | Push on top of detail stack | |
| Present in Popover | Show in popover view | |
| Present Modally | Show on top of current root view | |
| Custom | Custom Segue |
// Allows to make changes to the controllers before segue is performed
func prepare(for: UIStoryboardSegue, sender: Any?)
// Performs segue with specific identifier
func performSegue(withIdentifier: String, sender: Any?)
// Determines if the specific segue should be performed
func shouldPerformSegue(withIdentifier: String, sender: Any?)
Each segue has an identifier to distinguish it in storyboard
Connects storyboard item to the code
@IBOutlet weak var myButton: UIButton!
Connects event handler to a control
@IBAction func buttonTouched(sender: UIButton) { }
Auto Layout provides a set of constraints
to describe position and size of a view
in relation to its surrondings
- Top
- Bottom
- Leading
- Trailing
- Width
- Height
- Center X
- Center Y
- Baseline
Every view has 9 layout attributes
// Remove automatic constraints
button.translatesAutoresizingMaskIntoConstraints = false
// Create new constraints
var constraints = [
// Only views in the same view heirarchy can be constrained
button.topAnchor.constraint(equalTo: inputLabel.bottomAnchor),
button.leadingAnchor.constraint(equalTo: view.leadingAnchor),
button.widthAnchor.constraint(equalTo: view.bounds.width,
multiplier: 1 / buttons.count)
]
// Activate the constraints
NSLayoutConstraint.activate(constraints)
| Portrait | Landscape | |
|---|---|---|
| iPhone 7+ | Compact width, Regular height |
Regular width, Compact height |
| Other iPhones | Compact width, Regular height |
Compact width, Compact height |
| iPad | Regular width, Regular height |
Regular width, Regular height |
Constraints can be installed just for specific Size Class
An abstract interface for responding to and handling events
// Recieve touch
touchesBegan(_:with:)
touchesMoved(_:with:)
touchesEnded(_:with:)
// Recieve motion
motionBegan(_:with:)
motionEnded(_:with:)
// Physical button pressed
pressesBegan(_:with:)
pressesChanged(_:with:)
pressesEnded(_:with:)
// Reset recognition process
reset()
- UITapGestureRecognizer
- UISwipeGestureRecognizer
- UIPanGestureRecognizer
- UIPinchGestureRecognizer
- UIRotationGestureRecognizer
- UILongPressGestureRecognizer
let recognizer = UISwipeGestureRecognizer(target: self,
action: #selector(swipeGesture(sender:)))
recognizer.direction = .down
view.addGestureRecognizer(recognizer)
override func touchesEnded(_ touches: Set<UITouch>,
with event: UIEvent?) {
super.tochesEnded(touches, with: event)
if state == .possible && someCondition {
state = .recognized // gesture is recognized
} else {
state = .failed // recognition failed
}
override var canBecomeFirstResponder: Bool { return true }
override func viewDidAppear(_ animated: Bool){
self.becomeFirstResponder()
}
override func motionEnded(_ motion: UIEventSubtype,
with event: UIEvent?) {
if motion == UIEventSubtype.motionShake { doTheShake() }
}
Every view has underlying Core Animation Layer
UIView
– defines a rectangular region on the screen and handles the drawing and touch events
CALayer
– manages graphical properties of the view and handles view-related animations
override func viewDidLoad(){
super.viewDidLoad()
myButton.backgroundColor = UIColor.blackColor()
myButton.tintColor = UIColor.whiteColor()
myButton.layer.cornerRadius = 6
}
Some basic properties of a view can be set in
the Interface Builder
class MyButton: UIButton {
func stylize(){
self.backgroundColor = UIColor.blackColor()
self.tintColor = UIColor.whiteColor()
self.layer.cornerRadius = 6
}
override init(frame: CGRect){
super.init(frame: frame)
stylize()
}
// ... required methods
}
You should get mixed results:
button will look the same in IB,
but look as expected in simulator
@IBDesignable
class MyButton: UIButton {
// The following is only executed in the IB
override func prepareForInterfaceBuilder() {
super.prepareForInterfaceBuilder()
// IB tends to override some properties set in viewDidLoad ???
self.backgroundColor = UIColor.blackColor()
}
}
@IBDesignable
shows that class is suitable for instancing in
the Interface Builder
@IBDesignable
class MyButton: UIButton {
@IBInspectable var cornerRadius: CGFloat {
get{ return layer.cornerRadius }
set{ layer.cornerRadius = newValue }
}
}
@IBInspectable
allows property to be set from
the Interface Builder
@IBDesignable
class RoundButton: UIButton {
override func drawRect(rect: CGRect) {
var path = UIBezierPath(ovalInRect: rect)
// set fill color
bacgroundColor.setFill()
// fill previously defined path
path.fill()
}
}
All the drawing happens in the view's graphic context


Toggle navigation
HEALTHIER
Timeline
Recipes
Reports
Settings
My profile
Change password
Logout
Timeline
Add consumption
Add activity
What did you eat?
What
searching...
When
How much:
Kg
Submit
manage your recipes
What did you do?
What
searching...
When
How much:
minutes
Submit


margotsanchez (Thu, 21 Jun 2018 11:55:23 GMT):
Has joined the channel.
Bertrand.Gorge (Thu, 21 Jun 2018 13:20:15 GMT):
Has joined the channel.
Bertrand.Gorge (Thu, 21 Jun 2018 13:37:06 GMT):
Bonjour, j'ai reçu l'information un peu tardivement de l'atelier qui doit se tenir demain à Paris, ça m'aurait bien intéressé de pouvoir y participer !
Bertrand.Gorge (Thu, 21 Jun 2018 13:37:57 GMT):
Si quelqu'un y va, pourra-t-il faire un petit CR ?
Bertrand.Gorge (Thu, 21 Jun 2018 13:38:00 GMT):
Merci d'avance !
gabriel.plassat (Thu, 21 Jun 2018 13:43:16 GMT):
il y aura un CR (comme d'hab.)
Bertrand.Gorge (Thu, 21 Jun 2018 13:43:24 GMT):
Merci Gabriel !
jeanremy (Thu, 21 Jun 2018 20:44:28 GMT):
Has joined the channel.
jeanremy (Thu, 21 Jun 2018 20:45:50 GMT):
Bonjour, je ne peux également me joindre à cet atelier à mon grand regret. Nous avons chez Welo
jeanremy (Thu, 21 Jun 2018 20:47:04 GMT):
repensé notre BM en valorisant le Wh et les datas associées via la plateforme IOT
jeanremy (Thu, 21 Jun 2018 20:47:38 GMT):
et nous sommes forts intéressés à comprendre le mécanisme du CEE
Bertrand.Gorge (Mon, 25 Jun 2018 08:06:43 GMT):
ça a l'air compliqué...! https://www.challenges.fr/economie/fiscalite/la-verite-sur-la-fraude-aux-certificats-d-energie_596179
Bertrand.Gorge (Mon, 25 Jun 2018 08:07:04 GMT):
https://www.greenunivers.com/2018/06/cee-grosses-critiques-chez-les-parlementaires-louanges-dans-les-communes-183849/
Wiki_Valley (Fri, 06 Jul 2018 08:31:29 GMT):
Has joined the channel.
victor (Fri, 06 Jul 2018 12:42:01 GMT):
Has joined the channel.
romane.m (Mon, 09 Jul 2018 13:30:16 GMT):
Has joined the channel.
claire.chappuis (Tue, 10 Jul 2018 06:23:57 GMT):
Has joined the channel.
charlotte.chebassier (Tue, 10 Jul 2018 08:14:59 GMT):
Has joined the channel.
wassim.benaissa (Tue, 10 Jul 2018 09:06:54 GMT):
Has joined the channel.
nicolas.wikivalley (Tue, 10 Jul 2018 09:10:28 GMT):
Has joined the channel.
laura.pouppeville (Wed, 11 Jul 2018 09:13:04 GMT):
Has joined the channel.
jeremie.almosni (Mon, 16 Jul 2018 11:14:55 GMT):
Has joined the channel.
jeremie.almosni (Mon, 16 Jul 2018 11:37:07 GMT):
Bonjour, je vous joins la présentation qui a été faite le 6 et 22 juin. Le premier relevé de l'appel à programme est clos depuis vendredi. Un second est prévu pour le 1er d'octobre. A votre dispo si vous avez des questions.
servajean.hilst (Mon, 16 Jul 2018 16:28:24 GMT):
Has joined the channel.
Laure_BlaBlaCar (Wed, 25 Jul 2018 13:53:51 GMT):
Has joined the channel.
mikaelmoing (Thu, 26 Jul 2018 07:41:58 GMT):
Has joined the channel.
mehdi (Thu, 26 Jul 2018 13:37:13 GMT):
Has joined the channel.
p2beijing (Fri, 10 Aug 2018 02:06:03 GMT):
Has joined the channel.
fplancke (Sat, 18 Aug 2018 19:26:19 GMT):
Has joined the channel.
osarrat (Mon, 20 Aug 2018 13:47:39 GMT):
Has joined the channel.
petit.mathilde (Tue, 21 Aug 2018 14:25:25 GMT):
Has joined the channel.
marion.stoffel (Tue, 28 Aug 2018 19:46:05 GMT):
Has joined the channel.
lycie (Tue, 04 Sep 2018 13:43:33 GMT):
Has joined the channel.
Ishan (Wed, 05 Sep 2018 17:50:54 GMT):
Has joined the channel.
Romelaer (Thu, 06 Sep 2018 18:13:06 GMT):
Has joined the channel.
Nadia_thecamp (Tue, 11 Sep 2018 13:15:32 GMT):
Has joined the channel.
syd (Tue, 18 Sep 2018 07:11:36 GMT):
Has joined the channel.
nexterite (Tue, 18 Sep 2018 07:53:45 GMT):
Has joined the channel.
sydibyd (Fri, 28 Sep 2018 11:10:51 GMT):
Has joined the channel.
jfbarsoum (Mon, 01 Oct 2018 21:08:36 GMT):
Has joined the channel.
arnaud.philibert (Tue, 02 Oct 2018 12:06:41 GMT):
Has joined the channel.
Bplaine (Thu, 04 Oct 2018 16:34:56 GMT):
Has joined the channel.
Gabriel.vathonne (Tue, 09 Oct 2018 01:34:01 GMT):
Has joined the channel.
pdehaye (Wed, 10 Oct 2018 14:29:24 GMT):
Has joined the channel.
Julie.Lionet.Bourgat (Mon, 22 Oct 2018 13:09:00 GMT):
Has joined the channel.
Laure (Mon, 22 Oct 2018 15:05:22 GMT):
Has joined the channel.
FabriceLeCalvez (Mon, 22 Oct 2018 21:38:28 GMT):
Has joined the channel.
jeremysintes (Tue, 23 Oct 2018 08:53:26 GMT):
Has joined the channel.
philippe.roy (Wed, 24 Oct 2018 13:23:30 GMT):
Has joined the channel.
amaury.masson (Thu, 25 Oct 2018 13:43:40 GMT):
Has joined the channel.
lepeu (Fri, 26 Oct 2018 16:09:27 GMT):
Has joined the channel.
zair.bezghiche (Sat, 27 Oct 2018 11:00:13 GMT):
Has joined the channel.
MNatori (Mon, 29 Oct 2018 13:34:08 GMT):
Has joined the channel.
Fabien_Compere (Mon, 29 Oct 2018 14:24:58 GMT):
Has joined the channel.
aymericlequinio (Mon, 29 Oct 2018 17:01:45 GMT):
Has joined the channel.
pierre.musseau (Mon, 29 Oct 2018 18:07:54 GMT):
Has joined the channel.
Anne-Gaelle (Mon, 29 Oct 2018 19:50:11 GMT):
Has joined the channel.
BEJOT (Mon, 05 Nov 2018 09:57:25 GMT):
Has joined the channel.
benoit.de.chateauvieux (Mon, 05 Nov 2018 22:02:55 GMT):
Has joined the channel.
thomasgauthier94 (Tue, 06 Nov 2018 11:53:36 GMT):
Has joined the channel.
selvini (Tue, 06 Nov 2018 14:03:13 GMT):
Has joined the channel.
Anne.Sophie_Gervais (Thu, 08 Nov 2018 11:17:09 GMT):
Has joined the channel.
raph06 (Thu, 08 Nov 2018 12:45:36 GMT):
Has joined the channel.
Emmanuel-T (Tue, 13 Nov 2018 15:49:33 GMT):
Has joined the channel.
Coraline (Wed, 14 Nov 2018 10:02:54 GMT):
Has joined the channel.
Maxime.Jean (Mon, 19 Nov 2018 08:11:48 GMT):
Has joined the channel.
francois.marceau (Mon, 19 Nov 2018 09:17:52 GMT):
Has joined the channel.
carole.zakin (Mon, 19 Nov 2018 10:15:06 GMT):
Has joined the channel.
cyprien.richer (Mon, 19 Nov 2018 15:04:51 GMT):
Has joined the channel.
jacquarg (Tue, 20 Nov 2018 09:16:35 GMT):
Has joined the channel.
pruls (Wed, 21 Nov 2018 07:50:25 GMT):
Has joined the channel.
farjaudon.lorraine (Thu, 22 Nov 2018 11:27:29 GMT):
Has joined the channel.
maxime.chesnel (Fri, 23 Nov 2018 10:53:24 GMT):
Has joined the channel.
ihg (Thu, 29 Nov 2018 09:48:19 GMT):
Has joined the channel.
alexis.nurdin (Thu, 29 Nov 2018 14:35:49 GMT):
Has joined the channel.
nicolas.dualc (Fri, 30 Nov 2018 08:33:19 GMT):
Has joined the channel.
laurgeau (Fri, 30 Nov 2018 09:18:18 GMT):
Has joined the channel.
corentin (Mon, 03 Dec 2018 17:10:46 GMT):
Has joined the channel.
younes.igrouche (Wed, 05 Dec 2018 10:27:55 GMT):
Has joined the channel.
guillaume.hi (Wed, 05 Dec 2018 13:50:08 GMT):
Has joined the channel.
carole.moleres (Thu, 06 Dec 2018 13:45:49 GMT):
Has joined the channel.
Duvivier (Thu, 06 Dec 2018 20:39:20 GMT):
Has joined the channel.
OlivierVerb (Thu, 13 Dec 2018 19:30:54 GMT):
Has joined the channel.
guillaume.costeseque (Mon, 17 Dec 2018 09:56:03 GMT):
Has joined the channel.
Velook (Tue, 18 Dec 2018 18:03:36 GMT):
Has joined the channel.
fabienGainier (Wed, 19 Dec 2018 10:01:03 GMT):
Has joined the channel.
angelo.furno (Wed, 19 Dec 2018 21:27:16 GMT):
Has joined the channel.
sarazin (Thu, 20 Dec 2018 10:08:58 GMT):
Has joined the channel.
clemence.vorreux (Thu, 20 Dec 2018 17:29:51 GMT):
Has joined the channel.
Laurent_GAGNEPAIN (Fri, 21 Dec 2018 13:08:43 GMT):
Has joined the channel.
Patrick_SUCCHE (Sat, 22 Dec 2018 08:29:51 GMT):
Has joined the channel.
rodolphe-DI (Tue, 01 Jan 2019 16:38:11 GMT):
Has joined the channel.
claire.zim (Thu, 03 Jan 2019 17:35:23 GMT):
Has joined the channel.
elsa.lanco (Thu, 10 Jan 2019 08:58:11 GMT):
Has joined the channel.
christina.nirup (Fri, 11 Jan 2019 08:27:10 GMT):
Has joined the channel.
cyril.fouquet (Fri, 11 Jan 2019 15:01:36 GMT):
Has joined the channel.
traisson (Fri, 11 Jan 2019 15:30:48 GMT):
Has joined the channel.
geraud.acquier (Wed, 16 Jan 2019 19:58:27 GMT):
Has joined the channel.
bg (Thu, 17 Jan 2019 06:56:57 GMT):
Has joined the channel.
jacques.toulemonde (Thu, 17 Jan 2019 07:24:28 GMT):
Has joined the channel.
JCconsultant (Thu, 17 Jan 2019 13:47:44 GMT):
Has joined the channel.
JulieBraka (Fri, 18 Jan 2019 08:33:43 GMT):
Has joined the channel.
ValGuichon (Tue, 22 Jan 2019 10:38:35 GMT):
Has joined the channel.
MobiliteDurable (Wed, 23 Jan 2019 15:36:55 GMT):
Has joined the channel.
nicolas.perraut (Fri, 25 Jan 2019 17:30:20 GMT):
Has joined the channel.
entryist (Sun, 27 Jan 2019 17:49:02 GMT):
Has joined the channel.
gabrielle.sabatier (Tue, 29 Jan 2019 12:47:06 GMT):
Has joined the channel.
PNRGC (Tue, 29 Jan 2019 13:40:02 GMT):
Has joined the channel.
michel.parent (Wed, 30 Jan 2019 14:12:51 GMT):
Has joined the channel.
Lucas_R (Wed, 30 Jan 2019 19:46:17 GMT):
Has joined the channel.
Antoine (Fri, 01 Feb 2019 16:00:28 GMT):
Has joined the channel.
jerome (Mon, 04 Feb 2019 10:23:09 GMT):
Has joined the channel.
clement.bernier (Mon, 04 Feb 2019 10:24:08 GMT):
Has joined the channel.
diana-luz.houdayer-laborde (Mon, 04 Feb 2019 10:26:49 GMT):
Has joined the channel.
francois.gatineau (Thu, 07 Feb 2019 11:44:00 GMT):
Has joined the channel.
georges.gallais (Sun, 10 Feb 2019 11:22:20 GMT):
Has joined the channel.
frederic.laithier (Thu, 14 Feb 2019 12:33:06 GMT):
Has joined the channel.
geigerni (Sat, 23 Feb 2019 11:13:31 GMT):
Has joined the channel.
remy.cassabel (Mon, 25 Feb 2019 13:33:17 GMT):
Has joined the channel.
Francois.Rabasse (Tue, 26 Feb 2019 11:12:40 GMT):
Has joined the channel.
elias.alaoui (Tue, 26 Feb 2019 13:18:24 GMT):
Has joined the channel.
rick.vanderzwet (Wed, 27 Feb 2019 15:13:13 GMT):
Has joined the channel.
marques.pascal (Fri, 01 Mar 2019 10:29:22 GMT):
Has joined the channel.
jonathan.blaise (Mon, 04 Mar 2019 08:45:12 GMT):
Has joined the channel.
francois.lassagne (Wed, 13 Mar 2019 13:44:36 GMT):
Has joined the channel.
ana.simina (Thu, 14 Mar 2019 13:41:19 GMT):
Has joined the channel.
saeed (Thu, 14 Mar 2019 14:35:29 GMT):
Has joined the channel.
YoGoKo (Mon, 18 Mar 2019 12:26:43 GMT):
Has joined the channel.
Brigitte-Trousse (Mon, 18 Mar 2019 12:34:37 GMT):
Has joined the channel.
rawad.zgheib (Mon, 18 Mar 2019 13:52:51 GMT):
Has joined the channel.
simon.louvet (Fri, 22 Mar 2019 14:31:19 GMT):
Has joined the channel.
SolenneC (Thu, 28 Mar 2019 09:27:45 GMT):
Has joined the channel.
Naej-El (Thu, 28 Mar 2019 14:17:23 GMT):
Has joined the channel.
david.sciamma (Thu, 28 Mar 2019 14:45:08 GMT):
Has joined the channel.
Bruno (Fri, 29 Mar 2019 09:41:59 GMT):
Has joined the channel.
alfred.jarry (Mon, 01 Apr 2019 08:36:28 GMT):
Has joined the channel.
pdufraisse (Wed, 03 Apr 2019 08:34:22 GMT):
Has joined the channel.
marzloff (Wed, 03 Apr 2019 14:45:52 GMT):
Has joined the channel.
nd (Mon, 08 Apr 2019 17:49:24 GMT):
Has joined the channel.
romy.kombet (Tue, 09 Apr 2019 11:27:49 GMT):
Has joined the channel.
cecile.gracy (Tue, 09 Apr 2019 14:57:55 GMT):
Has joined the channel.
quent.le (Wed, 10 Apr 2019 08:35:26 GMT):
Has joined the channel.
jeremie.perales (Fri, 12 Apr 2019 14:29:38 GMT):
Has joined the channel.
amine (Fri, 12 Apr 2019 15:23:44 GMT):
Has joined the channel.
Agathe_Lehel (Fri, 12 Apr 2019 18:40:46 GMT):
Has joined the channel.
Jean-Philippe_Monfet (Tue, 16 Apr 2019 19:37:47 GMT):
Has joined the channel.
Michael_Coop_Carbone (Wed, 17 Apr 2019 13:56:22 GMT):
Has joined the channel.
theophil (Wed, 17 Apr 2019 14:11:03 GMT):
Has joined the channel.
SylvanieGodillon (Wed, 17 Apr 2019 14:30:29 GMT):
Has joined the channel.
cedric.ravalec (Thu, 18 Apr 2019 14:46:25 GMT):
Has joined the channel.
VALERIE.SOK (Thu, 18 Apr 2019 17:39:40 GMT):
Has joined the channel.
pauline.baraban (Fri, 19 Apr 2019 08:09:18 GMT):
Has joined the channel.
Jerome0 (Fri, 19 Apr 2019 12:48:39 GMT):
Has joined the channel.
peyricot (Fri, 19 Apr 2019 20:50:28 GMT):
Has joined the channel.
micromobile (Wed, 24 Apr 2019 07:16:25 GMT):
Has joined the channel.
sebastien.meert (Wed, 24 Apr 2019 10:27:44 GMT):
Has joined the channel.
constance.bidard (Wed, 24 Apr 2019 16:20:08 GMT):
Has joined the channel.
olivier.cloteaux (Thu, 25 Apr 2019 07:47:32 GMT):
Has joined the channel.
quentin.lestavel (Fri, 26 Apr 2019 09:30:12 GMT):
Has joined the channel.
cyrilleestrade (Mon, 29 Apr 2019 10:59:44 GMT):
Has joined the channel.
robin.michel (Mon, 29 Apr 2019 14:15:45 GMT):
Has joined the channel.
sandoval.thomas (Mon, 29 Apr 2019 14:46:07 GMT):
Has joined the channel.
Arthur.Ley (Tue, 30 Apr 2019 09:37:15 GMT):
Has joined the channel.
maud-0 (Tue, 30 Apr 2019 12:13:05 GMT):
Has joined the channel.
carlos.garcia (Tue, 30 Apr 2019 13:20:43 GMT):
Has joined the channel.
meerkat (Thu, 02 May 2019 12:17:22 GMT):
Has joined the channel.
dominique.savary (Fri, 03 May 2019 07:33:53 GMT):
Has joined the channel.
collectif.mouansemble (Fri, 03 May 2019 08:27:17 GMT):
Has joined the channel.
thibaudfebvre (Fri, 03 May 2019 15:39:24 GMT):
Has joined the channel.
fbernigaud (Tue, 07 May 2019 09:47:32 GMT):
Has joined the channel.
mario.cc (Tue, 07 May 2019 09:55:13 GMT):
Has joined the channel.
Nicolas-Citedudesign (Tue, 07 May 2019 12:17:47 GMT):
Has joined the channel.
stephane.boutonnet (Thu, 09 May 2019 06:38:34 GMT):
Has joined the channel.
dm_tweag (Fri, 10 May 2019 06:55:52 GMT):
Has joined the channel.
zakaria (Fri, 10 May 2019 08:22:35 GMT):
Has joined the channel.
virginie.cornu (Fri, 10 May 2019 09:12:34 GMT):
Has joined the channel.
bernard.soulez (Fri, 10 May 2019 14:47:10 GMT):
Has joined the channel.
perole.gilles (Sun, 12 May 2019 07:15:09 GMT):
Has joined the channel.
F8Full (Mon, 13 May 2019 13:45:43 GMT):
Has joined the channel.
iris.lohja (Mon, 13 May 2019 15:19:42 GMT):
Has joined the channel.
leofrachet (Tue, 14 May 2019 14:13:02 GMT):
Has joined the channel.
TRISTAN.ROUSSEL (Wed, 15 May 2019 05:36:13 GMT):
Has joined the channel.
djoker (Thu, 16 May 2019 08:59:02 GMT):
Has joined the channel.
fluidlog (Fri, 17 May 2019 13:12:52 GMT):
Has joined the channel.
vincent.rojon (Wed, 22 May 2019 15:07:07 GMT):
Has joined the channel.
espace.pama (Thu, 23 May 2019 14:11:41 GMT):
Has joined the channel.
susanne.ritzmann (Tue, 28 May 2019 07:20:07 GMT):
Has joined the channel.
jeremie.almosni (Tue, 28 May 2019 11:46:14 GMT):
[Stratégie Transport & Mobilité ADEME ] - concertation / consultation.
Bonjour,
L’ADEME lance une réflexion ouverte sur l’actualisation de sa stratégie Transport et Mobilité. Le premier temps est consacré au bilan de l’actuelle stratégie T&M 2014 -2017. Pour ce faire, nous vous proposons de répondre à ce questionnaire si vous avez été bénéficiaires des soutiens de l’ADEME : https://docs.google.com/forms/d/e/1FAIpQLSeCcMW_KJ5cujcxoJEFSs3Mic7tJN8AAEANtYaJw4dAkNP_fw/viewform?usp=sf_link
Le questionnaire est court et permettra d’alimenter la construction des nouveaux axes de la stratégie. Dans l’idéal, nous aimerions disposer de retours pour le 11 juin. Par ailleurs, nous aurons l’occasion à l’issue de ce phase d’enquête de réaliser des ateliers pratiques et revenir vers vous si vous exprimez un intérêt pour y participer.
Pour votre info, le lien vers l’actuelle stratégie de l’ADEME Transport & Mobilités : https://www.ademe.fr/sites/default/files/assets/documents/strategie-transports-et-mobilite-periode-2014-2017.pdf
Nous nous tenons à votre disposition si besoin de compléments et d’explications de la démarche.
Bien cordialement
Pierre.Garnier (Tue, 28 May 2019 13:34:14 GMT):
Has joined the channel.
Mldl2310 (Tue, 28 May 2019 18:56:09 GMT):
Has joined the channel.
sebastien.roques (Wed, 29 May 2019 08:55:47 GMT):
Has joined the channel.
kw (Wed, 29 May 2019 09:16:43 GMT):
Has joined the channel.
yves (Wed, 29 May 2019 18:14:53 GMT):
Has joined the channel.
genevieve.morin (Fri, 31 May 2019 00:42:23 GMT):
Has joined the channel.
Nawel (Wed, 05 Jun 2019 12:47:27 GMT):
Has joined the channel.
vernet (Tue, 11 Jun 2019 13:10:59 GMT):
Has joined the channel.
naw0 (Thu, 13 Jun 2019 12:35:46 GMT):
Has joined the channel.
jean.baptiste.rouge (Thu, 13 Jun 2019 14:33:36 GMT):
Has joined the channel.
bndn (Mon, 17 Jun 2019 08:10:25 GMT):
Has joined the channel.
bndn (Mon, 17 Jun 2019 15:04:51 GMT):
Has left the channel.
npenfornis (Tue, 18 Jun 2019 17:52:42 GMT):
Has joined the channel.
thimont (Fri, 21 Jun 2019 07:24:00 GMT):
Has joined the channel.
ndu (Fri, 21 Jun 2019 08:59:52 GMT):
Has joined the channel.
Claire_Schreiber (Fri, 21 Jun 2019 10:50:06 GMT):
Has joined the channel.
MaximeT-OVS_Calais (Fri, 21 Jun 2019 12:48:49 GMT):
Has joined the channel.
louis.philippe.messier (Fri, 21 Jun 2019 17:06:27 GMT):
Has joined the channel.
zachary.patterson (Sat, 22 Jun 2019 17:53:53 GMT):
Has joined the channel.
alain_imbaud (Tue, 25 Jun 2019 13:26:39 GMT):
Has joined the channel.
florian.rony (Tue, 25 Jun 2019 13:26:45 GMT):
Has joined the channel.
troels (Wed, 26 Jun 2019 13:12:00 GMT):
Has joined the channel.
JimmyArmoogum (Wed, 26 Jun 2019 14:00:35 GMT):
Has joined the channel.
davoust.agathe (Thu, 27 Jun 2019 14:34:19 GMT):
Has joined the channel.
ccauvet (Tue, 02 Jul 2019 06:06:46 GMT):
Has joined the channel.
gabriel.plassat (Thu, 04 Jul 2019 05:54:01 GMT):
[notes] CR de l'atelier CEE du 3 juillet 2019 => https://pad.fabmob.io/CEE2?both
Mourad.Harrat (Thu, 04 Jul 2019 08:57:38 GMT):
Has joined the channel.
herrmann_monunivert (Thu, 04 Jul 2019 09:40:04 GMT):
Has joined the channel.
adelcasse (Thu, 04 Jul 2019 16:16:09 GMT):
Has joined the channel.
R.Osmont-ENI (Thu, 04 Jul 2019 17:06:20 GMT):
Has joined the channel.
jbaptiste.schmider (Mon, 08 Jul 2019 09:45:28 GMT):
Has joined the channel.
guillaume (Mon, 08 Jul 2019 11:27:25 GMT):
Has joined the channel.
jbdubois (Mon, 08 Jul 2019 14:28:55 GMT):
Has joined the channel.
gabriel.plassat (Mon, 08 Jul 2019 14:49:58 GMT):
@all Quelles sont les personnes qui ont présenté le pitch N°2 lors de l'atelier CEE (former les copros installation prise recharge VE) ?
pascal.robichaud (Mon, 08 Jul 2019 16:19:10 GMT):
Has joined the channel.
Thomas_PAULO (Tue, 09 Jul 2019 11:16:18 GMT):
Has joined the channel.
Aymeric_weyland (Thu, 11 Jul 2019 16:20:16 GMT):
Has joined the channel.
vcasacci (Mon, 15 Jul 2019 12:26:16 GMT):
Has joined the channel.
frodjango (Mon, 15 Jul 2019 14:37:40 GMT):
Has joined the channel.
aurelien-fabre (Tue, 16 Jul 2019 12:42:25 GMT):
Has joined the channel.
paul.de.chatelperron (Wed, 17 Jul 2019 08:42:37 GMT):
Has joined the channel.
erikamorin (Wed, 17 Jul 2019 18:06:39 GMT):
Has joined the channel.
amparo.aguado (Thu, 18 Jul 2019 13:44:34 GMT):
Has joined the channel.
netlocal (Thu, 18 Jul 2019 14:22:26 GMT):
Has joined the channel.
loicmayol (Thu, 18 Jul 2019 14:44:13 GMT):
Has joined the channel.
stefan (Fri, 19 Jul 2019 10:01:34 GMT):
Has joined the channel.
Manondelbos (Sat, 20 Jul 2019 07:07:23 GMT):
Has joined the channel.
anthony (Sat, 20 Jul 2019 12:30:57 GMT):
Has joined the channel.
irshad (Sat, 20 Jul 2019 16:10:18 GMT):
Has joined the channel.
bouhassoune (Sat, 20 Jul 2019 17:04:49 GMT):
Has joined the channel.
omaffre (Mon, 22 Jul 2019 06:58:23 GMT):
Has joined the channel.
pierre.renault (Mon, 22 Jul 2019 09:17:28 GMT):
Has joined the channel.
ben.unu (Mon, 22 Jul 2019 12:32:33 GMT):
Has joined the channel.
xamanu (Mon, 22 Jul 2019 12:56:32 GMT):
Has joined the channel.
mathilde.monge (Mon, 22 Jul 2019 13:33:20 GMT):
Has joined the channel.
letch (Wed, 24 Jul 2019 12:52:44 GMT):
Has joined the channel.
glx (Wed, 24 Jul 2019 20:20:52 GMT):
Has joined the channel.
ariane.rozo (Thu, 25 Jul 2019 14:47:16 GMT):
Has joined the channel.
jibe-b (Mon, 29 Jul 2019 09:43:25 GMT):
Has joined the channel.
AfricanFuture (Tue, 30 Jul 2019 08:21:02 GMT):
Has joined the channel.
MDudreuil (Tue, 30 Jul 2019 14:54:19 GMT):
Has joined the channel.
amandine_rc (Thu, 01 Aug 2019 08:23:46 GMT):
Has joined the channel.
charlois.idier (Fri, 02 Aug 2019 09:09:37 GMT):
Has joined the channel.
cyprien.noble (Fri, 02 Aug 2019 15:59:11 GMT):
Has joined the channel.
radtke (Mon, 05 Aug 2019 15:01:31 GMT):
Has joined the channel.
mobolaji.olagbaju (Tue, 06 Aug 2019 11:28:39 GMT):
Has joined the channel.
chris (Tue, 06 Aug 2019 13:22:50 GMT):
Has joined the channel.
lio81 (Thu, 08 Aug 2019 09:56:12 GMT):
Has joined the channel.
guillaume.normand (Tue, 20 Aug 2019 08:49:22 GMT):
Has joined the channel.
stelandre (Tue, 27 Aug 2019 07:08:52 GMT):
Has joined the channel.
jan.krewer (Wed, 28 Aug 2019 14:00:24 GMT):
Has joined the channel.
julien.veloptimo (Fri, 30 Aug 2019 08:05:27 GMT):
Has joined the channel.
nahelou (Fri, 30 Aug 2019 13:00:50 GMT):
Has joined the channel.
claires (Thu, 19 Sep 2019 10:50:41 GMT):
Has joined the channel.
le.borgne (Thu, 19 Sep 2019 16:30:57 GMT):
Has joined the channel.
meric.fournier (Mon, 23 Sep 2019 14:00:35 GMT):
Has joined the channel.
phyks (Mon, 23 Sep 2019 20:56:39 GMT):
Has joined the channel.
lucas.quinonero (Fri, 27 Sep 2019 11:15:08 GMT):
Has joined the channel.
Rahma.Bahloul (Mon, 30 Sep 2019 10:57:33 GMT):
Has joined the channel.
nathanael.benaym (Mon, 30 Sep 2019 11:11:57 GMT):
Has joined the channel.
barnier (Mon, 30 Sep 2019 15:10:08 GMT):
Has joined the channel.
Sylvain_Ethier (Fri, 04 Oct 2019 20:29:48 GMT):
Has joined the channel.
nvram (Mon, 07 Oct 2019 16:04:24 GMT):
Has joined the channel.
philippe.fortin (Wed, 09 Oct 2019 13:20:23 GMT):
Has joined the channel.
mael (Wed, 09 Oct 2019 14:32:46 GMT):
Has joined the channel.
ophelie (Wed, 09 Oct 2019 14:43:08 GMT):
Has joined the channel.
Thibault-PadamMobility (Wed, 09 Oct 2019 15:41:58 GMT):
Has joined the channel.
stroh (Wed, 09 Oct 2019 19:06:58 GMT):
Has joined the channel.
Lecram (Thu, 10 Oct 2019 07:54:44 GMT):
Has joined the channel.
thanh.nghiem (Thu, 10 Oct 2019 07:54:49 GMT):
Has joined the channel.
margot.foureau (Thu, 10 Oct 2019 12:34:11 GMT):
Has joined the channel.
charlesmontejo (Thu, 10 Oct 2019 12:57:50 GMT):
Has joined the channel.
gael.genety (Thu, 10 Oct 2019 14:24:04 GMT):
Has joined the channel.
mounir.hallab (Thu, 10 Oct 2019 18:26:21 GMT):
Has joined the channel.
marie.alconchel (Fri, 11 Oct 2019 09:00:58 GMT):
Has joined the channel.
simon.burkhalter (Sun, 13 Oct 2019 14:47:15 GMT):
Has joined the channel.
p.sucche (Tue, 15 Oct 2019 06:36:59 GMT):
Has joined the channel.
Maelle_Plouganou (Tue, 15 Oct 2019 15:57:43 GMT):
Has joined the channel.
nicolas.amblard (Wed, 16 Oct 2019 13:20:24 GMT):
Has joined the channel.
simonstest (Mon, 21 Oct 2019 13:02:35 GMT):
Has joined the channel.
sidhoum.zakia (Mon, 21 Oct 2019 14:50:20 GMT):
Has joined the channel.
manfred (Fri, 25 Oct 2019 21:41:42 GMT):
Has joined the channel.
sybille.saint.girons (Mon, 28 Oct 2019 10:23:58 GMT):
Has joined the channel.
pierro78 (Mon, 28 Oct 2019 12:51:52 GMT):
Has joined the channel.
mose (Mon, 28 Oct 2019 18:52:59 GMT):
Has joined the channel.
JB_Ray (Tue, 29 Oct 2019 17:24:52 GMT):
Has joined the channel.
amandine.volard (Wed, 30 Oct 2019 13:35:34 GMT):
Has joined the channel.
sophie.marro (Wed, 30 Oct 2019 14:41:20 GMT):
Has joined the channel.
nathalie (Sat, 02 Nov 2019 00:22:49 GMT):
Has joined the channel.
enock4seth (Sat, 02 Nov 2019 18:23:39 GMT):
Has joined the channel.
ISABEH (Sun, 03 Nov 2019 11:00:33 GMT):
Has joined the channel.
elisabeth.lecq (Wed, 06 Nov 2019 11:01:07 GMT):
Has joined the channel.
eline.chambon (Wed, 06 Nov 2019 15:40:06 GMT):
Has joined the channel.
albertreynaud (Thu, 07 Nov 2019 12:56:57 GMT):
Has joined the channel.
florentbenameur (Sun, 10 Nov 2019 15:28:59 GMT):
Has joined the channel.
GTH (Thu, 21 Nov 2019 15:28:13 GMT):
Has joined the channel.
sim (Fri, 06 Dec 2019 09:02:12 GMT):
Has joined the channel.
sylvain (Fri, 06 Dec 2019 11:12:33 GMT):
Has joined the channel.
nlehuby (Sat, 07 Dec 2019 16:31:37 GMT):
Has joined the channel.
charles.talbot (Sat, 28 Dec 2019 10:17:41 GMT):
Has joined the channel.
mathilde.monniot (Mon, 06 Jan 2020 13:11:58 GMT):
Has joined the channel.
Eleonore.Bon (Mon, 06 Jan 2020 16:03:58 GMT):
Has joined the channel.
ahmed_g (Tue, 07 Jan 2020 15:34:37 GMT):
Has joined the channel.
Pascale (Thu, 09 Jan 2020 19:19:56 GMT):
Has joined the channel.
audric_agbo (Wed, 15 Jan 2020 15:56:43 GMT):
Has joined the channel.
guillaumeaugais (Wed, 15 Jan 2020 16:20:18 GMT):
Has joined the channel.
DavidDupuy (Thu, 16 Jan 2020 08:59:15 GMT):
Has joined the channel.
aureliano.sinatra (Thu, 16 Jan 2020 11:08:18 GMT):
Has joined the channel.
maiadereva (Tue, 21 Jan 2020 14:36:27 GMT):
Has joined the channel.
daniel.kaplan (Thu, 23 Jan 2020 15:44:06 GMT):
Has joined the channel.
gauthier (Thu, 23 Jan 2020 16:24:35 GMT):
Has joined the channel.
xavierlonjon (Mon, 03 Feb 2020 13:35:07 GMT):
Has joined the channel.
gilles.betis (Mon, 03 Feb 2020 14:25:13 GMT):
Has joined the channel.
patrice.vallade (Fri, 07 Feb 2020 12:53:54 GMT):
Has joined the channel.
bruno.lemetayer (Fri, 07 Feb 2020 20:37:47 GMT):
Has joined the channel.
judith.cre.monteregie (Tue, 11 Feb 2020 16:43:05 GMT):
Has joined the channel.
florian.delonin (Thu, 13 Feb 2020 16:04:58 GMT):
Has joined the channel.
Alice.Brauns (Wed, 19 Feb 2020 09:48:17 GMT):
Has joined the channel.
lotik (Mon, 24 Feb 2020 08:16:53 GMT):
Has joined the channel.
olmaffre (Mon, 24 Feb 2020 09:06:14 GMT):
Has joined the channel.
dominique.hebert (Mon, 24 Feb 2020 22:59:53 GMT):
Has joined the channel.
wehrli.celine (Tue, 03 Mar 2020 10:50:26 GMT):
Has joined the channel.
Marc_Fournier (Thu, 05 Mar 2020 15:53:50 GMT):
Has joined the channel.
morlot (Thu, 05 Mar 2020 15:57:36 GMT):
Has joined the channel.
louisvillard (Thu, 05 Mar 2020 16:11:32 GMT):
Has joined the channel.
Gorce_Anouk (Thu, 05 Mar 2020 20:32:33 GMT):
Has joined the channel.
Caubel (Tue, 10 Mar 2020 16:54:31 GMT):
Has joined the channel.
laura.foglia (Tue, 10 Mar 2020 17:10:10 GMT):
Has joined the channel.
Jean.ROBERT (Tue, 10 Mar 2020 17:59:43 GMT):
Has joined the channel.
yann.tremeac (Thu, 12 Mar 2020 12:19:20 GMT):
Has joined the channel.
jerome-poyet (Mon, 16 Mar 2020 14:16:45 GMT):
Has joined the channel.
laurence.mechin (Mon, 16 Mar 2020 14:32:31 GMT):
Has joined the channel.
mireille (Mon, 16 Mar 2020 14:34:07 GMT):
Has joined the channel.
pierre.taillant (Mon, 16 Mar 2020 14:47:09 GMT):
Has joined the channel.
remy.leboennec (Mon, 16 Mar 2020 15:27:47 GMT):
Has joined the channel.
lara.hoelting (Tue, 17 Mar 2020 13:31:29 GMT):
Has joined the channel.
nicolas.lb (Fri, 20 Mar 2020 10:47:50 GMT):
Has joined the channel.
kmog (Fri, 20 Mar 2020 11:55:28 GMT):
Has joined the channel.
lea.chretien (Fri, 20 Mar 2020 15:19:08 GMT):
Has joined the channel.
paul_bridier (Fri, 20 Mar 2020 16:09:00 GMT):
Has joined the channel.
Yao (Fri, 20 Mar 2020 19:07:51 GMT):
Has joined the channel.
cecile.lavernhe (Mon, 23 Mar 2020 09:37:29 GMT):
Has joined the channel.
marc.cottignies (Mon, 23 Mar 2020 10:30:14 GMT):
Has joined the channel.
sandrine.carballes (Mon, 23 Mar 2020 10:50:22 GMT):
Has joined the channel.
Kiki (Mon, 23 Mar 2020 13:05:51 GMT):
Has joined the channel.
louise.kold-taylor (Mon, 23 Mar 2020 18:31:53 GMT):
Has joined the channel.
ClaraB (Sun, 29 Mar 2020 15:05:13 GMT):
Has joined the channel.
emmanuel.poisson-quinton (Mon, 30 Mar 2020 08:54:32 GMT):
Has joined the channel.
Cath (Mon, 30 Mar 2020 18:46:58 GMT):
Has joined the channel.
pony (Wed, 01 Apr 2020 09:23:40 GMT):
Has joined the channel.
salvatore.cimmino (Fri, 03 Apr 2020 13:51:37 GMT):
Has joined the channel.
karine (Sat, 04 Apr 2020 19:51:30 GMT):
Has joined the channel.
camillem (Sun, 05 Apr 2020 18:35:45 GMT):
Has joined the channel.
jonatan.cloutier (Tue, 07 Apr 2020 20:47:35 GMT):
Has joined the channel.
marie-pierre.gendron (Fri, 10 Apr 2020 14:42:05 GMT):
Has joined the channel.
Jesse (Fri, 10 Apr 2020 20:41:12 GMT):
Has joined the channel.
gontrand.dumont (Fri, 10 Apr 2020 20:55:01 GMT):
Has joined the channel.
xavier.massicotte (Fri, 10 Apr 2020 21:00:36 GMT):
Has joined the channel.
clem (Fri, 10 Apr 2020 21:28:11 GMT):
Has joined the channel.
marie.tack (Fri, 10 Apr 2020 21:52:00 GMT):
Has joined the channel.
Ysaia (Sat, 11 Apr 2020 01:32:32 GMT):
Has joined the channel.
ameliepb (Sat, 11 Apr 2020 14:18:09 GMT):
Has joined the channel.
laurent.lewis (Sun, 12 Apr 2020 16:22:41 GMT):
Has joined the channel.
Amelie (Sun, 12 Apr 2020 22:36:33 GMT):
Has joined the channel.
Amelie (Sun, 12 Apr 2020 22:39:25 GMT):
Has left the channel.
maude.lapointe (Mon, 13 Apr 2020 15:33:30 GMT):
Has joined the channel.
melissa.dlf (Mon, 13 Apr 2020 16:04:06 GMT):
Has joined the channel.
eva.murith (Mon, 13 Apr 2020 18:27:03 GMT):
Has joined the channel.
mathieu.couture (Mon, 13 Apr 2020 19:23:57 GMT):
Has joined the channel.
penelope.stuart (Mon, 13 Apr 2020 19:32:11 GMT):
Has joined the channel.
guillaume.fortin (Mon, 13 Apr 2020 19:34:23 GMT):
Has joined the channel.
chloe.fortier.devin (Mon, 13 Apr 2020 19:36:22 GMT):
Has joined the channel.
Romain_Gayet (Mon, 13 Apr 2020 19:37:26 GMT):
Has joined the channel.
nestel.jeremie (Tue, 14 Apr 2020 09:23:55 GMT):
Has joined the channel.
HeleneCauchoix (Tue, 14 Apr 2020 18:50:35 GMT):
Has joined the channel.
marie-helene.beaudry (Tue, 14 Apr 2020 22:35:31 GMT):
Has joined the channel.
mathieu.couture (Wed, 15 Apr 2020 14:10:23 GMT):
Has left the channel.
Maelle_Plouganou (Thu, 16 Apr 2020 19:22:20 GMT):
Has left the channel.
alexandre g (Fri, 17 Apr 2020 10:04:31 GMT):
Has joined the channel.
test_du_nouveau_bouton (Fri, 17 Apr 2020 13:01:05 GMT):
Has joined the channel.
ju.tav (Fri, 17 Apr 2020 16:34:01 GMT):
Has joined the channel.
Arthur (Fri, 17 Apr 2020 16:43:01 GMT):
Has joined the channel.
Pierre_Lagrandmaison (Mon, 20 Apr 2020 14:48:33 GMT):
Has joined the channel.
diana.borda (Wed, 22 Apr 2020 02:01:20 GMT):
Has joined the channel.
marie-reine.roy (Thu, 23 Apr 2020 13:00:41 GMT):
Has joined the channel.
ValerieM (Thu, 23 Apr 2020 16:47:02 GMT):
Has joined the channel.
melanie.marceau-d (Fri, 24 Apr 2020 15:33:28 GMT):
Has joined the channel.
cynthia.hamel-kropf (Sun, 26 Apr 2020 20:33:47 GMT):
Has joined the channel.
BENOIT_TROUVE (Mon, 27 Apr 2020 06:16:36 GMT):
Has joined the channel.
ali.saidi (Mon, 27 Apr 2020 20:08:17 GMT):
Has joined the channel.
AnneJulie_AB (Mon, 27 Apr 2020 22:22:55 GMT):
Has joined the channel.
alexandre.barreto (Tue, 28 Apr 2020 07:17:03 GMT):
Has joined the channel.
thierry.lachapelle (Tue, 28 Apr 2020 12:27:37 GMT):
Has joined the channel.
clement (Tue, 28 Apr 2020 17:37:13 GMT):
Has joined the channel.
helene.dimanche (Tue, 28 Apr 2020 20:28:58 GMT):
Has joined the channel.
Julie-Scheid (Wed, 29 Apr 2020 14:27:14 GMT):
Has joined the channel.
veloma (Wed, 29 Apr 2020 18:55:39 GMT):
Has joined the channel.
leandre (Wed, 29 Apr 2020 23:06:08 GMT):
Has joined the channel.
camille.jolain (Fri, 01 May 2020 01:54:00 GMT):
Has joined the channel.
johanne.belle-isle (Fri, 01 May 2020 17:07:03 GMT):
Has joined the channel.
RPP-Ysaia-Melanie-Chloe (Fri, 01 May 2020 18:53:46 GMT):
Has joined the channel.
damien.lhouillier (Mon, 04 May 2020 13:59:59 GMT):
Has joined the channel.
tqmn (Mon, 04 May 2020 16:12:38 GMT):
Has joined the channel.
dominique.hebert (Thu, 09 Jul 2020 08:03:56 GMT):
Has left the channel.
florian.rony (Mon, 13 Jul 2020 12:25:27 GMT):
Has left the channel.


BigQuery Tools
Reading from BigQuery please wait ...
{{.Percent}}%
{{.Message}}
(This is currently very slow for large projects; we are working on it)


Brace expansions don't work as operands in [ ]. Use a loop.
[ "$file" = index.{htm,html,php} ] && echo "This is the main file"
for main in index.{htm,html,php}
do
[ "$file" = "$main" ] && echo "This is the main file"
done
Brace expansions in [ ]
will expand to a sequence of words. Operators work on single words.
The problematic code is equivalent to [ "$file" = index.htm index.html index.php ]
, which is invalid syntax. A typical error message is bash: [: too many arguments
or dash: somefile: unexpected operator
.
Instead, use a for
loop to iterate over values, and apply your condition to each.
None.


Student Table
Show All
Id
First Name
Last Name
Email
Country
Action
{{item.id}}
{{item.first_name}}
{{item.last_name}}
{{item.email}}
{{item.country}}
Soft Delete
Hard Delete


{% extends 'peering/internetexchange/_base.html' %} {% load helpers %} {% block subcontent %}
An error occurred trying to fetch data from {{ instance.name }} IX-API. Make sure that it uses correct credentials and URL.
The complete error is provided below:
{{ error }}


IN THE HIGH COURT OF PUNJAB AND HARYANA AT CHANDIGARH CM No. 16133 of 2016 in/and CWP No. 17539 of 2016 Date of decision: 16.12.2016. M/s Balram Stone Crusher ........ Petitioner. Versus State of Punjab and others ...... Respondents. CORAM: HON'BLE MR. JUSTICE S.S SARON HON'BLE MS. JUSTICE LISA GILL Present: Mr. Rahul Garg, Advocate, for the petitioner. Ms. Reeta Kohli, Sr. Advocate with Mr. Rahul Sharma, Advocate,for respondent No.2. *** S.S SARON, J.
CM No. 16133 of 2016 The civil miscellaneous application has been filed by the petitioner for disposing of the writ petition as infructuous as the appeal pending before the Appellate Authority that has been constituted under the Air (Prevention and Control of Pollution) Act, 1981 and the Water (Prevention and Control of Pollution) Act, 1974 has been decided by the Appellate Authority vide order dated 06.10.2016.
The Appellate Authority constituted under the Air Act and the Water Act, respectively has vide order dated 16.10.2016 decided the appeal.
In view of the order being passed, the learned counsel appearing for the petitioner submits that the present petition has been rendered infructuous and may be disposed of accordingly, so as to enable the petitioner to assail the order (Annexure P-1), if necessary.
For the reasons mentioned in the application, the same is allowed.
For Subsequent orders see CM-12186-CWP-2016 1 of 2 ::: Downloaded on - 24-12-2016 11:34:33 ::: (107) CM No. 16133 of 2016 in/and -2-
CWP No. 17539 of 2016 CWP No. 17539 of 2016 In view of the order passed in CM No.16133 of 2016 and with the consent of the learned counsel for the parties, the writ petition, which is fixed for 23.12.2016 is preponed and taken up today.
Disposed of as having been rendered infructuous.
(S.S. SARON) JUDGE (LISA GILL) JUDGE 16.12.2016 PA Whether speaking/reasoned : Yes/No.
Whether reportable : Yes/No.
For Subsequent orders see CM-12186-CWP-2016 2 of 2 ::: Downloaded on - 24-12-2016 11:34:34 :::


| 1 | package fr.sii.ogham.testing.assertion.email; | |
| 2 | ||
| 3 | import static java.util.Arrays.asList; | |
| 4 | ||
| 5 | import java.util.List; | |
| 6 | ||
| 7 | /** | |
| 8 | * Class used in tests for ensuring that the email is respected. It provides the | |
| 9 | * following information: | |
| 10 | *
 | |
| 11 | *
The expected subject
 | |
| 12 | *
The expected bodies (an email may have several contents)
 | |
| 13 | *
The expected sender address
 | |
| 14 | *
The expected recipients (to, cc, bcc)
 | |
| 15 | *
 | |
| 16 | * | |
| 17 | * @author Aurélien Baudet | |
| 18 | * @see ExpectedEmailHeader | |
| 19 | */ | |
| 20 | public class ExpectedMultiPartEmail extends ExpectedEmailHeader { | |
| 21 | /** | |
| 22 | * List of expected contents | |
| 23 | */ | |
| 24 | private List<ExpectedContent> expectedContents; | |
| 25 | ||
| 26 | ||
| 27 | /** | |
| 28 | * Initialize the expected email with provided values. | |
| 29 | * | |
| 30 | * @param subject | |
| 31 | * the expected subject of the email | |
| 32 | * @param bodies | |
| 33 | * the list of expected bodies of the email with their respective | |
| 34 | * expected Mime Type | |
| 35 | * @param from | |
| 36 | * the expected email sender address | |
| 37 | * @param to | |
| 38 | * the expected recipients | |
| 39 | */ | |
| 40 | public ExpectedMultiPartEmail(String subject, List<ExpectedContent> bodies, String from, String... to) { | |
| 41 | super(subject, from, to); | |
| 42 | this.expectedContents = bodies; | |
| 43 | } | |
| 44 | | |
| 45 | /** | |
| 46 | * Initialize the expected email with provided values. | |
| 47 | * | |
| 48 | * @param subject | |
| 49 | * the expected subject of the email | |
| 50 | * @param bodies | |
| 51 | * the list of expected bodies of the email with their respective | |
| 52 | * expected Mime Type | |
| 53 | * @param from | |
| 54 | * the expected email sender address | |
| 55 | * @param to | |
| 56 | * the expected recipients | |
| 57 | */ | |
| 58 | public ExpectedMultiPartEmail(String subject, ExpectedContent[] bodies, String from, String... to) { | |
| 59 | this(subject, asList(bodies), from, to); | |
| 60 | } | |
| 61 | ||
| 62 | public List<ExpectedContent> getExpectedContents() { | |
| 63 |
2
1. getExpectedContents : replaced return value with Collections.emptyList for fr/sii/ogham/testing/assertion/email/ExpectedMultiPartEmail::getExpectedContents → NO_COVERAGE 2. getExpectedContents : replaced return value with Collections.emptyList for fr/sii/ogham/testing/assertion/email/ExpectedMultiPartEmail::getExpectedContents → KILLED |
return expectedContents; |
| 64 | } | |
| 65 | } | |
Mutations | ||
| 63 |
1.1 2.2 |


Greta Gerwig on the Pivotal ‘Little Women’ Scene Laura Dern Helped Inspire
Exclusive: Dern and Gerwig sat down for an intimate and humorous conversation on the newest episode of "Inside the Actors Studio."
by Jude DryOne of the things that makes Great Gerwig such a phenomenal director is her ability to choose actors who understand her point of view, and who have the intellectual rigor to collaborate with her. “Lady Bird” cemented her director/muse relationship with Saoirse Ronan, introduced the world to the wonder that is Beanie Feldstein, and allowed Laurie Metcalf to strut her dramatic acting chops all the way to an Oscar nomination. In “Little Women,” she got to work with a dream actor for any cinephile: Laura Dern.
The actress is in the middle of a monumental year, with a scene-stealing supporting role as a cutthroat Los Angeles divorce lawyer in “Marriage Story,” directed by Gerwig’s partner Noah Baumbach, as well as taking on the iconic role of Marmee in Gerwig’s upcoming “Little Women” adaptation. During a recent taping in New York City, the two women sat down for an intimate and humorous conversation surveying Dern’s impressive oeuvre as part of the newly re-vamped season of “Inside the Actors Studio.”
Related
- 'Little Women' Is an Oscar Contender, but Where Does That Leave 'Ford v Ferrari' and 'Waves'?
- When Laura Dern Was a Teenager, She Got a Call From Scorsese That Rocked Her World
Related
- The 10 Best Slasher Movies Ever Made, From 'Candyman' to 'Psycho'
- 2019-2020 Freshman Shows: What's Renewed, What's Canceled, What's in Limbo
In the exclusive clip below, Gerwig thanks Dern for her collaborative nature, illustrating the vitality of working with smart actors.
“When I was re-reading the book […] I was shocked by how many lines just stood out to me,” Gerwig said. “And one of the lines that stood out to me was Marmee saying, ‘I’m angry every day of my life.’ Because that’s not how you think of Marmee; you don’t think of Marmee as an angry person. And I saw in my mind’s eye you and Saoirse just sitting together, just talking, like exactly how the scene is, and you saying that line, and then it came to pass.”
Gerwig then explains how Dern’s exhaustive research, which included combing through letters written by “Little Women” author Louisa May Alcott’s actual mother, factored into the script.
 And it was that collaboration that allowed us to get to that point, and that scene wouldn’t be what it is if you hadn’t given me that.”
“Inside the Actors Studio — Greta Gerwig Interviews Laura Dern” airs Sunday, November 17 at 10 p.m. ET on Ovation TV. Check out the exclusive clip below.


|
Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <partitioner.h>
Public Types | |
| typedef proportional_split | split_type |
| Public Types inherited from tbb::interface9::internal::proportional_mode< static_partition_type > | |
| typedef static_partition_type | my_partition |
| Public Types inherited from tbb::interface9::internal::adaptive_mode< static_partition_type > | |
| typedef static_partition_type | my_partition |
Additional Inherited Members | |
| Public Attributes inherited from tbb::interface9::internal::linear_affinity_mode< static_partition_type > | |
| size_t | my_head |
| size_t | my_max_affinity |
| Public Attributes inherited from tbb::interface9::internal::adaptive_mode< static_partition_type > | |
| size_t | my_divisor |
| Static Public Attributes inherited from tbb::interface9::internal::adaptive_mode< static_partition_type > | |
| static const unsigned | factor |
Definition at line 530 of file partitioner.h.
Definition at line 532 of file partitioner.h.
|
inline |
Definition at line 533 of file partitioner.h.
|
inline |
Definition at line 535 of file partitioner.h.
|
inline |
Definition at line 537 of file partitioner.h.


To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video


Marijuana Stocks Price: MORE Act lifts prices from lows, financials still weigh
by Yohay Elam- Cannabis stocks have cut short a losing streak amid hopes for better legal standing.
- Financials of companies may limit further gains.
- Aurora remains under pressure amid a highly dilutive deal.
Marijuana stocks have gone higher on Tuesday as the US House Judiciary Committee announced plans to advance a bill that would legalize cannabis on the federal level. Consumption of cannabis is legal to various degrees, only in multiple states.
Lawmakers led by Jerrold Nadler, the committee's Chairman, are promoting the Marijuana Opportunity Reinvestment and Expungement Act (More Act) that would help individuals suffering from life-damaging convictions the ability to access housing and vote. For weed stocks, having access to a full American market is a boon. The news sent shares higher with Cronus (CRON) jumping by over 9% following the news.
While House Democrats are moving forward with the More Act on Wednesday, it is unclear if Republicans will go along. Mitch McConnell, the majority leader, has met with executives of marijuana-related firms but has been a life-long opponent of legalization.
Marijuana Stocks Today
Nevertheless, weed equities are still struggling with sky-high expectations after the opening of the Canadian market have met the reality of making money. Aurora Cannabis is standing out with a highly dilutive offer on its convertible bonds. Despite the recovery, Aurora's stock price is down around a third in the past month.
The boom in the number of cannabis farms and their pricing may lead to bankruptcies down the road – even if the American market were to open fully.
Tilary, a company whose stocks have surged around Canada's decision, has missed Wall Street's expectations with substantial losses. The firm reported gross sales of $51.1 million but losses of $23.3 million. Its stock price will likely remain in the limelight on Wednesday.
Wednesday's trading will likely be marked by legislative efforts and speculation about the potential profitability of
See Marijuana Stocks Not Getting Investors High Ahead of Earnings


Type some Word(s) in the box, then press ENTER or click Search
-
Word(s) Search
-
- The WORD(s) you type may be from the title, contents notes,
organization name, etc.
- Use the Boolean operators AND, OR or NOT to combine terms.
- Use the * after a word stem to retrieve alternate endings, e.g., garden*
will
capture garden, gardens, gardener, gardening,
etc.
for example:
- Asthma or hay fever
- Mexico not new
- compute*
- (gold or silver) peru*
- Hay fever
- sneezing
Start Over
|
|


Applications
Some significant applications are demonstrated in this chapter.
Read critically
Week 3 SR media
Week 3 SR developmental
Week 9 SR social
Evidence-based revision
Week 5 Retrieval practice I
Week 10 Retrieval practice Il
Apply your knowledge
Week 7 Online stats I
Week 9 Online stats II
Week 10 Real world


I thought I should learn Haskell as I'm clueless about functional programming and haven't used a statically types language for ages. Anyway, I'm learning it from the Haskell Wikibook. Throughout they give exercises and here are my answers so far:
- Explain how GHCi evaluates
quadruple 5
.
The quadruple function is defined as:
double x = 2 * x
quadruple x = double (double x)
[First, Haskell will substitute definition of double in the quadruple function to give:]{.p}
2 * (2 * x)
[Then it will substitute 5 for x:]{.p}
2 * (2 * 5)
[Brackets are evaluated first:]{.p}
2 * 10
20
- Define a function that subtracts 12 from half its argument.
half x = x / 2hmtwelve x = half x - 12
- Write a function to calculate the volume of a box.
volbox h w l = h * w * l
- Approximately how many stones are the famous pyramids at Giza made up of? Hint: you will need estimates for the volume of the pyramids and the volume of each block.
Assuming a bottom edge of the pyramid is 100m, and a block is a cube of side 0.5m, the number of stones is:
100 ^ 3 / 2 / 0.5^3
which is 4,000,000 stones. The actual answer is 2.3m, so I don't think my estimate is too bad.
- Write a function to calculate the volume of a cylinder. The volume of a cylinder is the area of the base, which is a circle (you already programmed this function in this chapter, so reuse it) multiplied by the height.
areaCirc r = pi * r^2volCyl r h = areaCirc r * h
- Try using :type
on the literal value "H"
(notice the double quotes). What happens? Why?
The interpreter reports: "H" :: [Char]
because the double quotes mean it's a string of length 1.
- Try using :type
on the literal value 'Hello World'
(notice the single quotes). What happens? Why?
The interpreter gives an error, because single quotes denote a single character, but we've entered more than one.
- What are the types of the following functions? For any functions involving numbers, you can just pretend the numbers are Ints.
- The negate
function, which takes an Int and returns that Int with its sign swapped. For example, negate 4 = -4
, and negate (-2) = 2
negate :: Int -> Int
- The (||)
function, pronounced 'or', that takes two Bools and returns a third Bool which is True if either of the arguments were, and False otherwise.
(||) :: Bool -> Bool -> Bool
- A monthLength
function which takes a Bool which is True if we are considering a leap year and False otherwise, and an Int which is the number of a month; and returns another Int which is the number of days in that month.
monthLength :: Bool -> Int -> Int
- f x y = not x && y
f :: Bool -> Bool -> Bool
- g x = (2*x - 1)^2
g :: Int -> Int
- Would the following piece of Haskell work: 3:[True,False]
? Why or why not?
No it wouldn't work because the resulting list would have a mix of types which isn't allowed.
- Write a function cons8
that takes a list as an argument and conses 8
(at the beginning) on to it.
cons8 l = 8:l
Test it out on the following lists by doing:
1. cons8 []
[8]
2. cons8 [1,2,3]
[8, 1, 2, 3]
3. cons8 [True,False]
Error, lists can't have a mix of types.
4. let foo = cons8 [1,2,3]
cons8 foo
[8, 8, 1, 2, 3]
- Adapt the above function in a way that 8
is at the end of the list. (Hint: recall the concatenation operator ++
from the previous chapter.)
cat8 l = l ++ [8]
- Write a function that takes two arguments, a list and a thing, and conses the thing onto the list. You can start out with:
let myCons list thing = thing:list
Lists And Tuples
- Which of these are valid Haskell and which are not? Rewrite in cons notation.
[1,2,3,[]]
Not valid, because not of the same type.
1:2:3:[]:[]
[1,[2,3],4]
Not valid, because not of the same type.
1:(2:3:[]):4:[][[1,2,3],[]]
Valid, because the empty list could be an empty list of integers!(1:2:3:[]):[]:[]
- Which of these are valid Haskell, and which are not? Rewrite in comma and bracket notation.
[]:[[1,2,3],[4,5,6]]
Valid because the empty list could be an empty list of integers.[[], [1, 2, 3], [4, 5, 6]]
[]:[]
Valid. Since there's only one inner list, the outer list must contain lists of the same type.
[[]]
[]:[]:[]
Valid because an empty list could be of any type.[[], []]
[1]:[]:[]
Valid, because an empty list could hold items of any type.[[1], []]
["hi"]:[1]:[]
Not valid. A list of strings is a different type to a list of integers.
[["hi"], [1]]
- Can Haskell have lists of lists of lists? Why or why not?
Yes, as long as each item in a list is of the same type. - Why is the following list invalid in Haskell?
[[1,2],3,[4,5]]
Because the outer list has items of more than one type.
- Write down the 3-tuple whose first element is 4, second element is "hello" and third element is True.
(4, "hello", True)
- Which of the following are valid tuples?
(4, 4)
Valid.(4, "hello")
Valid.(True, "Blah", "foo")
Valid.()
Valid.
- Lists can be built by consing new elements onto them. Cons a number onto a list of numbers, you will get back a list of numbers. There is no such way to build up tuples.
- Why do you think that is?
For any type consed to a list, the returned type will be a list of that type, so the function is general. With adding an element to a tuple, an entirely new type will be created, so it isn't so general. - For the sake of argument, say that there was such a function. What would you get if you "consed" something on a tuple?
You'd get a new type.
- Why do you think that is?
- Which of these are valid Haskell, and why?
1:(2,3)
Invalid; can't cons onto a tuple.(2,4):(2,3)
Invalid; can't cons onto a tuple.(2,4):[]
Valid. Can cons onto a list.[(2,4),(5,5),('a','b')]
Invalid. The elements of a list must all be of the same type.([2,4],[2,2])
Valid. The elements of the list are all of the same type.
- Use a combination of
fst
andsnd
to extract the 4 from the tuple(("Hello", 4), True)
.
snd (fst (("Hello", 4), True)) - Normal chess notation is somewhat different to ours: it numbers the rows from 1-8 and the columns a-h; and the column label is customarily given first. Could we label a specific point with a character and a number, like
('a', 4)
? What important difference with lists does this illustrate?
Yes, we could represent a square with ('a', 4). A tuple can contain elements of different types. - Write a function which returns the head and the tail of a list as the first and second elements of a tuple.
fTuple list = (head list, tail list)
- Use
head
andtail
to write a function which gives the fifth element of a list.  Also it fails with any list with fewer than 5 elements.
Give type signatures for the following functions:
- The solution to the third exercise of the previous section ("... a function which returns the head and the tail of a list as the first and second elements of a tuple").
fTuple :: [a] -> (a, a)
- The solution to the fourth exercise of the previous section ("... a function which gives the fifth element of a list").
el5 :: [a] -> a
h x y z = chr (x - 2)
(remember we discussed chr in the previous chapter).h :: a -> b -> c -> char


Sydney smoke ‘unlikely to clear for days’
by Jessica KiddSydneysiders have been warned the thick smoke haze covering the city will remain for days, as the air quality plummeted to “hazardous” levels on Thursday for the second time this week.
The Harbour City’s landmarks were barely visible as smoke from dozens of bushfires burning in NSW settled over Sydney, the Illawarra, North Coast and Central Coast.
Authorities warned children, the elderly and anyone with heart or lung conditions should avoid exercising outdoors.
It comes after Sydney was shrouded in smoke on Tuesday, when residents woke to a haze which cleared by mid-afternoon.
However, the NSW Rural Fire Service warned it was here to stay this time.
Several locations in greater Sydney had an air quality Index (AQI) over 1000 on Thursday morning. Anything more than 200 is considered “hazardous”.
Dr Richard Broome from NSW Health advised schools to keep children inside.
“They’re often more active particularly outdoors so they’re more likely to inhale the smoke in large quantities,” he said.
“It’s important that if you do have children [to] just try and keep them indoors or discourage them from exercising too much outside.”
Total fire bans are in place across 12 NSW regions, with hot and windy conditions forecast for much of the state and temperatures set to reach into the high 30s and low 40s in the south and west.

“Over the past 12 or so weeks, we have seen fires do more destruction under these conditions than we have at the more elevated fire danger ratings,” he said.
“It’s important people remain vigilant.
“There’s very high to severe fire dangers and that’ll be bolstered by some winds that we’re expecting to get up to 40 to 50 kilometres per hour, especially in the south western parts of NSW.”


The Public Key Inrastructure is used for many security issues in a
Linux system. In order for a certificate to be trusted, it must be
signed by a trusted agent called a Certificate Authority (CA). The
certificates loaded by this section are from the list on the Mozilla
version control system and formats it into a form used by OpenSSL-1.0.1i.
The certificates can also be used by other applications either
directly of indirectly through openssl.
This package is known to build and work properly using an LFS-7.6
platform.
Installation of Certificate Authority Certificates
First create a script to reformat a certificate into a form needed
by openssl. As the root
user:
cat > /usr/bin/make-cert.pl << "EOF"
#!/usr/bin/perl -w
# Used to generate PEM encoded files from Mozilla certdata.txt.
# Run as ./make-cert.pl > certificate.crt
#
# Parts of this script courtesy of RedHat (mkcabundle.pl)
#
# This script modified for use with single file data (tempfile.cer) extracted
# from certdata.txt, taken from the latest version in the Mozilla NSS source.
# mozilla/security/nss/lib/ckfw/builtins/certdata.txt
#
# Authors: DJ Lucas
# Bruce Dubbs
#
# Version 20120211
my $certdata = './tempfile.cer';
open( IN, "cat $certdata|" )
|| die "could not open $certdata";
my $incert = 0;
while ( <IN> )
{
if ( /^CKA_VALUE MULTILINE_OCTAL/ )
{
$incert = 1;
open( OUT, "|openssl x509 -text -inform DER -fingerprint" )
|| die "could not pipe to openssl x509";
}
elsif ( /^END/ && $incert )
{
close( OUT );
$incert = 0;
print "\n\n";
}
elsif ($incert)
{
my @bs = split( /\\/ );
foreach my $b (@bs)
{
chomp $b;
printf( OUT "%c", oct($b) ) unless $b eq '';
}
}
}
EOF
chmod +x /usr/bin/make-cert.pl
The following script creates the certificates and a bundle of all
the certificates. It creates a ./certs
directory and ./BLFS-ca-bundle-${VERSION}.crt
. Again create
this script as the root
user:
cat > /usr/bin/make-ca.sh << "EOF"
#!/bin/sh
# Begin make-ca.sh
# Script to populate OpenSSL's CApath from a bundle of PEM formatted CAs
#
# The file certdata.txt must exist in the local directory
# Version number is obtained from the version of the data.
#
# Authors: DJ Lucas
# Bruce Dubbs
#
# Version 20120211
certdata="certdata.txt"
if [ ! -r $certdata ]; then
echo "$certdata must be in the local directory"
exit 1
fi
REVISION=$(grep CVS_ID $certdata | cut -f4 -d'$')
if [ -z "${REVISION}" ]; then
echo "$certfile has no 'Revision' in CVS_ID"
exit 1
fi
VERSION=$(echo $REVISION | cut -f2 -d" ")
TEMPDIR=$(mktemp -d)
TRUSTATTRIBUTES="CKA_TRUST_SERVER_AUTH"
BUNDLE="BLFS-ca-bundle-${VERSION}.crt"
CONVERTSCRIPT="/usr/bin/make-cert.pl"
SSLDIR="/etc/ssl"
mkdir "${TEMPDIR}/certs"
# Get a list of starting lines for each cert
CERTBEGINLIST=$(grep -n "^# Certificate" "${certdata}" | cut -d ":" -f1)
# Get a list of ending lines for each cert
CERTENDLIST=`grep -n "^CKA_TRUST_STEP_UP_APPROVED" "${certdata}" | cut -d ":" -f 1`
# Start a loop
for certbegin in ${CERTBEGINLIST}; do
for certend in ${CERTENDLIST}; do
if test "${certend}" -gt "${certbegin}"; then
break
fi
done
# Dump to a temp file with the name of the file as the beginning line number
sed -n "${certbegin},${certend}p" "${certdata}" > "${TEMPDIR}/certs/${certbegin}.tmp"
done
unset CERTBEGINLIST CERTDATA CERTENDLIST certbegin certend
mkdir -p certs
rm -f certs/* # Make sure the directory is clean
for tempfile in ${TEMPDIR}/certs/*.tmp; do
# Make sure that the cert is trusted...
grep "CKA_TRUST_SERVER_AUTH" "${tempfile}" | \
egrep "TRUST_UNKNOWN|NOT_TRUSTED" > /dev/null
if test "${?}" = "0"; then
# Throw a meaningful error and remove the file
cp "${tempfile}" tempfile.cer
perl ${CONVERTSCRIPT} > tempfile.crt
keyhash=$(openssl x509 -noout -in tempfile.crt -hash)
echo "Certificate ${keyhash} is not trusted! Removing..."
rm -f tempfile.cer tempfile.crt "${tempfile}"
continue
fi
# If execution made it to here in the loop, the temp cert is trusted
# Find the cert data and generate a cert file for it
cp "${tempfile}" tempfile.cer
perl ${CONVERTSCRIPT} > tempfile.crt
keyhash=$(openssl x509 -noout -in tempfile.crt -hash)
mv tempfile.crt "certs/${keyhash}.pem"
rm -f tempfile.cer "${tempfile}"
echo "Created ${keyhash}.pem"
done
# Remove blacklisted files
# MD5 Collision Proof of Concept CA
if test -f certs/8f111d69.pem; then
echo "Certificate 8f111d69 is not trusted! Removing..."
rm -f certs/8f111d69.pem
fi
# Finally, generate the bundle and clean up.
cat certs/*.pem > ${BUNDLE}
rm -r "${TEMPDIR}"
EOF
chmod +x /usr/bin/make-ca.sh
Add a short script to remove expired certificates from a directory.
Again create this script as the root
user:
cat > /usr/bin/remove-expired-certs.sh << "EOF"
#!/bin/sh
# Begin /usr/bin/remove-expired-certs.sh
#
# Version 20120211
# Make sure the date is parsed correctly on all systems
mydate()
{
local y=$( echo $1 | cut -d" " -f4 )
local M=$( echo $1 | cut -d" " -f1 )
local d=$( echo $1 | cut -d" " -f2 )
local m
if [ ${d} -lt 10 ]; then d="0${d}"; fi
case $M in
Jan) m="01";;
Feb) m="02";;
Mar) m="03";;
Apr) m="04";;
May) m="05";;
Jun) m="06";;
Jul) m="07";;
Aug) m="08";;
Sep) m="09";;
Oct) m="10";;
Nov) m="11";;
Dec) m="12";;
esac
certdate="${y}${m}${d}"
}
OPENSSL=/usr/bin/openssl
DIR=/etc/ssl/certs
if [ $# -gt 0 ]; then
DIR="$1"
fi
certs=$( find ${DIR} -type f -name "*.pem" -o -name "*.crt" )
today=$( date +%Y%m%d )
for cert in $certs; do
notafter=$( $OPENSSL x509 -enddate -in "${cert}" -noout )
date=$( echo ${notafter} | sed 's/^notAfter=//' )
mydate "$date"
if [ ${certdate} -lt ${today} ]; then
echo "${cert} expired on ${certdate}! Removing..."
rm -f "${cert}"
fi
done
EOF
chmod +x /usr/bin/remove-expired-certs.sh
The following commands will fetch the certificates and convert them
to the correct format. If desired, a web browser may be used
instead of wget but the file will
need to be saved with the name certdata.txt
. These commands can be repeated as
necessary to update the CA Certificates.
URL=http://anduin.linuxfromscratch.org/sources/other/certdata.txt &&
rm -f certdata.txt &&
wget $URL &&
make-ca.sh &&
remove-expired-certs.sh certs &&
unset URL
Now, as the root
user:
SSLDIR=/etc/ssl &&
install -d ${SSLDIR}/certs &&
cp -v certs/*.pem ${SSLDIR}/certs &&
c_rehash &&
install BLFS-ca-bundle*.crt ${SSLDIR}/ca-bundle.crt &&
ln -sfv ../ca-bundle.crt ${SSLDIR}/certs/ca-certificates.crt &&
unset SSLDIR
Finally, clean up the current directory:
rm -r certs BLFS-ca-bundle*
After installing or updating certificates, if OpenJDK is installed,
update the certificates for Java using the procedures at
the section called “Install or update the JRE Certificate
Authority Certificates (cacerts) file”.


{% extends 'base.html' %} {% load static %} {% block content %}
Welcome to Mtaani, a web application that allows you to be in the loop about everything happening in your neighborhood. From contact information of different handyman to meeting announcements or even alerts. Check or Make Important announcements in the Notifications bar