This class implements an abstract class for describing geometrical elements composed of vertices. More...
#include <CGenericArray.h>
Public Member Functions | |
| cGenericArray (cVertexArrayPtr a_vertexArray) | |
| ~cGenericArray () | |
| virtual void | clear () |
| This method clear all elements of array. More... | |
| virtual unsigned int | getNumElements () |
| This method returns the number of allocated elements. More... | |
| virtual unsigned int | getNumVerticesPerElement () |
| This method returns the number of vertices per element. More... | |
| void | compress () |
| This method removes non used elements. This compresses the array. More... | |
| bool | getAllocated (const unsigned int a_index) const |
| virtual unsigned int | getVertexIndex (const unsigned int a_elementIndex, const unsigned int a_vertexNumber) const |
| cVector3d | getTexCoordAtPosition (const unsigned int a_elementIndex, const cVector3d &a_localPos) |
| virtual void | render () |
| This method render the OpenGL vertex buffer object. More... | |
| virtual bool | computeCollision (const unsigned int a_elementIndex, cGenericObject *a_object, cVector3d &a_segmentPointA, cVector3d &a_segmentPointB, cCollisionRecorder &a_recorder, cCollisionSettings &a_settings) const |
| This method checks if the given line segment intersects a selected element from this array. More... | |
Static Public Member Functions | |
| static cGenericArrayPtr | create (cVertexArrayPtr a_vertexArray) |
| Shared cGenericArray allocator. More... | |
Public Attributes | |
| cVertexArrayPtr | m_vertices |
| Vertex array that contains all vertices used to describe the elements of this array. More... | |
| std::vector< unsigned int > | m_indices |
| Element indices to vertices. More... | |
| std::vector< bool > | m_allocated |
| Element allocation flags. More... | |
| bool | m_flagMarkForUpdate |
| If true then element data has been modified. More... | |
| bool | m_flagMarkForResize |
| If true then element array size has changed. More... | |
| GLuint | m_elementBuffer |
| OpenGL Buffer for storing elements. More... | |
Protected Attributes | |
| std::list< unsigned int > | m_freeElements |
| List of free elements. More... | |
cGenericArray implements an abstract class for describing geometrical elements composed of vertices.
Example of elements include points, segments, or triangles. Each element shall be composed on one or more vertices (point=1, segment=2, triangle=3).
|
inline |
Constructor of cGenericArray.
| a_vertexArray | Array of vertices used to describe the elements. |
|
inline |
Destructor of cGenericArray.
|
inlinevirtual |
Reimplemented in chai3d::cPointArray, chai3d::cTriangleArray, and chai3d::cSegmentArray.
|
inlinestatic |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in chai3d::cPointArray, chai3d::cTriangleArray, and chai3d::cSegmentArray.
| void chai3d::cGenericArray::compress | ( | ) |
|
inline |
Is the element passed by argument currently allocated.
|
inlinevirtual |
This method returns the index number of a vertex for a selected element. The element is identified by passing its index number as argument. The vertex is selected by passing its vertex number. For a triangle. this number shall be 0,1, or 2.
| a_elementIndex | Index number of the element. |
| a_vertexNumber | Vertex number. |
Reimplemented in chai3d::cTriangleArray, chai3d::cSegmentArray, and chai3d::cPointArray.
|
inline |
This method returns the texture coordinate at the nearest point on the element from an input location.
| a_elementIndex | Index number of selected element. |
| a_localPos | Location of point on element. |
|
inlinevirtual |
Reimplemented in chai3d::cSegmentArray, and chai3d::cPointArray.
|
inlinevirtual |
Reimplemented in chai3d::cTriangleArray, chai3d::cSegmentArray, and chai3d::cPointArray.
| cVertexArrayPtr chai3d::cGenericArray::m_vertices |
| std::vector<unsigned int> chai3d::cGenericArray::m_indices |
| std::vector<bool> chai3d::cGenericArray::m_allocated |
| bool chai3d::cGenericArray::m_flagMarkForUpdate |
| bool chai3d::cGenericArray::m_flagMarkForResize |
| GLuint chai3d::cGenericArray::m_elementBuffer |
|
protected |


JavaScript is disabled on your browser.
Package
Class
Use
Tree
Deprecated
Index
Help
Prev
Next
Frames
No Frames
All Classes
R
S
R
RemoteSCP
- Class in
ssh
Copies a file to remote server.
RemoteSCP(String, String, String)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String, String)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, Integer)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String, String, Integer, String, String)
- Constructor for class ssh.
RemoteSCP
RemoteSCP(String, String, String, String, String, Integer, String)
- Constructor for class ssh.
RemoteSCP
RemoteSCPDir
- Class in
ssh
Called by IncludeUpdate class scps a folder to specified end server.
RemoteSCPDir(String, String, String)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, String)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, String, String)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, Integer)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, String, String, Integer, String, String)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPDir(String, String, String, String, String, Integer, String)
- Constructor for class ssh.
RemoteSCPDir
RemoteSCPGet
- Class in
ssh
Used by AddFTP and AddServerRemote classes This uses SSHConfig Interface Gets files from remote hosts
RemoteSCPGet(String, String, String)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, String)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, String, String)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, Integer)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSCPGet
RemoteSCPGet(String, String, String, String, String, Integer, String)
- Constructor for class ssh.
RemoteSCPGet
RemoteSSH
- Class in
ssh
RemoteSSH(String, String)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String, String)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String, String, String)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSSH
RemoteSSH(String, String, String, String, String, String, Integer)
- Constructor for class ssh.
RemoteSSH
Result(SshConfig)
- Method in class ssh.
RemoteSCP
Result(SshConfig)
- Method in class ssh.
RemoteSCPDir
Result(SshConfig)
- Method in class ssh.
RemoteSCPGet
Result(SshConfig)
- Method in class ssh.
RemoteSSH
S
ssh
- package ssh
R
S
Package
Class
Use
Tree
Deprecated
Index
Help
Prev
Next
Frames
No Frames
All Classes


{% extends 'core/base.html' %} {% block content %}
Content: {{ application.content }}
Experince: {{ application.experience }}


Writing Prolog Programs
The best general advice on writing Prolog code was given by
Richard O'Keefe in his book The Craft of Prolog:
Elegance is not optional.
Take this advice to heart! If your Prolog code seems somewhat
inelegant, pause and think about how it can be made
more elegant.
This page explains a few additional guidelines for writing
Prolog code.
| Video: |
|
How to begin
Consider a relation like list_list_together/3 that is
mentioned in Reading Prolog Programs.
How do we come up with such a definition in the first place?
When writing a Prolog predicate, think about
the conditions that ought to make it true. For
example, in the case of list_list_together/3, we can
proceed as follows: First, we want to describe a relation that
holds for lists. We know from
their inductive definition that we need to consider at least two
possible cases:
- the atom []
- compound terms of the form [L|Ls]
These two cases form the skeleton of our prospective definition:
list_list_together([], Bs, Cs) :-
...
list_list_together([L|Ls], Bs, Cs) :-
...
These two clauses form logical alternatives that describe
the different cases that can arise. Then, we
ask: When, i.e., under what conditions do these
cases hold? If you think about it, you will come to the
conclusion that the first clause
holds if Bs = Cs, so we can write it as:
list_list_together([], Bs, Cs) :-
Bs = Cs.
Such unifications can always be pulled into the clause head, so
we can write it as:
list_list_together([], Bs, Bs).
We apply the same reasoning to the second clause: When does
it hold that Cs is the concatenation of [L|Ls]
and Bs? A bit of reflection tells us: This
holds if Cs is of the
form [L|Rest] and Rest is the
concatenation of Ls and Bs. We use
the built-in
predicate (',')/2 to express this conjunction
of conditions. To describe that Rest is the concatenation
of Ls and Bs, we use list_list_together(Ls,
Bs, Rest), since this is precisely the relation that ought
to hold in this case.
The whole clause therefore becomes:
list_list_together([L|Ls], Bs, Cs) :-
Cs = [L|Rest],
list_list_together(Ls, Bs, Rest).
This is an example of a predicate whose definition refers to
itself. Such predicates are called recursive. Note how
recursive definitions naturally arise from considering the
conditions that make such predicates true.
Again, we can simply pull the unification into the clause head:
list_list_together([L|Ls], Bs, [L|Rest]) :-
list_list_together(Ls, Bs, Rest).
Finding better variable names is left as an exercise.
When beginners write their first Prolog programs, a common
mistake is to ask the wrong question: "What should
Prolog do in this case?". This question is misguided:
Especially as a beginner, you will not be able to grasp the actual
control flow for the different modes of invocation. In addition,
this question typically limits you to only one possible usage mode
of your predicate, and one specific execution strategy. Therefore,
do not fall into this trap! Instead, think about the
conditions that make the relation hold, and provide a
clear declarative description of these conditions. If you manage
to state these conditions correctly, you often naturally obtain
very general predicates that can be used in several directions.
Thus, when writing Prolog code, better ask: What are the
cases and conditions that make this predicate true?
You may now think: That's all OK, and may work for such simple
relations. But what if I want to actually "do" something, such as
incrementing a counter, removing an element etc.? The answer
is still the same: Think in terms of relations between the
entities you are describing. To express a modification of
something, you should define a relation between
different states of something, and state the conditions
that make this relation hold.
See Thinking in States for more
information.
Naming predicates
A good predicate name makes clear what the predicate
arguments mean.
| Video: |
|
Ideally, a predicate can be used in all directions. This
means that any argument may be a variable, partially
instantiated, or fully instantiated. This generality should
be expressed in the predicate name, typically by
choosing nouns to describe the arguments.
Examples of good predicate names are:
- list_length/2, relating a list to its length
- integer_successor/2, relating an integer to its
successor
- student_course_grade/3, relating students to
courses and grades.
In these cases, the predicate names are so clear that the
descriptions seem almost superfluous. Note also
that using_underscores_makes_also_longer_names_easy_to_read,
whereas for
example mixingTheCasesAsInJavaMakesThatALotHarderInGeneral.
For these reasons, examples of bad names are:
- length/2: Which argument is the length, the first
or the second one?
- nextInteger/2: Not as readable as for
example next_integer/2, and not as meaningful
as integer_successor/2.
- fetch_grades/3: Does not make sense for example if
grades are already instantiated.
Naming variables
A Prolog variable starts with an uppercase letter or
with an underscore. The latter rule is useful to know if you are
teaching Prolog in Japan, for example.
In contrast to the convention for predicate
names, MixedCases are sometimes used when naming
Prolog variables. However, the mixing is in almost all
cases limited to at most two uppercase words that are
adjoined.
Some Prolog predicates describe a sequence
of state transitions to express
state changes in a pure way. In such cases, the following
convention can be very useful: The initial state is denoted
as State0, the next state is State1, etc. This
enumeration continues until the final state, which we
call State. In total, the sequence is therefore:
State0 → State1 → State2 → ... → State
Of course, the prefix State can denote any other entity
that is being described. For example, if multiple elements are
inserted into an association list,
we may have the sequence:
Assoc0 → Assoc1 → Assoc2 → ... → Assoc
When writing higher-order predicates,
it is good practice to denote with C_N a
partial goal C that is called with N
additional arguments. For example, the first argument
of maplist/2 could be called Pred_1,
because it is invoked with one additional argument.
Indenting Prolog code
Prolog is a very simple language: Only a few language constructs
exist, and several ways for indenting them are common.
However, no matter which convention you choose, one invariant that
should always be adhered to is to never place (;)/2 at
the end of a line. This is because ; looks very
similar to , (comma). Since (',')/2
almost always occurs at the end of a line, it is good practice to
place ; either at the beginning of a line
or between the two goals of a disjunction to more clearly
distinguish it from a conjunction.
Comments
You can use comments in your code to explain important
principles and design goals of your programs.
Prolog supports two kinds of comments:
- single line comment, starting with % and
including everything up to (and including) the
next newline character
- bracketed comment, which has the form
/* comment text */
A bracketed comment may also include newline characters
between the delimiters.
By convention, supported modes of predicates are sometimes
indicated in comments. Such comments consist of the predicate
head, and indicate the supported modes for each argument using a
dedicated prefix for each argument. For example, such a comment
may read:
list_list_together(?As, ?Bs, ?Cs)
where "?" means that the respective argument may be a
variable, only partially instantiated or fully instantiated
when the predicate is invoked. Other common prefices are
"+" and "-", denoting intended input
and output arguments, respectively.
Such mode annotations may be augmented with the determinism
specifiers semidet, det, multi
and nondet, indicating whether the predicate succeeds,
respectively, at most once, exactly once, at least once, or
arbitrarily often.
Further reading
Covington et
al., Coding
Guidelines for Prolog, contains some interesting
observations for programming in Prolog.
More about Prolog
Main page


