For those curious about the current status of the Corinna OOP project for Perl , Paul Evans is working on it in the feature-class branch . Today I decided to see how much of my Cache::LRU example I could get working.
Under the full proposal, Cache::LRU
looks like this (it’s unclear if the
:handles
modifier will be implemented for the MVP):
class Cache::LRU {
use Hash::Ordered;
field $cache :handles(exists) { Hash::Ordered->new };
field $max_size :param :reader { 20 };
method set ( $key, $value ) {
if ( $cache->exists($key) ) {
$cache->delete($key);
}
elsif ( $cache->keys >= $max_size ) {
$cache->shift;
}
$cache->set( $key, $value ); # add to front
}
method get ($key) {
if ( $cache->exists($key) ) {
my $value = $cache->get($key);
$self->set( $key, $value ); # add to front
return $value;
}
return;
}
}
This is what I currently have working:
class Cache::LRU {
use Hash::Ordered;
# Delete arguments to constructor or else they'll cause a fatal
# error when new() is called. When :param is added, this will
# no longer be needed.
field $max_size; ADJUST { $max_size = delete($_[0]->{max_size}) // 20 }
field $cache; ADJUST { $cache = Hash::Ordered->new };
method max_size { $max_size }
method set( $key, $value ) {
if ( $cache->exists($key) ) {
$cache->delete($key);
}
elsif ( $self->num_elements >= $max_size ) {
$cache->shift;
}
$cache->set( $key, $value ); # add to front
}
method get($key) {
if ( $cache->exists($key) ) {
my $value = $cache->get($key);
$cache->set( $key, $value ); # add to front
return $value;
}
return;
}
method num_elements() {
return scalar $cache->keys;
}
method exists($key) {
return $cache->exists($key);
}
}
A few things to note:
- Default initializer blocks are not yet implemented
- All unprocessed arguments in the constructor are fatal (delete them)
- Everything else works quite nicely
And here are the tests for it:
my $cache = Cache::LRU->new;
is $cache->max_size, 20, 'Value of $max_size set by ADJUST';
is $cache->num_elements, 0, '... and our cache starts out empty';
ok !defined $cache->get('foo'),
'We should not be able to fetch values we have not defined';
ok !$cache->exists('foo'), '... and our exists() method should confirm this';
ok $cache->set( foo => 42 ), 'We should be able to set cache values';
ok $cache->exists('foo'),
'... and our exists() method should show the new key exists';
is $cache->get('foo'), 42, '... and get the value back';
is $cache->num_elements, 1, '... and we should have one element in our cache';
$cache = Cache::LRU->new( max_size => 2 );
is $cache->max_size, 2,
'We should be able to set the max_size with a constructor argument';
ok !defined $cache->get('foo'),
'We should not be able to fetch values we have not defined';
ok $cache->set( foo => 42 ), 'We should be able to set cache values';
is $cache->get('foo'), 42, '... and get the value back';
ok $cache->set( bar => 'asdf' ), 'We can set a different key';
is $cache->get('bar'), 'asdf', '... and get back a different value';
is $cache->get('foo'), 42, '... and get the value back';
is $cache->num_elements, $cache->max_size,
'... and we see that our cache is now full';
ok $cache->set( new_element => 3 ), 'We can set a new item in our cache';
is $cache->num_elements, $cache->max_size,
'... and we see that our cache is still full';
ok !$cache->exists('foo'),
'... and older elements in our cache should be ejected';
The tests revealed an “off by one” error in my original code (caches would
contain up to max_size + 1
elements), along with a syntax error (both now
fixed), but as it stands, I think everyone should be pleased with the progress
Paul is making. Exciting times for Perl!


Notice of Privacy Practices
•
Page 3
In these cases, you have
both the right and choice
to tell us to:
•
Share information with your family, close friends, or others involved in your care
•
Share information in a disaster relief situation
•
Include your information in a hospital directory
If you are not able to tell us your preference, for example if you are unconscious,
we may go ahead and share your information if we believe it is in your best interest.
We may also share your information when needed to lessen a serious and imminent
threat to health or safety.
In these cases we
never
share your information
unless you give us
written permission:
•
Marketing purposes
•
Sale of your information
•
Most sharing of psychotherapy notes
In the case of fundraising:
•
We may contact you for fundraising efforts, but you can tell us not to
contact you again.
For certain health information, you can tell us your choices about what
we share.
If you have a clear preference for how we share your information in the
situations described below, talk to us. Tell us what you want us to do, and we will follow
your instructions.
Your
Choices
Treat you
•
We can use your health information and
share it with other professionals who are
treating you.
Example:
A doctor treating you for an
injury asks another doctor about your
overall health condition.
Run our
organization
•
We can use and share your health
information to run our practice, improve
your care, and contact you when necessary.
Example:
We use health information
about you to manage your treatment and
services.
Bill for your
services
•
We can use and share your health
information to bill and get payment from
health plans or other entities.
Example:
We give information about you
to your health insurance plan so it will pay
for your services.
How do we typically use or share your health information?
We typically use or share your health information in the following ways.
Our
Uses and
Disclosures
continued on next page


EQN
Section: User Commands (1)Updated: 05 October 2001
Index Return to Main Contents
NAME
eqn - format equations for troffSYNOPSIS
eqn [ -rvCNR ] [ -d xy ] [ -T name ] [ -M dir ] [ -f F ] [ -s n ] [ -p n ] [ -m n ] [ files... ]
It is possible to have whitespace between a command line option and its parameter.
DESCRIPTION
This manual page describes the GNU version of eqn, which is part of the groff document formatting system. eqn compiles descriptions of equations embedded within troff input files into commands that are understood by troff. Normally, it should be invoked using the -e option of groff. The syntax is quite compatible with Unix eqn. The output of GNU eqn cannot be processed with Unix troff; it must be processed with GNU troff. If no files are given on the command line, the standard input will be read. A filename of - will cause the standard input to be read.eqn searches for the file eqnrc in the directories given with the -M option first, then in /usr/lib64/groff/site-tmac, /usr/share/groff/site-tmac, and finally in the standard macro directory /usr/share/groff/<IP_ADDRESS>/tmac. If it exists, eqn will process it before the other input files. The -R option prevents this.
GNU eqn does not provide the functionality of neqn: it does not support low-resolution, typewriter-like devices (although it may work adequately for very simple input).
OPTIONS
- -dxy
- Specify delimiters x and y for the left and right end, respectively, of in-line equations. Any delim statements in the source file overrides this.
- -C
- Recognize .EQ and .EN even when followed by a character other than space or newline.
- -N
- Don't allow newlines within delimiters. This option allows eqn to recover better from missing closing delimiters.
- -v
- Print the version number.
- -r
- Only one size reduction.
- -mn
- The minimum point-size is n. eqn will not reduce the size of subscripts or superscripts to a smaller size than n.
- -Tname
- The output is for device name. The only effect of this is to define a macro name with a value of 1. Typically eqnrc will use this to provide definitions appropriate for the output device. The default output device is ps.
- -Mdir
- Search dir for eqnrc before the default directories.
- -R
- Don't load eqnrc.
- -fF
- This is equivalent to a gfont F command.
- -sn
- This is equivalent to a gsize n command. This option is deprecated. eqn will normally set equations at whatever the current point size is when the equation is encountered.
- -pn
- This says that subscripts and superscripts should be n points smaller than the surrounding text. This option is deprecated. Normally eqn makes sets subscripts and superscripts at 70% of the size of the surrounding text.
USAGE
Only the differences between GNU eqn and Unix eqn are described here.Most of the new features of GNU eqn are based on TeX. There are some references to the differences between TeX and GNU eqn below; these may safely be ignored if you do not know TeX.
Automatic spacing
eqn gives each component of an equation a type, and adjusts the spacing between components using that type. Possible types are:
- ordinary
- an ordinary character such as 1 or x;
- operator
- a large operator such as Sigma;
- binary
- a binary operator such as +;
- relation
- a relation such as =;
- opening
- a opening bracket such as (;
- closing
- a closing bracket such as );
- punctuation
- a punctuation character such as ,;
- inner
- a subformula contained within brackets;
- suppress
- spacing that suppresses automatic spacing adjustment.
Components of an equation get a type in one of two ways.
- type t e
-
This yields an equation component that contains
e
but that has type
t,
where
t
is one of the types mentioned above.
For example,
times
is defined as
-
- type "binary" \(mu
-
- The name of the type doesn't have to be quoted, but quoting protects from macro expansion.
- chartype t text
-
Unquoted groups of characters are split up into individual characters,
and the type of each character is looked up;
this changes the type that is stored for each character;
it says that the characters in
text
from now on have type
t.
For example,
-
- chartype "punctuation" .,;:
-
- would make the characters .,;: have type punctuation whenever they subsequently appeared in an equation. The type t can also be letter or digit; in these cases chartype changes the font type of the characters. See the Fonts subsection.
New primitives
- e1 smallover e2
- This is similar to over; smallover reduces the size of e1 and e2; it also puts less vertical space between e1 or e2 and the fraction bar. The over primitive corresponds to the TeX \over primitive in display styles; smallover corresponds to \over in non-display styles.
- vcenter e
-
This vertically centers
e
about the math axis.
The math axis is the vertical position about which characters
such as + and - are centered; also it is the vertical position
used for the bar of fractions.
For example,
sum
is defined as
-
- { type "operator" vcenter size +5 \(*S }
-
- e1 accent e2
-
This sets
e2
as an accent over
e1.
e2
is assumed to be at the correct height for a lowercase letter;
e2
will be moved down according if
e1
is taller or shorter than a lowercase letter.
For example,
hat
is defined as
-
- accent { "^" }
-
- dotdot, dot, tilde, vec and dyad are also defined using the accent primitive.
- e1 uaccent e2
- This sets e2 as an accent under e1. e2 is assumed to be at the correct height for a character without a descender; e2 will be moved down if e1 has a descender. utilde is pre-defined using uaccent as a tilde accent below the baseline.
- split stexts
-
This has the same effect as simply
-
- text
-
- but text is not subject to macro expansion because it is quoted; text will be split up and the spacing between individual characters will be adjusted.
- nosplit text
-
This has the same effect as
-
- stexts
-
- but because text is not quoted it will be subject to macro expansion; text will not be split up and the spacing between individual characters will not be adjusted.
- e opprime
- This is a variant of prime that acts as an operator on e. It produces a different result from prime in a case such as A opprime sub 1: with opprime the 1 will be tucked under the prime as a subscript to the A (as is conventional in mathematical typesetting), whereas with prime the 1 will be a subscript to the prime character. The precedence of opprime is the same as that of bar and under, which is higher than that of everything except accent and uaccent. In unquoted text a ' that is not the first character will be treated like opprime.
- special text e
-
This constructs a new object from
e
using a
troff(1)
macro named
text.
When the macro is called,
the string
0s
will contain the output for
e,
and the number registers
0w,
0h,
0d,
0skern
and
0skew
will contain the width, height, depth, subscript kern, and skew of
e.
(The
subscript kern
of an object says how much a subscript on that object should be tucked in;
the
skew
of an object says how far to the right of the center of the object an
accent over the object should be placed.)
The macro must modify
0s
so that it will output the desired result with its origin at the current
point, and increase the current horizontal position by the width
of the object.
The number registers must also be modified so that they correspond to the
result.
-
For example, suppose you wanted a construct that `cancels' an expression by drawing a diagonal line through it.
-
.EQ define cancel 'special Ca' .EN .de Ca .ds 0s \Z'\\*(0s'\v'\\n(0du'\D'l \\n(0wu -\\n(0hu-\\n(0du'\v'\\n(0hu' ..
Then you could cancel an expression e with cancel { e }
Here's a more complicated construct that draws a box round an expression:
-
.EQ define box 'special Bx' .EN .de Bx .ds 0s \Z'\h'1n'\\*(0s'\ \Z'\v'\\n(0du+1n'\D'l \\n(0wu+2n 0'\D'l 0 -\\n(0hu-\\n(0du-2n'\ \D'l -\\n(0wu-2n 0'\D'l 0 \\n(0hu+\\n(0du+2n''\h'\\n(0wu+2n' .nr 0w +2n .nr 0d +1n .nr 0h +1n ..
-
-
Customization
The appearance of equations is controlled by a large number of parameters. These can be set using the set command.- set p n
-
This sets parameter
p
to value
n ;
n
is an integer.
For example,
-
- set x_height 45
-
-
says that
eqn
should assume an x height of 0.45 ems.
-
Possible parameters are as follows. Values are in units of hundredths of an em unless otherwise stated. These descriptions are intended to be expository rather than definitive.
- minimum_size
- eqn will not set anything at a smaller point-size than this. The value is in points.
- fat_offset
- The fat primitive emboldens an equation by overprinting two copies of the equation horizontally offset by this amount.
- over_hang
- A fraction bar will be longer by twice this amount than the maximum of the widths of the numerator and denominator; in other words, it will overhang the numerator and denominator by at least this amount.
- accent_width
- When bar or under is applied to a single character, the line will be this long. Normally, bar or under produces a line whose length is the width of the object to which it applies; in the case of a single character, this tends to produce a line that looks too long.
- delimiter_factor
- Extensible delimiters produced with the left and right primitives will have a combined height and depth of at least this many thousandths of twice the maximum amount by which the sub-equation that the delimiters enclose extends away from the axis.
- delimiter_shortfall
- Extensible delimiters produced with the left and right primitives will have a combined height and depth not less than the difference of twice the maximum amount by which the sub-equation that the delimiters enclose extends away from the axis and this amount.
- null_delimiter_space
- This much horizontal space is inserted on each side of a fraction.
- script_space
- The width of subscripts and superscripts is increased by this amount.
- thin_space
- This amount of space is automatically inserted after punctuation characters.
- medium_space
- This amount of space is automatically inserted on either side of binary operators.
- thick_space
- This amount of space is automatically inserted on either side of relations.
- x_height
- The height of lowercase letters without ascenders such as x.
- axis_height
- The height above the baseline of the center of characters such as + and -. It is important that this value is correct for the font you are using.
- default_rule_thickness
- This should set to the thickness of the \(ru character, or the thickness of horizontal lines produced with the \D escape sequence.
- num1
- The over command will shift up the numerator by at least this amount.
- num2
- The smallover command will shift up the numerator by at least this amount.
- denom1
- The over command will shift down the denominator by at least this amount.
- denom2
- The smallover command will shift down the denominator by at least this amount.
- sup1
- Normally superscripts will be shifted up by at least this amount.
- sup2
- Superscripts within superscripts or upper limits or numerators of smallover fractions will be shifted up by at least this amount. This is usually less than sup1.
- sup3
- Superscripts within denominators or square roots or subscripts or lower limits will be shifted up by at least this amount. This is usually less than sup2.
- sub1
- Subscripts will normally be shifted down by at least this amount.
- sub2
- When there is both a subscript and a superscript, the subscript will be shifted down by at least this amount.
- sup_drop
- The baseline of a superscript will be no more than this much amount below the top of the object on which the superscript is set.
- sub_drop
- The baseline of a subscript will be at least this much below the bottom of the object on which the subscript is set.
- big_op_spacing1
- The baseline of an upper limit will be at least this much above the top of the object on which the limit is set.
- big_op_spacing2
- The baseline of a lower limit will be at least this much below the bottom of the object on which the limit is set.
- big_op_spacing3
- The bottom of an upper limit will be at least this much above the top of the object on which the limit is set.
- big_op_spacing4
- The top of a lower limit will be at least this much below the bottom of the object on which the limit is set.
- big_op_spacing5
- This much vertical space will be added above and below limits.
- baseline_sep
- The baselines of the rows in a pile or matrix will normally be this far apart. In most cases this should be equal to the sum of num1 and denom1.
- shift_down
- The midpoint between the top baseline and the bottom baseline in a matrix or pile will be shifted down by this much from the axis. In most cases this should be equal to axis_height.
- column_sep
- This much space will be added between columns in a matrix.
- matrix_side_sep
- This much space will be added at each side of a matrix.
- draw_lines
- If this is non-zero, lines will be drawn using the \D escape sequence, rather than with the \l escape sequence and the \(ru character.
- body_height
- The amount by which the height of the equation exceeds this will be added as extra space before the line containing the equation (using \x.) The default value is 85.
- body_depth
- The amount by which the depth of the equation exceeds this will be added as extra space after the line containing the equation (using \x.) The default value is 35.
- nroff
- If this is non-zero, then ndefine will behave like define and tdefine will be ignored, otherwise tdefine will behave like define and ndefine will be ignored. The default value is 0 (This is typically changed to 1 by the eqnrc file for the ascii, latin1, utf8, and cp1047 devices.)
A more precise description of the role of many of these parameters can be found in Appendix H of The TeXbook.
-
Macros
Macros can take arguments. In a macro body, $n where n is between 1 and 9, will be replaced by the n-th argument if the macro is called with arguments; if there are fewer than n arguments, it will be replaced by nothing. A word containing a left parenthesis where the part of the word before the left parenthesis has been defined using the define command will be recognized as a macro call with arguments; characters following the left parenthesis up to a matching right parenthesis will be treated as comma-separated arguments; commas inside nested parentheses do not terminate an argument.- sdefine name X anything X
- This is like the define command, but name will not be recognized if called with arguments.
- include sfiles
- Include the contents of file. Lines of file beginning with .EQ or .EN will be ignored.
- ifdef name X anything X
- If name has been defined by define (or has been automatically defined because name is the output device) process anything; otherwise ignore anything. X can be any character not appearing in anything.
Fonts
eqn normally uses at least two fonts to set an equation: an italic font for letters, and a roman font for everything else. The existing gfont command changes the font that is used as the italic font. By default this is I. The font that is used as the roman font can be changed using the new grfont command.- grfont f
- Set the roman font to f.
The italic primitive uses the current italic font set by gfont; the roman primitive uses the current roman font set by grfont. There is also a new gbfont command, which changes the font used by the bold primitive. If you only use the roman, italic and bold primitives to changes fonts within an equation, you can change all the fonts used by your equations just by using gfont, grfont and gbfont commands.
You can control which characters are treated as letters (and therefore set in italics) by using the chartype command described above. A type of letter will cause a character to be set in italic type. A type of digit will cause a character to be set in roman type.
FILES
u+2n- /usr/share/groff/<IP_ADDRESS>/tmac/eqnrc Initialization file.
BUGS
Inline equations will be set at the point size that is current at the beginning of the input line.SEE ALSO
groff(1), troff(1), groff_font(5), The TeXbook
Index
This document was created by man2html, using the manual pages.
Time: 05:29:03 GMT, December 24, 2015


WARNING! This review contains SPOILERS. You should probably not read it unless you have already seen the film. You have been warned.
In preparation for today's debut of Star Wars: The Phantom Menace, I re-screened the original trilogy on video. It's amazing really how bad the first three movies really are. Particularly the original Star Wars. The film is clearly aimed at a juvenile audience and the dialog and acting show it. ("But I was going into Tashi Station to pick up some power converters"). The characters are mere props, the plot cliched and transparent. The second two are much better, particularly The Empire Strikes Back, with better acting and a bit more mature themes. But the target audience is still clearly far below the age of majority.
Those screenings brought my nostalgia-tinged rememberences of the first trilogy back down to earth. That, along with the generally poor reviews given to it by legitimate critics, had me braced for a letdown when I went to see The Phantom Menace. Perhaps my low expectations were one reason I was so pleasantly surprised by the movie. High art it was not, but it was good entertainment. And beyond that it was a lot of fun. Clearly much of the disatisfaction with this movie stems from the letdown that is almost inevitable after the mega-hype it has received. True, nobody was cheering and whooping, but then again nobody did that when I went to see the special edition versions of the original trilogy either.
The good parts are fairly easy to identify: lots of action and solid special effects. Like the original Star Wars, this movie is somewhat a throwback to the old westerns. There are the Good Guys, the Bad Guys, the Damsel in Distress, the Dispute over the Ranch, the Gunfighters, etc. This movie, however, was released in a far different era than the original Star Wars. Today political correctness rules the day and post-modernism rejects all objective truth, especially old fashioned notions of good and evil. Almost all of the pricipal characters were white, and with the exception of Queen Amidala, male. I don't suggest that this is a good thing in and of itself. But it interesting to see George Lucas resisting the urge to create a PC multi-ethnic cast. (Indeed, the Jar Jar Binks character reminds me of an old blackface comic, something clearly out of step with modern sensibilities). There are numerous minority characters in supporting roles, and it looks like Lucas hired them because they were right for the part, not to fill some quota. As for good and evil, the line separating them is razor sharp. The good guys are very good, the bad guys are very bad.
Of course the critics hate this. The New Yorker called the movie "crap". Among its supposed sins was having all the big players be male, and stereotyping the female queen as a damsel in distress. (Of course, later in the same review the New Yorker said this would be a boys' film since girls know junk when they see it. So much for stereotyping). Incidentally, I think the New Yorker is wrong about Amidala, and that is not the only review I've read that makes me think the critic was watching a different movie from me.
The Phantom Menace is almost unrelenting action and/or battle. This endears it to me far more than its predecessors, each of which had long, boring stretches where the characters frolicked with Ewoks in the woods and such. I just love a good shoot-em-up. Good space battles are so hard to find these days. With the Prime Directive and assorted BS, it's a rare Star Trek episode when the Enterprise gets to fire up its phasers. No problem with that stuff here. The characters in this movie walk through life with their guns and light sabres half drawn. It's enough to give Handgun Control, Inc. a heart attack. Long, long ago there were no trigger locks on those blasters. People had weapons and they were meant to be used.  I loved every minute of it.
The special effects were cool, but hardly upped the ante like the original Star Wars did. In fairness, special effects have gotten so good these days that it's hard to tell they are effects. After Terminator 2, how much better can they get? We do get to see plenty of cool equipment and spaceships though. And a number of interesting planetary vistas, though I got the feeling Lucas threw these in just to impress. Most of the aliens had that same cartoon like quality from the original series, but this was doubtlessly intentional.
(WARNING: Lots of SPOLIERS start here)
Two particular highlights were the light sabre battles and the pod race. I though the sabre battles were far superior to the original trilogy and Darth Maul's double bladed sabre was super-cool. The pod race has been beaten to death elsewhere, but I thought I would second the almost universal praise it has been given.
Many of the criticisms of the movie leave me scratching my head. For example, Salon Magazine complains that it is never made clear why the Trade Federation would want to embargo a backwater planet like Naboo. Well, could it be that Darth Sidious/Palpatine convinced them to do it in order to engineer his ascension to the position of Chancellor? If he can shoot lightning bolts out of his fingers he can surely use the Jedi Mind Trick on the two dolts running the Federation. There are some unanswered questions that might call for a pre-prequel - such as where Darths Sidious and Maul got their powers and ambitions from - but not nearly so many as this critic complained about.
On the other hand, there were a number of legitimately annoying elements to the movie, most of them only of interest to Star Wars geeks. Here are several in no particular order:
-- The movie suffers from the same bad dialog and flat characters as the first trilogy. All of the major actors in this film have had much better roles in other productions. Again, the plot is transparent and the film mostly predicatable.
-- Qui-Gon Jinn is just a little too close to Qui-Chang Caine for my taste.
-- The immaculate conception of Anakin Skywalker and this mysterious prophecy are pure fantasy elements that don't belong. Plus, if Anakin really has no father, Uncle Owen and Aunt Beru can't really be related to Luke by blood. Indeed the Star Wars web site confirms they adopted him in cooperation with Obi-Wan in order to hide him from Vader. If so, why are Uncle Owen and Obi-Wan on such bad terms? It could have been a ruse or some falling out, but an inconsistency in the plot is more likely.
-- Speaking of Anakin, the piloting abilities of someone that young are simply not believable, Force or no Force.
-- Why is Qui-Gon so interested in this prophecy and the restoration of "balance"? What balance? It looks like the good guys are in charge. Balance could only mean more bad guys. Maybe we'll find out more about this later.
-- Obi-Wan meets and spends time with R2D2 in Phantom Menace. Why didn't he recognize R2 on Tatooine in Star Wars then? He claims he doesn't remember owning a droid, which might be strictly true, but something tells me he should have reacted differently.
-- How come no member of the Jedi Council can sense that Palpatine is a bad guy? The Force seemed to let them down.
-- How can an apprentice Jedi like Darth Maul be so effective against both Qui-Gon and Obi-Won? They should have easily shredded him. Maybe the dark side is more powerful after all.
-- Too many scenes lifted directly from the first trilogy. "I've got a bad feeling about this", the medal scene at the end, the light sabre fight around the huge shaft, Obi-Wan's last moments with a dying Qui-Gon, the canyon in the pod race. And did we really need to go back to Tatooine again?
-- Samuel L. Jackson had little more than a cameo appearance. This was very disappointing. I hope he is more prominent in the next films. I seem to think he should be a bad guy somehow. Maybe he's turn out to be evil in the next film. He'd be a lot more fun that way. I miss his pony tail from Jackie Brown too.
  Though he looked more clown like than menacing, I still thought he had great potential as a bad guy. I also wonder how they Jedi Council was able to determine that this person was one of the mysterious Sith.
-- Speaking of the Sith, it was interesting to see this taken back from the spinoff novels, but we learn little about them in this film. This is intimately bound up with the origins of Darth Sidious, which is one of the things we learned nothing about.
-- Darth emerges as a type of title or honorific. One presumes it means something like "Lord" as that is frequently used as an alternate. But IIRC in Star Wars Obi-Wan addresses Vader as "Darth". It seems unlikely to me that Obi-Wan would address Vader with the equivalent of "my Lord".
-- Jar Jar Binks has been rightly criticized as hyper-annoying. He speaks with a thick Carribean accent such that you can't understand half of what he's saying (assuming he's even saying English words in the first place). He's supposedly there for comic relief, but I think he's really there to keep the seven year olds entertained. Since I'm not seven old Jar Jar made me want to punch George Lucas in the mouth.
-- In Empire Obi-Wan says that Yoda trained him. However, it appears in this movie that he was trained by Qui-Gon. Obi-Wan also laments in Jedi that he took it upon himself to train Anakin in place of Yoda. However, in this film Obi-Wan trains him with the (admittedly reluctant) blessing of Yoda. It does not appear that Yoda is in charge of training young Jedis.
-- Anakin is a child and we are told he is too old to be considered for Jedi training. It also appears one is not fully a Jedi knight until early adulthood. This makes about a twenty year training regiment. But Luke was able to get his Jedi training in a matter of weeks.
-- To travel to the Naboo from the underwater city they supposedly go through the "core" of the planet, but it looks like they do little but pass through the oceans to me.
-- The movie was about 10-15 minutes too long.
Lots of nitpicks aside, I had a fun time watching this. When the opening weekend madness passes, I will definitely be seeing it again at least once. Until Episode II, may the Force be with you.
-- Aaron M. Renn<EMAIL_ADDRESS>http://www.urbanophile.com/arenn/
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


So You Want to Talk?
Hello,
I assume you are here, because you are trying to reach out to me with an exciting opportunity. This is the right place to get in touch!
Before we start, I would like to encourage you to learn more about me and check out my professional development on my LinkedIn or XING.
I am generally interested to hear about new opportunities, but since I am quite busy at work, my time for a phone call is limited. I decided instead to help you further by writing a few things about myself, and what I am looking for. This can help you rule my profile out, if the opportunity does not meet my criteria. On the other hand, if it does, just reach me again, and we’ll talk.
Much about me you already know. I am a professional Java developer with several years of experience as a backend developer. I usually learn about new technologies quickly, which is how I became a full-stack developer. I’ve recently expanded my horizons from a pure backend perspective to mobile on one side, and DevOps on the other. I am also currently working on strengthening my project management skills as well.
My real passion however, has always been working with data and extracting knowledge out of it. In one way or another, I have strived to find opportunities during my career, where my interest for the science of taming data would be encouraged and challenged with interesting problems. Though I have been fortunate enough to have worked on features and systems where this was mission-critical, I have had to pursue understaning the formal principles of data science mostly on my own. Through self-learning and experimentation, I have acquired substantial knowledge and experience over the past couple of years, but I believe that the way ahead is still long and full of exciting problems to solve. Therefore, I am open to hear about any opportunity, which would help me get to the next level in my mission of becoming a data science engineer.
What I can offer
I am a voracious learner and a passionate initiator. I love brainstorming ideas, building things, questioning how existing things are built, and finding ways to make them work better. When I am passionate about the things I work on, everyone around can feel it in a positive way. I try to inspire, motivate, and elate the people I work with. If laughter is an undesired thing in your company, you’d rather not bother calling.
Of course, like with most passionate individials, my biggest strength is also my biggest weakness. With every project, there comes a stage when I feel the need to target my passion onto a new feature or project. Otherwise, my energy subsides. Throughout the years, I have managed to find a balance between my passions and my duties as a professional, yet, since my passion is what drives me forward as an individual, it is important to get this straight from the beginning.
Where your opportunity comes into place
Ideally, your opportunity offers enough freedom and autonomy over projects. I’d love to be able to use my software architecture skills and knowledge. As I already mentioned, I generally prefer working on new things, picking up the bare idea, and turning it into a working product.
Second, I hope that projects have to do with data, and making your way around them. I usually avoid anything that has to do purely with online analytics and ads though. I am rather looking for projects that have measurable, physical impact onto the world we all live in (passion, heh).
Last, but not least, I am looking for a flexible working culture. Nothing stiff, as in being in the office every day, participating in a hundred bureaucratic meetings, just to keep protocol. Neither, so free that you can’t get to meet a real human being for months. Just right in the middle. The possibility for direct communication in every direction, as well as roughly 25-30% remote working/home office is the ideal mix that I am looking for. I highly believe in trusting individuals by giving them their freedom over time and place. Anything else is just an excuse for a working process that cries for some disruption. If you disagree with me, I encourage you to have a look at this TED Talk.


12-lead imbalanced beat classification using time series resnet
Do, E.,
Boynton, J. W.,
Lee, B. S.,
and Lustgarten, D.
This paper reports the performance study of classifying 12-lead ECG beat segments in the face of severe imbalance in the class sizes, which is typical of ECG data.
The efficacy of data augmentation for class size balancing to improve the classification accuracy is well known.
In the ECG domain, however, it has not been overlooked or handled inadequately.
We propose an amplitude-alteration approach to add ECG heartbeats selectively as needed in individual ECG classes while not disrupting the timeline of the ECG signals.
In addition, augmentations of training dataset and test dataset receive separate attentions, and four cases of data augmentation are considered depending on whether each dataset is augmented or not.
The effects of the augmentation scheme was evaluated using ResNet, the deep learning technique reputed for its remarkable accuracy through unique skipping connections between layers; specifically, a time series version of ResNet was used.
The results confirmed the key benefit of class-balancing the training dataset through the proposed data augmentation scheme and, additionally, showed some extra benefit of augmenting the test dataset through “time-test augmentation”.
Further, we adopted the class activation map (CAM) to identify heat map signatures that would explain ECG beat classes.
The results demonstrated that the CAM could be an effective visual aid to classifying ECG beats, especially with the proposed data augmentation scheme in place.
In this paper the augmentation scheme, the associated experiments, and their results are discussed concretely.


You can manipulate with classes using the following utils
You can generate a class from declarative description. Use autocomplete to check all the abilities.
You can get all classes with some declarative condition. Use autocomplete to check all the abilities.
You can edit existing classes with a handler returining a declarative description. Use autocomplete to check all the abilities.
You can remove all classes with some declarative condition. Use autocomplete to check all the abilities.
You can create, get, edit and remove constructors of your classes with declarative descriptions and conditions.
You can create, get, edit and remove methods of your classes with declarative descriptions and conditions.
You can create, get, edit and remove properties of your classes with declarative descriptions and conditions.
You can create, get, edit and remove accessors of your classes with declarative descriptions and conditions.
You can create, get, edit and remove decorators of your classes with declarative descriptions and conditions.


Your firstname is required.
Your lastname is required.
Your Date of Birth is required or incorrect. Format: dd-mm-YYYY
Your gender is required.
Your age category is required.
Your Email is required.
Your Password is missing or invalid.


High-flying Bonnie ranks among England's best young gymnasts
A Bispham girl has ranked among the top young gymnasts in England.
by Wes HolmesBonnie Fisher, nine, of All Hallows Road, took home the bronze trophy at the 2019 English Championships 2019 in Sheffield on Sunday.
The Layton Primary School pupil took up cheerleading at the age of five, and started gymnastics two years later.
She starts every day with a full work-out in her bedroom at 6am before school, and trains for 30 hours every week at the City Of Preston Gymnastics Club.
Her mum Gabrielle Lowe, 31, said: "She started at the gymnastics club in September 2018 and within two months of being there she broke her arm training, and we thought that would be that, but within four months she went on to do a competition at Grades Level 5 and won for Lancashire and the North West.
"She's trying to get to the Olympics. She's very determined. When people see her they can't believe, for such a young girl, how focused she is. The effort she puts in is unbelievable. It blows me away."
Bonnie competed against 74 other girls at the Championships, placing third on the vaults and third overall.
Gabrielle said: "It was a four-piece competition: the vault, the floor, the beam and the bars. Some of the girls were up to a year older than her which at this level could make a massive difference.
"We were going there for experience this year and we were hoping to get the top half, and she came third. It was completely unexpected. She was just in a daze; she was almost crying."
Bonnie's next competition, which she is already training for, will take place in April next year. She will go on to compete in Barcelona and Boston.


sexp_processor branches from ParseTree bringing all the generic sexp processing tools with it. Sexp, SexpProcessor, Environment, etc… all for your language processing pleasure.
Includes SexpProcessor and CompositeSexpProcessor.
Allows you to write very clean filters.
class MyProcessor < SexpProcessor def initialize super self.strict = false end def process_lit(exp) val = exp.shift return val end end
rubygems
sudo gem install sexp_processor
(The MIT License)
Copyright © Ryan Davis, seattle.rb
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ‘Software’), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


The PyTorch Summer Hackathon, a virtual event that invites developers to hack with the PyTorch community to build innovative, impactful models, applications and other projects that create positive impact for businesses or people. In it, developers are able to put their machine learning skills to the test in one of the following categories:
PyTorch Developer Tools : Tools or libraries designed to improve productivity and efficiency of PyTorch for researchers and developers.
Web/Mobile Applications powered by PyTorch : Applications with web/mobile interfaces and/or embedded devices powered by PyTorch.
PyTorch Responsible AI Development Tools : Tools, libraries, or web/mobile apps for responsible AI development.


Returns the bundle containing Growl's PrefPane.
+ ( NSBundle *) growlPrefPaneBundle;
Searches all installed PrefPanes for the Growl PrefPane.
© The Growl Project (Last Updated May 14, 2005)


--- title: ODF Tutorial sidebar: documentation_sidebar permalink: ODFTutorial.html folder: documentation toc: false ---
The orientation distribution function (ODF) is a function on the orientation space that associates to each orientation \(g\) the volume percentage of crystals in a polycrystaline specimen that are in this specific orientation, i.e.,
\[\mathrm{odf}(g) = \frac{1}{V} \frac{\mathrm{d}V(g)}{\mathrm{d}g}.\]
In MTEX an entirely random texure will have an ODF constant to one. In other word the values of ODFs in MTEX can be interpreted as multiples of the random distribution (mrd).
Individual orientations data may be obtained by experimental by EBSD, ACOM or 3d X-ray imaging; or from simulations, like VPSC. In the following we consider an EBSD map of an Titanium alloy.
{% highlight matlab %} % import the titanium data mtexdata titanium % plot an orientation map plot(ebsd, ebsd.orientations) {% endhighlight %} {% highlight plaintext %} ebsd = EBSD Phase Orientations Mineral Color Symmetry Crystal reference frame 0 8100 (100%) Titanium (Alpha) LightSkyBlue 622 X||a, Y||b*, Z||c* Properties: ci, grainid, iq, sem_signal, x, y Scan unit : um {% endhighlight %}Computing an ODF from individual orientations is done by kernel density estimation using the command calcDensity
.
There many different ways to visualize ODF: Euler or sigma sections, thee dimensional plots, pole figures and inverse pole figures. The most common but not recommended way are sections with respect to the third Euler angle \(\varphi_2\)
{% highlight matlab %} plot(odf) {% endhighlight %}Pole figure data arises when textured materials are measured via x-ray, neutron or syncrotron radiation. Generaly, for \(3\) to \(10\) diffraction planes specified by Miller indices \((hk\ell)\) diffraction intensities are measured at a spherical grid of specimen directions. In the example below each dot corresponds to one diffraction intensity at the plane indicated at the top of the spherical plots measured from the direction corresponding to the pixel position.
{% highlight matlab %} % import pole figure data mtexdata ptx % plot the data plot(pf) mtexColorbar {% endhighlight %} {% highlight plaintext %} pf = PoleFigure (xyz) crystal symmetry : mmm h = (104), r = 72 x 17 points h = (110), r = 72 x 17 points h = (202), r = 72 x 17 points {% endhighlight %}The reconstuction of an ODF from pole figure data requires the solution of an ill posed inverse problem. This mean the reconstruction problem has in general not a unique solution, but there are several ODFs that correspond to the same set of pole figure data. MTEX applies some heuristics to identify among all solutions the physically most reasonable.
{% highlight matlab %} % compute an ODF with default settings odf = calcODF(pf) {% endhighlight %} {% highlight plaintext %} odf = SO3FunRBF (mmm → xyz) multimodal components kernel: de la Vallee Poussin, halfwidth 5° center: 29772 orientations, resolution: 5° weight: 1 {% endhighlight %}Once an ODF is reconstructed we can check how well its pole figures fit the measured pole figures
{% highlight matlab %} % plot the recalculated pole figures plotPDF(odf,pf.h) {% endhighlight %}Besides from experimental data MTEX allows also the definition of model ODFS of different type. These include unimodal ODFs, fibre ODF, Bingham Distributed ODFs and any combination of such ODFs.
{% highlight matlab %} % define a fibre symmetric ODF odf = fibreODF(fibre.gamma(odf.CS)) % plot it in sigma sections plot(odf,'sigma') {% endhighlight %} {% highlight plaintext %} odf = SO3FunCBF (mmm → xyz) kernel: de la Vallee Poussin, halfwidth 10° fibre : (111) || 0,0,1 weight: 1 {% endhighlight %}


--- layout: default ---
Under construction. Insert meaningful content here with a contribution via Github.


This section displays dashboard for the metrics data from various counter apps.
This section displays counters and their values.


When we log out on X11, some window managers ask us whether we want to save the session. If we say yes, the applications that were running are automatically restarted the next time we log in, with the same screen positions and, ideally, with the same state as they had when we logged out. An example of this is shown in Figure 23.7.
The X11-specific component that takes care of saving and restoring the session is called the session manager. To make a Qt/X11 application aware of the session manager, we must reimplement QApplication::saveState() and save the application's state there.
Microsoft Windows and some Unix systems offer a different mechanism called hibernation. When the user puts the computer into hibernation, the operating system simply dumps the computer's memory onto disk and reloads it when it wakes up. Applications do not need to do anything or even be aware that this happens.
When the user initiates a shutdown, we can take control just before the shutdown occurs by reimplementing QApplication::commitData(). This allows us to save any unsaved data and to interact with the user if required. This part of session management is supported on both X11 and Windows.
We will explore session management by going through the code of the session-aware Tic-Tac-Toe application shown in Figure 23.8. First, let's look at the main() function:
int main(int argc, char *argv[]) { Application app(argc, argv); TicTacToe toe; toe.setObjectName("toe"); app.setTicTacToe(&toe); toe.show(); return app.exec(); }
We create an Application object. The Application class is derived from QApplication and reimplements both commitData() and saveState() to support session management.
Next, we create a TicTacToe widget, make the Application object aware of it, and show it. We have called the TicTacToe widget "toe". We must give unique object names to top-level widgets if we want the session manager to restore the windows' sizes and positions.
Here's the definition of the Application class:
class Application : public QApplication { Q_OBJECT public: Application(int &argc, char *argv[]); void setTicTacToe(TicTacToe *toe); void saveState(QSessionManager &sessionManager); void commitData(QSessionManager &sessionManager); private: TicTacToe *ticTacToe; };
The Application class keeps a pointer to the TicTacToe widget as a private variable.
void Application::saveState(QSessionManager &sessionManager) { QString fileName = ticTacToe->saveState(); QStringList discardCommand; discardCommand << "rm" << fileName; sessionManager.setDiscardCommand(discardCommand); }
On X11, the saveState() function is called when the session manager wants the application to save its state. The function is available on other platforms as well, but it is never called. The QSessionManager parameter allows us to communicate with the session manager.
We start by asking the TicTacToe widget to save its state to a file. Then we set the session manager's discard command. A discard command is a command that the session manager must execute to delete any stored information regarding the current state. For this example, we set it to
rm sessionfile
where sessionfile is the name of the file that contains the saved state for the session, and rm is the standard Unix command to remove files.
The session manager also has a restart command. This is the command that the session manager must execute to restart the application. By default, Qt provides the following restart command:
appname -session id_key
The first part, appname, is derived from argv[0]. The id part is the session ID provided by the session manager; it is guaranteed to be unique among different applications and among different runs of the same application. The key part is added to uniquely identify the time at which the state was saved. For various reasons, the session manager can call saveState() multiple times during the same session, and the different states must be distinguished.
Because of limitations in existing session managers, we must ensure that the application's directory is in the PATH environment variable if we want the application to restart correctly. In particular, if you want to try out the Tic-Tac-Toe example for yourself, you must install it in, say, /usr/local/bin and invoke it as tictactoe.
For simple applications, including Tic-Tac-Toe, we could save the state as an additional command-line argument to the restart command. For example:
tictactoe -state OX-XO-X-O
This would save us from storing the data in a file and providing a discard command to remove the file.
void Application::commitData(QSessionManager &sessionManager) { if (ticTacToe->gameInProgress() && sessionManager.allowsInteraction()) { int r = QMessageBox::warning(ticTacToe, tr("Tic-Tac-Toe"), tr("The game hasn't finished.\n" "Do you really want to quit?"), QMessageBox::Yes | QMessageBox::No); if (r == QMessageBox::Yes) { sessionManager.release(); } else { sessionManager.cancel(); } } }
The commitData() function is called when the user logs out. We can reimplement it to pop up a message box warning the user about potential data loss. The default implementation closes all top-level widgets, which results in the same behavior as when the user closes the windows one after another by clicking the close button in their title bars. In Chapter 3, we saw how to reimplement closeEvent() to catch this and pop up a message box.
For the purposes of this example, we reimplement commitData() and pop up a message box asking the user to confirm the logout if a game is in progress and if the session manager allows us to interact with the user (see Figure 23.9). If the user clicks Yes, we call release() to tell the session manager to continue logging out; if the user clicks No, we call cancel() to cancel the logout.
Now let's look at the TicTacToe class:
class TicTacToe : public QWidget { Q_OBJECT public: TicTacToe(QWidget *parent = 0); bool gameInProgress() const; QString saveState() const; QSize sizeHint() const; protected: void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *event); private: enum { Empty = '-', Cross = 'X', Nought = 'O' }; void clearBoard(); void restoreState(); QString sessionFileName() const; QRect cellRect(int row, int column) const; int cellWidth() const { return width() / 3; } int cellHeight() const { return height() / 3; } bool threeInARow(int row1, int col1, int row3, int col3) const; char board[3][3]; int turnNumber; };
The TicTacToe class is derived from QWidget and reimplements sizeHint(), paintEvent(), and mousePressEvent(). It also provides the gameInProgress() and saveState() functions that we used in our Application class.
TicTacToe::TicTacToe(QWidget *parent) : QWidget(parent) { clearBoard(); if (qApp->isSessionRestored()) restoreState(); setWindowTitle(tr("Tic-Tac-Toe")); }
In the constructor, we clear the board, and if the application was invoked with the -session option, we call the private function restoreState() to reload the old session.
void TicTacToe::clearBoard() { for (int row = 0; row < 3; ++row) { for (int column = 0; column < 3; ++column) { board[row][column] = Empty; } } turnNumber = 0; }
In clearBoard(), we clear all the cells and set turnNumber to 0.
QString TicTacToe::saveState() const { QFile file(sessionFileName()); if (file.open(QIODevice::WriteOnly)) { QTextStream out(&file); for (int row = 0; row < 3; ++row) { for (int column = 0; column < 3; ++column) out << board[row][column]; } } return file.fileName(); }
In saveState(), we write the state of the board to disk. The format is straightforward, with 'X' for crosses, 'O' for noughts, and '-' for empty cells.
QString TicTacToe::sessionFileName() const { return QDir::homePath() + "/.tictactoe_" + qApp->sessionId() + "_" + qApp->sessionKey(); }
The sessionFileName() private function returns the file name for the current session ID and session key. This function is used for both saveState() and restoreState(). The file name is derived from the session ID and session key.
void TicTacToe::restoreState() { QFile file(sessionFileName()); if (file.open(QIODevice::ReadOnly)) { QTextStream in(&file); for (int row = 0; row < 3; ++row) { for (int column = 0; column < 3; ++column) { in >> board[row][column]; if (board[row][column] != Empty) ++turnNumber; } } } update(); }
In restoreState(), we load the file that corresponds to the restored session and fill the board with that information. We deduce the value of turnNumber from the number of X's and O's on the board.
In the TicTacToe constructor, we called restoreState() if QApplication::isSessionRestored() returned true. In that case, sessionId() and sessionKey() return the same values as when the application's state was saved, and so sessionFileName() returns the file name for that session.
Testing and debugging session management can be frustrating, because we need to log in and out all the time. One way to avoid this is to use the standard xsm utility provided with X11. The first time we invoke xsm, it pops up a session manager window and a terminal. The applications we start from that terminal will all use xsm as their session manager instead of the usual, system-wide session manager. We can then use xsm's window to end, restart, or discard a session, and see whether our application behaves as it should. For details about how to do this, see http://doc.trolltech.com/4.3/session.html.


Home
Contact Us
Other Links
Some links to excellent crocheted beards
A crocheted hat with a beard of bobbles


{% extends 'base.html'%} {% block content%}
You can find us on twitter @sharrycherop and on our parent blog:Click Here...


This Agreement governs your use of bc4py stratum pool
By using any of the Pools, you agree to be bound by the terms and conditions below.
If you do not agree with the terms and conditions in this Agreement you may not use the Pool.
Pool owner may modify this Agreement and any policies affecting the Site at any point of time.
Such modification is effective immediately upon posting to the website.
Your continued use of the Pool following any modification to this Agreement shall be deemed an acceptance of all modifications.
There is no guarantee or claim for the payment of the coins! This program is alpha version.
The Pool is not an e-wallet or a bank for your coins.
The Pool and it's operators are not responsible for any loss of coins which are stored on the Pool.

The uptime of the pool or website is not guaranteed, maintenance and downtime may be required at times..
Terms & Conditions


QGestureEvent Class
The QGestureEvent class provides the description of triggered gestures. More...
| Header: | #include <QGestureEvent> |
| qmake: | QT += widgets |
| Since: | Qt 4.6 |
| Inherits: | QEvent |
Public Functions
| QGestureEvent(const QList<QGesture *> &gestures) | |
| ~QGestureEvent() | |
| void | accept(QGesture *gesture) |
| void | accept(Qt::GestureType gestureType) |
| QList<QGesture *> | activeGestures() const |
| QList<QGesture *> | canceledGestures() const |
| QGesture * | gesture(Qt::GestureType type) const |
| QList<QGesture *> | gestures() const |
| void | ignore(QGesture *gesture) |
| void | ignore(Qt::GestureType gestureType) |
| bool | isAccepted(QGesture *gesture) const |
| bool | isAccepted(Qt::GestureType gestureType) const |
| QPointF | mapToGraphicsScene(const QPointF &gesturePoint) const |
| void | setAccepted(QGesture *gesture, bool value) |
| void | setAccepted(Qt::GestureType gestureType, bool value) |
| QWidget * | widget() const |
- 6 public functions inherited from QEvent
Additional Inherited Members
- 1 property inherited from QEvent
- 1 static public member inherited from QEvent
- 2 protected variables inherited from QEvent
Detailed Description
The QGestureEvent class provides the description of triggered gestures.
The QGestureEvent class contains a list of gestures, which can be obtained using the gestures() function.
The gestures are either active or canceled. A list of those that are currently being executed can be obtained using the activeGestures() function. A list of those which were previously active and have been canceled can be accessed using the canceledGestures() function. A gesture might be canceled if the current window loses focus, for example, or because of a timeout, or for other reasons.
If the event handler does not accept the event by calling the generic QEvent::accept() function, all individual QGesture object that were not accepted and in the Qt::GestureStarted state will be propagated up the parent widget chain until a widget accepts them individually, by calling QGestureEvent::accept() for each of them, or an event filter consumes the event.
Further Reading
For an overview of gesture handling in Qt and information on using gestures in your applications, see the Gestures in Widgets and Graphics View document.
See also QGesture, QGestureRecognizer, QWidget::grabGesture(), and QGraphicsObject::grabGesture().
Member Function Documentation
QGestureEvent::QGestureEvent(const QList<QGesture *> &gestures)
Creates new QGestureEvent containing a list of gestures.
QGestureEvent::~QGestureEvent()
Destroys QGestureEvent.
void QGestureEvent::accept(QGesture *gesture)
Sets the accept flag of the given gesture object, the equivalent of calling setAccepted(gesture, true).
Setting the accept flag indicates that the event receiver wants the gesture. Unwanted gestures may be propagated to the parent widget.
See also QGestureEvent::ignore().
void QGestureEvent::accept(Qt::GestureType gestureType)
Sets the accept flag of the given gestureType, the equivalent of calling setAccepted(gestureType, true).
Setting the accept flag indicates that the event receiver wants the gesture. Unwanted gestures may be propagated to the parent widget.
See also QGestureEvent::ignore().
QList<QGesture *> QGestureEvent::activeGestures() const
Returns a list of active (not canceled) gestures.
QList<QGesture *> QGestureEvent::canceledGestures() const
Returns a list of canceled gestures.
QGesture *QGestureEvent::gesture(Qt::GestureType type) const
Returns a gesture object by type.
QList<QGesture *> QGestureEvent::gestures() const
Returns all gestures that are delivered in the event.
void QGestureEvent::ignore(QGesture *gesture)
Clears the accept flag parameter of the given gesture object, the equivalent of calling setAccepted(gesture, false).
Clearing the accept flag indicates that the event receiver does not want the gesture. Unwanted gestures may be propagated to the parent widget.
See also QGestureEvent::accept().
void QGestureEvent::ignore(Qt::GestureType gestureType)
Clears the accept flag parameter of the given gestureType, the equivalent of calling setAccepted(gesture, false).
Clearing the accept flag indicates that the event receiver does not want the gesture. Unwanted gestures may be propgated to the parent widget.
See also QGestureEvent::accept().
bool QGestureEvent::isAccepted(QGesture *gesture) const
Returns true
if the gesture is accepted; otherwise returns false
.
bool QGestureEvent::isAccepted(Qt::GestureType gestureType) const
Returns true
if the gesture of type gestureType is accepted; otherwise returns false
.
QPointF QGestureEvent::mapToGraphicsScene(const QPointF &gesturePoint) const
Returns the scene-local coordinates if the gesturePoint is inside a graphics view.
This functional might be useful when the gesture event is delivered to a QGraphicsObject to translate a point in screen coordinates to scene-local coordinates.
See also QPointF::isNull().
void QGestureEvent::setAccepted(QGesture *gesture, bool value)
Sets the accept flag of the given gesture object to the specified value.
Setting the accept flag indicates that the event receiver wants the gesture. Unwanted gestures may be propagated to the parent widget.
By default, gestures in events of type QEvent::Gesture are accepted, and gestures in QEvent::GestureOverride events are ignored.
For convenience, the accept flag can also be set with accept(gesture), and cleared with ignore(gesture).
See also isAccepted().
void QGestureEvent::setAccepted(Qt::GestureType gestureType, bool value)
Sets the accept flag of the given gestureType object to the specified value.
Setting the accept flag indicates that the event receiver wants to receive gestures of the specified type, gestureType. Unwanted gestures may be propagated to the parent widget.
By default, gestures in events of type QEvent::Gesture are accepted, and gestures in QEvent::GestureOverride events are ignored.
For convenience, the accept flag can also be set with accept(gestureType), and cleared with ignore(gestureType).
QWidget *QGestureEvent::widget() const
Returns the widget on which the event occurred.


Attach this attribute to a page element to specify that it has a dependency on some data. The framework will locate a suitable data provided and bind it to any page containing this page element.
Note that if many elements on the page depend on the same data, then the data provider will only be called once on the page and all of the page elements can bind to the same data.
Note that you can use regions to resolve data needs at the region level instead of at the page level allowing the same type of data to resolve to different records in different parts of the page.
You can also attach this [NeedsData] attribute to a data provider to create a heirachy of data providers that depend on each other. For example the data provider that provides a list of invoices can have a dependency on the data provider that provides customer data.
[IsRegion("address")] [NeedsData(typeof(Address))] internal class AddressRegion { }
The [NeedsData()] attribute has the following properties you can set.
This allows you to define a dependency on a specific Data Provider using the name property of the data provider. If the data provider is in a different package then the name must be prefixed by the package namespace and a colon.
Defines a type of data that this element needs to be available at runtime when rendering the page. The framework will locate an appropriate Data Provider based on the other data needs and the Data Providers that are defined within the application.
This places additional constraits on the Data Provider selection. If there is a Data Provider that specified that is can supply this type of data in this scope then it will be selected. If there are no matching Data Providers, then Data Providers will be matched based on data type only.


We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast years and years of service we can ensure you that is a good thing in this industry.
Happy Customer
Lines of Codes
Project Completed
Cup of coffees
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Keep away from people who try to belittle your ambitions. Small people always do that graphic dummy text.
Some of Our skills
Strategy
95%
Design
78%
Development
70%
Marketing
85%
We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast years and years of service we can ensure you that is a good thing in this industry. The data sources that we use for this type of analysis include customer enquiry data, sales figures, costs, market data and customer feedback.
We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast and years of service we can ensure you that is a good thing in this industry. The data sources that we use for this type of analysis include customer enquiry data, sales figures, costs, market data and customer feedback.
People Love Our Work
We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast years and years of service we can ensure you that is a good thing in this industry.
We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast years and years of service we can ensure you that is a good thing in this industry.
We have a number of different teams within our agency that specialise in different areas of business so you can be sure that you won’t receive a generic service and although we can’t boast years and years of service we can ensure you that is a good thing in this industry.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod
get in touch


No project was selected to delete.
Return to dashboard {{ else }}
Are you sure that you want to delete your project named "{{.ProjectName}}"? There is no way to recover the project after it has been deleted.
Cancel and return to dashboard
{{ end }}
Are you sure that you want to delete your project named "{{.ProjectName}}"? There is no way to recover the project after it has been deleted.


Hi, I’m Logan Harrison, a freelance web developer based out of Denver. At the beginning of my career, I spent several years in the corporate world as a web programmer for an international consulting firm, working along side a team of graphic
artists, statistical analysts, and product managers. One year ago I left the corporate world and transitioned to working independently as a freelance web developer.
As a full time web developer, you can depend on me being available indefinitely as you need me for years to come. I am experienced with the mechanics behind vanilla HTML, CSS, and JavaScript and I specialize in Bootstrap, Sass, and jQuery.
In addition to writing code, I also provide general web administration and hosting services, logo design, and more. Take a look around my portfolio to get an idea of the quality of the services I can offer you and see up to date recommendations
from some of my previous and current clients.


Case ID
WKT A
WKT B
CGAL Real polygon count
CGAL Real area
CGAL Epeck polygon count
CGAL Epeck area
BG double polygon count
BG double area
(BG Real Δ CGAL Real area) / (CGAL Real area)
(BG double Δ CGAL Epeck area) / (CGAL Epeck area)
Status


|
SpacePigFighter
1.5
|
Public Member Functions | |
| Bear (String newPseudo) | |
| Bear (String newPseudo, String newColor) | |
| void | attack (Animal attackedAnimal) |
| String | specialAction (Animal attackedAnimal) |
| void | scream () |
| String | beFierce () |
| Public Member Functions inherited from animalPackage.WithPaws | |
| WithPaws (String newPseudo) | |
| WithPaws (String newPseudo, String newColor) | |
| void | attack (Animal attackedAnimal) |
| String | specialAction (Animal attackedAnimal) |
| Public Member Functions inherited from animalPackage.Animal | |
| Animal (String newPseudo) | |
| Animal (String newPseudo, String newColor) | |
| String | getColor () |
| Integer | getForce () |
| Integer | getLife () |
| String | getPSEUDO () |
| Integer | getResistance () |
| Defensif | getStuffDefensif () |
| Offensif | getStuffOffensif () |
| Integer | getSpecialActionAvailable () |
| Boolean | getAbleToAct () |
| void | setColor (String colorValue) |
| void | setForce (Integer forceValue) |
| void | setResistance (Integer resistanceValue) |
| void | setLife (Integer lifeValue) |
| void | setStuffDefensif (Defensif newDefensif) |
| void | setStuffOffensif (Offensif newOffensif) |
| void | setSpecialActionAvailable (int newSpecialActionAvailable) |
| void | setAbleToAct (Boolean abilityToAct) |
| void | updateStuffBonus (Offensif offensifStuff, Defensif defensifStuff) |
| void | stuffSelection () |
| void | decreaseLife (Integer damages) |
| void | increaseLife (Integer bonus) |
| abstract void | attack (Animal attackedAnimal) |
| abstract String | specialAction (Animal attackedAnimal) |
| abstract void | scream () |
Additional Inherited Members | |
| Protected Attributes inherited from animalPackage.Animal | |
| String | color |
| Integer | life |
| Integer | force |
| Integer | resistance |
| Defensif | stuffDefensif |
| Offensif | stuffOffensif |
| Integer | specialActionAvailable |
| Boolean | ableToAct |
===== Class Bear =====
| animalPackage.Bear.Bear | ( | String | newPseudo | ) |
Constructor
| 1 | String = bear's Pseudo |
| animalPackage.Bear.Bear | ( | String | newPseudo, |
| String | newColor | ||
| ) |
Constructor
| 1 | String = bear's Pseudo |
| 1 | String = bear's color |
| void animalPackage.Bear.attack | ( | Animal | attackedAnimal | ) |
attack : function which executes a basic attack
| Animal | attackedAnimal |
| String animalPackage.Bear.beFierce | ( | ) |
beFierce : function which return an adjective to describe behavior
Implements animalPackage.BeFierce.
| void animalPackage.Bear.scream | ( | ) |
scream : function which makes the animal scream
| String animalPackage.Bear.specialAction | ( | Animal | attackedAnimal | ) |
specialAction : function which executes a special attack For the bear it is damageAnnulation
| Animal | attackedAnimal |


Take back your time.
We've revamped email, making it shorter and sweeter so you spend less time reading. With TLDR, receive what's relevant and respond with what matters.
TLDR works while you work, teaming with your inbox to summarize in-and-outbound emails. Our algorithm catches your inbound, handpicking details you need and archiving the rest. Paying it forward, TDLR monitors your outgoing messages, highlighting key text to help you correspond succinctly.
A little instruction goes a long way. Opt-in to this feature to inform your contact they're message was summarized with TDLR, and get the ball rolling towards a culture of cleaner communication.
Reclaim your day from your email.


Preparation time
30 mins to 1 hour
Cooking time
10 to 30 mins
Serves
Makes 30
Dietary
These moreish chocolate truffles are strictly for sweet-toothed chocoholics - keep them under lock and key as they're addictive and almost too easy to make.
Bring a little water to a simmer in a pan. Place the chocolate and butter in a large bowl, then set the bowl over the simmering water. (Do not allow the base of the bowl to touch the water.) Stir until melted and glossy.
Heat the cream in a separate saucepan until almost boiling (but do not allow the cream to reach boiling point). Remove from the heat and allow to cool for 5 minutes.
Pour the warm cream over the melted chocolate and mix together until smooth and well combined. Stir in a pinch of salt.
Line a roasting tray with greaseproof paper and pour in the melted chocolate. Set aside to cool, then chill in the fridge until set.
Once the chocolate mixture has cooled and set, mix the chopped nuts together and sprinkle onto a baking tray.
 Roll each ball in the chopped nuts until completely coated. Place the truffles onto a baking tray or plate and chill until ready to serve. The truffles will keep for 1-2 weeks.


I followed the instruction, where your changing the
php.ini file. I am changing the php.ini file, but
it doesn’t update on my info.php, and its my
headers are still not working. thanks!
Thanks for the tip. For those having redirect
problems after editing the php.ini file inside the
MAMP/conf/(your php version) folder, there’s
another php.ini file located at MAMP/bin/php/, I
also edited that one and the
header(Location… problem was solved.
Thanks a lot! Work it perfect…
 This make the life a
little difficult for the programmers because
sometimes we think the problem is in the code
and not is so.
Thanks for the tip. For those having redirect
problems after editing the php.ini file inside the
MAMP/conf/(your php version) folder, there’s
another php.ini file located at MAMP/bin/php/, I
also edited that one and the
header(Location… problem was solved.
Just for the record, if you have MAMP Pro, you need
to change a third file located in :
1) Go to App/MampPro (right click, Show Package
Content)
2) Go to Contents/Resources/
3) You’ll find lots of php.x.xx.ini files.
Change the version you use.
4) Restart Mamp and that will do the trick.
ps. (I changed the other files in the MAMP folder,
so I’m not sure if only changing this file or
the three of them does the trick)
Good luck!
I followed the instruction, where your changing the php.ini file. I am changing the php.ini file, but it doesn’t update on my info.php, and its my headers are still not working. thanks!
I am having the same problem. I changed them in php5.4.4 which is the version I am using according to info.php and still nothing has changed.
Thanks for the tip. For those having redirect problems after editing the php.ini file inside the MAMP/conf/(your php version) folder, there’s another php.ini file located at MAMP/bin/php/, I also edited that one and the header(Location… problem was solved.
Thanks, Arvin! That did the trick.
Thanks bro!
Thanks !
Thank so much man.
Thanks a lot! Work it perfect…
 This make the life a little difficult for the programmers because sometimes we think the problem is in the code and not is so.
You saved my day… but please update the post:
We must edit 2 files as Arvin noted:
Thanks for the tip. For those having redirect problems after editing the php.ini file inside the MAMP/conf/(your php version) folder, there’s another php.ini file located at MAMP/bin/php/, I also edited that one and the header(Location… problem was solved.
That other php.ini solution saved my life. thanks a lot for finding that and sharing it with us.
Thanks for posting this ace solution. Saved me, and I’m sure many others who haven’t posted, hours of frustration and sanity.
Cheers!
You’re welcome, Jeffrey.
Thanks for taking the time to let me know that this worked for you.
Ohhhh yeeeppp
thanks!!
ok thanks a lot,,,,, it’s work!
Thanks a lot guys <3
Thanks a lot.. Really work.. i solved
Thank you so much, I had a site working with XAMPP and not with MAMP and after hours of googling, this finally helped me. I am truly grateful!
Hey Julia,
Thanks for taking the time to comment. I’m glad the post proved useful.
Just for the record, if you have MAMP Pro, you need to change a third file located in :
1) Go to App/MampPro (right click, Show Package Content)
2) Go to Contents/Resources/
3) You’ll find lots of php.x.xx.ini files. Change the version you use.
4) Restart Mamp and that will do the trick.
ps. (I changed the other files in the MAMP folder, so I’m not sure if only changing this file or the three of them does the trick)
Good luck!
Thanks, Nartub!
Thanks!! You saved me!!!
Thanks this saved a me a lot of time!
header is not working and i have imported the files to the internet. How can i change the settings as you had suggested. Thanks


written by: {{quote.author}}
posted by: {{quote.publisher}}
This quote was published {{quote.completeDate|dateCount}} days ago


{% extends "base.html" %} {% block title %}API{% endblock %} {% block active_class %}more{% endblock %} {% block content %}
You can use our RESTful API to download spending data and other useful information. While we are in beta, no registration is required, but please be aware this may change.
You can retrieve data as CSV by appending &format=csv
to the GET parameters, or JSON by appending &format=json
.
Methods to calculate prescribing spending.
Retrieve total spending and items by CCG or practice on a particular chemical, presentation or BNF section. (Spending is calculated using the actual_cost field in the HSCIC data, items using the total_items field.)
Queries from August 2010 to date and returns total spending and items by month.
Total prescribing spending by month: /api/1.0/spending
Total by BNF code by month: /api/1.0/spending/?code=0212
, /api/1.0/spending/?code=0212000AA
, /api/1.0/spending/?code=0212000AAAAABAB
Queries from April 2013 to date and returns spending and items by CCG by month.
Spending by CCG on a chemical: /api/1.0/spending_by_ccg/?code=0212000AA
You can request individual CCGs by code: /api/1.0/spending_by_ccg/?code=0212000AA&org=03V
Queries from August 2010 to date and returns total spending and items by practice by month.
You must specify either an organisation, or a date.
Spending by all practices on a BNF section: /api/1.0/spending_by_practice/?code=0212&date=2015-04-01
Spending by all practices on a chemical: /api/1.0/spending_by_practice/?code=0212000AA&date=2015-04-01
Spending by all practices on a presentation: /api/1.0/spending_by_practice/?code=0212000AAAAAAAA&date=2015-04-01
You can request individual practices by code: /api/1.0/spending_by_practice/?code=0212000AA&org=H81068
You can also request a CCG code to see spending by all practices in that CCG: /api/1.0/spending_by_practice/?code=0212000AA&org=99P
Methods to retrieve information about CCGs, practices, and BNF codes.
Search for the official name and code of BNF sections, chemicals and presentations.
All BNF sections, chemicals and presentations matching a name (case-insensitive): /api/1.0/bnf_code/?q=lipid
All chemicals and presentations matching a code: /api/1.0/bnf_code/?q=0212000AA
All BNF sections matching a code: /api/1.0/bnf_code/?q=2.4
All BNF sections, chemicals and presentations exactly matching a name or code: /api/1.0/bnf_code/?q=0212000AA&exact=true
Search for details about an Area Team, CCG or practice by code or name.
All organisations matching a code or name: /api/1.0/org_code/?q=Beaumont
All Area Teams matching a code or name: /api/1.0/org_code/?q=Gloucester&org_type=AT
All CCGs matching a code or name: /api/1.0/org_code/?q=Gloucester&org_type=CCG
All practices matching a code or name: /api/1.0/org_code?q=Gloucester&org_type=practice
All organisations exactly matching a code or name: /api/1.0/org_code/?exact=true&q=99H
Search for details about a CCG or practice by code or name. Returns values for all months available.
Total list size for all CCGs: /api/1.0/org_details/?org_type=ccg
Total list size for all practices by practice code, or CCG code: /api/1.0/org_details/?org_type=practice&org=99H
Search for the boundaries of a CCG, or location of a practice, by code. Returns GeoJSON.
Practice locations are based on OpenStreetMap geocoding from OpenCageData. Many thanks to OpenCageData!
Boundaries of all CCGs: /api/1.0/org_location/?org_type=ccg
Boundaries of an individual CCG: /api/1.0/org_location/?org_type=ccg&q=99H
Location (approximate) of a practice, or practices in a CCG, by code: /api/1.0/org_location/?q=99H,P87003


INTIMATE RELATIONS (director/writer: Philip Goodhew; cinematographers: Andres Garreton; editor:Pia Di Ciaula; cast: Julie Walters (Marjorie Beasely), Rupert Graves (Harold), Matthew Walker (Stanley), Les Dennis (Maurice Guppy), Elizabeth McKechnie (Iris), Laura Sadler (Joyce), Holly Aird (Deirdre), Michael Bertenshaw(Mr. Pugh), Annie Keller (Jean); Runtime: 105; Fox Searchlight/Hand Made Films; 1996-UK/Canada)
Reviewed by Dennis Schwartz
A disturbing drama, inspired by a true story, that rails against the hypocritical sexual attitudes of the times. It takes place in 1954, in a small English coastal town. The first-time filmmaker, Philip Goodhew, takes us behind the nice lace curtains of a respectable British household and brings us a story of repression, jealousy, and obsession. It's a well-made but grimly unmoving film, that dwells on an unpleasant subject, that culminates in a gruesome double homicide.
Harold Guppy (Rupert Graves) is a handsome but disturbed lad, whom his mother gave up on when he was a lad. He has some psychological maladies due to an imbalance in his system and was told by a Navy shrink if he ate huge quantities of sugar it would calm him. He spent his childhood in reform schools in Australia and spent some time in the Merchant Marines. He returns to his hometown to strike up a relationship with his brother Morris (Les Dennis), who doesn't recognize him when they first meet. It turns out that Morris only saw his younger brother a few times in his life, and considers him to be a stranger.
Not made welcome in his brother's house, as his frigid wife, Iris (Elizabeth McKechnie), is leery of Harold and considers him as merely an intruder. But Harold answers a newspaper ad and finds a room in an age 50-ish grandmother's house, Marjorie Beasley (Julie Walters). She's married to Stanley (Matthew Walker), who is a good provider despite having lost a leg during WW 1. But ever since he lost his leg, she only respects him as a breadwinner but otherwise finds him to be a reprehensible drunk.
Upon taking the room the bossy landlady, prone to wearing thick eyeglasses, having her short hair in a curled bouffant, clad in frumpy dresses, and supplementing her income by working as a laundress, tells Harold: "My husband and I keep separate rooms for medical purposes, and I sleep with Joy." On the school evening of Joy's 14th birthday party, the landlady who insists her lodger call her Mum, sneaks into his bedroom and slips under the bed covers of the reluctant lodger, and won't leave until Harold capitulates and says yes. If this isn't complicated enough, Joy enters the room and hops into bed, saying she'll tell her dad if she can't stay. In this rather peculiar ménage à trois, Harold is not only stuck with Mum but has to ward off Joyce. They threaten to either tell the police on him, or tell Stanley. On the first night of this upcoming sexual affair Joy pretends to sleep, as Mum can't resist having another go at it with Harold even though her daughter is in the same bed. During the course of the story, Harold has quite a time keeping Joy a virgin and Marjorie from devouring him.
Seeking advice from his cold-hearted brother and frigid sister-in-law, he's advised to get away from that house and join the Army. When he does, he meets a girl named Jean (Annie Keller), whom he wants to marry. But Marjorie blackmails him into returning and buys his way out of the Army.
There's plenty of black humor in the film: the weak-willed Harold gets a tattoo with Mum written on it; the landlady lectures a fired laundress, who got pregnant, on her immoral behavior; and, birthday girl Joyce can exclaim upon being asked to go back to her room alone when seeing Harold and her mother in bed: "It's not fair. It's my birthday!"
By the climax, it becomes apparent that this affair is no laughing matter.  But the film somehow couldn't get past its laughter at these absurd characters and it failed to provide some pathos to go with the dramatics. There was just a growing emptiness that seemed to hang over it, which prevented me from seeing this as just your typical bizarre crime story.
REVIEWED ON 6/25/2001 GRADE: C
Dennis Schwartz: "Ozus' World Movie Reviews"
http://www.sover.net/~ozus
<EMAIL_ADDRESS>© ALL RIGHTS RESERVED DENNIS SCHWARTZ
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Standard output
--> POST https://<IP_ADDRESS>/api/v1/namespaces/guest/actions/accounting_ctl?blocking=true&result=false&timeout=60000 HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 36
Authorization: Basic MjNiYzQ2YjEtNzFmNi00ZWQ1LThjNTQtODE2YWE0ZjhjNTAyOjEyM3pPM3haQ0xyTU42djJCS0sxZFhZRnBYbFBrY2NPRnFtMTJDZEFzTWdSVTRWck5aOWx5R1ZDR3VNREdJd1A=
Accept: application/json
User-Agent: Swagger-Codegen/1.0.0/java
{"accountId":"AB123","amount":-10.0}
--> END POST (36-byte body)
<-- HTTP/1.1 404 Not Found (166ms)
Date: Thu, 01 Mar 2018 16:17:45 GMT
Content-Type: application/json
Content-Length: 60
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Authorization, Content-Type
Server: openwhisk/api-gateway-<IP_ADDRESS>
OkHttp-Sent-Millis:<PHONE_NUMBER>717
OkHttp-Received-Millis:<PHONE_NUMBER>757
{"error":"The requested resource does not exist.","code":27}
<-- END HTTP (60-byte body)


Hansel and Grethel
问题描述 :
On a warm summer afternoon, Hansel and Grethel are walking together in the fields. It is getting late and, to be honest, they are lost. Grethel is a little scared, still vividly remembering the last time they got lost in the forest. That time, an evil witch had locked them inside a house built of gingerbread and sugar! But Hansel can reassure her: this time they are well prepared. Hansel has taken a map and a compass with him!
Hansel picks two clearly outstanding features in the landscape, and uses the compass to measure the direction towards both objects. Grethel locates the objects on the map, and writes down the corresponding map coordinates. Based on this information, they will be able to accurately determine their own position on the map.
The coordinates of two marker objects, and the direction (angle from the North) towards these objects are known. Write a program which uses this data to calculate the coordinates of Hansel and Grethel’s current location.
Hansel picks two clearly outstanding features in the landscape, and uses the compass to measure the direction towards both objects. Grethel locates the objects on the map, and writes down the corresponding map coordinates. Based on this information, they will be able to accurately determine their own position on the map.
The coordinates of two marker objects, and the direction (angle from the North) towards these objects are known. Write a program which uses this data to calculate the coordinates of Hansel and Grethel’s current location.
输入:
The first line of the input contains one positive number: the number of situations in which a position must be determined. Following are two lines per situation, describing the two marker objects. Each marker object is described by a line containing three integer numbers:
the x-coordinate of the object on the map (0 <= x <= 100);
the x-axis runs West-to-East on the map, with increasing values towards the East.
the y-coordinate of the object on the map (0 <= y <= 100);
the y-axis runs South-to-North on the map, with increasing values towards the North.
the direction d of the object in degrees (0 <= d <= 360);
with 0 degree = North, 90 degree = East, 180 degree = South, and so on.
To keep the position calculations accurate, Hansel makes sure that the directions of the two
objects are not exactly equal, and do not differ by exactly 180 degree.
the x-coordinate of the object on the map (0 <= x <= 100);
the x-axis runs West-to-East on the map, with increasing values towards the East.
the y-coordinate of the object on the map (0 <= y <= 100);
the y-axis runs South-to-North on the map, with increasing values towards the North.
the direction d of the object in degrees (0 <= d <= 360);
with 0 degree = North, 90 degree = East, 180 degree = South, and so on.
To keep the position calculations accurate, Hansel makes sure that the directions of the two
objects are not exactly equal, and do not differ by exactly 180 degree.
输出:
One line per situation, containing the result of the position calculation: two numbers, separated by a space, each having exactly 4 digits after the decimal point. These numbers represent the x and y coordinates of the position of Hansel and Grethel (0 <= x,y <= 100). Round the numbers as usual: up if the next digit would be >= 5, down otherwise.
样例输入:
2 30 50 90 20 40 180 30 40 96 20 20 150
样例输出:
20.0000 50.0000 7.0610 42.4110
解题代码:
import java.text.DecimalFormat; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner cin = new Scanner(System.in); DecimalFormat df1 = new DecimalFormat("0.0000"); int n = cin.nextInt(); while(n-- > 0) { int x1 = cin.nextInt(); int y1 = cin.nextInt(); double t1 = cin.nextInt(); int x2 = cin.nextInt(); int y2 = cin.nextInt(); double t2 = cin.nextInt(); double x, y; t1=t1 / 360 * 2 * Math.PI; t2=t2 / 360 * 2 * Math.PI; y = (Math.cos(t2)*(Math.sin(t1)*y1-Math.cos(t1)*x1)-Math.cos(t1)*(Math.sin(t2)*y2-Math.cos(t2)*x2))/(Math.sin(t1-t2)); x = (Math.sin(t2)*(Math.sin(t1)*y1-Math.cos(t1)*x1)-Math.sin(t1)*(Math.sin(t2)*y2-Math.cos(t2)*x2))/(Math.sin(t1-t2)); System.out.println(df1.format(x)+" "+ df1.format(y)); } } }
(adsbygoogle = window.adsbygoogle || []).push({});
mark, 备用
helpful！！ mark
其实就是DFS搜索，数据量较小，穷举了所有情况
目前为止见过的最易懂的一个，多谢分享
必须试过啊
总数为2n，遍历到第n个，就是中间的位置
第15行代码，/n/n，应该改为\n\n
int L[m+1][n+1];这样定义出错，这个在gcc上可以编译通过 在VS上不行 应该改为new 或者vector
妈呀！这个Dijkstra模板好长OwQ！
21行中，j<10可改为j<10-i，减少比较次数
这个问题别太纠结了，不同的编译器结果不一
真心不错，力顶作者


AMINA WAZI 54 SMITH STREET JOHANESBURG 4001 KZN SUTH AFRICA TEL+27-734-064-109 Dear I pray insha Allah that this mail will meet you ingood condition,I am AMINA WAZI the daughter of ALI HASSAN from IRAQ, I finished my studies in Manchester University in England, I wish to seek assistance from you to claim my part of my father funds US$9.5m (Nine Million, Five Hundred Thousand Dollars). This happened when I foresee danger during the attack of the coalition forces from the United States America, I managed to move this funds out through United Nations who was in my country for inspection on chemical weapons to SOUTH AFRICA.At the moment, I do not know when these problems will be over and I wouldnot want the funds to sit in the office of united nation for so long because of the demurrage levied against it by the agency in charge of the funds.The funds so far is under the watchful eyes of KM-BEKI ENTERPRISES affiliated with United Nations office in SOUTH AFRICA. Sir, on receipt of your reply, I will give you the contact details of theagency inSOUTH AFRICA. I will instruct them to deliver the funds to you either by wiring itdirectly to your account in your country or you come to SOUTH AFRICA and claim the funds on my behalf. For your kind gesture and assistance, I am ready to compensate you abundantly, lastly, I will preciate if you disclose the details about your self to me to enable me know who and where my funds will be transferred to. Thank you and Allah be with you. Yours sincerely MRS AMINA WAZI


Poll to choose the paper for reading club for the month of {{ month }}
{{ >pollForm }}
{{ #each polls }} {{ >poll }} {{ /each }}


ORGANIZATION: human groups established for a purpose
References to human groups that have been established for a specific
purpose are annotated as ORGANIZATION
.
Example:
Google acquired YouTube.
T1 ORGANIZATION 0 6 Google
T2 ORGANIZATION 16 23 YouTube
(This is an example entry in the entity
collection. You can find the
source of this document in the _entity/
directory, file
organization.md
. To add new entries like this, simply add new .md
files into the _entity/
directory.)


What's New in LSDK 20.04
Highlights
- Support of the dual kernel, LTS 4.19.90 and LTS 5.4.3
- U-Boot v2019.10 update
- Integration of LX2160A rev2.0
- Support of DPDK 19.11, OVS 2.13
- Support of Felix DSA driver on LS1028A
- Support of PREEMPT_RT on branch linux-4.19-rt
- Support of QEMU 4.1
- Refer to Fixed, open, and closed issues which has a list of all fixed issues
- Inclusion of additional workarounds for Chip Errata: A-009450, A-050385
List of changes:
Processor and Board Support
NXP LSDK Userland
- No change since the last LSDK
Linux Kernel Core, Virtualization
- LTS kernel 4.19.90 update
- LTS kernel 5.4.3
- Support of PREEMPT_RT on branch linux-4.19-rt
- Support of QEMU 4.1
Linux Kernel Drivers
- DPAA2: bulk enqueue and ring mode in QBman
- eMMC HS400 on LS1028A RDB
- Felix switch: 1588/802.1AS, DSA support, TSN support
- GIC: workaround for LPI reset issue on LTS 4.19
- SBSA watchdog on LX2160A
Data Plane Development Kit (DPDK)
- Support of DPDK 19.11
- Support of LX2160A rev2.0
- Support of flow director on DPAA2
Virtualization - OVS-DPDK
Trust Firmware - A (TF-A)
- No change since the last LSDK
U-Boot Boot Loader
- U-Boot v2019.10 update
- Support of LX2160A rev2.0
- EMMC boot on LX2160A RDB
- Felix switch: QXGMII 2.5G
Unified Extensible Firmware Interface (UEFI)
- No change since the last LSDK
EdgeScale – Edge Compute
- Secure Manufacturing
- No change since the last LSDK
- EgdeScale Device Agent Enhancement
- No change since the last LSDK
Other Tools and Utilities
- Flexbuild
- Support of LX2160A rev2.0
- Support of cross-build for eIQ packages


An animated character typically has a number of different movements that are activated in the game in different circumstances. These movements are called Animation Clips. For example, we might have separate animation clips for walking, running, jumping, throwing, dying, etc. Depending on the way the model was animated, these separate movements might be imported as distinct animation clips or as one single clip where each movement simply follows on from the previous one. In cases where there is only a single clip, the clip must be split into its component animation clips within Unity, which will involve some extra steps in your workflow.
The simplest types of models to work with are those that contain pre-split animations. If you have an animation like that, the Animations tab in the Animation Importer Inspector will look like this:
You will see a list available clips which you can preview by pressing Play in the Preview Window (lower down in the inspector). The frame ranges of the clips can be edited, if needed.
For models where the clips are supplied as one continuous animation, the Animation tab in the Animation Importer Inspector will look like this:
In cases like this, you can define the frame ranges that correspond to each of the separate animation sequences (walking, jumping, etc). You can create a new animation clip by pressing (+) and selecting the range of frames that are included in it.
For example:
In the Import Settings, the Split Animations table is where you tell Unity which frames in your asset file make up which Animation Clip. The names you specify here are used to activate them in your game.
For further information about the animation inspector, see the Animation Clip component reference page.
You can create animation clips which animate any object or component property using Unity’s animation window. These animation clips can then be arranged into a state machine in exactly the same way as external animation clips such as character animations. For example, you could animate the motion of a camera, the colour of a light, the individual frames of a sprite animation, or a public property of a script.
To set up a Character or other GameObject for animation, you need to follow this process:
Another way to import animations is to follow a naming scheme that Unity allows for the animation files. You create separate model files and name them with the convention<EMAIL_ADDRESS>For example, for a model called “goober”, you could import separate idle, walk, jump and walljump animations using files named<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>and<EMAIL_ADDRESS>Only the animation data from these files will be used, even if the original files are exported with mesh data.
Unity automatically imports all four files and collects all animations to the file without the @ sign in. In the example above, the goober.mb file will be set up to reference idle, jump, walk and wallJump automatically.
For FBX files, simply export a model file with no animation ticked (eg, goober.fbx) and the 4 clips as<EMAIL_ADDRESS>by exporting the desired keyframes for each (enable animation in the FBX dialog).