While Jupyter runs code in many programming languages, Python is a requirement (Python 3.3 or greater, or Python 2.7) for installing the Jupyter Notebook.
We recommend using the Anaconda distribution to install Python and Jupyter. We’ll go through its installation in the next section.
For new users, we highly recommend installing Anaconda. Anaconda conveniently installs Python, the Jupyter Notebook, and other commonly used packages for scientific computing and data science.
We recommend using the Anaconda distribution to install Python and Jupyter. We’ll go through its installation in the next section.
See Running the Notebook for more details.
As an existing Python user, you may wish to install Jupyter using Python’s package manager, pip, instead of Anaconda.
First, ensure that you have the latest pip; older versions may have trouble with some dependencies:
{% highlight bash %}pip3 install --upgrade pip{% endhighlight %}Then install the Jupyter Notebook using:
{% highlight bash %}pip3 install jupyter{% endhighlight %}(Use pip if using legacy Python 2.)
Congratulations. You have installed Jupyter Notebook.
See Running the Notebook for more details.


{include file="../application/index/view/header.html" /}
{$article->title}
{$article->user->profile->nickname}
发布于:{$article->createAt}
{$article->content}
{include file="../application/index/view/footer.html" /}


There are 6 primitive types:
Everything else is considered an object
var x = 42;
let y = 42; // ES6
const z = 42; // ES6
// line comment
/*
block comment
*/
Variable names are case sensitive
let aB = 'test';
console.log(ab);
// Uncaught ReferenceError: ab is not defined
if (condition) {
doAwesomeStuff();
} else if (otherCondition) {
doMoreAwesomeStuff();
} else {
doNothing();
}
for (let i = 0; i < 10; i++) {
console.log(i);
}
while (condition) {
doAwesomeStuff();
}
do {
doAwesomeStuff();
} while(condition);
switch(expr) {
case 1:
handleCase1();
break;
default:
handleDefaultCase();
}
In computer science, type conversion, typecasting, and coercion are different ways of, implicitly or explicitly, changing an entity of one data type into another.
Coercion /kəʊˈəːʃ(ə)n/ → der Zwang, die Nötigung
If the operands of an operator are of different types, one of them will be converted. The coercion rules are quite extensive.
0 == true; // false because true is converted to 1
1 == "1"; // true because 1 is converted to "1"
let x = 0 + ""; // x will be a string "0"
1 == "1"; // true
1 === "1"; // false
true && 42; // Returns second expression --> 42
false || 42 || true; // Returns first "true" expression
Open the console (F12 on windows, CMD + alt + I on Mac) and play around!
1 == "1"
1 === true
NaN === NaN
undefined == undefined
// be creative!
Everything else is truthy!
Makes it easy to check whether a variable is present:
let x = 'Hello World';
if (x) { // Truthy
doSomething();
}
let y = 0;
if (y) { // Falsy
doSomething();
}
Shorthand for safe variable declaration:
let x = undefined;
let y = x || 'default';
Try it yourself!
See the Pen Truthy & Falsy by Nicolas Oeschger (@enpayne) on CodePen.
For scripts:
// Whole-script strict mode syntax
'use strict';
var v = "Hi! I'm a strict mode script!";
For functions:
function strict() {
'use strict';
return "Hi! I'm a strict mode function!";
}
function notStrict() {
return "I'm not strict.";
}
If you want to learn more about what strict mode is doing exactly, we recommend reading this article.
let aString = "I'm a string";
let anotherString = '"Me" too!';
"" and '' are equivalent. It only depends which
is more convenient regarding the content of the string.
E.g. "Don't"
vs. 'Don\'t'
let a = "I'm a";
let b = 'string!';
let c = a + ' ' + c;
// I'm a string!
let d = a.concat(' ', b);
// I'm a string!
let x = 'String';
let aString = `I'm a "${x}" too!`;
// I'm a "String" too!
You can use single and double quotes as well as variables without concatenation using ES6 template literals with back ticks (``).
let aString = `It's even possible
to add line breaks!`;
// It's even possible
// to add line breaks!
let x;
`The value is: ${x ? x : 'not defined'}!`;
// The value is: not defined!
x = 'test';
`The value is: ${x ? x : 'not defined'}`;
// The value is: test!
See here for a complete list.


Get On The Bus (1996) A film review by Steve Rhodes Copyright 1996 Steve Rhodes
RATING (0 TO ****): ** 1/2
Always imaginative director Spike Lee turns his attention to a real event in his fictionalized account of last year's October 16th Million Man March. His vision of the events is called GET ON THE BUS, and it takes the perspectives of one busload of black men from South Central Los Angeles headed to Washington for the big march.
The show is a rich tapestry of subjects and contrasting opinions. Just about every type of African American male gets on the bus. We have well off ones (Andre Braugher as up and coming actor Flip) and poor ones (Ossie Davis as downsized employee Jeremiah), cops (Roger Guenveur Smith as ghetto cop Gary) and reformed killers (Gabriel Casseus as ex-gang-banger Jamal), homosexuals (Isaiah Washington and Harry J. Lennix as lovers Kyle and Randall) and heterosexuals (the rest), promiscuous ones (notably Flip) and abstainers (Jamal), Christians and Muslims, religious believers and atheists, and most surprising of all, they even let a black Republican car dealer (Wendell Pierce as Wendell) on the bus.
Also on the bus is a father, Evan Thomas Sr. (Thomas Jefferson Byrd), and his teenage son Junior (DeAundre Bonds), who have been shackled together by a court order. The driver of the bus, George, is played in a rock of Gibraltar roll by Charles Dutton. George tries to make Evan Sr. feel better by telling him, "Teenagers mess up. You know man, that's what they do best."
Hill Harper is UCLA film student X, short for Xavier. There is a token white - a Jewish person named Rick (Richard Belzer) who is the alternate bus driver for a while until all of the discussions, pro and con, about Louis Farrakhan become too much for him. His parting words to George are, "I wouldn't expect you to drive to a Ku Klux Klan rally."
Perhaps the best part of the film is the lack of conclusions. Other than the one sided view of Republicans, other issues are introduced and pondered, but the film does not attempt to lead the viewer to any particular point of view. The script by Reggie Rock Bythewood seems happy just to be able to bring all of the subjects up.
When the show starts, Gary's girlfriend Shelly (Kristin Wilson) is dropping him off in her fancy convertible. She complains about the male only march that, "this thing is exclusionary." He listens politely, but gets on the bus anyway. He is half white, and the color of his skin makes him an easy and frequent target on the bus for the more prejudiced.
"Father God, we come to you on a pilgrimage that is bound for glory," intones Jeremiah on the bus before they embark. Soon they are off to the loud and rhythmic music of James Brown. As in most Spike Lee movies, there is a lot of music and singing. It reminded me of the bus on the way to the football games in high school where all of the players sang.
Along the way they spend their time on the bus gabbing about their lives back home and arguing issues. There is even the obligatory fistfight, which I could have done without.
Sometimes they do take a break as they do at a rest stop where ever on the make Flip tries his moves on a couple of female strangers. His come on line is, "I've always heard that Dallas has the finest honeys on the planet." He sees this as natural male behavior whether single or married and argues with his fellow men, "You tell me what men who like women wouldn't want a little something on the side?"
This is film with so many people in it, it is easy to lose track. Even Randy Quaid drops by in one scene playing the cliched racist southern police officer.
Most of the show is a talkfest heading no place in particular. Only the bus has a direction. In a meandering show, toward the finish it takes a dramatic and unexpected turn. This is quite well done, but Spike Lee then throws on several extra endings which are only redundant.
There is one serious problem with the show. The prints of Elliot Davis's cinematography have major color problems. There are two long sequences, one lasting ten minutes where the color is so far off that you would refuse to pay for the processing if some lab did this to your film. It is my understanding that this is not some problem with just the print that I saw, but that it is a general problem and an artifact of rushing the show to the theaters in time for the march's anniversary.
As a film critic, I see a lot of very low budget pictures including ones where everything is financed on the filmmaker's Visa card. None of them have had severe color problems like this picture. The studio should be ashamed of themselves for letting it out in this shape.
GET ON THE BUS runs 2:00. It is rated R for the some bad language. There is no sex, nudity, or violence. The film would be fine for any teenager. I recommend the picture to you and give it ** 1/2.
**** = One of the top few films of this or any year. A must see film. *** = Excellent show. Look for it. ** = Average movie. Kind of enjoyable. * = Poor show.  Totally unbearable.
REVIEW WRITTEN ON: October 21, 1996
Opinions expressed are mine and not meant to reflect my employer's.
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