--- layout: post title: The Null Object Pattern in C# and System.Lazy categories: - clean code - design patterns - Developer Deep Dive - learning c# and .net status: publish type: post published: true meta: _edit_last: '23' s2mail: 'yes' _aioseop_keywords: null object pattern, design patterns, lazy, lazy initialization, singleton _aioseop_description: A brief introduction to the Null Object Pattern with examples in C#. This post also goes over how to use System.Lazy in .NET to clean up your code a bit. _aioseop_title: A look at the Null Object Pattern in C# and System.Lazy dsq_thread_id: '832830613' ---
This post is going to cover a pair of topics that aren’t truly related, but topics that I like to use together. When combined they can give you a nice pattern. First I’m going to briefly talk about the Null Object Pattern:
Rather than dealing with uninitialized variable instances, you can start off by assigning a variable to an instance of a “Null Object”. Oftentimes you’ll see this done when developers assign an empty string to a variable because they don’t want to deal with null values. I’m going to be discussing this with types that are a bit more complex than string.
In the code snippet below, I have represented a method with an optional argument that will fall back to an “empty” signature if one isn’t supplied. This Empty property is our Null Object for Signature that provides a safe instance we can use instead of dealing with null.
{% gist 2206415 %}
[gist id="2206371" file="Signature.cs"]
Another reason I’m a fan of this pattern is when it can be used in sets. Imagine your email signature for a moment. You could have multiple signatures to choose from when you compose an email. Rather than having code to check for the existence of signatures, we can now simply always assume that there will be at least one signature.
[gist id="2206371" file="EmailUser.cs"]
While this code example isn’t too complex, one could imagine that creating a new object every time a property is accessed could get a bit expensive depending on the project. In our example with Email and Signatures, we would be perfectly fine using a Singleton. We might also want to set up our code this way if we needed to worry about reference equality. Just something to keep in mind.
When creating singletons over the years, I’ve seen it done many ways, each better than the next. If we’re going to manage our object’s lifestyle ourselves, there’s a couple of approaches. Each of these is better than the previous:
{% gist 2206342 %}
You’ll notice that making sure this code is lazily initialized and thread safe can add a lot of “noise” to your code.
This is where Lazy can help me out. The following code will achieve the same result as the double-checked locking method above.
{% gist 2206450 %}
It is much cleaner, right? I like Lazy because it removes the noise around thread safety from my code, where it really shouldn’t exist anyway.
I’ve found places that these two patterns work together nicely for me, but one doesn't require the other. Keep an eye open for areas to use these individually if the opportunity is right.


Uses keyboard AWSD or arrow keys to move the paddles.
You can also use the mouse, this can also be disabled.
The "P" key on the keyboard pauses the game.


Cenote (Katavothra in Greek) is a Big Data Management System (BDMS) for event processing and analytics. Our initial goal was to build an open source equivalent of keen.io analytics and learn about scalable systems in the process. Cenote can be used in various domains that follow the event-based logic like the Internet of Things, Marketing Analytics, Monitoring Analytics, among others. Its tech stack includes technologies like: node.js, express, ReactJS, MongoDB, Apache Kafka, Apache Storm, CockroachDB, Redis, Apache Spark, NGINX, Kubernetes, Rancher and the programming languages: JavaScript, Python, Java and Lua.
Completely open source under the MIT License.
Fault-tolerant both on the data and on the system.
Open-ended schemas by convention over configuraion.
Access data and analytics through a REST API.
Data transmission is split into two main flows: the write flow and the read flow. The write flow is concerned with writing data from "web-enabled things" to Cenote, while the read flow is concerned with returning answers via the analytics API.
Built by the AuthEceSoftEng team. Supported by EPAnEK. Distributed as open source under the MIT licene.
Since cenote is a distributed system it spans across 5 repositories:


|
CannibalismThere are so many, many bad things in the world, but for some weird visceral reason, cannibalism is considered just about the worst. Depending on your point of view, it rises above even such criminal abominations as pedophilia, rape and genocide, but in the final analysis, it's what's for dinner.Then again, we live in a culture in which people would run vomiting to the bathroom if they saw what went into making their McDonald's hamburgers, in which a cow is brutally killed with blunt-force trauma, its innards are outered, and then the whole thing is ground up into a mealy paste, intestines, feces, bones and all. With McDonald's, you can mentally blank out the process in favor of focusing on the tasty fat-and-gristle laden product. With cannibalism, there is a nearly unavoidable tendency to linger on the details of the process -- removing the limbs, peeling the skin, roasting it over an open flame, etc., etc. And do we really taste like chicken? Cannibalism is, of course, the eating of one's own species. It should be distinguished from vampirism, which is the drinking of human blood.  There are two kinds of cannibalism -- sociological and pathological. The former means living and eating in a culture where cannibalism is accepted, and the latter means practicing cannibalism within a culture where it's not accepted. There is a lot of controversy over the idea of sociological cannibalism, mostly because reports of its existence have been greatly exaggerated. Ever since human society expanded past the tribal stage, the charge of cannibalism has served as a primary justification for one social collective (European nation, Western religion, Aztecs) to annihilate another, usually militarily inferior social collective (aborigines, pagans, Mayans). In many cases, these charges were wholly fabricated. Reports of social cannibalism are mostly pointed at the Americas and Africa, since these were the primary continents subjected to European killing and conquest sprees from the Middle Ages through modern times. Despite the political convenience of these claims, there are documented examples of cannibalistic cultures and practices. There's no evidence that the Native Americans encountered in North America by the first European settlers had any history of cannibalism, although the accusation was repeated often enough. But there are some isolated examples that have been confirmed by recent research. Most demonstrable cannibal practices in North America were in the distant past, far earlier than Christopher Columbus sailed the ocean blue. In South America and Africa, there are more recent reports, or at least allegations. Unfortunately for the weak of heart, we're all descended from cannibals. Recent genetic studies revealed that almost all humans have genes designed to provide immunity to certain diseases which can only be transmitted by eating human brains. Based on what we know of recent tribal practices, it's generally thought that cannibalism was not treated like a night out at "Red Lobster," at least not within the time frame of the last 4,000 to 6,000 years. Instead, it usually was a spiritual ritual. In some cases, the bodies of enemies were consumed in order to absorb the enemies' strength; in other cases, the bodies of ancestors and relatives were consumed so that they would live on in the diners. One of the most recent discoveries of active cannibalism practice was the Fore tribe of Papua New Guinea, which was only discovered by Westerners in the 20th century. The Fores had turned to cannibalism only recently, to compensate for the meager sources of protein on the Pacific island where they lived. Woman and children ate brains for protein, while the men of the tribe caught their own small game. This was working out OK for them until a bizarre brain disease struck the tribe and created devastating casualties and eventually led to the abandonment of the practice. Of course, social and recreational cannibalism is not just the province of non-white aborigines. In 15th century Scotland, a highlander named Sawney Beane and his wife lived in a remote mountain pass, where they subsisted on a steady diet of unfortunate travelers, which they also fed to their 14 children, and a number of incestuous grandchildren. Needless to say, when the civilized world found out about this, their outrage was so great that they executed the entire family, amputating the limbs of the men so that they bled to death, and burning the women and children at the stake. Now that's civilized! Other famous alleged cannibals in anthropology include the Anasazi tribe in North America, the Aztecs in Central America, and on islands like Fiji, where the menu of choices was necessarily limited by geography. It should be noted that these claims are all extremely controversial because nobody likes to think about the topic. Having noted the controversy, feel free to subsequently ignore it, since most of the people arguing against cannibalism have been scientifically proven to be either a) recently descended from cannibals (and thus oversensitive) or b) idiots. Anthropology as a science is in deep trouble because anthropologists often find themselves persecuted for saying things people don't want to hear. If the anthropologists themselves ate each other, they would be subjected to less abuse than they get for saying long-dead cultures were cannibals. Cannibalism as a modern phenomenon is much more interesting and fucked-up than the historical record, at any rate. Modern cannibals are almost always really bizarre and unpleasant people, so consistently that when regular folks are driven to eat other by impending starvation, it invariably becomes the subject of a movie and at least 15 Discovery Channel sweeps-week specials. Examples of the latter include the soccer players whose plane crashed in the Andes and inspired the movie "Alive," and of course, the infamous Donner Party. The Donner Party was an expedition to the West Coast that had the misfortune of becoming stranded in a weekslong blizzard in the Sierra Nevada area. Lost in the mountains of California for nearly two months, they ran out of food and began to die. The company drew lots to determine who would be dinner, but then "didn't have the heart" to kill him. Luckily, he died from illness anyway. They skinned him, cut the meat from his bones and roasted it. When that ran out, they discussed murdering their Indian guides for dinner (apparently, they had the heart for that). The guides wisely took their chances with the blizzard, however they didn't make it far enough and ended up au jus. As this went on for some time, the members of the party became unbalanced. It was bad enough watching a spouse die; toasting him on a spit afterward didn't comfortably fit into the five stages of grieving.  Normally this would be considered a tragedy, but for the Donner Party it meant a smorgasbord. The party was eventually rescued by spring; by the end half the party of 87 had died. One of the rescuers described the sight:
Among the cabins lay the fleshless bones and half-eaten bodies of the victims of the famine.  They had fallen from their high estate, though compelled by the fell hand of dire necessity. Cannibalism isn't just about survival, though. There have been plenty of non-survival cases of cannibalism reported in recent years. Jeffrey Dahmer was one of the most famous: He seduced at least 15 young men and boys back to his Milwaukee apartment, then tortured, sodomized, murdered, sodomized and barreled them, then butchered and ate was was left. The late Ugandan dictator Idi Amin Dada cannibalized most of his predecessor's underlings after a coup; 19th-century cannibal Alfred Packer later inspired Cannibal! The Musical (1996), an early film by the creators of South Park. The German cannibal Arwan Meiwes, who used Internet personal ads to find a victim, provided the basis for the recent musical smash All You Need (2004), as described by the San Francisco Chronicle:
All You Need has an air of youthfulness, with its rollicking live music, fresh-faced performers and quirkily episodic sensibility. [T]he wry tone sometimes recalls the radio show "This American Life" ... Sweeney Todd redux this isn't; [Director Erika] Shuch uses the metaphor of consumption to investigate all forms of desire.  It's not safe," they warn. An ensemble dance to the old standard "All of Me" takes on sinister shadings with the lines "take my lips ... take my arms." Outside the Western world, Chinese performance artist Zhu Yu made a name for himself by eating a dead baby on film. It's not clear what the artistic merit of this act was supposed to be, but we're sure there must be some. The photo shown here prompted a massive furor about the Internet and art, as well as inspiring a purported "investigation" by the FBI and Scotland Yard, which included baseless threats by the latter agency to shut down Rotten Dot Com. It's not at all clear whether Zhu Yu actually ate a baby for the sake of art, or just simulated eating a baby for the sake of art, or actually ate a baby for the sake of his sick fetish thrills while claiming it was for the sake of art. The name of Ed Gein might be less well-known than Dahmer or Amin, but his work has taken on mythological proportions. Gein was the rural hick cannibal who inspired everything from Psycho (1960, 1998) to The Silence of the Lambs (1991), to The Texas Chainsaw Massacre (1974, 2003), in addition to to their countless sequels, prequels, spinoffs, and video game tie-ins. There have been more movies about Ed Gein than Plato. For that matter, Ed Gein is serious competition for Jesus Christ as a top box-office draw. And when you think about it, Jesus has some cannibalism issues of his own. Most Christians engaged in ritual cannibalism of Jesus on a regular basis, and the Catholic Church insists that their version is actual literal cannibalism, and not just a symbolic gesture. We had better not close out this discussion without answering the most pressing question everyone has about cannibalism: What do people taste like? We're assuming the taste of a hangnail doesn't carry over to the more succulent regions. Legend has it that spam tastes remarkably like human flesh [see Soylent Green]. Another popular comparison is pork, and of course we know everything "tastes like chicken." But let's go straight to a legit source. According to the Andean soccer team, "the slight browning of the flesh gave it an immeasurably better flavor, softer than beef but with much the same taste." So there you have it.


What's in a Name
"Sticks and stones will break my bones but names will never hurt me." This is what our parents told us to tell the bullies in the park who were teasing us. They thought that this phrase would end the harassment and abuse that we experienced whenever we went outside to play. I figured it was their way of saying, “Fight you own battles and leave me out of it.”
In our world today, that old saying wouldn’t apply cause words can and will hurt you. In some cases of cyber bullying, young tormented kids have taken their lives due to the endless abuse of words they’ve encountered on a daily basis. The African American community have fought an endless battle to remove the use of the “N” word and rightfully so, due to the horrible images it brings to mind. This word should never be used either in conversation or song. Never. We should never use hurtful words based on race, religion or sexual lifestyles. As Christians we are not supposed to ridicule those who practice lifestyles contrary to God's word. We are told to pray for them.
In the history of mankind there is probably one word that stirs up more controversy than any other. It’s a word that has caused a split in marriages, separated the closes of friends, and in some cases, caused people their very lives.  That word is the name of Jesus… His name can cause the calmest of conversations to turn into the most heated of arguments in an instance. If you think I’m exaggerating, next time you go to a family function or backyard barbecue try this; instead of telling someone, “go to church” or “believe in the big guy upstairs,” tell them you follow Jesus. See their reaction. I promise you it’s a show stopper. The reaction we get towards His name shouldn’t come as a surprise to us. Jesus himself told us he didn’t come to bring peace but a sword.
Jesus' name will divide the best of friends and the closest of loved ones. His name is so powerful that Satan himself will do anything to prevent us from using it. Imagine for a minute when we are attacked and we call on Jesus’ name. Satan watches as his entire demonic army trembles and hides. That’s what they do, run and hide at the mention of Jesus' name. We don’t think of it like that but it’s true. His name is so powerful it makes all hell shake but it can also set a loved one free from sin and is the only name according to Peter that can save us. There is power in His name. We must use it as often as we can.
So when did believers first start to invoke the name of Jesus and when did society first try to eliminate it? It’s not as recent as you think. In fact this all began at the birth of the Christian church. Let’s look in the bible in chapters 3 and 4 of the book of Acts. Peter and John are heading to the Temple when they see a man crippled from birth begging at the Temple Gate called Beautiful. As they approach, the man asked the Apostles for some money. Peter turned to him and said these famous words, “Silver or gold I do not have, but what I do have I give you. IN THE NAME of Jesus Christ of Nazareth, walk.” (Acts 3:6 NIV) The man was instantly healed. Believers have been using that powerful phrase ever since. Isn’t it funny how God used the very disciple who denied knowing Jesus several weeks earlier to be the first to use His name? The teachers of the law and the religious leaders were instantly aggravated by the use of Jesus' name. You see, they thought they had eliminated His name when they unjustly crucified Jesus. They were wrong. After throwing Peter and John in prison for a night, they gave the Apostles this stern warning, “not to speak or teach at all IN THE NAME of Jesus.” (Acts 4:18 NIV) This is when the trend began right up until today. In public you can say "God" or "Lord" but mention Jesus and you’re in for an immediate confrontation. There is something in His name that causes that reaction. Satan tried to kill His name at the beginning of the Christian church. That’s why when we are made fun of and ridiculed for the name of Jesus, Peter told us we are blessed. He should know firsthand.
Take it as a compliment that you bear His Name. With all of the pressure it brings is it hard to stand up for His name. Yes, I am shameful and guilty of this myself. Please remember to pray for me. There is pressure in feeling like an outcast or being rejected by someone you love. Many times I have opted for saying, “I believe in God.” But I say this with all respect, what God? Paul tells us there are many gods and many lords but there is only One Jesus… Use His name as often as you can. God’s word tells us that there will come a day when, “every knee will bow" and every tongue that ever cursed or used His name in vain, will "confess that Jesus Christ is Lord.” (Philippians 2:10-11 NIV) Everyone.  I sometimes get scared for the late night comics who use His name as a cheap punch line to a meaningless joke. The Son of the living God used, to get a laugh. If they only knew.
As Christians, His name brings comfort, hope, peace and is our only means of salvation. It’s the only name that will help you in your fight with the enemy. The demons know it. Do you?
Call on His powerful name today. He is waiting to respond. May the Grace of our Lord be with you.
Something to consider.


Jimmy Grzybek
Mechatronics Engineer
Contact
Portfolio
Resumé
Let's keep in touch.
Submit
Go Back
×
Sorry! Still Under Construction
×
Email Jimmy Directly for his resumé.


skew
skew(x, y=None)
Slants the direction of all subsequent shape, path, text, image commands. The first parameter sets the horizontal skew. The second parameter is optional and sets the vertical skew. The skew() command works incremental: if you call skew(10), and later on call skew(20), all commands following that second skew() will be skewed by 30 (10+20).
|
skew(10.0)
rect(20, 10, 40, 40) |


0
Simple Button Success Btn Alert Btn Secondary Btn
A whole kitchen sink of goodies comes with Foundation. Check out the docs to see them all, along with details on making them your own.


Jose Mourinho 'a strong contender' for Tottenham Hotspur job
Tottenham Hotspur are reportedly considering the appointment of Jose Mourinho after parting ways with long-serving boss Mauricio Pochettino.
by Darren PlantAfter a poor start to their Premier League campaign, Spurs announced on Tuesday that they had chosen to remove Pochettino from his position in the dugout.
Shortly after the development, Mourinho was installed as the bookmakers favourite to replace the Argentine, and it now appears that the Portuguese is one of the leading candidates.
According to BBC Sport, Mourinho is 'a strong contender', with talks already said to be underway between both parties.
The 56-year-old, who has previously managed Spurs' London rivals Chelsea, has been out of work since being sacked as Manchester United boss in December 2018.
Mourinho is also based in England's capital, something which will only increase speculation regarding a potential appointment.
body check tags ::


Here will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppearHere will the complaint apppear


{{ define "main" }}
{{- .Content -}}
{{/* Define a section to pull recent posts from. For Hugo 0.20 this will default to the section with the most number of pages. */}}
{{ $mainSections := .Site.Params.mainSections | default (slice "post") }}
{{/* Create a variable with that section to use in multiple places. */}}
{{ $section := where .Site.RegularPages "Section" "in" $mainSections }}
{{/* Check to see if the section is defined for ranging through it */}}
{{ $section_count := len $section }}
{{ if ge $section_count 1 }}
{{/* Derive the section name */}}
{{ $section_name := index (.Site.Params.mainSections) 0 }}
{{/* Use $section_name to get the section title. Use "with" to only show it if it exists */}}
{{ with .Site.GetPage "section" $section_name }}
Latest {{ .Title }}
{{ end }}
{{ $n_posts := $.Param "recent_posts_number" | default 3 }}
{{/* Range through the first $n_posts items of the section */}}
{{ range (first $n_posts $section) }}
{{ .Title }}
{{ .Summary }}
{{.Date.Format "02 Jan 2006 15:04 MST"}}read more...
{{ end }}
{{ if ge $section_count (add $n_posts 1) }}
{{ with .Site.GetPage "section" $section_name }}
More {{ .Title }}
{{ end}}
{{ with .Site.GetPage "section" $section_name }}
{{ end }}
{{ end }}


Oct 31, 2009 7:22 PM
Classrooms have been the building blocks of primary and secondary school environments since the advent of the one room school house. Many classrooms no longer fulfill the needs of today’s students. In our ‘flat’ world modern learning environments need to be designed and built to accommodate integrated learning opportunities. Changing the learning environment will foster new opportunities in learning, teaching, collaboration and the future of education. Come and listen to some of the new ideas today’s best thinkers are considering as they design educational environments. Ralph Walker is an Architect with Gensler who has focused his career on developing new learning environments. He will present existing work and new ideas about today’s schools. http://www.gensler.com/# http://aftered.tv/index.php?q=node/351 Location: Russell Hall 5th Floor From outside the lab? Please RSVP to edlabClassrooms have been the building blocks of primary and secondary school environments since the advent of the one room school house. Many classrooms no longer fulfill the needs of today's students. In our ‘flat' world modern learning environments need to be designed and built to accommodate integrated learning opportunities. Changing the learning environment will foster new opportunities in learning, teaching, collaboration and the future of education. Come and listen to some of the new ideas today's best thinkers are considering as they design educational environments. Ralph Walker is an Architect with Gensler who has focused his career on developing new learning environments. He will present existing work and new ideas about today's schools. http://www.gensler.com/# http://aftered.tv/index.php?q=node/351 Location: Russell Hall 5th Floor From outside the lab? Please RSVP to edlab


Voronoi
Status:
no status
Number of points:
256 points
Draw Points
Draw Interiors
Number of threads:
1
2
4
6
8
12
16
24
32
This demo renders the Voronoi diagram for a moving set of points using a brute force technique.


Module std.io
Additions to the core io module.
The module table returned by std.io
also contains all of the entries from
the core io
module table. An hygienic way to import this module, then,
is simply to override core io
locally:
local io = require "std.io"
Functions
| catdir (...) | Concatenate directory names into a path. |
| catfile (...) | Concatenate one or more directories and a filename into a path. |
| die (msg, ...) | Die with error. |
| dirname (path) | Remove the last dirsep delimited element from a path. |
| monkey_patch ([namespace=_G]) | Overwrite core io methods with std enhanced versions. |
| process_files (fn) | Process files specified on the command-line. |
| readlines ([file=io.input()]) | Read a file or file handle into a list of lines. |
| shell (c) | Perform a shell command and return its output. |
| slurp ([file=io.input()]) | Slurp a file handle. |
| splitdir (path) | Split a directory path into components. |
| warn (msg, ...) | Give warning with the name of program and file (if any). |
| writelines ([h=io.output()], ...) | Write values adding a newline after each. |
Types
| fileprocessor (filename, i) | Signature of process_files callback function. |
Functions
Methods- catdir (...)
-
Concatenate directory names into a path.
Parameters:
- ... string path components
Returns:
-
path without trailing separator
See also:
Usage:
dirpath = catdir ("", "absolute", "directory")
- catfile (...)
-
Concatenate one or more directories and a filename into a path.
Parameters:
- ... string path components
Returns:
-
string
path
See also:
Usage:
filepath = catfile ("relative", "path", "filename")
- die (msg, ...)
-
Die with error.
This function uses the same rules to build a message prefix
as warn.
Parameters:
- msg string format string
- ... additional arguments to plug format string specifiers
See also:
Usage:
die ("oh noes! (%s)", tostring (obj))
- dirname (path)
-
Remove the last dirsep delimited element from a path.
Parameters:
- path string file path
Returns:
-
string
a new path with the last dirsep and following
truncated
Usage:
dir = dirname "/base/subdir/filename"
- monkey_patch ([namespace=_G])
-
Overwrite core
io
methods withstd
enhanced versions.Also adds readlines and writelines metamethods to core file objects.
Parameters:
- namespace table where to install global functions (default _G)
Returns:
-
table
the
std.io
module tableUsage:
local io = require "std.io".monkey_patch ()
- process_files (fn)
-
Process files specified on the command-line.
Each filename is made the default input source with
io.input
, and then the filename and argument number are passed to the callback function. In list of filenames,-
meansio.stdin
. If no filenames were given, behave as if a single-
was passed.Parameters:
- fn fileprocessor function called for each file argument
Usage:
#! /usr/bin/env lua -- minimal cat command local io = require "std.io" io.process_files (function () io.write (io.slurp ()) end)
- readlines ([file=io.input()])
-
Read a file or file handle into a list of lines.
The lines in the returned list are not
\n
terminated.Parameters:
- file file or string file handle or name; if file is a file handle, that file is closed after reading (default io.input())
Returns:
-
list
lines
Usage:
list = readlines "/etc/passwd"
- shell (c)
-
Perform a shell command and return its output.
Parameters:
- c string command
Returns:
-
string
output, or nil if error
See also:
Usage:
users = shell [[cat /etc/passwd | awk -F: '{print $1;}']]
- slurp ([file=io.input()])
-
Slurp a file handle.
Parameters:
- file file or string file handle or name; if file is a file handle, that file is closed after reading (default io.input())
Returns:
-
contents of file or handle, or nil if error
See also:
Usage:
contents = slurp (filename)
- splitdir (path)
-
Split a directory path into components.
Empty components are retained: the root directory becomes
{"", ""}
.Parameters:
- path path
Returns:
-
list of path components
See also:
Usage:
dir_components = splitdir (filepath)
- warn (msg, ...)
-
Give warning with the name of program and file (if any).
If there is a global
prog
table, prefix the message withprog.name
orprog.file
, andprog.line
if any. Otherwise if there is a globalopts
table, prefix the message withopts.program
andopts.line
if any. std.optparse:parse returns anopts
table that provides the requiredprogram
field, as long as you assign it back to_G.opts
.Parameters:
- msg string format string
- ... additional arguments to plug format string specifiers
See also:
Usage:
local OptionParser = require "std.optparse" local parser = OptionParser "eg 0\nUsage: eg\n" _G.arg, _G.opts = parser:parse (_G.arg) if not _G.opts.keep_going then require "std.io".warn "oh noes!" end
- writelines ([h=io.output()], ...)
-
Write values adding a newline after each.
Parameters:
- h file open writable file handle; the file is not closed after writing (default io.output())
- ... string or number values to write (as for write)
Usage:
writelines (io.stdout, "first line", "next line")
Types
- fileprocessor (filename, i)
-
Signature of process_files callback function.
Parameters:
- filename string filename
- i int argument number of filename
Usage:
local fileprocessor = function (filename, i) io.write (tostring (i) .. ":\n===\n" .. io.slurp (filename) .. "\n") end io.process_files (fileprocessor)


SAS Users New Zealand (SUNZ), 2017 : Reducing the Time to Insight for New Zealand’s Most Challenging Questions
The Social Investment Unit is championing a new way of working in Government. Reusable, scalable and automated processes for analytics are not new, but are yet to be embedded in Government. This presentation will show what the SIU is doing differently, demonstrate why it is useful, and provide some principles for working in a way that moves government further together.
2016 Victoria University invited talk: Changing the world with numbers - being part of a social investment analytics team. A joint talk with Emily Mason
Data science, advanced analytics, and social investment are Wellington's latest buzz words. In this presentation Emily will discuss how analytic techniques are changing Government's approach to decision making. Big data and analytic techniques now allow us to take a social investment approach by placing people and their experiences at the heart of government's decision making process, and by understanding the real world impact of policy decisions on communities, families and individuals. Through this discussion Emily will illuminate the key skills and competencies she looks for when building a social investment analytics dream team.
As a key member of the social investment unit, and with the benefit of hindsight, Kylie will then outline what she wished she had known before leaving university. She will discuss some tips and tricks she has picked up along the way that have helped in her career as a statistician.
Australian Statistics Conference, 2014: Using the census as a sampling frame: A rare opportunity to understand non-response bias
New Zealand’s 2013 Census of Population and Dwellings was used as a sampling frame for two large household surveys: the Mori Social Survey (Te Kupenga) and the Household Disability Survey. One opportunity when using the census as a frame is having demographic information (age, sex, ethnicity, income) about all sample units, including non-respondents.
This talk will discuss how we used this information to better understand non‐response bias, and how we were able to use this information to adjust for non-response using calibration. While using the census as a sampling frame has some advantages over alternative frames, it also presents some challenges. These include; drawing a sample from a list frame where it is possible to select multiple persons per household, which increases respondent burden, dealing with population groups that move often, and administrative challenges. This talk will discuss these challenges in more detail.
New Zealand Statistics Association Conference, 2013: Using the census as a sampling frame: A rare opportunity to understand non-response bias
Repeated talk, as above
New Zealand Statistics Association Conference, 2012: Identifying respondent groups in a longitudinal business survey sample: an application of dual latent trajectory modelling
Latent trajectory models can be used to classify different patterns of growth and decline across subjects over time. We apply these models to better understand the survey response behaviour of New Zealand businesses over time. Based on model results we classify businesses into: Great Responders, Good Responders, Learners, Over-time Drop-offs and Bad Responders. We find response behaviour in the first five months of a longitudinal survey is a strong predictor of future response behaviour.
We also show how business characteristics contribute to predicting response behaviour. Understanding these patterns is useful in the field when collecting longitudinal survey data. Our analysis provides insights into early detection of problematic responders, targeting of non-response intervention and a possible dynamic sample design in a longitudinal context.
New Zealand Statistics Association Conference, 2011: Fisheries in Ngāti Kahungunu Rohe: Masters thesis presentation
There are three (legal) mechanisms through which kai moana are taken from the coastal waters of Aotearoa New Zealand: Customary, Recreational and Commercial. Data of high quality on the commercial catch are reported to the Ministry of Fisheries, whereas data on the Recreational catch are very patchy, being based on voluntary reporting. Customary catch data are collected through kaitiaki, the iwi representatives who issue customary permits, and summary data are reported to the Ministry of Fisheries. Currently these data are published only at very high aggregate level (Fisheries or Quota Management Areas), which do not allow for analysis or monitoring at finer spatial scales. Te Ohu Kai Moana, who oversee Maori interests in fisheries at a national level, are developing new methods for collecting customary and recreational data from iwi, and are piloting these in the Ngāti Kahungunu Rohe in 2010.
The aim of this project is to provide an improved view of the fisheries data that are currently being collected in the Ngāti Kahungunu rohe, including reporting results at a finer geographical scale. Specific goals are: 1. Assess the quality of existing customary data (from Kaitiaki) and (if possible) recreational data (from voluntary reports by individuals and boat clubs); 2. Combine these data with the commercial data from the Ministry of Fisheries to provide total catch estimates, as an estimate of stocks of key species (e.g. paua, kina, snapper, kahawai), including temporal and geographical variation.