WITNESS LIST Criminal Jurisprudence Committee April 10, 2001-2:00P HB 31 For: Jones, James (San Antonio Police Officers' Association) Ybarbo, Ray (Chief of Police Al Philippus, San Antonio Police Dept.) Registering, but not testifying: For: Elkin, Bill (Houston Police Retired Officers Assoc.) Igo, Shanna (Texas Municipal League) Jones, Chris W. (Combined Law Enforcement Assn's of Texas) Jones, Claude (Texas Police Chiefs Association) Lawrence, Kevin F. (Texas Municipal Police Assn.) Lyons, Steve (Houston Police Dept.) Mann, Tom (Texas Police Chiefs Association) Noll, Chuck (Harris County Dist. Atty's Office) Watson, Rick A. (Chief of Police Terrell Bolton, Dallas Police Dept.) HB 131 For: Garison, Brenda (Self) Mann, Tom (Texas Police Chiefs Association) On: Durham, Drew T. (Office of Attorney General) Registering, but not testifying: For: Clay, Annette (TX Association Against Sexual Assault) Hubbarth, William "Rusty" (Self and Justice for All) Hunter, Linda (Hays-Caldwell Women's Center) Riddering, Hannah (Self and Texas National Organization for Women) HB 132 For: Redford, Laurel (ACLU of Texas) On: Wittliff, Reid (Office of the Attorney General) Registering, but not testifying: For: Alpert, Richard (Tarrant County D.A.'s Office) Lawrence, Kevin F. (Texas Municipal Police Association) Riddering, Hannah (Self and Texas National Organization for Women) On: Harrell, William (ACLU of Texas) HB 151 For: Redford, Laurel (ACLU of Texas) On: Wittliff, Reid (Office of the Attorney General) Registering, but not testifying: For: Elkin, Bill (Houston Police Retired Officers Association) Lawrence, Kevin F. (Texas Municipal Police Assn) Redford, Laurel (ACLU of Texas) Riddering, Hannah (Self and Texas National Organization for Women) Ybarbo, Ray (Chief of Police Al Philippus, San Antonio Police Dept.) On: Harrell, William (ACLU of Texas) HB 156 For: Harris, Bill (Self and Texas Dist and Cty Atty Assoc.) Against: Day, Rick D. (Self) HB 267 Registering, but not testifying: For: Harrell, William (ACLU of Texas) Redford, Laurel (ACLU of Texas) HB 374 For: Houston, Scott (Texas Municipal League) Zacharias, Larry (City of Richardson) HB 434 For: Olsen, Rory, Judge (Self) HB 620 Committee Substitute (Hinojosa) For: Bresnen, Steve (USA Training, Inc) HB 738 For: Craven, Marsha (Self and Justice for All (Houston)) Kahan, Andy (Mayor's Crime Victims Office) Munguia, Yolanda (Justice for All (Houston)) Ogg, Kim (Crime Stoppers of Houston) Registering, but not testifying: For: Clements, Dianne (Justice for All) HB 1028 For: Day, Rick D. (Texas NORML - the Texas Chapter of the National Organization for the Reform of Marijuana Laws) Ptak, Joe (Self) Redford, Laurel (ACLU of Texas) Against: Liu, Livia (Self) Registering, but not testifying: For: Darrouzet, Sarah (Self) Fierro, John (Self) Heikkala, Karen (Self and Drug Policy Forum of Texas) Strealy, Autry J. (Self) Taylor, Patricia (Drug Policy Forum of Texas - Austin Chapter) Against: Jones, Claude (Texas Police Chiefs Association) HB 1354 For: Kim, Ogg (Crime Stoppers of Houston) Leinen, Jim (Crime Stoppers of Houston) Registering, but not testifying: For: Clements, Dianne (Justice for All) Craven, Marsha (Self and Justice for All (Houston)) Kahan, Andy (Self and Harris County Inter-Agency Victim Council) HB 1413 For: Hampton, Keith S. (Texas Criminal Defense Lawyers Assn) Harrell, William (ACLU of Texas, NAACP, LULAC) Against: Noll, Chuck (Harris County District Atty's Office) Registering, but not testifying: For: Redford, Laurel (ACLU of Texas) Against: Gura, Ruth-Ellen (Travis County District Attorney's Ofc.) HB 1414 For: Hampton, Keith S. (Texas Criminal Defense Lawyers Assn) Against: Noll, Chuck (Harris County Dist Atty's Office) Registering, but not testifying: For: Redford, Laurel (ACLU of Texas) HB 1539 Registering, but not testifying: For: Bean, Thomas L. (Self) Hunter, Larry C. (Self) HB 1571 Registering, but not testifying: For: Oakley, Keith (Assist Associated Security Services and Investigators of the State of Texas) HB 1572 Registering, but not testifying: For: Hubbarth, William "Rusty" (Self and Justice for All) Kahan, Andy (Self and Harris County Inter-Agency Victim Council) HB 1813 On: Mixson, Paula (TX Dept. of Protective and Regulatory Services, Adult Protective Services Division) Registering, but not testifying: On: Gonzales, John A. (TX Dept. of Protective and Regulatory Services, Adult Protective Services) HB 1919 For: Morrison, James (Walker County Rural Water Supply Corp.) Petersen, Ken (Texas Rural Water Association) HB 1971 Registering, but not testifying: For: Escobar, Felicia (National Council of La Raza) Harrell, William (ACLU of TX) Hinojosa, Walter (Texas AFL-CIO) Parwue, Craig (Dallas County) Reyes, Lico (LULAC) Riddering, Hannah (Self and Texas National Organization for Women) Against: Chambers, Spencer (Tx. Assoc. of Business Chambers of Commerce) Price, Ann Abrams (Texas Employment Law Council) On: Sjoberg, Elizabeth (Texas Hospital Association) HB 1988 For: Cantrell, Mike (Dallas County) Registering, but not testifying: For: Fuller, Tom (Self) Price, Mark (County Treasurers' Association of Texas) HB 2222 For: Bower, Bruce (Texas Senior Advocacy Coalition) HB 2228 For: Alpert, Richard (Tarrant County D.A.'s Office) Lewis, Bill (Mothers Against Drunk Driving) Registering, but not testifying: For: Gura, Ruth-Ellen (Travis Co. District Attny's Ofc) Liu, Livia (Dallas County DA's Office) Montford McCracken, Mindy (Self) HB 2250 For: Alpert, Richard (Tarrant County D.A.'s Office) Registering, but not testifying: For: Gura, Ruth-Ellen (Travis Co. Dist. Attny's Ofc) Lewis, Bill (Mothers Against Drunk Driving) Montford McCracken, Mindy (Self) HB 2701 For: Bill, Lewis (Mothers Against Drunk Driving) HB 2740 Registering, but not testifying: On: Cain, Camille (Office of the Governor) HB 2754 For: Crowley, Tim (Texas Assoctiation of Sports Officials) Registering, but not testifying: For: Fishor, Jon (Self) Kahan, Andy (Self) Rivero, Hector (Texas Association of Sports Officials -- Austin Football Chapter) HB 2926 For: Fuller, Judge Tom (Self) Registering, but not testifying: For: Alpert, Richard (Tarrant County D.A.'s Office) Cantrell, Mike (Dallas County) Chapman, Sally (Smart Start Inc. of the Ignition Interlock Industry) Coffey, Debra (Smart Start - Ignition Interlock Industry) Dunn, Ray (Guardian Interlock) Kahan, Andy (Self and Harris County Inter-Agency Victim Council) Lewis, Bill (Mothers Against Drunk Driving) Moody-Scott, Pam A. (Smart Start of Ignition Interlock Industry) Simcox, Dale L. (Self and Ignition Interlock Group of Texas) Watson, Rick A. (Chief of Police Terrell Bolton Dallas Police Dept.) HB 3505 For: Clements, Dianne (Justice for All) Sloan, Connie D. (Self and Domestic Violence Prevention, Inc.) Registering, but not testifying: For: Craven, Marsha (Justice For All (Houston)) Harrell, William (ACLU of Texas) Hubbarth, William "Rusty" (Self and Justice for All) Kahan, Andy (Self and Harris County Inter-Agency Victim Council) Lewis, Bill (Mothers Against Drunk Driving) Redford, Laurel (ACLU of Texas) HB 3505 Amendment (Hinojosa) Buchanan, Bree (Texas Council on Family Violence) HB 3582 Registering, but not testifying: For: Hooser, Greg (Private Providers Ass'n of Texas) On: Alonzo, Gladys (Texas Trial Lawyers Assoc.) SB 139 On: Wittliff, Reid (Office of the Attorney General) Registering, but not testifying: For: Buchanan, Bree (Texas Council on Family Violence) Lawrence, Kevin F. (Texas Municipal Police Assn) Redford, Laurel (ACLU of Texas) Riddering, Hannah (Self and Texas National Organization for Women) On: Harrell, William (ACLU of Texas) SB 215 Registering, but not testifying: For: Jones, Chris W. (Combined Law Enforcement Assn's of Texas) Jones, James (San Antonio Police Officers' Association) Mann, Tom (Texas Police Chiefs Association) SB 553 For: Hearon, Genevieve (Capacity for Justice) Registering, but not testifying: For: Hampton, Keith S. (Texas Criminal Defense Lawyers Assn) Harrell, William (ACLU, NAACP) Redford, Laurel (American Civil Liberties Union of Texas) On: Kifowit, Dee (TX Council on Offenders with Mental Impairments) SB 923 Registering, but not testifying: For: Courtney, Chuck (Texas Retailers Association) SB 966 Registering, but not testifying: For: Courtney, Chuck (Texas Retailers Association) Muscato, Frank (Wal-Mart Inc.)


Peter Kault, 20 December 2016
Are you sure that you wish to reinstate this application?
It will be added to applications requiring assessment, and will require assessors to be assigned to it.


This function should not be used in Microsoft Excel 95 or later because the Slide Show add-in is available only in Microsoft Excel version 5.0 or earlier versions.
Returns the specified information about a slide show or a specific slide in the slide show.
If this function is not available, you must install the Slide Show add-in.
Syntax
SLIDE.GET(type_num, name_text, slide_num)
Type_num is a number specifying the type of information you want.
These values of type_num return information about a slide show.
|
|
|
|
|
|
|
|
These values of type_num return information about a specific slide in the slide show.
|
|
|
|
|
|
|
|
|
|
|
|
Name_text is the name of an open slide show sheet for which you want information. If name_text is omitted, it is assumed to be the active sheet.
Slide_num is the number of the slide about which you want information.
If slide_num is omitted, it is assumed to be the slide associated with the active cell on the sheet specified by name_text.
If type_num is 1 through 3, slide_num is ignored.
Return to index


Text Models
There are a number of built-in compiled text models in Analytics Zoo TFPark for Natural Language Processing (NLP) tasks based on KerasModel.
See this page for more details about how to construct built-in models for intent extraction, named entity extraction and pos tagging. etc.
In this page, we show the general steps how to train and evaluate an NER model in a distributed fashion and use this model for distributed inference. For other models, the steps are more or less quite similar.
Remarks:
- You need to install tensorflow==1.15.0 on your driver node.
- Your operating system (OS) is required to be one of the following 64-bit systems: Ubuntu 16.04 or later, macOS 10.12.6 or later and Windows 7 or later.
- To run on other systems, you need to manually compile the TensorFlow source code. Instructions can be found here.
Model Construction
You can easily construct a model for named entity recognition using the following API.
from zoo.tfpark.text.keras import NER
model = NER(num_entities, word_vocab_size, char_vocab_size, word_length)
Data Preparation
The NER model has two inputs: word indices and character indices.
Thus, each raw text record needs to go through word-wise tokenization, character-wise segmentation and alignment to the same target length for preprocessing.
If you are using numpy arrays, then the input x
should be a list of two numpy arrays:
x_words
of shape (batch, sequence_length) for word indicesx_chars
of shape (batch, sequence_length, word_length) for character indices.x = [x_words, x_char]
If there are labels (for training and evaluation), y
should be another numpy array of shape (batch, sequence_length, word_length) for entity tags.
Alternatively, you can construct a TFDataSet directly if you are dealing with RDD. Each record in TFDataSet should contain word indices, character indices and labels (if any) as well.
Model Training
You can easily call fit to train the NER model in a distributed fashion. You don't need to specify y
if x
is already a TFDataSet.
model.fit(x, y, batch_size, epochs, distributed=True)
Model Evaluation
You can easily call evaluate to evaluate the NER model in a distributed fashion. You don't need to specify y
if x
is already a TFDataSet.
result = model.evaluate(x, y, distributed=True)
Model Save and Load
After training, you can save the NER
model to a single HDF5 file.
model.save_model(path)
For inference, you can load a directly trained NER
model (with weights) from HDF5 file.
from zoo.tfpark.text.keras import NER
model = NER.load_model(path)
Model Inference
You can easily call predict to use the trained NER model for distributed inference. Note that you don't necessarily need labels for prediction.
predictions = model.predict(x, distributed=True)


Machine Availability(%) - Last 12 Months
Grid Availability(%) - Last 12 Months
Turbines Down (Hrs) - Last 24 Hrs
Lost Energy (MWh) by Down Time Type - Last 12 Months
click on each series to view the drilldown
Lost Energy (MWh) by Project - Last 12 Months
click on each series to view the drilldown
Top 10 Turbines Downtime by Losses (MWh) - Last 12 Months
click on each series to view the drilldown
Top 10 Loss Categories by Total Energy Loss(MWh) - Last 12 Months
Top 10 Loss Categories by Duration(Hrs) - Last 12 Months
Top 10 Loss Categories by Frequency - Last 12 Months
Machine Availability(%) - Last 12 Months
Grid Availability(%) - Last 12 Months
Lost Energy Downtime Type - Last 12 Months
click on each series to view the drilldown
Top 10 Turbines Downtime by Losses(MWh) - Last 12 Months
click on each series to view the drilldown
Top 10 Turbines Downtime by Duration (Hrs) - Last 12 Months
click on each series to view the drilldown
Top 10 Turbines Downtime by Frequency - Last 12 Months
click on each series to view the drilldown
Top 10 Loss Categories by Total Energy Loss(MWh) - Last 12 Months
Top 10 Loss Categories by Duration(Hrs) - Last 12 Months
Top 10 Loss Categories by Frequency - Last 12 Months
Back
Back
Downtime for Last 12 months


Chapter 32: Trees
32.1 Introduction
Data structures consisting of boxes within boxes may be called trees.
J provides several special functions in support of computations with trees.
Here is an example of a tree:
] T =: 'the cat' ; 'sat' ; < 'on' ; < ('the';'mat')
+-------+---+--------------+
|the cat|sat|+--+---------+|
| | ||on|+---+---+||
| | || ||the|mat|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+
Those boxes with no inner boxes will be called leaves. We see that T
has 7 boxes of which 5 are leaves.
32.2 Fetching
Evidently, the content of any box can be fetched from tree T
by a combination of indexing and unboxing.
] a =: > 2 { T
+--+---------+
|on|+---+---+|
| ||the|mat||
| |+---+---+|
+--+---------+
] b =: > 1 { a
+---+---+
|the|mat|
+---+---+
] c =: > 1 { b
mat
but there is a built-in verb, "Fetch" (dyadic {::) , for this purpose.
Its left argument is a sequence of indexes (called a path):
(2;1;1) {:: T
mat
Further examples:
2 {:: T
+--+---------+
|on|+---+---+|
| ||the|mat||
| |+---+---+|
+--+---------+
(2 ;1) {:: T
+---+---+
|the|mat|
+---+---+
32.3 The Domain of Fetch
The right argument of {:: must be a vector, or higher rank, and not a scalar,
or else an error results. (Recall that a single box is a scalar).
| 0 {:: , <'hello' |
0 {:: < 'hello' |
| hello |
error |
Let us say that a full-length path is a path which fetches
the data content from a leaf.
Along a full-length path, every index must select a scalar, a box, or else
an error results. In other words, we must have a single path.
| T |
(2; 1 ; 0 1) {:: T |
+-------+---+--------------+
|the cat|sat|+--+---------+|
| | ||on|+---+---+||
| | || ||the|mat|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+ |
error |
The data fetched from a leaf is the result of opening
the last box selected along the path. This data can, as we saw above,
be an array, a list say.
(2;1;1) {:: T
mat
If this data is an indexable array, then a further index can be
appended to a full-length path, giving an over-length path, to fetch a
further single scalar. The next example shows fetching 'm' from 'mat'.
(2;1;1;0) {:: T
m
32.4 The "Map" Verb
Monadic {:: is called "Map". It shows all the paths to the leaves.
{:: T
+---+---+-------------------------+
|+-+|+-+|+-----+-----------------+|
||0|||1|||+-+-+|+-------+-------+||
|+-+|+-+|||2|0|||+-+-+-+|+-+-+-+|||
| | ||+-+-+|||2|1|0|||2|1|1||||
| | || ||+-+-+-+|+-+-+-+|||
| | || |+-------+-------+||
| | |+-----+-----------------+|
+---+---+-------------------------+
32.5 What is the Height of This Tree?
The verb L. ("LevelOf") reports the length of the longest path
in a tree, that is, the maximum length
of a path to fetch the
unboxed data-content of a leaf. In the book "A Programming Language"
Kenneth Iverson uses the term "height" for the length of the longest path
of a tree.
The length of a path is the number of indexing-and-unboxing steps needed.
It is evident that it takes at most 3 steps to fetch any data-content from T
| T |
L.T |
+-------+---+--------------+
|the cat|sat|+--+---------+|
| | ||on|+---+---+||
| | || ||the|mat|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+ |
3 |
One step is needed to fetch the content of the leaf of a tree consisting only of
a single leaf, for example ,<6 . The step is > @: (0&{)
| A =: ,<6 |
L. A |
(> @: (0&{)) A |
0 {:: A |
+-+
|6|
+-+ |
1 |
6 |
6 |
and it evidently needs no steps to fetch the content of 'hello'
| L. 'hello' |
(0$0) {:: 'hello' |
| 0 |
hello |
Here we see that the LevelOf a tree can be computed from its Map
that is, that L. T, say, can be found from {:: T
{:: T NB. Map giving the paths to leaves
+---+---+-------------------------+
|+-+|+-+|+-----+-----------------+|
||0|||1|||+-+-+|+-------+-------+||
|+-+|+-+|||2|0|||+-+-+-+|+-+-+-+|||
| | ||+-+-+|||2|1|0|||2|1|1||||
| | || ||+-+-+-+|+-+-+-+|||
| | || |+-------+-------+||
| | |+-----+-----------------+|
+---+---+-------------------------+
# S: 1 {:: T NB. the length of each path
1 1 2 3 3
>. / # S: 1 {:: T NB. the maximum of the lengths
3
L. T NB. the LevelOf T
3
32.6 Levels
Consider the way the text of a book is organized.
- a book is a sequence of chapters. Different books may have different numbers of chapters.
- a chapter is a sequence of paragraphs. Different chapters may have different number of paragraphs.
- a paragraph is a sequence of sentences. Different paragraphs may have different numbers of sentences
- a sentence is a sequence of words. Different sentences may have different numbers of words.
We say that chapters, paragraphs, sentences and words are different levels in the organization. The organizing principles are evident :
- there are a small number of levels.
- the number of levels is fixed in advance.
- the path to every leaf is of the same length.
J provides several built-in functions which are particularly useful in handling trees organized into fixed levels in this way..
Here is an example of such a tree:
] D =: (<'one'; 'two'), (< 'three' ; 'four')
+---------+------------+
|+---+---+|+-----+----+|
||one|two|||three|four||
|+---+---+|+-----+----+|
+---------+------------+
A box with no inner box (a leaf) is said to be at level 0.
We can apply a given function to the values inside the leaves, that is, at level 0,
with the aid of the L: conjunction (called "Level At").
Reversing the content of each level-0 node, that is, each leaf:
|. L: 0 D
+---------+------------+
|+---+---+|+-----+----+|
||eno|owt|||eerht|ruof||
|+---+---+|+-----+----+|
+---------+------------+
Reversing at level 1:
|. L: 1 D
+---------+------------+
|+---+---+|+----+-----+|
||two|one|||four|three||
|+---+---+|+----+-----+|
+---------+------------+
and at level 2:
|. L: 2 D
+------------+---------+
|+-----+----+|+---+---+|
||three|four|||one|two||
|+-----+----+|+---+---+|
+------------+---------+
We see that we can apply a function at each of the levels 0 1 2 .
The level at which the function is applied can also be specified
as a negative number:
|. L: _2 D
+---------+------------+
|+---+---+|+-----+----+|
||eno|owt|||eerht|ruof||
|+---+---+|+-----+----+|
+---------+------------+
|. L: _1 D
+---------+------------+
|+---+---+|+----+-----+|
||two|one|||four|three||
|+---+---+|+----+-----+|
+---------+------------+
Levels for trees are analogous to ranks for arrays.
L: is the analogue of the rank conjunction " .
32.7 The Spread Conjunction
We saw above that the result of the L: conjunction has the same
tree-structure as the argument. There is another conjunction, S: (called "Spread")
which is like L: in applying a function at a level, but unlike
L: in that the results are delivered, not as a tree but simply as a flat list.
D
+---------+------------+
|+---+---+|+-----+----+|
||one|two|||three|four||
|+---+---+|+-----+----+|
+---------+------------+
|. S: 0 D
eno
owt
eerht
ruof
The result above is a list (a "flat list") of 4 items,
each item being a string.
|. S: 1 D
+----+-----+
|two |one |
+----+-----+
|four|three|
+----+-----+
The result above is a list of 2 items, each item being a list of 2 boxes.
|. S: 2 D
+------------+---------+
|+-----+----+|+---+---+|
||three|four|||one|two||
|+-----+----+|+---+---+|
+------------+---------+
The result above is a list of 2 items, each item being a box.
32.8 Trees with Varying Path-lengths
In the example tree D above all the path-lengths to leaves
are the same length. However, in general path-lengths may vary.
For the example tree T,
T
+-------+---+--------------+
|the cat|sat|+--+---------+|
| | ||on|+---+---+||
| | || ||the|mat|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+
the paths are shown by {:: T and the lengths of the paths
are given by
(# S: 1) {:: T
1 1 2 3 3
Reversing the contents of the level-0 nodes gives no surprises:
|. L: 0 T
+-------+---+--------------+
|tac eht|tas|+--+---------+|
| | ||no|+---+---+||
| | || ||eht|tam|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+
but if we reverse contents of the level-1 nodes we see that
some but not all of the level-0 leaves reappear at level 1.
|. L: 1 T
+-------+---+--------------+
|tac eht|tas|+--+---------+|
| | ||no|+---+---+||
| | || ||mat|the|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+
The explanation is that at level 1 the given verb is applied to
- those nodes strictly at level 1, that is, those for which 1=L. node AND
- those nodes strictly at level 0 not already accounted for
by being contained within a level 1 node.
Similarly, if we reverse the contents of the level-2 nodes we see:
|. L: 2 T
+-------+---+--------------+
|tac eht|tas|+---------+--+|
| | ||+---+---+|on||
| | |||the|mat|| ||
| | ||+---+---+| ||
| | |+---------+--+|
+-------+---+--------------+
In this example some of the results of reverse are
strings, and some are lists of boxes. They are of different types.
These results of different types cannot simply be assembled without
more ado into a flat list as would be attempted by S:
Hence u S: 1 may fail unless the verb u itself provides uniform results
at every node. Compare these two examples:
| |. S: 1 T |
(< @: |.) S: 1 T |
| error |
+-------+---+--+---------+
|tac eht|tas|no|+---+---+|
| | | ||mat|the||
| | | |+---+---+|
+-------+---+--+---------+ |
The Level conjunction L: walks the tree in the same way,
that is, it hits the same nodes for reversing,
|. L: 0 T
+-------+---+--------------+
|tac eht|tas|+--+---------+|
| | ||no|+---+---+||
| | || ||eht|tam|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+
However, Level does not try to build a flat list of results,
rather puts each individual result back into its position in the tree.
Hence where Spread will fail because it tries to build a flat list,
Level will succeed.
| |. S: 1 T |
|. L: 1 T |
| error |
+-------+---+--------------+
|tac eht|tas|+--+---------+|
| | ||no|+---+---+||
| | || ||mat|the|||
| | || |+---+---+||
| | |+--+---------+|
+-------+---+--------------+ |
32.9 Transforming Trees
Next we look at transformations between trees, relations and arrays.
The motivation for these transforms is that, by turning structure
into data, some operations become more straightforward. For example
adding or removing branches (grafting or pruning) becomes easier.
Throughout this section it will be assumed that
the trees in question
have the property of a fixed number of levels,
and the same path-length to every leaf.
Here is a tree for a starting point.
p1 =: (< 'aa' ;'bb' ; 'cc'), (< 'dd' ; 'ee' )
p2 =: (,< ( 'ff' ; 'gg'))
] T =: (< p1) , (< p2) NB. a tree
+--------------------+---------+
|+----------+-------+|+-------+|
||+--+--+--+|+--+--+|||+--+--+||
|||aa|bb|cc|||dd|ee|||||ff|gg|||
||+--+--+--+|+--+--+|||+--+--+||
|+----------+-------+|+-------+|
+--------------------+---------+
32.9.1 Relation from Tree
Here is a function to make a relation from a tree. It combines the index-matrix,
that is the set of all paths to leaves,
with the data values of corresponding leaves:
rfromt =: 3 : 0
P =. indmat y NB. index-matrix
V =. dava y NB. the value of each word
(<"1 P) (, "0 0) V NB. relation
)
indmat =: 3 : 0 NB. index-matrix of given tree
(; @: >) S: 1 ({:: y)
)
dava =: < S: 0 NB. data-values from leaves
We see that each row relates the path to a leaf
and the data content of that leaf.
T
+--------------------+---------+
|+----------+-------+|+-------+|
||+--+--+--+|+--+--+|||+--+--+||
|||aa|bb|cc|||dd|ee|||||ff|gg|||
||+--+--+--+|+--+--+|||+--+--+||
|+----------+-------+|+-------+|
+--------------------+---------+
] R =: rfromt T
+-----+--+
|0 0 0|aa|
+-----+--+
|0 0 1|bb|
+-----+--+
|0 0 2|cc|
+-----+--+
|0 1 0|dd|
+-----+--+
|0 1 1|ee|
+-----+--+
|1 0 0|ff|
+-----+--+
|1 0 1|gg|
+-----+--+
32.9.2 Tree from Relation
A function to make a tree from a relation:
tfromr =: 3 : 0
while. (1 < # >{. {. y) do. y =. step y end.
1 { "1 y
)
where
step =: 3 : 0 NB. one step of tree-from-relation
k =. rkeys y
v =. k < /. (1 { "1 y)
(~.k) ,. v
)
rkeys =: (}: &. >) @: ({. " 1) NB. reduced-length keys
Each step of the process reduces the path-lengths by 1:
| R |
step R |
+-----+--+
|0 0 0|aa|
+-----+--+
|0 0 1|bb|
+-----+--+
|0 0 2|cc|
+-----+--+
|0 1 0|dd|
+-----+--+
|0 1 1|ee|
+-----+--+
|1 0 0|ff|
+-----+--+
|1 0 1|gg|
+-----+--+ |
+---+----------+
|0 0|+--+--+--+|
| ||aa|bb|cc||
| |+--+--+--+|
+---+----------+
|0 1|+--+--+ |
| ||dd|ee| |
| |+--+--+ |
+---+----------+
|1 0|+--+--+ |
| ||ff|gg| |
| |+--+--+ |
+---+----------+ |
| step step R |
tfromr R |
+-+--------------------+
|0|+----------+-------+|
| ||+--+--+--+|+--+--+||
| |||aa|bb|cc|||dd|ee|||
| ||+--+--+--+|+--+--+||
| |+----------+-------+|
+-+--------------------+
|1|+-------+ |
| ||+--+--+| |
| |||ff|gg|| |
| ||+--+--+| |
| |+-------+ |
+-+--------------------+ |
+--------------------+---------+
|+----------+-------+|+-------+|
||+--+--+--+|+--+--+|||+--+--+||
|||aa|bb|cc|||dd|ee|||||ff|gg|||
||+--+--+--+|+--+--+|||+--+--+||
|+----------+-------+|+-------+|
+--------------------+---------+ |
T -: tfromr R
1
32.9.3 Array from Tree and Tree from Array
Here is a verb to construct an array from a tree.
It is assumed that the result is to be an array of boxes,
and so empty boxes may be needed for paddding.
afromt =: 3 : 0 NB. array from tree
a =. indmat y
b =. 1+ >./ a NB. dimensions of array
c =. b $ a: NB. recipient array
d =. dava T
e =. < @: ( ;/) "1 a NB. indices
d e } c
)
| T |
A =: afromt T |
+--------------------+---------+
|+----------+-------+|+-------+|
||+--+--+--+|+--+--+|||+--+--+||
|||aa|bb|cc|||dd|ee|||||ff|gg|||
||+--+--+--+|+--+--+|||+--+--+||
|+----------+-------+|+-------+|
+--------------------+---------+ |
+--+--+--+
|aa|bb|cc|
+--+--+--+
|dd|ee| |
+--+--+--+
+--+--+--+
|ff|gg| |
+--+--+--+
| | | |
+--+--+--+ |
The converse function is to build a tree from an array,
assuming that all empty boxes are padding to be discarded.
First we convert the given array to its
indexmatrix-value relation
and then convert the relation to a tree with tfromr.
tfroma =: 3 : 0 NB. tree from array
b =. , y NB. units of data content
c =. (#: i. @ (*/)) $ y NB. index-matrix
d =. -. b -:"0 a:
e =. (<"1 c) ,. b NB. a relation
f =. d # e NB. discarding empty boxes
tfromr f
)
| A |
Z =: tfroma A |
+--+--+--+
|aa|bb|cc|
+--+--+--+
|dd|ee| |
+--+--+--+
+--+--+--+
|ff|gg| |
+--+--+--+
| | | |
+--+--+--+ |
+--------------------+---------+
|+----------+-------+|+-------+|
||+--+--+--+|+--+--+|||+--+--+||
|||aa|bb|cc|||dd|ee|||||ff|gg|||
||+--+--+--+|+--+--+|||+--+--+||
|+----------+-------+|+-------+|
+--------------------+---------+ |
Checking for correctness:
Z -: T
1
This is the end of Chapter 32.
|


13-year-old boy found in Leyland after going missing from home for 10 days
by Matthew CalderbankA 13-year-old boy has been picked up by police in Leyland after being missing from home for 10 days.
Police had been searching for Harley Taylor since he disappeared from his home in Skelmersdale on Monday, November 10.
He had last been spotted in Chorley on Wednesday, November 13, but had appeared to evade police who had attempted to pick him up.
READ MORE: Police search for missing schoolboy, 13, last seen in Chorley
But police have confirmed that Harley was found "safe and well" by officers in Leyland this morning (November 21).


Path: /
{{part}}/
Refresh
Create Folder
Upload File
Name
Original Name
Actions
..
{{content.name}}
{{content.name}}
{{content.srcName}}
Download
Rename
Delete


Memory Management improvements for Flink’s JobManager in Apache Flink 1.11
September 1, 2020 - Andrey ZagrebinApache Flink 1.11 comes with significant changes to the memory model of Flink’s JobManager and configuration options for your Flink clusters. These recently-introduced changes make Flink adaptable to all kinds of deployment environments (e.g. Kubernetes, Yarn, Mesos), providing better control over its memory consumption.
The previous blog post focused on the memory model of the TaskManagers and how it was improved in Flink 1.10. This post addresses the same topic but for the JobManager instead. Flink 1.11 unifies the memory model of Flink’s processes. The newly-introduced memory model of the JobManager follows a similar approach to that of the TaskManagers; it is simpler and has fewer components and tuning knobs. This post might consequently seem very similar to our previous story on Flink’s memory but aims at providing a complete overview of Flink’s JobManager memory model as of Flink 1.11. Read on for a full list of updates and changes below!
Introduction to Flink’s process memory model #
Having a clear understanding of Apache Flink’s process memory model allows you to manage resources for the various workloads more efficiently. The following diagram illustrates the main memory components of a Flink process:
Flink: Total Process Memory
The JobManager process is a JVM process. On a high level, its memory consists of the JVM Heap and Off-Heap memory. These types of memory are consumed by Flink directly or by the JVM for its specific purposes (i.e. metaspace). There are two major memory consumers within the JobManager process: the framework itself consuming memory for internal data structures, network communication, etc. and the user code which runs within the JobManager process, e.g. in certain batch sources or during checkpoint completion callbacks.
How to set up JobManager memory #
With the release of Flink 1.11 and in order to provide better user experience, the Flink community introduced three alternatives to setting up memory in JobManagers.
The first two — and simplest — alternatives are configuring one of the two following options for total memory available for the JVM process of the JobManager:
- Total Process Memory: total memory consumed by the Flink Java application (including user code) and by the JVM to run the whole process.
- Total Flink Memory: only the memory consumed by the Flink Java application, including user code but excluding any memory allocated by the JVM to run it.
It is advisable to configure the Total Flink Memory for standalone deployments where explicitly declaring how much memory is given to Flink is a common practice, while the outer JVM overhead is of little interest. For the cases of deploying Flink in containerized environments (such as Kubernetes, Yarn or Mesos), the Total Process Memory option is recommended instead, because it becomes the size for the total memory of the requested container. Containerized environments usually strictly enforce this memory limit.
If you want more fine-grained control over the size of the JVM Heap, there is also the third alternative of configuring it directly. This alternative gives a clear separation between the heap memory and any other memory types.
The remaining memory components will be automatically adjusted either based on their default values or additionally-configured parameters. Apache Flink also checks the overall consistency. You can find more information about the different memory components in the corresponding documentation. You can try different configuration options with the configuration spreadsheet (you have to make a copy of the spreadsheet to edit it) of FLIP-116 and check the corresponding results for your individual case.
If you are migrating from a Flink version older than 1.11, we suggest following the steps in the migration guide of the Flink documentation.
Additionally, you can configure separately the Off-heap memory (JVM direct and non-direct memory) as well as the JVM metaspace & overhead. The JVM overhead is a fraction of the Total Process Memory. The JVM overhead can be configured in a similar way as other fractions described in our previous blog post about the TaskManager’s memory model.
More hints to control the container memory limit #
The heap and direct memory usage are managed by the JVM. There are also many other possible sources of native memory consumption in Apache Flink or its user applications which are not managed directly by Flink or the JVM. Controlling their limits is often difficult which complicates debugging of potential memory leaks. If Flink’s process allocates too much memory in an unmanaged way, it can often result in killing its containers for containerized environments. In this case, understanding which type of memory consumption has exceeded its limit might be difficult to grasp and resolve. Flink 1.11 introduces some specific tuning options to clearly represent such components for the JobManager’s process. Although Flink cannot always enforce strict limits and borders among them, the idea here is to explicitly plan the memory usage. Below we provide some examples of how memory setup can prevent containers from exceeding their memory limit:
-
User code or its dependencies consume significant off-heap memory. Tuning the Off-heap option can assign additional direct or native memory to the user code or any of its dependencies. Flink cannot control native allocations but it sets the limit for JVM Direct memory allocations. The Direct memory limit is enforced by the JVM.
-
JVM metaspace requires additional memory. If you encounter
OutOfMemoryError: Metaspace
, Flink provides an option to increase its default limit and the JVM will ensure that it is not exceeded. The metaspace size of a Flink JVM process is always explicitly set in contrast to the default JVM settings where it is not limited. -
JVM requires more internal memory. There is no direct control over certain types of JVM process allocations but Flink provides JVM Overhead options. The JVM Overhead options allow declaring an additional amount of memory, anticipated for those allocations and not covered by other options.
Conclusion #
The latest Flink release (Flink 1.11) introduces some notable changes to the memory configuration of Flink’s JobManager, making its memory management significantly easier than before. Stay tuned for more additions and features in upcoming releases. If you have any suggestions or questions for the Flink community, we encourage you to sign up to the Apache Flink mailing lists and become part of the discussion.


| After dense matter from an imploded white hole hits Earth, the planet's rotation is devastated. A group of government agents must locate a lost satellite network that is the world's only hope for survival. | |
| Genres: | Action, Science Fiction |
| Director: | W.D. Hogan |
| Writer: | Rachelle S. Howie, David Ray, Robert Ozn |
Cast: | John Streich - Robert Knepper Chloe Edwards - Julia Benson Andy Streich - Cameron Bright Michelle Fulton - Julia Maxwell Lockman - Michael Kopsa Arnett - Roark Critchlow Rothman - Bruce Davison Agent Massie - Alex Zahara Edward Leary - David Richmond-Peck Scientist - Gardiner Millar Darlene - Ali Liebert Tech - Hiro Kanagawa Assistant - Jennifer Shirley Lt. Reid - Isaiah Adam Agent #1 - Douglas Chapman Guard - Ben Wilkinson Security Guard - Sage Brocklebank Agent #2 - Jeff Sanca ND Agent #2 - Andrew Chin ND Agent #3 - Trevor Jones Agent 1 - DTeflon |


Using Sass
using-sass
While Bootstrap is built on Less, it also has an official Sass port. We maintain it in a separate GitHub repository and handle updates with a conversion script.
using-sass
While Bootstrap is built on Less, it also has an official Sass port. We maintain it in a separate GitHub repository and handle updates with a conversion script.
What's Included
Since the Sass port has a separate repo and serves a slightly different audience, the contents of the project differ greatly from the main Bootstrap project. This ensures the Sass port is as compatible with as many Sass-based systems as possible.
lib/
tasks/
test/
templates/
vendor/assets/
Rakefile
Visit the Sass port's GitHub repository to see these files in action.
Installation
For information on how to install and use Bootstrap for Sass, consult the GitHub repository readme. It's the most up to date source and includes information for use with Rails, Compass, and standard Sass projects.
Boostrap for Sass


GraphQL is a new way of thinking about the APIs. Here's a great
comparison between GraphQL and REST. In this set of articles, we're not going to explain what the GraphQL is, but rather
show how to work with the dedicated
@nestjs/graphql
module.
The
GraphQLModule
is nothing more than a wrapper around the
Apollo server. We don't reinvent the wheel but provide a ready to use a module instead, that brings a clean way to
play with the GraphQL and Nest together.
Firstly, we need to install the required packages:
$ npm i --save @nestjs/graphql apollo-server-express graphql-tools graphql
Once the packages are installed, we can apply the GraphQL middleware provided by the
apollo-server-express
package:
{{ middleware }}
{{ middlewareJs }}
We passed an empty object as a GraphQL schema
and req
(request object) as a rootValue
for now.
Additionally, there're a few other available graphqlExpress
options and you can read about them here.
In order to generate a schema, we are using GraphQLFactory
which is a part of the @nestjs/graphql
package.
This component provides a createSchema()
method that accepts the same object as a makeExecutableSchema()
function, well-described here.
The schema options object demand at least resolvers
and the typeDefs
property.
You can pass type definitions manually, or use a utility mergeTypesByPaths()
method of the GraphQLFactory
.
Let's have a look on the following example:
{{ createSchema }}
{{ createSchemaJs }}
Hint Learn more about GraphQL schema here.
In this case, the GraphQLFactory
will go through each directory, and merge files that have a .graphql
extension.
Afterward, we can create a schema using these particular type definitions. The resolvers
will be reflected automatically.
Here you can read more about what the resolvers map actually is. A fully working sample is available here.


PCB and PSL franchises tussle creates shadow over the PSL 2020
by Web DeskPakistan Super League (PSL) franchises have been given a 48-hour ultimatum by the Pakistan Cricket Board (PCB) to fulfill all their financial obligations.
The franchises had put forward a number of demands in an email to the board with a united front. Their demands included an increase in the amount of PSL revenue shared as well as the completion of the accounts for the fourth edition of the league.
All franchises had submitted cheques for the next edition of the PSL which can be cashed on November 20.
The franchises also demanded in the email to stop this process, until their concerns are addressed by the board.
According to sources, PCB was not pleased with franchises demands and gave a rather harsh reply to the email. The reply came from PSL Head of Player Acquistion and Management Imran Ahmed Khan, who made it clear to the franchises that the board has already accepted a range of their demands.


 Whatever the issue, we've got you covered.
- Ruptured Pipes
- Broken Heads
- Clogged Nozzles
- Weak Spray
- Controller Failure
New Installations
We offer design and installation services for new and existing construction. Your landscape is a serious investment. Let us help you protect it with a custom built irrigation system.
- State Certified Designs
- Smart Controllers
- High Quality Materials
- Satisfaction Guaranteed!
About Us
God is able to do much more than we ask or think through His power working in us.
- Ephesians 3:20
After 35 years in the retail pharmacy business, God led my wife and me to step out in faith and make a change. We sold our pharmacy ( 24 years ownership) and began pursuing second careers. Growing up with farming roots, digging in the dirt comes natural….and I find myself an irrigation specialist.


Robot, Part 1
July 2014A robot I built and programmed from a robot starter kit.
Winter 2013.
A simple decade counting circuit done in mechatronics class.
Summer 2014.
A project for the ‘Introduction to Engineering Design and Graphics’ course for mechanical engineers.
I worked on this project way back in October and November of 2010 during my junior year in high school, as part of an assignment for my sculpture class.


A generic security blog by a pentester. Belgium, Paris and now Leeds
CTF Write-Up - HackIT CTF 2017 Web200
August
27th,
2017
I participated at the HackIT 2017 CTF with team sec0d, and we finished first. As requested by some other teams, here’s a write-up for the Web200 CTF challenge of HackIT 2017.
Introduction
The application seems pretty straightforward, we can register with an username, a password, and a secret. The goal of the challenge is to recover the secret of an administrator.
Solution
Checking the source of the profile page, we can see some interesting information:
First, the secret is shown in an input tag. We can see that we can edit part of our profile as well by using edit.php. This page will edit the “about” field of our user.
We can also see that there is an administrator function commented in the html, hinting us of a potential XSS or similar attack, as the administrator will have a list of updated status in his dashboard.
XSS tentatives will be proven to be unsuccessful, as we do not have access to the < and > characters and we are not in an attribute. A bbcode function is however enabled on the application, allowing us to input interesting data, for example, [code]Message[/code] will be translated to
Message
. Testing all possible bbcodes, one, in particular will be interesting to us, color.
The color bbcode injected, we can see the result:
As shown in the screenshot, the parameter “test” is inserted inside a style tag, and since other characters are not correctly filtered, we can do a CSS injection:
Using that as input will change the background image of some HTML tags and generate a request to our website.
Now that we know we can inject CSS and that there is effectively a bot running on the app, we can try to recover the input value using attribute selector in CSS:
This will check if the value of the input starts with h4ck1t, the i modifier after the selector is there to be case insensitive, since the page will lowercase all input value sent.
After sending that, we got our response, the flag format being h4ck1t{flag}, we can confirm that we only have to automate the attack :)
The server and bot being somewhat unreliable, we had to try everything manually. On a stable challenge, this challenge could be solved using a loop checking the character one by one.
Usage: python web200.py 'h4ck1t{c...'
And finally, in our logs, after a little bit of guessing and a sleep() time of 10 seconds…
Bonus
After solving the challenge, a friend I did the CTF with told me there could be a faster solution than bruteforcing the characters ourselves, even on unreliable servers. It is possible to simply create a lot of selectors, like h4ck1t{[a-z0-9] and by sending one request, the server will answer us with one character.


heart doctor
Age : 20
110
<EMAIL_ADDRESS>During my study in school, I have a very solid knowledge of the basic knowledge of clinical subjects such as internal, external, women and children. After a year of clinical practice, I believe that I have the ability to be competent for this post of hospital resident. During my internship, I focused on hypertension, diabetes and the disease in the Department of general surgery, so if I was lucky enough to be hired, I would soon be able to integrate into the Department's work.


SELECT
- Select all data for a table
- Select the columes for a table.
For example, we want to select all data for table "states".
SELECT * FROM states;
For example, we want to select the "state_name" and "population" for table "states".
SELECT state_name, population FROM states;
WHERE
- Select the exact data from a table
For example, we want to select the 'state_name's in table "states" where "region" is 7.
SELECT state_name FROM states
WHERE region_id=7;
ORDER BY
- Order by Ascending
- Order by Descending
For example, we want to select "state_name" and "population" for table "states" by the order of "population" ascending.
SELECT state_name, population FROM states
ORDER BY population;
For example, we want to select "state_name" and "population" for table "states" by the order of "population" descending.
SELECT state_name, population FROM states
ORDER BY population DESC;


|
GPGPU-Sim
|
#include <outputset.hpp>
Classes | |
| struct | sSetElement |
Public Member Functions | |
| void | Clear () |
| void | Add (int output_port, int vc, int pri=0) |
| void | AddRange (int output_port, int vc_start, int vc_end, int pri=0) |
| bool | OutputEmpty (int output_port) const |
| int | NumVCs (int output_port) const |
| const set< sSetElement > & | GetSet () const |
| int | GetVC (int output_port, int vc_index, int *pri=0) const |
| bool | GetPortVC (int *out_port, int *out_vc) const |
Private Attributes | |
| set< sSetElement > | _outputs |
Definition at line 33 of file outputset.hpp.
Definition at line 46 of file outputset.cpp.
Definition at line 51 of file outputset.cpp.
| void OutputSet::Clear | ( | ) |
Definition at line 41 of file outputset.cpp.
Definition at line 124 of file outputset.cpp.
| const set< OutputSet::sSetElement > & OutputSet::GetSet | ( | ) | const |
Definition at line 90 of file outputset.cpp.
Definition at line 95 of file outputset.cpp.
Definition at line 64 of file outputset.cpp.
| bool OutputSet::OutputEmpty | ( | int | output_port | ) | const |
Definition at line 77 of file outputset.cpp.
|
private |
Definition at line 56 of file outputset.hpp.


Taught in the Iyengar tradition, all of these classes rely on an approach to classic Hatha Yoga that emphasizes correct alignment of the body in each asana (posture). Every week a different sequence is thoughtfully designed to help students focus on a specific category of asanas, such as standing poses, forward extensions, etc. The last week of the month is usually devoted to a slower, quieter restorative practice, and often includes pranayama (yoga breathing techniques).
Yoga practitioners enjoy many benefits from their efforts, among these are:
As the name implies, Active Yoga is for students with fewer physical limitations and at least 2 years of current, consistent yoga experience. This well-paced class covers a wider variety of asanas, including basic back extensions and inverted poses.
The Gentle Yoga class is appropriate for beginners, as well as those who have past or current experience with yoga. It includes some chair work, as well as basic standing poses (asanas). Students are encouraged to work at their own pace, textwithin the parameters of their own abilities and limitations. Props such as belts, blocks, blankets, bolsters and chairs are used to help participants work in specific poses that may be particularly challenging for them..
see detailsThis is a Level 1-2 class designed for students who are 50 years or older. We work on a full range of asanas, using props where needed to modify the classic versions of poses to make them safe and accessible for all participants. This class gives special consideration to specific asanas that help prevent and treat osteopenia and osteoporosis, based on the work of Dr. Loren Fishman.
This is a basic Level 1 class that focuses on standing, seated and reclining asanas. It is suitable for beginners and those with some previous exposure to yoga. Access to props is somewhat limited – students are asked to bring their own yoga sticky mat to class. And, without blankets to use, we cannot practice shoulderstand (salamba sarvangasana), a pose that is typically part of the scope of a Level 1 class.
see detailsPrivate yoga lessons are valuable and appropriate for a variety of reasons by offering individualized instruction to: support healing from injury or illness kick-start, guide or deepen home practice work on a specific asana or group of asanas provide a safe learning space for those uncomfortable in group classes
We can schedule private lessons in my home studio (in the Millsmont neighborhood of East Oakland); in your home; or at Adeline Yoga Studio (depending of space availability). The cost for a 1-hour session is:
$75 in my home studio
$85 or more in your home, depending on travel time and distance
$90 at Adeline Yoga Studio
Please contact me at sarah.harvey.yoga so we can discuss your needs and intentions regarding private yoga lessons.


LEGENDS OF THE SAINTS.
"This likë monk let olde thinges pace,
And held after the newë world the trace.
He gave not of the text a pulled hen,
That saith, that hunters be not holy men,
Ne that a monk, when he is reckëless,
Is like to a fish that is waterless;
This is to say, a monk out of his cloister,
This like text held he not worth an oyster,
And I say his opinion was good."
-- The Canterbury Tales:-- CHAUCER.
THE process through which a man, who has made himself remarkable to his ignorant fellow-men, is passed after death -- first, into the hero performing fabulous exploits, and eventually into the giant -- is not difficult to understand.
The remembrance of great deeds, and the memory of virtues,-- even in modem days, when the exaggerations of votaries are subdued by the influence of education,--ever tends to bring them out in strong contrast with the surrounding objects. The mass of men form the background, as it were, of the picture, and the hero or the saint stands forth in all his brightness of colour in the foreground.
 When the first Christian missionaries dwelt amongst this people, they impressed them with the daring which they exhibited by the persecution which they uncomplainingly endured and the holy lives they led.
Those who were morally so superior to the living men, were represented as physically so to their children, and every generation adorned the relation which it had received with the ornaments derived from their own imaginations, which had been tutored amidst the severer scenes of nature; and consequently the warrior, or the holy man, was transmuted into the giant.
If to this we add the desire which was constantly shown by the earlier priesthood to persuade the people of their miraculous powers -- of the direct interference of Heaven in their behalf--and of the violent conflicts which they were occasionally enduring with the enemy of the human race, there will be no difficulty in marking out the steps by which the ordinary man has become an extraordinary hero. 'When we hear of the saints to whose memories the parish churches are dedicated, being enabled to hurl rocks of enormous size through the air, to carry them in their pockets, and indeed to use them as playthings, we perceive that the traditions of the legitimate giants have been transferred to, and mixed up with, the memories of a more recent people.
In addition to legends of the Titanic type, this section will include a few of the true monastic character. The only purpose I have in giving these is to preserve, as examples, some curious superstitions which have not yet entirely lost their hold on the people.


??
View on GitHub
Current zoom level:
?
|
Deativate
| View the
sundials-cluster.js
source to see how this is done.


{% extends "layout.html" %} {% block content %}
| Country | Date | Total Fully Vaccinated | Total Partially Vaccinated | Daily Vaccinations | Daily Vaccinations per Million | Fully Vaccinations per Hundred |
|---|---|---|---|---|---|---|
| {{nation.location}} | {{nation.date}} | {{nation.people_fully_vaccinated}} | {{nation.people_vaccinated}} | {{nation.daily_vaccinations}} | {{nation.daily_vaccinations_per_million}} | {{nation.people_fully_vaccinated_per_hundred}} |


A max scan execution duration may be provided so that the length of time the CI process takes to provide feedback can be controlled.
- This option is ignored if 'Scan has been submitted' has been selected as the build advance indicator
- This option is ignored if 'Scan has been started' has been selected as the build advance indicator
- The duration will take affect when the scan moves into scanning state
- Upon reaching the duration, the in-progress scan will be stopped and the build will advance as normal


{% extends "base.html" %} {% block title %}Bad Request{% endblock %} {% block navigation %} {% endblock %} {% block content %}
You have probably attempted to use this site in an unforeseen way.
If you feel that this is an error, please send your request to
<EMAIL_ADDRESS>{{e.description}}


Chart is unavailable
Chart is unavailable
| Time | Chanel 1 (dig unit) | Chanel 2 (dig unit) | Chanel 3 (dig unit) | Chanel 4 (dig unit) |
|---|---|---|---|---|
| 08:00 | 100 | 100 | 100 | 100 |
| 09:00 | 200 | 200 | 200 | 200 |
| 12:10 | 10 | 200 | 230 | 211 |
| 13:00 | 100 | 100 | 100 | 100 |
[22:59]: Chech the time after configuring
[22:59]: system time: Sunday/2018/7/21 22:59:0
[22:59]: programm time: 22:59
[22:59]: Configure GPIO
[22:59]: Connecting to
[22:59]: WiFi-DOM.ru-2463
[22:59]: WiFi connected
[22:59]: Server started
[22:59]: <IP_ADDRESS>
[23:00]: time parser: 12:07
[23:00]: Received time params Hours: 12, Minutes: 7
[12:07]: Time was reconfigured
[12:07]: Chech the time after configuring
[12:07]: system time: Sunday/2018/7/21 12:7:0
[12:07]: programm time: 12:07
[12:07]: Added new event for LED. Execition time starts at 13:00 ch1: 100 ch2: 100 ch3: 100 ch4: 100
[12:07]: 0 sensor was updated from 0 to 123
[12:07]: 1 sensor was updated from 0 to 123
[12:07]: 2 sensor was updated from 0 to 123
[12:07]: 3 sensor was updated from 0 to 123
[12:08]: 0 sensor was updated from 123 to 122
[12:08]: 1 sensor was updated from 123 to 122
[12:08]: 2 sensor was updated from 123 to 122
[12:08]: 3 sensor was updated from 123 to 122
[12:10]: 0 sensor was updated from 122 to 121
[12:10]: 1 sensor was updated from 122 to 121
[12:10]: 2 sensor was updated from 122 to 121
[12:10]: 3 sensor was updated from 122 to 121
[12:12]: 0 sensor was updated from 121 to 120
[12:12]: 1 sensor was updated from 121 to 120
[12:12]: 2 sensor was updated from 121 to 120
[12:12]: 3 sensor was updated from 121 to 120
[12:15]: 0 sensor was updated from 120 to 119
[12:15]: 1 sensor was updated from 120 to 119
[12:15]: 2 sensor was updated from 120 to 119
[12:15]: 3 sensor was updated from 120 to 119
[12:17]: 0 sensor was updated from 119 to 118
[12:17]: 1 sensor was updated from 119 to 118
[12:17]: 2 sensor was updated from 119 to 118
[12:17]: 3 sensor was updated from 119 to 118
[12:19]: 4 sensor was updated from 0 to 1
[12:19]: Added new event for timeDepends GPIO. Time of execution 12:03 - 12:55
[12:20]: 0 sensor was updated from 118 to 117
[12:20]: 1 sensor was updated from 118 to 117
[12:20]: 2 sensor was updated from 118 to 117
[12:20]: 3 sensor was updated from 118 to 117
[12:22]: 0 sensor was updated from 117 to 116
[12:22]: 1 sensor was updated from 117 to 116
[12:22]: 2 sensor was updated from 117 to 116
[12:22]: 3 sensor was updated from 117 to 116
[12:24]: 0 sensor was updated from 116 to 115
[12:24]: 1 sensor was updated from 116 to 115
[12:24]: 2 sensor was updated from 116 to 115
[12:24]: 3 sensor was updated from 116 to 115
[12:27]: 0 sensor was updated from 115 to 114
[12:27]: 1 sensor was updated from 115 to 114
[12:27]: 2 sensor was updated from 115 to 114
[12:27]: 3 sensor was updated from 115 to 114
[12:29]: 0 sensor was updated from 114 to 113
[12:29]: 1 sensor was updated from 114 to 113
[12:29]: 2 sensor was updated from 114 to 113
[12:29]: 3 sensor was updated from 114 to 113
[12:32]: 0 sensor was updated from 113 to 112
[12:32]: 1 sensor was updated from 113 to 112
[12:32]: 2 sensor was updated from 113 to 112
[12:32]: 3 sensor was updated from 113 to 112
[12:34]: 0 sensor was updated from 112 to 111
[12:34]: 1 sensor was updated from 112 to 111
[12:34]: 2 sensor was updated from 112 to 111
[12:34]: 3 sensor was updated from 112 to 111
[12:36]: 0 sensor was updated from 111 to 110
[12:36]: 1 sensor was updated from 111 to 110
[12:36]: 2 sensor was updated from 111 to 110
[12:36]: 3 sensor was updated from 111 to 110
[12:39]: 0 sensor was updated from 110 to 109
[12:39]: 1 sensor was updated from 110 to 109
[12:39]: 2 sensor was updated from 110 to 109
[12:39]: 3 sensor was updated from 110 to 109
[12:41]: 0 sensor was updated from 109 to 108
[12:41]: 1 sensor was updated from 109 to 108
[12:41]: 2 sensor was updated from 109 to 108
[12:41]: 3 sensor was updated from 109 to 108
[12:44]: 0 sensor was updated from 108 to 107
[12:44]: 1 sensor was updated from 108 to 107
[12:44]: 2 sensor was updated from 108 to 107
[12:44]: 3 sensor was updated from 108 to 107
[12:45]: 6 sensor was updated from 0 to 216
[12:45]: Added new event for LED. Execition time starts at 12:10 ch1: 10 ch2: 200 ch3: 230 ch4: 211


{# Admin team selector allows user to select localizable and read-only locales for the project. #} {% import 'teams/widgets/team_selector_list.html' as team_selector_list %} {% macro render(locales_available, locales_selected, locales_readonly, form_field='selected_locales') %}


Identification and estimation of the autoregressive threshold models with Gaussian noise, as well as positive-valued time series. The package provides the identification of the number of regimes, the thresholds and the autoregressive orders, as well as the estimation of remain parameters. The package implements the methodology from the 2005 paper: Modeling Bivariate Threshold Autoregressive Processes in the Presence of Missing Data <doi:10.1081/STA-200054435>.
| Version: | 1.0 |
| Depends: | mvtnorm |
| Published: | 2017-02-24 |
| Author: | Hanwen Zhang, Fabio H. Nieto |
| Maintainer: | Hanwen Zhang <hanwengutierrez at gmail.com> |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| NeedsCompilation: | no |
| In views: | MissingData |
| CRAN checks: | TAR results |
| Reference manual: | TAR.pdf |
| Package source: | TAR_1.0.tar.gz |
| Windows binaries: | r-devel: TAR_1.0.zip, r-release: TAR_1.0.zip, r-oldrel: TAR_1.0.zip |
| OS X binaries: | r-release: TAR_1.0.tgz, r-oldrel: TAR_1.0.tgz |
Please use the canonical form https://CRAN.R-project.org/package=TAR to link to this page.


Configure JS Timer
Configure the timer preset buttons using the fields on the right.
For each present, enter a Preset Name in the top field, and the
time slots in the bottom two fields. The first time field (left)
is the number of minutes for the talk / presentation. The second
field (right) is the number of minutes for the Q&A period.
If you don't want to use the Q&A period, simply leave the
right-hand time field blank.
Click "Save settings" to save your presets or "Cancel" to discard
changes and return to the original presets.


So you think you can code? Here is your chance to prove it! Programming Events that will prove to be the litmus test for any coder.
Codejam:Do you believe not just in writing code but making it more efficient? If yes, this event is for you.
Hackathon:Do all you can in one night in an App and Web development contest. Eat. Sleep. Code!
Reverse Coding:This event involves the participant to guess the source code for a given application by testing different inputs and analyzing the output.
Binary Pirates:
A hacking competition that will test your coding skills along with your understanding
of networking and web related concepts.
So, gear up for whacking out the hacker in you!


elements
Thymol custom elements allow you to extend Thymol in a way that's similar to Thymeleaf's custom dialects.
Custom elements are defined by invoking the "thymol.configureElementProcessor" function.
thymol.configureElementProcessor = function(prefix, suffix, elementProcessorFunction)
prefix - specifies the "namespace" prefix value that introduces the element definition in the template. This is normally a short string, may be null to signify no prefix.
suffix - the name of the element being defined.
elementProcessorFunction - the definition of a callback function that is executed when the element is encountered during template processing.
elementProcessorFunction = function(element)
- element - the DOM element instance to be processed.
The body of the elementProcessorFunction performs the intent of the custom element and may do what you will.
The elementProcessorFunction should return a boolean result value that is "true" if the function changed the DOM in any way and "false" if not.


by
Jars a set of classes and resources.
The <genjar> task is designed to make Jar creation as easy as possible. You give it the root classes (i.e. entry points) of your application and it will determine all other class files that need to be included in the jar.
It does this by recursively examining each class file, extracting a list of all classes referenced, eventually arriving at the complete set of classes required to execute the application. These classes are then placed into the target jar file.
Why does Ant need another jar task? If a developer uses a lot of libraries (their own and/or third party), including these libraries into an application jar can be a real problem. Does one include the entire library? Just that portion actually used? (And just what libraries did get used?)
GenJar was designed to render these questions moot: the JVM knows how to link classes together to execute an application - why can't it be used to bundle all the required pieces into a Jar?
No Jar is really complete without a Manifest. To this end, GenJar will generate complete manifest files, listing every file contained in the Jar, along with size and creation dates (useful for problem diagnosis). Manifest attributes may be specified in a 'template' file or directly within the Ant build file. (See this example.)
The <genjar>
element is the task level element. It has several child parameters that
may be specified: <class>
, <classfilter>
, <resource>
and <manifest>
. Along with the standard Ant <classpath>
element.
To make GenJar 'known' to Ant a taskdef must be used. A properties file is provided to simplify this task.
<taskdef resource="genjar.properties">If GenJar.jar is in $ANT_HOME/lib
<taskdef resource="genjar.properties" classpath="path/to/GenJar.jar">If GenJar.jar is in a different location
| Attribute | Description | |
| jarfile | The name of the jar file to create. | At least 1 of jarfile or destdir . |
| destdir | The name of the directory to copy the dependencies to. |
If the name starts with a File.pathSeparator
or the second character is a :
then the path is assumed to be absolute. Otherwise the project baseDir
attribute is prepended to the name to create the full path to the new
jar file.
Use <class>
elements to specify the names of the classes from which <genjar>
will begin its class dependency search. Each class is recursively
searched for the classes on which it depends. In this way, all classes
necessary to execute an application can be automatically included in the jar.
(See class filter for a method of preventing certain
classes from being placed in the jar.)
This referenced class inclusion works for all classes that are
known at compile time. Any classes that are dynamically loaded cannot be
located in this fashion and therefore must be explicitly included using a <class>
element.
Note: Class names listed in the <class> element are not subject to filtering performed by the class filter.
| Attribute | Description | Required |
| name | The fully qualified name of the class include in the jar. (Use the standard Java 'dotted' notation.) | Yes (Unless a fileset is supplied) |
| bean | If set to 'yes', this class' manifest entry will be marked as being a JavaBean (Java-Bean: true). | No |
<genjar jarfile="test.jar"> <class name="com.killer.app.Main"/> <class name="com.killer.app.Test"/> </genjar>
This example builds a jar containing all classes necessary to run the two specified applications (Main and Test).
<genjar jarfile="test.jar"> <class> <fileset dir="${classes.dir}> <include name="com/company/*.class"> </fileset> </class> </genjar>
This example builds a jar containing all classes necessary to
run all the classes in the com.company
package.
Use <resource>
elements to specify non-class files to be included in the jar.
| Attribute | Description | Required |
| file | Specifies a single file to include in the jar | Yes |
| package | A package name that's to replace the default package name of all
resources specified in this <resource> element. |
No |
A <resource>
element may take a standard Ant fileset
. In this case, the path given to the jarred files is taken from the
<include> parameter. If a package is specified on the resource, then all
files included in the fileset will have their paths changed to the
package specified.
<genjar jarfile="test.jar"> <resource file="images/icon.png" /> </genjar>
This example results in the file icon.png
being included in the jar with a path of /images
.
<genjar jarfile="test.jar"> <resource file="images/icon.png" package="com/foo/ka" /> </genjar>
This results in the file icon.png
being included in the jar with a path of /com/foo/ka
, effectively placing into the com.foo.ka
package.
<genjar jarfile="test.jar"> <resource> <fileset dir="${build.docs}"> <include name="api/**/*.*" /> </fileset> </resource> </genjar>
This example results in all the files in and below the ${build.docs}/api
directory being included into the jar. The path used in the jar begins
at api
.
<genjar jarfile="test.jar"> <resource file="org/apache/xerces/readers/xcatalog.dtd" /> <classpath> <pathelement location="lib/xerces.jar"/> </classpath> </genjar>
This example will copy the xcatalog.dtd file from the Xerces jar (in the classpath) into the target jar.
The <library> specifies either a directory tree or a jar file to be included into the generated jar. In either case, the entire content of the referenced library is included in the jar.
In the case of a directory, all files contained within (and below) the
named directory will be inserted into the jar with a path name beginning at the
named directory. For example, if you specify a library like this <library dir="docs"/>
then all files and subdirectories within the docs
will be inserted into the jar with their paths beginning at docs
.
If you postfix the directory's path with the /*
pattern, then the named directory will be stripped from the file paths
before insertion into the jar. For example, <library dir="docs/*"/>
will insert all the files in and below the docs
into the generated jar, but their paths will begin immediately
below docs
.
When the specified library is a jar, all entries in the jar are copied into the generated jar with the exception of the library jar's manifest file. Along with the library jar's files, any entry attributes are also imported into the generated jar.
| Attribute | Description | Required |
| dir | A directory containing the library files. All files within this directory tree will be added to the jar, the path used in the jar will start at this name. | One of dir or jar |
| jar | A jar to include in the target jar. ALL files in this jar will be copied to the target jar except the manifest file. | One of dir or jar |
<library jar="${lib}/xerces.jar"/>
This example will copy the entire xerces.jar into the generated jar.
<library dir="${lib}/classes" />
This example will pull all files located in and below the ${lib}/classes
directory into the jar. Their jar names will include the path named by
the ${lib}/classes
.
<library dir="${docs}/*"/>
This example will insert all files (and directories) below the ${docs}
directory into the generated jar. But the path named by ${docs}
will be stripped form those files before insertion.
Assume the following structure and files:
./docs ./docs/index.html ./docs/images ./docs/images/fig1.jpg ./docs/images/fig2.jpg
If you use the library tag this way <library dir="docs"/>
then the jar will contain:
docs/index.html docs/images/fig1.jpg docs/images/fig2.jpg
If you were to specify the library this way: <library dir="docs/*"/> then the jar will contain:
index.html images/fig1.jpg images/fig2.jpg
Use the <classfilter> element to specify which classes are not to be included in the jar, and as necessary, which classes are to be explicitly included. Any number of <include> and <exclude> elements may be used inside the <classfilter>.
(Note that the traditional Ant
includes/includesfile/excludes/excludesfile
attributes are not used as they deal with files and GenJar deals with classes.)
The class filtering mechanism operates on patterns. These
patterns are class name prefixes, i.e. partial package or class names. If a
class' fully qualified name starts with an include/exlcude pattern, then
it's considered a match. For example: the class name com.foo.Test
matches the pattern com.foo.
because the class name starts with the pattern.
When determining if a class should be in the jar, <genjar> first checks the list of include patterns. If the candidate class' name matches an include pattern then the class is included in the jar (explicit inclusion). If the class' name does not match an include pattern but matches an exclude pattern, the class is not included in the jar (explicit exclusion). If the class' name does not match any patterns, then it's included in the jar by default (implicit inclusion).
This algorithm allows the user to select very narrow slices of large package spaces. For example, one can include just the Ant types package into a jar by excluding the entire apache package space and then including specifically the Ant types package:
<classfilter> <exclude name="org.apache." /> <!-- exclude the entire apache package space --> <include name="org.apache.tools.ant.types." /> <!-- but include Ant types --> </classfilter>
This example demonstrates the fact that include
patterns override exclude
patterns.
There is a default list of exclude patterns that's compiled into the class filter:
A site wide list of exclusions may be specified in the resource file site-exclusions
. This file is expected to located in the same location
(directory/package) as the GenJar class. the site-exclusions file is expected
to contain one exclude pattern per line with blank lines being ignored. You may
embed comments by prefixing the comment line with '#
'.
| Attribute | Description | Required |
| name | Include/Exclude pattern | Yes |
<genjar jarfile="test.jar"> <class name="com.killer.app.Main"/> <classfilter> <exclude name="org.apache."/> <exclude name="com.ibm."/> </classfilter> </genjar>
This specifies a jar that will contain all classes referenced by com.killer.app.Main
except those in any package starting with org.apache
or com.ibm
.
<genjar jarfile="test.jar"> <class name="com.killer.app.Main"/> <classfilter> <include name="org.apache.ant"/> <exclude name="org.apache."/> <exclude name="com.ibm."/> </classfilter> </genjar>
This specifies a jar that will contain all classes referenced by com.killer.app.Main
except those in any package starting with org.apache
or com.ibm
. All referenced classes from org.apache.ant
will be included as an explicit inclusion overrides an exclusion.
The <classpath> element is used to specify search paths to genjar's jar builder. See the Ant documentation for a full discussion on <classpath>.
<genjar jarfile="test.jar"> <class name="com.killer.app.Main"/> <classfilter> <exclude name="org.apache."/> <exclude name="com.ibm."/> </classfilter> <classpath> <pathelement location="build/classes"/> </classpath> </genjar>
The <manifest> element controls how the jar manifest is initially constructed and what main attributes are placed into the manifest. (For more information on Jar Manifests, see this.)
The <manifest> element allows the developer to specify a template manifest file that will form the base for the manifest placed into the jar. Additionally, main and per-entry attributes may be specified. And control over the default per-entry attributes may be asserted.
To specify a template manifest file, use the template
attribute on the <manifest>
element. All attributes (main and per-entry) will be included in the
manifest written to the jar. Note that any duplicate attributes generated by
GenJar will overwrite those in the template manifest. Example:
<manifest template="default.mft"> .... </manifest>
Normally GenJar will generate a set of per-entry attributes for every
file included in the jar. These attributes include the full path to the
original resource, the last modified date of that resource and the size of that
resource. This information is included in the manifest to aid in tracking down
problems like: "Do I have the right version of that library file?" and
"Where did that class file come from? Is it the old one?" These
automatic per-entry attributes may be disabled by specifying generateEntryAttributes='no'
in the <manifest>
element. At least two attributes are generated for each entry placed in
the jar:
Content-Location
Last-Modified
others
| Attribute | Description | Required |
| template | path to template file | No |
| generateEntryAttributes | prohibits generation of per-entry attributes (see text) | No |
Manifest attributes are specified by using the child <attribute>
elements.
| Attribute | Description | Required |
| name | the attribute's name | Yes |
| value | the attribute's value | Yes |
| entry | the entry name to which this attribute belongs If not supplied (or equal to ' main '), then the attribute is a Main-Entry. | No |
Example:
<manifest> <attribute name="Specification-Title" value="Killer App" /> <attribute name="Specification-Version" value="2.0" /> <attribute name="Specification-Vendor" value="Foo Bar Inc." /> <attribute name="Implementation-Title" value="KA" /> <attribute name="Implementation-Version" value="1.3.7" /> <attribute entry="com/foobar/ka/main.class" name="Icon-Large" value="large-icon.png" /> <manifest>
<genjar jarfile="${build.dist.jar}"> <class name="com.riggshill.catalog.Servlet" /> <classfilter> <!-- don't load any of the apache stuff (XML et.al.)--> <exclude name="org.apache." /> <!-- but we borrow some routines from an Ant task.... --> <include name="org.apache.tools.ant.taskdefs.optional." /> </classfilter> <classpath> <pathelement location="${build.dest}" /> </classpath> <!-- include & repackage some icons (for the visual Ant builder) --> <resource name="images/icon-large.png" package="com.riggshill.catalog." /> <resource name="images/icon-small.png" package="com.riggshill.catalog." /> <!-- include the docs & source --> <resource> <fileset dir="${build.dir}"> <include name="docs/**/*.*" /> <include name="src/**/*.*" /> </fileset> </resource> <manifest template="manifest.mf"> <attribute name="Specification-Title" value="${Name}" /> <attribute name="Specification-Version" value="${version}" /> <attribute name="Specification-Vendor" value="RiggsHill Software" /> <attribute name="Implementation-Title" value="${Name}" /> <attribute name="Implementation-Version" value="${version}" /> <attribute name="Implementation-Vendor" value="RiggsHill Software" /> <attribute name="Implementation-Vendor-Id" value="JWK" /> </manifest> </genjar>


We provide support and space for people who work on their own, and who are starting new and creative things with technology. The Majoran community want to share the fun of technology with more kids because we have our own.
Majoran coworkers have kids ourselves and we want to see them learn technology in a fun and safe environment. That's why we're opening the experience up to others. We look forward to seeing you there.


Register
Email
Password
Repeat Password
Keep me signed in
I agree with
Parallels Term of Use
.
Register
I'm already registered.
click here
2021 All rights reserved. Square token


{% extends "travel/base.html" %} {% load travel_tags %} {% block travel_heading %}Travelogue Profiles{% endblock travel_heading %} {% block travel_content %}
| Profile | Name | Log Entries | Most Recent | ||
|---|---|---|---|---|---|
| {{ p }} | {% having u.get_full_name as full_name %}{{ full_name }}{% else %}{% endhaving %} | {% having u.travellog_set.all as logs %}{{ logs.count }} | {{ logs.latest.arrival|date:"D, j M y P" }} | {% else %}0 | {% endhaving %} |


Pizza
Garlic Bread
Cookies
Cake
Ice Cream
Cheesecake
Balloons
Party Hats
Plates
Napkins
Capital One Swag


{% extends "layout.html" %} {% block body %}
This demo runs on the bitcoin test network
It simulates an online wallet allowing to bargain with a seller
Right now, the wallet contains {{ params_tpl['wallet_blc'] }} BTC
If the wallet seems empty,
please visit this testnet faucet
and send some love to mryyjA6YpPCJ24MsSN7YnCK6M3NZoUAwxb


[gecode-users] Finalizing TupleSets
Mikael Zayenz Lagerkvist
zayenz at kth.se
Tue Mar 10 09:21:32 CET 2009
This sounds reasonable, I didn't see a real use for defining TupleSets
that meant direct failure before (I just assumed that that would be a
modeling error).
It won't be in 3.0.0, but it will be added after 3.0.0 is released.
Cheers,
Mikael
On Tue, Mar 10, 2009 at 9:14 AM, Malcolm Ryan <malcolmr at cse.unsw.edu.au> wrote:
> I use a TupleSet to represent the edges of a graph to constrain paths.
> It is certainly possible to have a graph with no edges. When I go
> looking for paths in that graph, I want failure. What I _don't_ want
> is for the code to crash.
>
> Malcolm
>
> On 10/03/2009, at 6:16 PM, Mikael Zayenz Lagerkvist wrote:
>
>> On Tue, Mar 10, 2009 at 2:20 AM, Malcolm Ryan <malcolmr at cse.unsw.edu.au
>> > wrote:
>>> On 09/03/2009, at 8:55 PM, Christian Schulte wrote:
>>>> The attempt to finalize an empty tuple set will also throw an
>>>> exception but
>>>> most likely only in 3.0.1 and not 3.0.0.
>>>
>>> Is that the intended behaviour? Having an empty tuple set seems
>>> perfectly legitimate to me.
>>
>> An empty TupleSet is not a meaningful object to use for a constraint,
>> since it would mean direct failure.
>>
>> Cheers,
>> Mikael
>>
>> --
>> Mikael Zayenz Lagerkvist, http://www.ict.kth.se/~zayenz/
>
>
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users
>
--
Mikael Zayenz Lagerkvist, http://www.ict.kth.se/~zayenz/
More information about the gecode-users
mailing list


|
The Purplemath Forums |
Slope of a Straight Line (page 1 of 2) One of the most important properties of a straight line is in how it angles away from the horizontal. This concept is reflected in something called the "slope" of the line.
Pick two x's and solve for each corresponding y: If, say, x = 3, then y = ( 2/3 )(3) – 4 = 2 – 4 = –2. If, say, x = 9, then y = ( 2/3 )(9) – 4 = 6 – 4 = 2. (By the way, I picked the x-values to be multiples of three because of the fraction. It's not a rule that you have to do that, but it's a helpful technique.) So the two points (3, –2) and (9, 2) are on the line y = ( 2/3 )x – 4. To find the slope, you use the following formula: (Why "m" for "slope", rather than, say, "s"? The official answer is: Nobody knows.) The subscripts merely indicate that you have a "first" point (whose coordinates are subscripted with a "1") and a "second" point (whose coordinates are subscripted with a "2"); that is, the subscripts indicate nothing more than the fact that you have two points to work with. It is entirely up to you which point you label as "first" and which you label as "second". For computing slopes with the slope formula, the important thing is that you subtract the x's and y's in the same order. For our two points, if we choose (3, –2) to be the "first" point, then we get the following: The first y-value above, the –2, was taken from the point (3, –2) ; the second y-value, the 2, came from the point (9, 2); the x-values 3 and 9 were taken from the two points in the same order. If we had taken the coordinates from the points in the opposite order, the result would have been exactly the same value: As you can see, the order in which you list the points really doesn't matter, as long as you subtract the x-values in the same order as you subtracted the y-values. Because of this, the slope formula can be written as it is above, or alternatively it can be written as: Copyright © Elizabeth Stapel 2000-2011 All Rights Reserved Let me emphasize: it does not matter which of the two formulas you use or which point you pick to be "first" and which you pick to be "second". The only thing that matters is that you subtract your x-values in the same order as you had subtracted your y-values. Technically, the equivalence of the two slope formulas above can be proved by noting that: y1 – y2
= –y2 + y1 = –(y2
– y1) Doing the subtraction in the so-called "wrong" order serves only to create two "minus" signs which cancel out. The upshot: Don't worry too much about which point is the "first" point, because it really doesn't matter. (And please don't send me an e-mail claiming that the order does somehow matter, or that one of the above two formulas is somehow "wrong". If you think I'm wrong, plug pairs of points into both formulas, and try to prove me wrong! And keep on plugging until you "see" that the mathematics is in fact correct.) Let's find the slope of another line equation:
I'll pick a couple of values for x, and find I'll find the corresponding values for y. Picking x = –1, I get y = –2(–1) + 3 = 2 + 3 = 5. Picking x = 2, I get y = –2(2) + 3 = –4 + 3 = –1. Then the points (–1, 5) and (2, –1) are on the line y = –2x + 3. The slope of the line is then calculated as: Scroll back up this page and look at those equations
and their graphs. For the first equation, y
This fact can help you check your calculations: if you calculate a slope as being negative, but you can see from the graph that the line is increasing (so the slope must be positive), you know you need to re-do your calculations. Being aware of this connection can save you points on a test because it will enable you to check your work before you hand it in.
Is the horizontal line going up; that is, is it an increasing line? No, so its slope won't be positive. Is the horizontal line going down; that is, is it a decreasing line? No, so its slope won't be negative. What number is neither positive nor negative? Zero! So the slope of this horizontal line is zero. Let's do the calculations to confirm this value. Using the points (–3, 4) and (5, 4), the slope is: This relationship is true for every horizontal line: a slope of zero means the line is horizontal, and a horizontal line means you'll get a slope of zero. (By the way, all horizontal lines are of the form "y = some number", and the equation "y = some number" always graphs as a horizontal line.)
Verdict: vertical lines have NO SLOPE. In particular, the concept of slope simply does not work for vertical lines. The slope doesn't exist! Let's do the calculations. I'll use the points (4, 5) and (4, –3); the slope is: (We can't divide by zero, which is of course why this slope value is "undefined".) This relationship is always true: a vertical line will have no slope, and "the slope is undefined" means that the line is vertical. (By the way, all vertical lines are of the form "x = some number", and "x = some number" means the line is vertical. Any time your line involves an undefined slope, the line is vertical, and any time the line is vertical, you'll end up dividing by zero if you try to compute the slope.) Warning: It is very common to confuse these two lines and their slopes, but they are very different. Just as "horizontal" is not at all the same as "vertical", so also "zero slope" is not at all the same as "no slope". The number "zero" exists, so horizontal lines do indeed have a slope. But vertical lines don't have any slope; "slope" just doesn't have any meaning for vertical lines. It is very common for tests to contain questions regarding horizontals and verticals. Don't mix them up! Top | 1 | 2 | Return to Index Next >>
|
|
|
|
Copyright © 2000-2012 Elizabeth Stapel | About | Terms of Use |
|
|
|
|
|
|


Brandon Behbahani
A web and smart contract developer
A web and smart contract developer
I like to write code. I specialize in web and smart contract development.
I started out doing wordpress development in a freelance setting. From there I have worked for ecommerce companies large and small.
I have been creating smart contracts in solidity for about 3 years. Blockchain is a passion of mine and I think that Ethereum can be used to chjange the world for good.
Here are a few things that I am working on:
Created by Brandon Behbahani 2020