SoapServer::SoapServer
(PHP 5 >= 5.0.1, PHP 7)
SoapServer::SoapServer — SoapServer constructor
说明
public SoapServer::SoapServer ( mixed $wsdl [, array $options ] )
This constructor allows the creation of SoapServer objects in WSDL or non-WSDL
mode.
参数
wsdl
To use the SoapServer in WSDL mode, pass the URI of a WSDL file. Otherwise,
pass NULL and set the uri option to the target namespace for the server.
options
Allow setting a default SOAP version (soap_version), internal character
encoding (encoding), and actor URI (actor).
The classmap option can be used to map some WSDL types to PHP classes. This
option must be an array with WSDL types as keys and names of PHP classes as
values.
The typemap option is an array of type mappings. Type mapping is an array
with keys type_name, type_ns (namespace URI), from_xml (callback accepting
one string parameter) and to_xml (callback accepting one object parameter).
The cache_wsdl option is one of WSDL_CACHE_NONE, WSDL_CACHE_DISK,
WSDL_CACHE_MEMORY or WSDL_CACHE_BOTH.
There is also a features option which can be set to SOAP_WAIT_ONE_WAY_CALLS
, SOAP_SINGLE_ELEMENT_ARRAYS, SOAP_USE_XSI_ARRAY_TYPE.
The send_errors option can be set to FALSE to sent a generic error message
("Internal error") instead of the specific error message sent otherwise.
范例
Example #1 SoapServer::SoapServer() example
SOAP_1_2));
$server = new SoapServer("some.wsdl", array('actor' => "http://example.org/
ts-tests/C"));
$server = new SoapServer("some.wsdl", array('encoding'=>'ISO-8859-1'));
$server = new SoapServer(null, array('uri' => "http://test-uri/"));
class MyBook {
public $title;
public $author;
}
$server = new SoapServer("books.wsdl", array('classmap' => array('book' =>
"MyBook")));
?>
更新日志
版本 说明
5.2.0 Added the typemap option.
参见
• SoapClient::SoapClient() - SoapClient constructor
User Contributed Notes 15 notes
===============================================================================
Here's my solution to make SOAP-headers based authentication.
1). First of all we define the decorator class for our service class:
class_name = $class_name;
}
public function AuthHeader($Header)
{
if($Header->username == 'foo' && $Header->password == 'bar')
$this->authenticated = true;
}
public function __call($method_name, $arguments)
{
if(!method_exists($this->class_name, $method_name))
throw new Exception('method not found');
$this->checkAuth();
return call_user_func_array(array($this->class_name, $method_name),
$arguments);
}
// -----
protected function checkAuth()
{
if(!$this->authenticated)
HTML_Output::error(403);
}
}
?>
2). Then we pass an instance of it to the SoapServer object.
setObject($Service);
$Server->handle();
?>
3). Implementing a client:
true
));
// -----
$AuthHeader = new AuthHeader();
$AuthHeader->username = 'foo';
$AuthHeader->password = 'bar';
$Headers[] = new SoapHeader('http://example.com', 'AuthHeader', $AuthHeader);
$Client->__setSoapHeaders($Headers);
// -----
$Result = $Client->someMethod();
?>
As you can see SoapServer uses our decorator class to answer client requests.
If request contains "AuthHeader" SOAP-header then our wrapper checks the
credentials and sets $authenticated parameter to TRUE (on success). Then
SoapServer calls requested method on our wrapper, we are intercepting it with
__call(), checking authentication and if everything is allright we are calling
real method on the "My_Service" class.
===============================================================================
Calling a server from .NET:
If you intend to call a PHP SOAP server from a .NET Client, there are a couple
of things to be aware of. First of all, I've only got it working in WSDL mode.
If anyone have made it work in non-WSDL-mode, I'd be interested in hearing
that. In WSDL-mode it works, but both input and output-parameters are wrapped
from .NET.
Basically, a function with this signature:
Must be rewritten to this, without changing the WSDL:
$param1+$param2);
}
?>
===============================================================================
A general thing i've experienced with SOAP and which, for some reason, isn't
mentioned in ANY tutorials I've read, is this: The server tends to cache the
interface. This means that if you add a function you'll usually get errors that
the function doesn't exist.
If your SOAP server is written in PHP just delete the cache files, usually
located in /tmp, whenever you add a function, or modify the parameters. These
are named wsdl-******something******
I hope this will spare someone the grief I've experienced with this.
===============================================================================
Beware: in wsdl mode SoapServer does not properly validate if
request matches the given WSDL. It just skips invalid elements. http://
bugs.php.net/bug.php?id=45966
===============================================================================
If you are getting an error about always_populate_raw_post_data or Can't find
HTTP_RAW_POST_DATA then it means the server isn't getting info from the (you
guessed!) raw post data.
Try doing something like this when coding your server:
"http://localhost/namespace"));
$server->setClass('myClass');
$data = file_get_contents('php://input');
$server->handle($data);
?>
Worked for me!
===============================================================================
In response to Timo, it is possible to access Soap Headers from the SoapServer
class and call methods to handle them. Rather than treat them seperately, they
are treated as part of the Soap request.
To pass approximately wss standard headers (note that I couldn't get attributes
from the header tags without text preprocessing, so standards compliance failed
me), first create the following class on the client:
Password = $p;
$this->Username = $l;
}
}
?>
Now, set the Soap Headers:
username, $this->
password);
$soapHeaders[] = new SoapHeader($wsu, 'UsernameToken', $usernameToken);
?>
Next instantiate the client object, add the headers and make the call:
__setSoapHeaders( $soapHeaders );
$client->__soapCall( $method, $params );
?>
Moving to the Server, you'll handle the Soap call somewhat like:
setClass( 'mysoapclass' );
$server->handle();
?>
The key here is that the headers will be handled first by the server which will
call the method mysoapclass::UsernameToken. The way we work this is the
UsernameToken method authenticates the username / password combo and sets a
protected class var. Then when the Soap Body is handled and the appropriate
class method called, a check is made at the start of callable method to ensure
authentication has been passed.
If the Soap auth header is missing, the soap body method will be called anyway
so the check is essential in case a malevolent client deliberately leaves the
headers off.
An example server class is below (missing various methods which I leave as an
exercise to the reader to provide):
Username = $username;
$auth = new $this->AuthClass( $username, $password, get_class($this) );
if( $auth->IsValid() ){
$this->Authenticated = true;
} else {
$this->ThrowSoapFault( 'auth' );
}
}
/*
* Test method
*/
public function felineResponse( $action ){
// Place this at the start of every exposed method
// This is because the SoapServer will attempt to call
// if no authentication headers are passed.
if(!$this->Authenticated){
$this->ThrowSoapFault( 'auth' );
}
if( $action == 'stroke' ){
return 'purr';
} elseif( $action == 'tease' ){
return 'hiss';
}
}
}
?>
This is a adaptation of stuff I found online somewhere...
===============================================================================
There is a option key 'send_errors' that can be use not to expose PHP (fatal)
error messages to the SoapFault message text.
If server is created with a 'send_errors' => false option provied, the
faultstring of the SoapFault thrown upon running into a PHP error would be a
generic “Internal Error” instead of e.g. “Class 'MySecretClass' not found.”.
Example:
$server = new SoapServer('http://path.to/my.wsdl', array('send_errors' =>
false));
The only place this is mentioned is in a discussion under the bug #42214.
However, it is not mentioned in the manual page, at least not at the time of
writing this note.
===============================================================================
typemap isn't very well documented at all, but I thought I might be able to use
it to clean some things up and map between object fields and XML attributes
that have different names but are conceptually the same thing.
Unfortunately type map works at the object level, not the field level like I
was hoping, requiring you to provide functions for building the entire object
from an XML string (using the XML parser of your choice) and vice versa. I
found the wording of the docs very confusing, both parameters are strings which
are function names.
the to_xml function will take the object as a parameter and return a string,
the from_xml function will take an xml string as a parameter and should return
an object of the correct type.
Both methods can also throw SOAPFaults or other exceptions which can be caught
from the actual client method call ($client->someRemoteMethod())
There are decent usage examples in the PHP build tests: http://cvs.php.net/
viewvc.cgi/php-src/ext/soap/tests/?diff_format=u
The typemap tests are at the bottom.
===============================================================================
While others may not do what I did, I thought if my WSDL was not local and
needed to be grabbed via HTTP, I should set the $wsdl var in __construct() to
NULL, and set the 'uri' value in the additional parameters.
This does enable non-WSDL mode, which only causes problems when using complex
types. Since your complex types are not respected/imported, you get unexpected
problems out the wazoo.
So if you are exposing your class via "setClass" to the SOAP server and for
some reason your "types" aren't being returned, you can do this:
setClass('myClass'); // previously included or defined
$server->handle();
?>
This is NOT correct:
'http://soap.example.com/
genwsdl.php?api'));
?>
I sure wish someone really smart would go into a bit more detail in this
documentation of the SoapServer options, why they exist, when to use them,
etc. I find the SOAP docs lacking polish.
===============================================================================
Things that I've searched a lot for that might be useful to somebody:
If you are using Zend Studio, you can easily generate a wsdl file using the
WSDL Generator if you document your code using PHPDOC.
One thing a lot of people are searching everywhere, is the way to pass/return
an array of variables... In your PHPDOC block use the [] after the variable
name like this
This way, the function will require an array of integers for $a, an array of
strings for $b and an array of objets of Class "bar" for $c
In the WSDL, you'll find something like this
I didn't define anywhere the barArray type, Zend's WSDL Generator generated it
automatically...
If you are not using Zend you can generate the wsdl file manually.
Hope it helps someone
===============================================================================
only complementing Juamei answer, the header is passed to UsernameToken method
as an object with 2 properties Username and Password.
===============================================================================
In response to jas [at] dansupport (dot) dk:
All you need to do is disable wsdl caching like so:
ini_set("soap.wsdl_cache_enabled", "0");
Then you don't need to delete any cache files.
===============================================================================
It is currently not possible to process soap headers from within a SoapServer
instance. If soap headers are specified within a WSDL file, you have to extract
the headers manually from the request.
For more information please see http://bugs.php.net/bug.php?id=38309
===============================================================================
The SoapServer can not generate WSDL's yet. (PHP 5.3.5)
It'll exit with "SOAP-ENV:ServerWSDL generation is not supported yet"
===============================================================================
If you're running $soapServer->handle() and getting an empty server response
and no errors (even in the logs), check if you're instantiating the SOAP server
like this:
handle(); // Result: Empty response
?>
Instantiating the SOAP server with one the following should fix it:
'http://www.example.com/soap/
endpoint?wsdl'));
$soapServer = new SoapServer(null, array('uri' => 'http://www.example.com/soap/
endpoint/?wsdl'));
?>
Hope that helps somebody! Zend_Soap_Server wasn't working for me, and I
eventually found that it had to do with the native PHP SOAP class (which ZF
uses).


The following changes will be committed:
Are you sure you wish to commit these changes?
The source branch will automatically be deleted after your changes have been committed to the target branch.


|
NumCpp
2.11.0
A Templatized Header Only C++ Implementation of the Python NumPy Library
|
Custom iterator for NdArray. More...
#include <NdArrayIterators.hpp>
Inherits nc::NdArrayConstIterator< dtype, PointerType, DifferenceType >.
Public Types | |
| using | difference_type = DifferenceType |
| using | iterator_category = std::random_access_iterator_tag |
| using | pointer = PointerType |
| using | reference = value_type & |
| using | value_type = dtype |
Public Member Functions | |
| bool | operator!= (const self_type &rhs) const noexcept |
| reference | operator* () const noexcept |
| self_type | operator+ (const difference_type offset) const noexcept |
| self_type & | operator++ () noexcept |
| self_type | operator++ (int) noexcept |
| self_type & | operator+= (const difference_type offset) noexcept |
| self_type | operator- (const difference_type offset) const noexcept |
| self_type | operator- (const difference_type offset) const noexcept |
| difference_type | operator- (const self_type &rhs) const noexcept |
| difference_type | operator- (const self_type &rhs) const noexcept |
| self_type & | operator-- () noexcept |
| self_type | operator-- (int) noexcept |
| self_type & | operator-= (const difference_type offset) noexcept |
| pointer | operator-> () const noexcept |
| bool | operator< (const self_type &rhs) const noexcept |
| bool | operator<= (const self_type &rhs) const noexcept |
| bool | operator== (const self_type &rhs) const noexcept |
| bool | operator> (const self_type &rhs) const noexcept |
| bool | operator>= (const self_type &rhs) const noexcept |
| reference | operator[] (const difference_type offset) const noexcept |
Custom iterator for NdArray.
| using nc::NdArrayIterator< dtype, PointerType, DifferenceType >::difference_type = DifferenceType |
| using nc::NdArrayIterator< dtype, PointerType, DifferenceType >::iterator_category = std::random_access_iterator_tag |
| using nc::NdArrayIterator< dtype, PointerType, DifferenceType >::pointer = PointerType |
| using nc::NdArrayIterator< dtype, PointerType, DifferenceType >::reference = value_type& |
| using nc::NdArrayIterator< dtype, PointerType, DifferenceType >::value_type = dtype |
|
inlinenoexceptinherited |
Iterator not-equality operator
| rhs |
|
inlinenoexcept |
Iterator dereference
|
inlinenoexcept |
|
inlinenoexcept |
Iterator prefix incrament operator
|
inlinenoexcept |
Iterator postfix incrament operator
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexceptinherited |
Iterator difference operator
| rhs |
|
inlinenoexcept |
Iterator difference operator
| rhs |
|
inlinenoexcept |
Iterator prefix decrament operator
|
inlinenoexcept |
Iterator postfix decrament operator
|
inlinenoexcept |
|
inlinenoexcept |
Iterator pointer operator
|
inlinenoexceptinherited |
Iterator less than operator
| rhs |
|
inlinenoexceptinherited |
Iterator less than equal operator
| rhs |
|
inlinenoexceptinherited |
Iterator equality operator
| rhs |
|
inlinenoexceptinherited |
Iterator greater than operator
| rhs |
|
inlinenoexceptinherited |
Iterator greater than equal operator
| rhs |
|
inlinenoexcept |
Iterator access operator
| offset |


RIAT
Home
About Us
Courses
Services
Contact us
Courses Offered
Basic Computer packages
Data analysis using SPSS
Introduction to data analysis using Excel
Analyzing and visualizing data using Ms Excel
Java Programming
Learning HTML, CSS and Javascript
Website Development
Web Design
Computer packages
Please enter ur details. We will contact you via the email you provide below.
First name
Last name
City name
Email
Submit
Courses
HTML
CSS
Javascript
SPSS
Java
R Basic


Stratego is a modular language for the specification of fully automatic program transformation systems based on the paradigm of rewriting strategies. The construction of transformation systems with Stratego is supported by the XT bundle of transformation tools. The Stratego/XT distribution integrates Stratego and XT.
The http://www.stratego-language.org website provides documentation about Stratego/XT and many applications.


e2freefrag
Print the free space fragmentation information for ext2/ext3/ext4 filesystems.
More information: home page
- Check how many free blocks are present as contiguous and aligned free space:
e2freefrag /dev/sdXN
- Specify chunk size in kilobytes to print how many free chunks are available:
e2freefrag -c chunk_size_in_kb /dev/sdXN


Culture
Book about experiences of people in direct provision centres to be launched in Co. Tipperary town this weekend
by Aileen HahesyThe Carrick-on-Suir launch of Correspondences an anthology of writing about the experiences of people who have lived in direct provision centres for asylum seekers and refugees in Ireland, takes place this Sunday, December 1.
The book launch will be in the Nun's Chapel of the Nano Nagle Community Resource Centre from 2pm – 4pm.
Former resident of Carrick-on-Suir's Bridgewater House Direct Provision Centre, Rehan Ali, will read extracts from his writing featured in this new book edited by actor Stephen Rea and writer Jessica Traynor.
Rehan lived for more than 10 years with his family at Bridgewater House in Carrick-on-Suir and was actively involved in the local community and film and arts scene. The book lauch will feature music and light refreshments.
Rehan will be available to sign copies of the book. Correspondences is on sale at the Tudor Artisan Hub with all proceeds going to the Movement for Asylum Seekers in Ireland (MASI).


--- layout: default ---
TACO-lab is the laboratory for the theoretical approaches to the computing organisms which are assumed to encode the external world and to decode toward affecting the world. (e.g.) BRAIN and nervous system.
Brain Science Institute at Korea Institute of Science Technology


Sindri is a software developed to estimate thermodynamics properties and vapor-liquid equilibrium calculations using cubic equations of state.
Website: github.com/marcusbfs/Sindri
Version: 1.1.0
This software was developed as part of an undergraduate thesis to obtain a bachelor degree in Chemical Engineering at the Federal University of Lavras, Brazil.
Developer: Marcus Bruno Fernandes Silva (github.com/marcusbfs)
Advisor: Prof. Dr. Nathan Sombra Evangelista (nsevangelista.com)
License: Sindri is licensed under the MIT License - see the LICENSE.txt file for details
Any bug reports or suggestions are welcome.


The body of the uib-accordion group grows to fit the contents
{{ model | json }}
{{ outerForm.nestedForm | json }}


Maintaining a Local Dev Meetup
Jacob M. Roufa
@jroufa
About Me
Hi I'm Jacob and I'm here to talk to you about
community
finding agency within your own communities
maintaining a service oriented mindset in your community
From Rockford, IL and I run a meetup
mention developer count in rkfd
water
I can't talk about community without talking about my most important community...
I first learned about community from my family...
Being of service taught from a young age
Continues on with always being available for family today
water
Or a community I spend 40+ hours a week with...
I continue to learn about community every day through my work
Service-oriented industry
QLC prides themselves on hiring for culture
Or a community I spend 40+ hours a week with...
Love to have fun and enjoy what we do
water
Or the community I live in...
And I try to share that community with the place that I live
There are about 150 devs locally total
Rockford's proud past
Racial and class segregation
Or the community I live in...
But I'm really here to talk about this community!
Don't be afraid to dance like Ballmer
Meetup organizers everywhere unite!
(lead with) That being said...

For real?
Talk about what RockDevs is for you.
Challenging for time and content
What makes a good meetup though?
If you're a fan of satire and art, you might already know Jenn
Success is in the eye of the beholder.
Happy people == healthy meetup
Are your users staying engaged?
That's what matters most!
Where do I fit in to all of this?
Too futuristic?
Too unreal?
Utopian ideals are difficult to translate to reality. But it's a good place to start!
Just because not everybody doesn't abide doesn't mean I can't!
water
I played.
Talk about learning patience for others
learning collaboration
commiserate with other musicians and collaborative artists in the room
Too low tech?
Most of the communities we are a part of are NOT tech-focused, so this is important everywhere
I learned.
I learned a lot about community in Chicago
HUGE part of my intro to OSS ideals
Talk about FGC, duh.
Service-focused mission
"Open-source development breaks this bind, making it far easier for tester and developer to develop a shared representation ...to communicate effectively about it." - Eric Raymond
This quote talks about OSS dev, but relevant to communication model in all communities
Break down your predefined role definitions!
Serve in the capacity you decide
water
Let's talk practically though!
Given what you know about my background...
Meetups are...
a wonderful way to learn.
an opportunity to teach.
a chance to become a better version of ourselves.
It's open source IRL!
Relate to FGC
emphasize users
being of service
Meetups for learning?
At least that's what we hope the takeaway is...
Meetups for teaching?
Teaching is about being involved and having a conversation
Meetups for a better me!
Who feels better after a meetup?
Self improvement is intrinsically motivating
water
So think about it...
What do you do every day?
StackOverflow
MDN
Google
IRC
the list goes on... et al ad nauseam
Wouldn't you rather talk about it in person?
Our colleagues are our most valuable resource
Personal experience trumps all
Remember how we talked about user engagement?
So what do YOUR users need?
Talk about combining PHP and JS groups
Mention abysmal attendance
Don't forget to mention all the Rockford area meetups -- .NET, Cocoa, Linux
Meetups are about
Community
Sharing interest
Professional Networking and Support
Now that we've qualified a meetup...
How do we run one?
Remember before when I was talking about my co-organizer?
Share the load if you can. Another perspective and set of hands can really help.
Code of conduct
Y'all had better know what this is, because you agreed to it in attending today!

Universities/colleges LOVE learning opportunities
Get a business to sponsor your space
Coffee shop works too, depending on size
Making your life easier!
Shared calendars/documents
Social media
Email lists
Meetup.com (and other related sites)
Mention all the things meetup does, but by no means end-all-be-all
Potential detractors include inviting the wrong people (like recruiters)
Business sponsored solution because it's paid
water
Remember to keep focus on your users
Do something different
Pivot if you need to
This is about tactic for topics, not entirety of meetup
Talk about pastebin project
Through this project we have essentially tripled our engagement
water
Use resources at hand
Human resources, from the most personal to semi-local/regional
Coworkers
Remember that not everybody has the time to commit to a meetup and that's OK!
Regional meetups
Visit meetups in an hour-ish radius
shout out to madison
Acknowledge failings of this phrase in our industry
Express that it is meant to be "be of service to each other"
We are here to help each other -- it's how we grow!
I hope I've helped to impart a thing or two about community here, today.
Remember to be of service to your users!
Know that you have complete control of your participation!
Don't be afraid to do something drastically different... the results may surprise you!


Searching for available player...
Join Game
[X] waiting...
[O] waiting...
Leave Game
Conversation
Send


public static enum Protos.TaskState extends java.lang.Enum<Protos.TaskState>
mesos.TaskState
Describes possible task states. IMPORTANT: Mesos assumes tasks that enter terminal states (see below) imply the task is no longer running and thus clean up any thing associated with the task (ultimately offering any resources being consumed by that task to another task).
| Enum Constant and Description |
|---|
TASK_DROPPED
TASK_DROPPED = 9; |
TASK_ERROR
TASK_ERROR = 7; |
TASK_FAILED
TASK_FAILED = 3; |
TASK_FINISHED
TASK_FINISHED = 2; |
TASK_GONE
TASK_GONE = 11; |
TASK_GONE_BY_OPERATOR
TASK_GONE_BY_OPERATOR = 12; |
TASK_KILLED
TASK_KILLED = 4; |
TASK_KILLING
TASK_KILLING = 8; |
TASK_LOST
TASK_LOST = 5; |
TASK_RUNNING
TASK_RUNNING = 1; |
TASK_STAGING
TASK_STAGING = 6; |
TASK_STARTING
TASK_STARTING = 0; |
TASK_UNKNOWN
TASK_UNKNOWN = 13; |
TASK_UNREACHABLE
TASK_UNREACHABLE = 10; |
| Modifier and Type | Field and Description |
|---|---|
static int |
TASK_DROPPED_VALUE
TASK_DROPPED = 9; |
static int |
TASK_ERROR_VALUE
TASK_ERROR = 7; |
static int |
TASK_FAILED_VALUE
TASK_FAILED = 3; |
static int |
TASK_FINISHED_VALUE
TASK_FINISHED = 2; |
static int |
TASK_GONE_BY_OPERATOR_VALUE
TASK_GONE_BY_OPERATOR = 12; |
static int |
TASK_GONE_VALUE
TASK_GONE = 11; |
static int |
TASK_KILLED_VALUE
TASK_KILLED = 4; |
static int |
TASK_KILLING_VALUE
TASK_KILLING = 8; |
static int |
TASK_LOST_VALUE
TASK_LOST = 5; |
static int |
TASK_RUNNING_VALUE
TASK_RUNNING = 1; |
static int |
TASK_STAGING_VALUE
TASK_STAGING = 6; |
static int |
TASK_STARTING_VALUE
TASK_STARTING = 0; |
static int |
TASK_UNKNOWN_VALUE
TASK_UNKNOWN = 13; |
static int |
TASK_UNREACHABLE_VALUE
TASK_UNREACHABLE = 10; |
| Modifier and Type | Method and Description |
|---|---|
static com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptor() |
com.google.protobuf.Descriptors.EnumDescriptor |
getDescriptorForType() |
int |
getNumber() |
com.google.protobuf.Descriptors.EnumValueDescriptor |
getValueDescriptor() |
static |
internalGetValueMap() |
static Protos.TaskState |
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) |
static Protos.TaskState |
valueOf(int value) |
static Protos.TaskState |
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.
|
static Protos.TaskState[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final Protos.TaskState TASK_STAGING
TASK_STAGING = 6;
Initial state. Framework status updates should not use.
public static final Protos.TaskState TASK_STARTING
TASK_STARTING = 0;
The task is being launched by the executor.
public static final Protos.TaskState TASK_RUNNING
TASK_RUNNING = 1;
public static final Protos.TaskState TASK_KILLING
TASK_KILLING = 8;
NOTE: This should only be sent when the framework has the TASK_KILLING_STATE capability.
public static final Protos.TaskState TASK_FINISHED
TASK_FINISHED = 2;
TERMINAL: The task finished successfully.
public static final Protos.TaskState TASK_FAILED
TASK_FAILED = 3;
TERMINAL: The task failed to finish successfully.
public static final Protos.TaskState TASK_KILLED
TASK_KILLED = 4;
TERMINAL: The task was killed by the executor.
public static final Protos.TaskState TASK_ERROR
TASK_ERROR = 7;
TERMINAL: The task description contains an error.
public static final Protos.TaskState TASK_LOST
TASK_LOST = 5;
In Mesos 1.3, this will only be sent when the framework does NOT opt-in to the PARTITION_AWARE capability.
public static final Protos.TaskState TASK_DROPPED
TASK_DROPPED = 9;
The task failed to launch because of a transient error. The task's executor never started running. Unlike TASK_ERROR, the task description is valid -- attempting to launch the task again may be successful.
public static final Protos.TaskState TASK_UNREACHABLE
TASK_UNREACHABLE = 10;
The task was running on an agent that has lost contact with the master, typically due to a network failure or partition. The task may or may not still be running.
public static final Protos.TaskState TASK_GONE
TASK_GONE = 11;
The task is no longer running. This can occur if the agent has been terminated along with all of its tasks (e.g., the host that was running the agent was rebooted). It might also occur if the task was terminated due to an agent or containerizer error, or if the task was preempted by the QoS controller in an oversubscription scenario.
public static final Protos.TaskState TASK_GONE_BY_OPERATOR
TASK_GONE_BY_OPERATOR = 12;
The task was running on an agent that the master cannot contact; the operator has asserted that the agent has been shutdown, but this has not been directly confirmed by the master. If the operator is correct, the task is not running and this is a terminal state; if the operator is mistaken, the task may still be running and might return to RUNNING in the future.
public static final Protos.TaskState TASK_UNKNOWN
TASK_UNKNOWN = 13;
The master has no knowledge of the task. This is typically because either (a) the master never had knowledge of the task, or (b) the master forgot about the task because it garbage collected its metadata about the task. The task may or may not still be running.
public static final int TASK_STAGING_VALUE
TASK_STAGING = 6;
Initial state. Framework status updates should not use.
public static final int TASK_STARTING_VALUE
TASK_STARTING = 0;
The task is being launched by the executor.
public static final int TASK_RUNNING_VALUE
TASK_RUNNING = 1;
public static final int TASK_KILLING_VALUE
TASK_KILLING = 8;
NOTE: This should only be sent when the framework has the TASK_KILLING_STATE capability.
public static final int TASK_FINISHED_VALUE
TASK_FINISHED = 2;
TERMINAL: The task finished successfully.
public static final int TASK_FAILED_VALUE
TASK_FAILED = 3;
TERMINAL: The task failed to finish successfully.
public static final int TASK_KILLED_VALUE
TASK_KILLED = 4;
TERMINAL: The task was killed by the executor.
public static final int TASK_ERROR_VALUE
TASK_ERROR = 7;
TERMINAL: The task description contains an error.
public static final int TASK_LOST_VALUE
TASK_LOST = 5;
In Mesos 1.3, this will only be sent when the framework does NOT opt-in to the PARTITION_AWARE capability.
public static final int TASK_DROPPED_VALUE
TASK_DROPPED = 9;
The task failed to launch because of a transient error. The task's executor never started running. Unlike TASK_ERROR, the task description is valid -- attempting to launch the task again may be successful.
public static final int TASK_UNREACHABLE_VALUE
TASK_UNREACHABLE = 10;
The task was running on an agent that has lost contact with the master, typically due to a network failure or partition. The task may or may not still be running.
public static final int TASK_GONE_VALUE
TASK_GONE = 11;
The task is no longer running. This can occur if the agent has been terminated along with all of its tasks (e.g., the host that was running the agent was rebooted). It might also occur if the task was terminated due to an agent or containerizer error, or if the task was preempted by the QoS controller in an oversubscription scenario.
public static final int TASK_GONE_BY_OPERATOR_VALUE
TASK_GONE_BY_OPERATOR = 12;
The task was running on an agent that the master cannot contact; the operator has asserted that the agent has been shutdown, but this has not been directly confirmed by the master. If the operator is correct, the task is not running and this is a terminal state; if the operator is mistaken, the task may still be running and might return to RUNNING in the future.
public static final int TASK_UNKNOWN_VALUE
TASK_UNKNOWN = 13;
The master has no knowledge of the task. This is typically because either (a) the master never had knowledge of the task, or (b) the master forgot about the task because it garbage collected its metadata about the task. The task may or may not still be running.
public static Protos.TaskState[] values()
for (Protos.TaskState c : Protos.TaskState.values()) System.out.println(c);
public static Protos.TaskState valueOf(java.lang.String name)
name
- the name of the enum constant to be returned.java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is nullpublic final int getNumber()
public static Protos.TaskState valueOf(int value)
public staticinternalGetValueMap()
public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()
public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()
public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor()
public static Protos.TaskState valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)


'Jeopardy! The Greatest of All Time' premiering in January
Prime-time event set for January
by Lisa Respers France, CNN(CNN) - The three top winners in "Jeopardy!" history are set to compete against each other during a prime-time event on ABC in January.
It was announced Monday that "Jeopardy" alums Ken Jennings, Brad Rutter and James Holzhauer will vie for the title as top champ of the champs on the popular game show.
They will compete in a series of matches. The first competitor to win three matches will receive $1 million and the title of "Jeopardy! The Greatest of All Time."
The two other contestants will each receive $250,000.
Alex Trebek will host the special.
"Based on their previous performances, these three are already the 'greatest,' but you can't help wondering: Who is the best of the best?" Trebek said in a statement.
Jennings became a household name during his record 74-game winning streak -- the longest in 'Jeopardy!' history -- and his winnings totaled $3,370,700.
Rutter holds the title for the most money won by a contestant -- across any television game show -- raking in $4,688,436 in "Jeopardy!" prize money. He has never lost "Jeopardy!" to a human opponent.
Holzhauer is the record holder for all 15 of the top Single-Game Winnings records on the show. He won the 2019 Tournament of Champions and his innings total $2,712,216.
"Jeopardy! The Greatest of All Time" will air between Jan. 7 - Jan. 16 at 8 p.m. EST.
"Jeopardy! The Greatest of All Time" is being produced by Sony Pictures Television with Harry Friedman serving as executive producer.


This example populates location data using Akamai EdgeWorkers and EdgeScape.
Country
Region
City
Sales Region
Sales Region Population


Lorem ipsum and stuff
| Course | Age | Distance | Form | Forc | Horse | Go | Go % | Dist | Dist % | Cse | Cse % | Trainer | T 14dys | T D W % | T D £1 + - | T O/A Seas | T S W % | T S £1 + - | RTF % | T 5yr O/A | T Won | Ran | T W % | Plcd | T O/A Track | T T W % | T T £1 + - | T F Won | T F W % | T F £1 + - | Jockey | J 14dys | J D W % | J D £1 + - | J O/A Seas | J S W % | J S £1 + - | J 5yr O/A | J Won | Rode | J W % | J O/A Track | J T W % | J T £1 + - | J F Won | J F W % | J F £1 + - | Update | Total % |
|---|


Taifa Stars to attack from the word go
by Edo Kumwembe newsTunis. As the clock ticks down to the second Afcon qualifiers Group J clash between Libya and Tanzania’s Taifa Stars the message from the head coach is ‘attack’
Taifa Stars’ head coach Etienne Ndayiragije is looking to deploy four attack-minded players in the shape of Simon Msuva, Mbwana Samatta, Ditram Nchimbi and Farid Musa.
The attackers who the coach believes are versatile enough to provide options both in offensive and defensive are anchored in mid-field by Yassin Mzamiru and Salum Abubakar.
In offensive, the team is likely to play with two wide players Farid Musa and Msuva who will provide width as they look to supply twin strikers Nchimbi and Samatta who are the focal point of today’s attack.
The side is likely to line-up with: Juma Kaseja, Hassan Kessy, Erasto Nyoni, Kelvin Yondani, Salum Kimenya, Salum Abubakar, Yassin Muzamiru, Farid Musa, Simon Msuva, Ditram Nchimbi and Mbwana Samatta(C)
Salum Kimenya and Ditram Nchimbi did not start the game against Equatorial Guinea.
Advertisement
The coach has reiterated that they are not in the competition to add up numbers but to compete with the very best.
“We want to remain serious contenders for a place in the 2021 Afcon finals in Cameroon,” said Ndayiragije.
Libya is a tenacious side that loves to possess the ball and this could work for stars especially on counter attacks.
The game kicks off at 10pm at the Mustapha Ben Jannet Stadium in Tunis.
Taifa stars kicked off the campaign with a win on Friday November 15, at the National Stadium in Dar es Salaam with a 2-1 victory against Equatorial Guinea.


--- layout: post permalink: fawnandforest.html Tags: Array NameOfCoupon: Fawn and Forest Cash Back Summary: See our FAWN AND FOREST Coupon Code, FAWN AND FOREST Rebate, FAWN AND FOREST Promo Code, FAWN AND FOREST Discount, FAWN AND FOREST Coupon Cash Back Rebate here. MetaKeywords: Fawn and Forest Coupon Code, Fawn and Forest Rebate, Fawn and Forest Promo Code, Fawn and Forest Cash Back Rebate, Fawn and Forest Discount, Fawn and Forest Coupon Image: images/22874.jpg LinkURL: http://www.shareasale.com/r.cfm?b=180946&u=412002&m=22874 affiliate_url_link: http://www.icouponblog.com/jane.php?id=86 thesis_readmore: See the Fawn and Forest Coupon thesis_thumb: http://www.icouponblog.com/tn.php?merchantURL=WWW.FAWNANDFOREST.COM / WWW.HOUSEANDHOLD.COM / WWW.GOODNIGHTGREEN.COM Title: Save 3.5% - Fawn and Forest Coupon Code for WWW.FAWNANDFOREST.COM / WWW.HOUSEANDHOLD.COM / WWW.GOODNIGHTGREEN.COM. Fawn and Forest Rebate & Discount thesis_description: Our Fawn and Forest Discount Coupon Code for WWW.FAWNANDFOREST.COM / WWW.HOUSEANDHOLD.COM / WWW.GOODNIGHTGREEN.COM. We have the best Fawn and Forest Rebate anywhere. thesis_keywords: Fawn and Forest, Fawn and Forest Coupon Code, Fawn and Forest Discount, Fawn and Forest Rebate product_name: Fawn and Forest hop_url: http://www.icouponblog.com/hop.php?id=86 ---
Nothing is too much for mommy's little angel. Your baby deserves the best of everything life has to offer. Fawn&Forest keeps this in mind when they provide you with the finest collections in children's goods. With a selection of over 3,000 products and over 250 brand names, you won't have to look too far to envelop your baby in love and warmth.
From furniture for your little one's room to clothing, toys and child-friendly decor, Fawn&Forest will quickly become your favorite shopping resource. You'll love their eco-friendly choices that not only allow you to choose with ease, but they give back to the environment. Fawn&Forest's selections are functional yet chic and in vogue. You will never have to compromise your own sense of self and style in purchasing goods for your baby. The only thing you'll love more than the treasures you purchase for your own little treasure is the money you'll save with the Fawn&Forest Discount offered above. Don't hesitate to click on the Fawn&Forest Coupon to bring your baby closer to a world of care and well wishes.
All eyes will turn to your baby. Smiles will be cast in your child's direction. The inquisitive glances on their faces will wonder where you got those adorable outfits and sophisticated furniture. And you'll smile to yourself, knowing it was Fawn&Forest. And the Fawn&Forest Rebate offered above.


{% block title %} {% endblock %}
{% load staticfiles %}
DEPARTMENT OF CHEMISTRY
INDIAN INSTITUTE OF TECHNOLOGY PATNA
DEPARTMENT OF CHEMISTRY
INDIAN INSTITUTE OF TECHNOLOGY PATNA
Home
(current)
People
Faculty
Staff
UG Students
M.Sc. Students
Ph.D Students
Ph.D Alumni
Academics
B.Tech.
M.Sc.
Ph.D.
Research
Areas
Projects
Admissions
Undergraduate
Postgraduate
Doctoral
FAQ
Facilities
(current)
Events
(current)
Directory
(current)
Search
Search
Search
Home
(current)
People
Faculty
Staff
UG Students
M.Sc. Students
Ph.D Students
Ph.D Alumni
Academics
B.Tech.
M.Sc.
Ph.D.
Research
Areas
Projects
Admissions
Undergraduate
Postgraduate
Doctoral
FAQ
Facilities
(current)
Events
(current)
Directory
(current)
{% block content %} {% endblock %}
×
Search Department of Chemistry IIT Patna


Lufthansa cancels 700 flights on first day of cabin crew walkout
FRANKFURT/BERLIN: Lufthansa flight attendants went on a 48-hour strike over pay and pensions on Thursday, forcing the biggest German airline to cancel hundreds of flights.
Lufthansa on Wednesday announced it expected to cancel a total of 1,300 connections on Thursday and Friday, with 180,000 passengers affected. That amounts to about one in five of Lufthansa's planned 6,000 flights over the two-day period.
The departure table on Frankfurt airport's website showed scores of canceled flights to European destinations and on transatlantic routes.
A Lufthansa spokesman confirmed about 400 flights would be canceled in Frankfurt alone on Thursday, with an additional 250 in Munich and some more at smaller airports, bringing the total number to 700 on Thursday.
"It's quiet in the terminals," a spokeswoman for Frankfurt airport said, adding that many passengers had rebooked onto different flights and not shown up at the airport.
Flight attendants' union UFO has left open the possibility of continuing the strikes beyond Friday, potentially escalating the dispute.
The airline and the union have been at odds for months over the union's legal status. Lufthansa says the union leadership team that took office earlier this year was not elected in a way that met legal requirements - a stance that UFO contests.
Lufthansa CEO Carsten Spohr on Thursday announced new talks with unions including UFO.
Lufthansa, which faces tough competition from Ryanair and easyJet, on Thursday also announced plans to cut costs at its Austrian Airlines, Brussels Airlines and Lufthansa Cargo units to revive profits.
(This story corrects number of canceled flights on Thursday to 700, not 650, in headline with details in paragraph 4)
(Reporting by Ilona Wissenbach in Frankfurt and Klaus Lauer in Berlin; writing by Thomas Seythal, editing by Thomas Escritt)