Jose Mourinho’s tenures at leading clubs
Mourinho has been out of management since leaving Manchester United in December last year.
Jose Mourinho has been appointed as the new manager of Tottenham, replacing Mauricio Pochettino after the Argentinian was dismissed on Tuesday evening.
Since taking over at Porto in 2002, Mourinho had always won the league title in his second season with a club – until Manchester United – but has tended not to stick around much longer. Only his first spell at Chelsea reached a fourth season and even that ended in September 2007 after six games of the league campaign.
Porto
January 23, 2002 – June 1, 2004
Trophies: Primeira Liga 2002-03, 2003-04, Taca de Portugal 2002-03, Champions League 2003-04, UEFA Cup 2002-03
Win rate: 71.7 per cent
Mourinho ascended to the summit of Portuguese football with a treble of league, cup and UEFA Cup wins after taking over mid-season. He added a memorable league and Champions League double before being head-hunted by Chelsea to take over from Claudio Ranieri.
To put Porto’s European achievement in context, just seven different clubs have won the Champions League in the 14 years since – including all four of the clubs subsequently managed by Mourinho.
Chelsea
Trophies: Premier League 2004-05, 2005-06, FA Cup 2006-07, League Cup 2004-05, 2006-07
Win rate: 67 per cent
Once more Mourinho made an immediate impact with back-to-back title successes in his first two seasons.
They missed out in his third year and – though they softened the blow by winning both domestic cups – a poor start to the following season saw him sacked with the Blues languishing in fifth place. They would eventually finish second.
Inter Milan
Trophies: Serie A 2008-09, 2009-10, Coppa Italia 2009-10, Champions League 2009-10
Win rate: 62 per cent
Desperate to show that the disappointing end to his first Chelsea spell was a mere blip, Mourinho bounced back with a trademark start in Inter.
The Nerazzuri were untouchable in Serie A, winning the title by 10 points in Mourinho’s first season and holding off a renewed challenge from Roma in a second season which also brought the domestic cup and Mourinho’s second Champions League triumph.
His successes persuaded Madrid to negotiate a deal to lure him to Spain.
Real Madrid
Trophies: LaLiga 2011-12, Copa del Rey 2010-11
Win rate: 71.9 per cent
Barcelona provided a quality of opposition beyond what Mourinho had faced previously and his rivalry with first Pep Guardiola and then Tito Vilanova in the opposing dug-out proved fiery.
Cup success in his first campaign and the traditional league title in his second proved insufficient to satisfy Real’s hunger for trophies and, after a barren third season, he returned to the warm embrace of Chelsea.
Chelsea
June 3, 2013 – December 17, 2015
Trophies: Premier League 2014-15, League Cup 2014-15
Win rate: 58.8 per cent
The Blues finished third in a tight Premier League title race in the season he returned, before he kept up his second-season record with a league and League Cup double.
After 16 games of the 2015-16 campaign, though, the club’s title defence was in tatters and they almost unbelievably sat just one place above the relegation zone when Mourinho was once more shown the door.
Manchester United
Trophies: League Cup 2016-17, Europa League 2016-17
Win rate: 58.33 per cent
David Moyes and Louis Van Gaal had tried and failed to replicate the success of Sir Alex Ferguson at Old Trafford when the club turned to perhaps the biggest name in management.
They won two trophies in his first season at the helm but Mourinho had to watch his former club Chelsea lift the Premier League trophy – followed by his old rival Guardiola at Manchester City as Mourinho’s year-two magic finally wore off. A poor start to his third season saw the pressure intensify following heavy losses to Tottenham, Manchester City and Liverpool, which also saw the Red Devils register the least amount of points to a Premier League season after 17 matches before he was sacked.


All routines in the Joystick module are exported qualified (and thus must be prefaced with "Joystick."). All the constants are exported unqualified and thus do not need the Joystick prefix.
| joystick1, joystick2 | joystick name contants (exported unqualified) | |
| GetInfo | Reads the current value of a joystick and status of the joystick buttons. |


Toggle navigation
IATI Import Tool
Home
Import Process
IATI Version 1.05 -> AMP 2.10
IATI Version 2.01 -> AMP 2.10
Other Sources
Reports
Previous Imports
Logs
Administration
Users
Groups
Metadata
Field Mappings
Value Mappings
User
Settings
Log Out
Language
English
Spanish
Portuguese
Import Process
Format:
IATI 2.01
Upload Source
(current)
Filter Source Data
Choose Projects
Choose Fields
Map Values
Review and Import
Upload file(s)
Select files to upload
Next >>
Filter Information
Select for each field listed, which values you would like to include as part of the import process from the source
Language
Recipient Country
Next >>
Choose Projects
New Projects
- Projects not found in the destination system
Import
Source Project
Destination Project
(Kachin I) CERF rapid response grant to project: Protection of internally displaced persons in Kachin State (CERF 12-CEF-002 A)
WES Secondment – Sudan Southern Cordovan (7F-02866.10)
Existing Projects
- Matched projects. You can update the project mapping if needed.
Update
Source Project
Destination Project
Integrated management of acute malnutrition. [M013666]
CERF rapid response grant to project: Supporting safe recreation, education and psycho-social care for children affected by the Syrian Crisis (CERF 12-CEF-057)
Next >>
Choose and Map Fields
Load Existing Template
Initial Value Mapping
Updates Value Mapping
Import/Update
Source Field
Destination Field
Activity Status
Project Status
Project Title
Sectors
Description
Disbursements
Commitments
Project Name
Project Status
Project Title
Sectors
Description
Disbursements
Commitments
Description
Project Status
Project Title
Sectors
Description
Disbursements
Commitments
Disbusements
Project Status
Project Title
Sectors
Description
Disbursements
Commitments
Save Field Mapping
Next >>
Map Fields Values
Load Existing Mapping
Value Mapping 1
Value Mapping 2
Activity Status
Financing Instrument
Source Values
Destination Value
Completed
Completed
Completed
Ongoing
Pipeline
Ongoing
Ongoing
Completed
Ongoing
Pipeline
Pipeline
Pipeline
Completed
Ongoing
Pipeline
Source Values
Destination Value
Grant
Grant
Grant
Loan
Loan
Loan
Grant
Loan
Save Field Mapping
Next >>
Review and Import
Cancel
Proceed with Import
×
Import Process
Project Id
Result
Message
XM-OCHA-FTS-177060
Imported
OK
XM-OCHA-FTS-178521
Imported
OK
XM-OCHA-FTS-178592
Rejected
Rejected with message: "No permissions"
XM-OCHA-FTS-178842
Imported
Rejected with message: "No permissions"
XM-OCHA-FTS-179395
Rejected
Rejected with message: "No permissions"
XM-OCHA-FTS-179535
Rejected
Rejected with message: "No permissions"
XM-OCHA-FTS-179614
Updated
OK
XM-OCHA-FTS-181677
Updated
OK
×
Save Mapping
Mapping Name:


I think fairness is important, I do not like taking advantage of others,
I avoid conflict, and like to resolve it,
I dislike people jumping to conclusions and misrepresenting or misinterpreting facts,
I like to understand the big picture,
I prefer to not be the centre of attention and prefer to guide the actions of others, though will lead if required.
I asked two close friends and my wife about what in their opinion my core personal values might be. In their view I am:
competent and have a thirst for knowledge with a love for history,
humourous and like to make light, calm and considered in that I like to weigh things up before I make decisions,
generous and care about how other feel.
Indecisive at times,
Sometimes miss details and nuances,
Not always great at finishing things off.
As some research I undertook a Myers-Briggs personality test online. It determined that my personality is INFP-T type. This is a personality type characterised by introversion, intuition, feeling, and perception. One site describes this as a mediator personality type.
This test result is quite different to what I got in some tests I undertook when I was younger out of university, that suggested I was less intuitive, and less feeling. I took the test twice with quite similar results, and asked my friends whom I had asked to consider my core values who also have some background in psychology. They agreed heartily with this result so I have resolved to accept it.
Reading further into this personality type it does describe me quite well in terms of how my career and personal relationships have developed, though engineering does not seem a common career path for mediators who are more commonly drawn to creative professions where they can create their own worlds. I have scratch this itch through my choice of fictional and historical reading. I will discuss the impacts of my values and personality traits further in the strengths and weaknesses. 16Personalities provides an overview of the INFP and other Myers-Briggs personality types.
Dealing with tension
Working as a civil engineer, often my colleagues and I work in groups with a design lead where we are working as a group towards providing design solutions for lots of complex problems. There is always a balance between providing a detailed solution to an outcome, and providing a simplified solution that shows design objectives have been met but providing this evidence by proving a concept rather than a larger set of detailed and precise calculations (often based on large assumptions).
In this instance I believed that the detailed work was not so beneficial as the inputs to the calculations had inherent error, and the calculations implied a degree of accuracy that was not there. In my design leaders view, it was the right thing to do to carry out all of the calculations anyway as this fit her set of ethics and understanding. At the time I accepted her view and got on with the work. I think this is because I didn’t want to upset the team harmony in this situation, and I truly respect her as an excellent and driven engineer.
It was effective in that we eventually got the work done. However I could have push to try to get me some time to demonstrate my point of view. She may have come around. In retrospect though I am happy with the way it played out.
Ethics
In my work as a professional engineer (the civil kind) I often have to make ethical decisions that result in difficult conversations. This might be that something has been done poorly on site, a design didn't work out or that something is late or more expensive. There is often a temptation to cut corners to save time or costs, but my professional code of ethics requires me to raise these.
As a positive, it does push me to research and improve next time I come across the same situation. I am also good at understanding big picture problems. .
How my culture has influenced my values and identity
I have grown up in a Pakeha European culture with a middle class upbringing. I realise that my upbringing has provided me with many opportunities compared to most of the world. I don't strongly associate with any particular cultural identity. I dislike the ideas of being nationalistic.
My university education in civil engineering impacts my world view. I like to think I have a strong respect for science and informed decision making, though I acknowledge that I am as susceptible to bias as every other human. I try to be empathetic with the perspective of others who have travelled different paths.
How my strengths and limitations influence my learning and career development
Strengths:
My work and technical background and engineering training sets me in a good position to carry out lots of reading and deskwork without tiring.
My personality type favours having a broad understanding of many issues. I think this can be a benefit for problem solving.
I like to resolve team conflicts which allows me to improve team dynamics and help people lead.
I am easily able to work independently as required.
I am not scared to try developing new skills (Dev Academy as an example).
Weaknesses:
My introversion means I do not have large networks of friends but heavily depend on fewer numbers of very close friends which can place limits my professional network. I need to make effort to open up and communicate.
My personality type finds it difficult to truly settle into a career path and role. I have changed companies more than most of my peers. However I think once I can find something I can commit to I should find success.
I am less focused in my career development than other more assertive and charismatic personality types. Getting coaching and mentoring will help me.
In terms of learning, my personality type has a tendency to drift and read broadly rather than stay focused. Time boxing and deliberate learning goals will certainly help me succeed if I can be disciplined in sticking to them.
Self-doubt is common with my personality type in the face of setbacks which I have experienced at multiple times in the last few years. I need to open up about this to coaches and mentors.


MEETUP
Log In
Sign Up
Meet Up
Log In
Sign Up
Meet Up
Sign Up
Username
Full Name
Email
Password
Re-type Password


Using the CLI, nagivate into the directory you want the new component, then simply:
The CLI will do the heavy lifting and create the following with corresponding names:
It will also attempt to update your app module file. Double check and make sure your new component is imported into app.module.ts:
for example in app.module.ts:
And define those declarations/imports in @NgModule:
next we'll need to create a route for this component, edit app.routes.ts:
and add a new path with the url you desire for this route:
Now you can use this new route in your main nav or wherever you like!


{% extends "_post.html" %}
{% hyde
title: "Coming Home to Vim"
snip: "I'm sorry I ever left, baby."
created: 2010-09-20 18:15:00
flattr: true
%}
{% block article %}
I'm a programmer. I work with text files for 6-12 hours every weekday so I care
about the text editor I use. If switching to a different editor can increase my
efficiency by even 10% it would save a good chunk of my time and let me get
back to making cool things.
I don't buy the "you're thinking 90% of the time and only typing 10% of the
time, so your editor doesn't really matter" argument. Even if the premise is
true, the conclusion is wrong.
If I think for 10 minutes and then start typing, I want the typing to take the
shortest time possible so I can get back to thinking. Any time I spend typing
is an interruption that I want to minimize so I can keep my train of thought.
I recently started using [Vim][] as my primary editor. As I'm adjusting I'm
finding a lot of [the][arrows] [blog][nutheads] [posts][mind] [people][katz]
[have][nvie] [written][grok] [about][home] Vim very helpful, so I'm hoping this
post will help people too.
[Vim]: http://www.vim.org/
[arrows]: http://jeetworks.org/node/89
[nutheads]: http://www.viemu.com/a-why-vi-vim.html
[mind]: http://wekeroad.com/2010/07/29/vim-is-your-daddy/
[katz]: http://yehudakatz.com/2010/07/29/everyone-who-tried-to-convince-me-to-use-vim-was-wrong/
[nvie]: http://nvie.com/posts/how-i-boosted-my-vim/
[grok]: http://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim/1220118#1220118
[home]: http://weblog.jamisbuck.org/2008/10/10/coming-home-to-vim
[TOC]
Some Background About Me
------------------------
I used Vim exclusively from about 2002 to 2005. I never really learned much
about it and mostly used it as a glorified [nano][].
In 2006 I decided it was time for a change. I wanted an editor that "fit" with
OS X. I tried [SubEthaEdit][] for a while and it was kind of cool. The
collaborative editing was more polished than any other version I've seen,
though I didn't have much use for it.
As cool as SubEthaEdit was, I always felt like there was a better editor out
there for me. Then I found [TextMate][].
At the time I thought TextMate was amazing (and it really was). It *looked*
like a Mac application. It was super easy to learn (all the OS X text movement
commands just worked). There were bundles for everything.
I still used Vim occasionally (like when I had a job and only had a Windows
machine), but for the most part I was a TextMate kid.
After using TextMate for four years I decided it was time for another change.
Development on TextMate has stalled while TextMate Forever (err, TextMate 2) is
in the works. I started thinking about Vim (and reading blog posts by others
about how they switched back) and decided to give it another try.
A few months ago I bought [Learning the vi and Vim Editors][] and went
cold-turkey with Vim as my main text editor. I haven't looked back since.
[nano]: http://en.wikipedia.org/wiki/Nano_(text_editor)
[SubEthaEdit]: http://www.codingmonkeys.de/subethaedit/
[TextMate]: http://macromates.com/
[Learning the vi and Vim Editors]: http://amzn.com/059652983X
Why I Switched to TextMate
--------------------------
As I mentioned before, there were a few reasons I switched to TextMate in the
first place.
First of all: it looks and acts like a real OS X application. You can drag
files onto the icon to open them, it supports all the default OS X text
movement commands, and the chrome looks like it belongs on OS X. I don't know
if [MacVim][] was around at the time, but if it was I never found it.
This matters. The effort required to get started with a new editor is
dramatically reduced if that editor supports all the conventions of the
operating system you use every day.
It also has a vibrant community of people writing bundles for it, so there was
support for almost anything I wanted to use.
[MacVim]: http://code.google.com/p/macvim/
Why I Came Back to Vim
----------------------
I came back to Vim for a number of reasons.
First of all: I started reading about and desiring features that didn't seem to
be coming to TextMate any time soon. The biggest of those was split windows.
I saw the appeal of split windows right away and now that I use them I can't
imagine not having them.
Another reason is version control. A while ago I started keeping my
[dotfiles][] in a [Mercurial][] repository which makes it extremely easy to set
up new machines. Vim keeps all of its configuration in two simple places:
a simple `~/.vimrc` file and a `~/.vim` directory full of plain text files.
Vim's plain text configuration files and plugins are very easy to version
control.
Vim's community has been around far longer than TextMate's so there's an even
richer set of plugins, bundles and syntax files available.
Another reason people give for enjoying Vim is that it runs everywhere. Yes,
it's nice to have my favorite editor available when I SSH into a machine, but
it's not a huge deal if I don't. I almost always edit files on my own machine
and then deploy them with an automated script of some kind, so editing on
a server is very rare for me.
[dotfiles]: http://bitbucket.org/sjl/dotfiles/
[Mercurial]: http://hg-scm.org/
Core Differences
----------------
For me, Vim and TextMate are very different. TextMate relies mainly on
keyboard shortcuts (involving Shift, Ctrl, Cmd and Alt) to do more than simply
edit text. Vim uses a "modal editing" idea to accomplish the same task.
TextMate's philosophy is much the same as any normal OS X application's, and
I said that acting like the OS reduces the barrier of entry for a text editor,
so why do I prefer Vim's philosophy?
First I should prefix my answer with this: I'm not averse to a learning curve
for something as important to me as a text editor. Yes, it's awesome if
I don't need to unnecessarily rewire my brain, but if it's going to save me
a lot of time then I'm willing to cut a bit of slack here.
My problem with TextMate's philosophy can be summed up in one word:
"shadowing".
If I want to define a new command in a bundle (or if someone else has already
done it), I'm never really sure if I'm "overwriting" some other command that my
fingers know but my brain doesn't really register.
By the time I try to use the default command it could be days or weeks after
I defined the custom one, and I need to figure out what I did all over again.
It's quite frustrating.
Vim's "insert" mode means that when I'm editing text I'm using the normal OS
X text movement shortcuts that I know and love. When I want to do something
special I enter normal mode and don't have to worry about shadowed commands
(Vim's leader key also helps with this).
Vim's "Feeling"
---------------
Vim's normal mode has a unique "feeling" that I haven't seen in any other text
editor (although [E][] may [change that][modalE]). I've heard it described in
a number of ways, and I think that while no one analogy fully explains it,
together they give a pretty good description.
[E]: http://www.e-texteditor.com/
[modalE]: http://e-texteditor.com/blog/2010/beyond-vi
### A "Language" of Text Editing
One way to think about Vim's normal-mode commands is like a language. You have
"verbs" and "nouns". For example: the "change" command (`c`) would be a verb
and the "word" item (`w`) is a noun. You can combine them to form imperative
sentences that talk about what you want to do with your text.
The wonderful part about this is that whenever you learn a new verb (like
"delete" (`d`)) you can immediately apply it to all the nouns you know, and
vice versa.
Vim also has "adjectives" like "inside" and "around" (`i` and `a`) that let you
craft sentences like "change inside parenthesis" (`ci(` or `cib`). Once you
learn one of these you can immediately apply it to all the verbs and nouns you
already know.
### The Physics of Text
The second way to describe the feeling of Vim is "physics". It's a much less
concrete description but I think it's still useful.
 They might have very different effects when they
land on someone but the act of throwing them is pretty much the same.
Vim's operators/actions/verbs act the same way. `daw` has a very different
effect than `da{` but they can both be understood with a basic underlying
principle: `da` will "delete around ``".
### "Programming" Your Editing
The last way that I hear people talking about Vim's editing is: "it feels like
you're 'programming' your text".
This analogy is often made by programmers (obviously) and I think it works on
more than one level.
First: Vim's basic editing commands can be likened to function calls. `daw`
can be thought of a running a function like `delete(type='word', around=True)`.
I don't think this way (I prefer the language and physics analogies) but other
people do.
Although I don't think of the *basic* Vim commands as programming I do see
some aspects of it in other areas. For example: say I define a leader command
in my `~/.vimrc` file:
:::vim
nnoremap 1 yypVr=
I think of this as defining `1` to be a function that performs the
following actions:
* Yank/copy the current line.
* Paste it below (and move down to the pasted version).
* Select the copied line.
* Replace every character with `=`.
Another more obvious "programming" aspect of Vim is creating macros. Macros are
like tiny little functions you create to help you when you're editing a file.
You can define them, execute them, and even edit them by pasting, editing and
yanking them back.
Getting Started
---------------
When I switched back to Vim I did a few things that helped make my transition
stick.
First: I bought [Learning the vi and Vim Editors][] and read it cover to cover.
It helps quite a bit to know the history behind Vim, and the book also teaches
you the basics of Vim's editing commands.
I also looked through [the Vim subreddit][rvim] to find some good blog posts about
switching. A lot of people have written about it and it was very helpful to
read about their experiences.
And finally, the most important part: I switched cold-turkey. Vim runs everywhere, so
there's really no excuse for not doing this. Every decent OS has a version of
Vim that makes insert mode "just work" for their OS (like gvim or MacVim), so
the barrier to entry these days is pretty low.
You can get Vim and start using it right away by staying in insert mode most of
the time. Then you can start learning its real features at your own pace.
Trying to use two different editors at once just slows down the learning
process and makes you less productive in both.
[rvim]: http://reddit.com/r/vim/
Making Vim More Useful
----------------------
One of the flaws of Vim is that it takes quite a bit of configuration to make
it behave in a decent way. The defaults are backwards-compatible with vi (i.e.
older than most college students) and not very helpful.
Here are a few of the things I do to make Vim a bit more palatable.
**A quick side note:** even if you don't use Vim, you *need* to [remap your
capslock key][capslock] to something useful. Just do it, you'll thank me.
[capslock]: http://c2.com/cgi/wiki?RemapCapsLock
### Important .vimrc Lines
I won't go through every line in [my `~/.vimrc` file][sjlvimrc], but here are some of the
lines that I simply could not live without.
[sjlvimrc]: http://bitbucket.org/sjl/dotfiles/src/tip/vim/.vimrc
First, a few lines that you absolutely must have:
:::vim
filetype off
call pathogen#runtime_append_all_bundles()
filetype plugin indent on
set nocompatible
set modelines=0
The `filetype` and `call` lines are for loading Pathogen, which is described in
the bundles section. See [Pathogen's docs][pathogendocs] to learn about why the
first `filetype` line is there.
[pathogendocs]: http://www.vim.org/scripts/script.php?script_id=2332
`set nocompatible` gets rid of all the crap that Vim does to be vi compatible.
It's 2010 -- we don't need to be compatible with vi at the expense of
functionality any more.
The `modelines` bit prevents some [security exploits][] having to do with
modelines in files. I never use modelines so I don't miss any functionality
here.
[security exploits]: http://lists.alioth.debian.org/pipermail/pkg-vim-maintainers/2007-June/004020.html
Next I set my tab settings:
:::vim
set tabstop=4
set shiftwidth=4
set softtabstop=4
set expandtab
I like all tabs to expand to four spaces. Check out [this Vimcast][vctabs] to
learn more about each of these options.
[vctabs]: http://vimcasts.org/episodes/tabs-and-spaces/
Next are a few options that just make things better:
:::vim
set encoding=utf-8
set scrolloff=3
set autoindent
set showmode
set showcmd
set hidden
set wildmenu
set wildmode=list:longest
set visualbell
set cursorline
set ttyfast
set ruler
set backspace=indent,eol,start
set laststatus=2
set relativenumber
set undofile
Each of these lines are basically to make Vim behave in a sane manner. The two
"interesting" ones are the last two, and both deal with features that are
[new in Vim 7.3][vim73].
[vim73]: http://groups.google.com/group/vim_announce/browse_thread/thread/66c02efd1523554b
`relativenumber` changes Vim's line number column to display how far away each
line is from the current one, instead of showing the absolute line number.
I almost never care what numeric line I'm on in a file (and if I do I can see
it in the status line), so I don't miss the normal line numbers. I *do* care
how far away a particular line might be, because it tells me what number I need
to use with motion commands like `dd`.
`undofile` tells Vim to create `.un~` files whenever you edit a file.
These files contain undo information so you can undo previous actions even
after you close and reopen a file.
Next I change the `` key:
:::vim
let mapleader = ","
For me `,` is easier to type than `\`. I use leader commands constantly so it's
worth changing.
The next thing I do is tame searching/moving:
:::vim
nnoremap / /\v
vnoremap / /\v
set ignorecase
set smartcase
set gdefault
set incsearch
set showmatch
set hlsearch
nnoremap :noh
nnoremap %
vnoremap %
The first two lines fix Vim's horribly broken default regex "handling" by
automatically inserting a `\v` before any string you search for. This turns
off Vim's crazy default regex characters and makes searches use normal regexes.
I already know Perl/Python compatible regex formatting, why would I want to
learn another scheme?
`ignorecase` and `smartcase` together make Vim deal with case-sensitive search
intelligently. If you search for an all-lowercase string your search will be
case-insensitive, but if one or more characters is uppercase the search will be
case-sensitive. Most of the time this does what you want.
`gdefault` applies substitutions globally on lines. For example, instead of
`:%s/foo/bar/g` you just type `:%s/foo/bar/`. This is almost always what you
want (when was the last time you wanted to only replace the first occurrence of
a word on a line?) and if you need the previous behavior you just tack on the
`g` again.
`incsearch`, `showmatch` and `hlsearch` work together to highlight search
results (as you type). It's really quite handy, as long as you have the next
line as well.
The `` mapping makes it easy to clear out a search by typing
`,`. This gets rid of the distracting highlighting once I've found what
I'm looking for.
The last two lines make the tab key match bracket pairs. I use this to move
around all the time and `` is a hell of a lot easier to type than `%`.
The next section makes Vim handle long lines correctly:
:::vim
set wrap
set textwidth=79
set formatoptions=qrn1
set colorcolumn=85
These lines manage my line wrapping settings and also show a colored column at
85 characters (so I can see when I write a too-long line of code).
See [`:help fo-table`][fotable] and the Vimcasts on [soft wrapping][] and [hard wrapping][] for more information.
[fotable]: http://vimdoc.sourceforge.net/htmldoc/change.html#fo-table
[soft wrapping]: http://vimcasts.org/episodes/soft-wrapping-text/
[hard wrapping]: http://vimcasts.org/episodes/hard-wrapping-text/
Next comes something other TextMate refugees may like:
:::vim
set list
set listchars=tab:▸\ ,eol:¬
This makes Vim show invisible characters with the same characters that TextMate
uses. You might need to adjust your color scheme so they're not too
distracting. [This Vimcast][vcinvis] has more information.
[vcinvis]: http://vimcasts.org/episodes/show-invisibles/
New Vim users will want the following lines to teach them to do things right:
:::vim
nnoremap
nnoremap
nnoremap
nnoremap
inoremap
inoremap
inoremap
inoremap
nnoremap j gj
nnoremap k gk
This will disable the arrow keys while you're in normal mode to help you learn
to use `hjkl`. Trust me, you want to learn to use `hjkl`. Playing a lot of
[Nethack][] also helps.
[Nethack]: http://www.nethack.org/
It also disables the arrow keys in insert mode to force you to get back into
normal mode the instant you're done inserting text, which is the "right way" to
do things.
It also makes j and k work the way you expect instead of working in some
archaic "movement by file line instead of screen line" fashion.

Finally, I really like TextMate's "save on losing focus" feature. I can't
remember a time when I *didn't* want to save a file after tabbing away from my
editor (especially with version control and Vim's persistent undo):
:::vim
au FocusLost * :wa
Those are the most important bits of my `~/.vimrc` file. Next I'll talk about
the wonderful namespace of customization that is Vim's `` key.
### Using the Leader
Vim dedicates an entire keyboard key for user-specific customizations. This is
called the "leader" and by default it's mapped to `\`. As I mentioned in the
previous section I prefer to use `,` instead.
Each person will find little things they type or execute often and want to
create shortcuts for those things. The leader is a kind of "namespace" to keep
those customizations separate and prevent them from shadowing default commands.
Here are a few of the things I use leader commands for. You'll certainly have
different ideas than I do, but this might give you an idea of what you can do.
I use `,W` to mean "strip all trailing whitespace in the current file" so I can
clean things up quickly:
:::vim
nnoremap W :%s/\s\+$//:let @/=''
I use Ack a lot (described below), so I mapped a leader key for it:
:::vim
nnoremap a :Ack
I work with HTML often, so I have `,ft` mapped to a "fold tag" function:
:::vim
nnoremap ft Vatzf
I also work with Nick Sergeant and he likes his CSS properties sorted, so
here's a `,S` mapping that sorts them for me:
:::vim
nnoremap S ?{jV/^\s*\}?$k:sort:noh
This next mapping imitates TextMates `Ctrl+Q` function to re-hardwrap
paragraphs of text:
:::vim
nnoremap q gqip
I have a `,v` mapping to reselect the text that was just pasted so I can
perform commands (like indentation) on it:
:::vim
nnoremap v V`]
This last mapping lets me quickly open up my `~/.vimrc` file in a vertically
split window so I can add new things to it on the fly.
:::vim
nnoremap ev :e $MYVIMRC
### Quicker Escaping
One thing you'll find yourself constantly doing in Vim is moving from insert
mode to normal mode. The default way to do this is by hitting Escape, but that
key is out of the way and hard to hit.
Another way is to use `Ctrl+C` or `Ctrl+[`, but I don't like using a chord for
something I press that often.
I personally use `jj` to exit back to normal mode. The only time I've ever
actually tried to hit two `j`'s in a row is just now while writing this entry,
so it doesn't conflict with my normal typing at all:
:::vim
inoremap jj
### Working With Split Windows
Being able to split my editor window and see more than one file at once is one
of the main reasons I switched to Vim. I know I'm not alone here after reading
various posts around the internet asking for this feature in TextMate.
Vim's default commands for interacting with splits, however, are kind of
clunky. I've added a few mappings to my `~/.vimrc` that make things work a bit
smoother.
This first mapping makes `,w` open a new vertical split and switch over to it.
Because really, how often do you split your window and not want to do something
in the new split?
:::vim
nnoremap w vl
You might notice that this mapping is for vertical splits. I almost *never*
use horizontal splits. All of my screens are widescreen, so I can fit several
files onscreen if they're split vertically. Horizontal splits don't let me see
enough of the file. If I *really* want a horizontal split I can use `s`
to get one.
This next set of mappings maps `` to the commands needed to move
around your splits. If you remap your capslock key to `Ctrl` it makes for very
easy navigation.
:::vim
nnoremap h
nnoremap j
nnoremap k
nnoremap l
Aesthetics
----------
I know some people say: "looks don't matter, the only thing that's important is
functionality". That's completely wrong.
If I'm looking at something for multiple hours each day it had damn well better
look pretty. There are three main steps to making Vim look pretty (for me, on
OS X -- your mileage may vary).
First: get [MacVim][]. It makes Vim look (and behave) like a native Mac
application. It helps it avoid standing out like a sore thumb among your other
applications. Linux and Windows users will probably want gvim.
Next: pick a decent font. I prefer 12 point [Menlo][]. You might have
a different preference, but at least try out a few and find one that has a nice
balance between line height (so you can get a good amount of lines on the
screen) and readability (slashed zeros, please).
Finally: find a good color scheme. I've been using [a slightly modified
version][myMolokai] of [Molokai][] (a port of the TextMate [Monokai][] theme)
since I came back to Vim, but recently I've also started flirting with
[Mustang][] and [Clouds Midnight][]. Spend an hour and find something that
looks good to you.
Here's what my current setup looks like:
![Current Vim Setup Screenshot](/media/images{{ parent_url }}/vim.png "My Current Vim Setup")
[Menlo]: http://arstechnica.com/apple/news/2009/06/font-changes-coming-to-mac-os-x-snow-leopard.ars
[myMolokai]: http://bitbucket.org/sjl/dotfiles/src/tip/vim/colors/molokai.vim
[Molokai]: http://www.vim.org/scripts/script.php?script_id=2340
[Monokai]: http://www.monokai.nl/blog/2006/07/15/textmate-color-theme/
[Mustang]: http://hcalves.deviantart.com/art/Mustang-Vim-Colorscheme-98974484
[Clouds Midnight]: http://forr.st/~yZn
Bundles I Use
-------------
Vim has been around for a *long* time, and many people have written extensions
for it. Here are a few of the bundles I couldn't live without in my day-to-day
editing.
### Pathogen
First of all: [Tim Pope][] has created the wonderful [Pathogen][] plugin that
makes managing *other* Vim plugins painless. Instead of scattering their files
throughout your `~/.vim/` folder you can keep their files inside a single
folder in `~/.vim/bundles/`.
Install it and keep your sanity.
[Tim Pope]: http://github.com/tpope
[Pathogen]: http://github.com/tpope/vim-pathogen
### PeepOpen
One of TextMate's "killer features" is its `Cmd+T` key. It lets you open files
quickly by typing fragments of their names.
There are a number of Vim plugins out there that try to emulate it. My
favorite is [PeepOpen][]. Yes, it's OS X only and costs money, but it's worth
it. It looks good and "just works".
 I've [offered a patch][] to add the same functionality for Mercurial but
haven't heard back from the developers.
If you don't use OS X (or want a free alternative to PeepOpen) I hear the
[Command-T][] plugin is quite nice.
[PeepOpen]: http://peepcode.com/products/peepopen
[offered a patch]: http://github.com/topfunky/PeepOpen-Issues/issues#issue/91
[Command-T]: https://wincent.com/products/command-t
### NERDTree
One plugin you'll hear about in almost all of these "switching to Vim" blog
posts is [NERDTree][]. It's a little plugin for browsing files in your project,
and it works great. There's no better "TextMate file-drawer" plugin around.
[NERDTree]: http://github.com/scrooloose/nerdtree
### NERDCommenter
Want to be able to comment and uncomment code with a few keypresses? You need
[NERDCommenter][]. It's surprising that Vim doesn't have decent commenting
functionality built in, but NERDCommenter fixes that.
I really only use this plugin for one single function: "toggle comment" with
`c`. That function alone is worth installing it.
[NERDCommenter]: http://github.com/scrooloose/nerdcommenter
### Ack
If you're a programmer and you don't know about [Ack][], you need to start
using it now. It's far, far better than grep.
The [Ack plugin][ack.vim] for Vim integrates Ack with Vim's quickfix window so
you can easily search and jump to results.
As I mentioned in the section about leader mappings I've got `,a` mapped to
bring up Ack all ready to search.
[Ack]: http://betterthangrep.com/
[ack.vim]: http://github.com/mileszs/ack.vim
### Snipmate
Another feature of TextMate that was *amazing* when I first saw it was
snippets. [SnipMate][] is a Vim plugin that emulates TextMate snippets.
It also stores them in easily-version-controlled plain text files, which is
a bonus over TextMate's snippets.
[SnipMate]: http://github.com/msanders/snipmate.vim
### Sparkup
[Sparkup][] is pretty much a great port of [Zen Coding][] for Vim. If you write
HTML at all this plugin will save you a ton of typing.
In a nutshell it lets you type something like:
:::text
div.content>h1.post-title+p{Sample Content}
Press `Cmd+E` and it will expand to this:
:::html
Sample Content
It's far less typing and it adds up over time.
[Sparkup]: http://github.com/rstacruz/sparkup
[Zen Coding]: http://code.google.com/p/zen-coding/
### Yankring
Vim's copying and pasting functionality (which uses registers) is very, very
powerful, but it's not exactly "user friendly". The [YankRing][] plugin adds
a lot *more* power, but also adds a few features that make copying and pasting
much more pleasant.
For example, after you paste some text you can replace that paste with the
previous item you copied with `Ctrl-P`. You can cycle back further by just
hitting `Ctrl-P` over and over.
YankRing also shares your yanked text between Vim windows, which makes things
"just work" when you want to paste text from one window into another.
You can also show a list of all your previously yanked text with `:YRShow`.
Mapping that command to a key is quite helpful:
:::vim
nnoremap :YRShow
inoremap :YRShow
YankRing offers a ton of other cool functionality but I haven't had the time or
motivation to really dig in and find out how to use it.
[YankRing]: http://www.vim.org/scripts/script.php?script_id=1234
### Surround (and Repeat)
Another of Time Pope's plugins that I use all the time is the [Surround][]
plugin. It adds another layer to Vim's physics: "surrounding items".
For example, you can "change surrounding single quotes to double quotes" by
using `cs'"`. Or if you're writing something in Markdown and want to italicize
a word you can use `ysiW*`.
All the nouns and verbs you already know can be used, which fits with Vim's
philosophy and makes it extremely powerful.
The [Repeat][] plugin is necessary to make these surround actions repeatable
with `.`.
[Surround]: http://github.com/tpope/vim-surround
[Repeat]: http://github.com/tpope/vim-repeat
### Slime
Emacs users often tout SLIME as one of Emacs' "killer features". When writing
LISP code it's unchallengably awesome.
Vim doesn't have anything like SLIME. It's not integrated with any language the
way Emacs is coupled to LISP. You can, however, achieve *some* of the power of
SLIME in Vim.
[Jonathan Palardy][] has written a little Vim plugin called [Slime.vim][] that
lets Vim easily communicate with a screen session, probably one running a REPL
for some language like LISP, Python or Ruby.
The general idea is that you'll fire up LISP in a screen session, then go over
to Vim and use `Ctrl+C Ctrl+C` to put chunks of code in your Vim window into
the screen session.
It works and is quite handy for when you want to experiment with the contents
of a file.
I personally use [a slightly modified version][mySlime] that removes a bit of
the flexibility I don't need to make it quicker to use. Maybe some day I'll
expand on it and push it up to BitBucket and GitHub in a repo of its own.
[Slime.vim]: http://technotales.wordpress.com/2007/10/03/like-slime-for-vim/
[Jonathan Palardy]: http://technotales.wordpress.com/
[mySlime]: http://bitbucket.org/sjl/dotfiles/src/tip/vim/plugin/slime.vim
### Scratch
The [Scratch][] plugin adds a function to quickly open a "scratch" buffer that
will never be saved.
I have it mapped to `` and use it with slime to quickly stick
a bit of code that I don't want in my actual file into the REPL.
[Scratch]: http://www.vim.org/scripts/script.php?script_id=664
### Rainbow Parentheses
[Rainbow Parentheses][] is a Vim plugin that colorizes parentheses, square
brackets, curly brackets and angle brackets according to their nesting.
It's easiest to describe what this looks like with a screenshot:
![Rainbow Parentheses Screenshot](/media/images{{ parent_url }}/rainbow.png "Rainbow Parentheses")
I use [a slightly modified version][myRainbow]. I have it mapped to `R`
and off by default. When I'm dealing with a particularly hairy piece of code
that has lots of nesting I simply hit `R` and get some color that helps
me keep my place.
[Rainbow Parentheses]: http://www.vim.org/scripts/script.php?script_id=1561
[myRainbow]: http://bitbucket.org/sjl/dotfiles/src/tip/vim/bundle/rainbow/
Things I Want
-------------
Although Vim is definitely my new favorite editor, this blog post wouldn't be
complete without a few complaints.
If anyone fixes/implements any of these I'll gladly buy them several beers.
  I've tried every combination of `cindent`,
`smartindent` and `autoindent` and I can't seem to get Vim to behave sanely.
The problem is that sometimes when I press return after a tag that I've already
created Vim will unindent the new line *and the previous line*. This is
excruciatingly annoying.
All I want is the following:
* When I press return, create a new line at the same indentation level as the
current one. Don't try to be clever and adjust the indent of new line in
any fashion.
* If I press tab at the beginning of a line, indent the *current line* by
one tabstop.
* If I press backspace at the beginning of a line, delete one tabstop on that
line only.
Please, someone make this happen and restore my sanity.
### Python Support for Slime
Earlier I mentioned that I use the slime plugin. One language it doesn't work
very well with is Python, because it preserves whitespace when it moves the
code over the REPL.
This is a problem with Python because if you try to move over an indented block
of code you'll get "unexpected indent" problems.
I'd love for someone to tweak slime so it intelligently unindents Python code.
I have some ideas on how this could work but unfortunately I don't have the
time to implement them.
### Gundo
A little-known fact about Vim is that it doesn't keep a list of your undo
history, it keeps a *tree*.
If I make 5 changes, undo 2 and then make 2 more Vim keeps track of *all* of
them. You can use `:undolist` to see the list of leaves in this "undo tree".
What I want is for someone to make an awesome "graphical undo" plugin that
shows a graph of the undo tree, much like Mercurial's graphlog extension shows
a graph of the changesets in a repository.
This graph would actually be simpler than Mercurial's graphlog because there
are no merges to deal with.
For bonus points let me browse the tree with `j` and `k`, press `p` to preview
a diff of what would happen if I went back to that version, and press `` to
actually go back.
**UPDATE:** I got tired of waiting, so I [wrote it myself][Gundo].
[Gundo]: http://bitbucket.org/sjl/gundo.vim/
### A Mercurial Version of Fugitive
The final thing I'd like is for someone to make a Mercurial plugin for Vim that
is as awesome as Tim Pope's [Fugitive][].
There's some Mercurial support for Vim out there, but for the most part it's
tied up in plugins that support multiple version control systems.
Any plugin that tries to support every system will fail at supporting one
single system perfectly, so I'd love for someone to come along and make an
*awesome* Vim plugin that lets you use Mercurial to its fullest while
inside Vim.
I simply don't know vimscript well enough to do this on my own, but if someone
else is interested I can certainly help out on the Mercurial and user interface
aspects.
[Fugitive]: http://github.com/tpope/vim-fugitive
Overall Thoughts
----------------
Transitioning back to Vim after using TextMate for a few years wasn't trivial,
but I feel that it was worth the effort. I have features like split windows
now and there are plugins that can provide anything I miss from TextMate.
If TextMate 2 ever gets released it would have to do some pretty amazing things
for me to want to switch back.
Overall I'm very happy with Vim. There are a lot of things that could be
improved, especially with the default settings (who cares about vi
compatibility in 2010?), but a text editor is worth a learning curve.
In my eyes Vim has two huge advantages over almost any other editor out there.
The first is it's *huge* ecosystem of plugins and syntax definitions, which is
only rivaled by Emacs (and *possibly* TextMate, though I doubt it). The second
is it's "modal editing" philosophy, which is extremely powerful and hasn't been
adopted by any other mainstream editor (except for *very* recent versions of
E).
If you've got questions or comments you should [find me on Twitter][twsl] and
let me know.
[twsl]: {{links.twsl}}
{% endblock %}


Deep Player Behavior Modeling is a machine learning technique that replicates individual player decision making.
Atomic state-action pairs are recorded for all symbolic player inputs, so that game state, player state, target state and action history are mapped to a distribution among predicted following actions.
Players reported to recognize their own behavioral patterns and enjoyed the challenge of opposing a believable, continuously learning foe.
In online multiplayer sessions, players did not notice when disconnected fellow players were replaced with their individual substitute.
Above that, DPBM can also be used for large-scale automated balancing simulations to closely resemble a whole population of players.


'Data Interchange Format'
Dxf was written for Autocad.
It is a vectorgraphic program written in Standard-ASCII.


The first section of your Phoenix Pay Stub will provide general information on your payment.
| Jane Tremblay | Net Pay: | $1,632.77 | |
|---|---|---|---|
| Compagny Governement/Gouvernement Canada |
Pay Begin Date: | 12/07/2018 | |
| - | Pay End Date: | 25/07/2018 | |
| - | Cheque Date: | 08/08/2018 | |
| Review the details of your paycheque. To view other cheques, select | View a Different Paycheque |
| Name: | Jane Tremblay | Business Unit: | CSD00 |
|---|---|---|---|
| Employee ID: | 012345678 | Pay Group: | TB |
| Address: | 123 Main St Winnipeg, MB R3M 1J1 | Department: | 624001 - CSD624001 |
| - | Location: | CSD-624001 Payroll | |
| - | Job Title: | Administrative Services | |
| - | Pay Rate: | $2,675.41 Biweekly |
Continue below to find a detailed breakdown of the main sections of the pay stub.
The amount deposited into your account.
The period of work for which payment has been issued.
Date the payment is deposited in your account (pay date).
For example, here CSD is the Department Code for ESDC in the pay system only.
This is your unique 9-digit personal record identifier (PRI).
TB stands for Treasury Board.
The 4 last digits identify your pay list (on this pay stub, the pay list would be 4001).
Biweekly salary based on your rate of pay and hours of work.
If so, multiply the biweekly rate by 26.088 to get your annual gross rateFootnote *.
On the above pay stub, Jane’s annual rate would be:
$2,675.41 × 26.088=$69,796.10 which is rounded to $69,796.
This corresponds to Step 2 of the AS-4.
Return to footnote * referrerTo calculate your gross pay if you are a part-time employee, a student, or simply want to learn more on how to calculate your gross pay, please refer to Annex 1, which is available in the Resources section. To access Annex 1, simply select the Toolbox icon, then select Resources.


Career Star
Billy Doors
Software Engineer
<EMAIL_ADDRESS>+1 555-245
Organization Chart
Social Media
Fb
In
Tw


#include "board.h"
Go to the source code of this file.
Classes | |
| struct | _sensor_reg |
| define a structure for sensor register initialization values More... | |
| struct | _sensor_output |
| struct | _sensor_profile |
| define a structure for sensor profile More... | |
Macros | |
| #define | SENDOR_SUPPORTED_OUTPUTS 7 |
| #define | SENSOR_REG_TERM 0xFF |
| terminating list entry for register in configuration file More... | |
| #define | SENSOR_VAL_TERM 0xFF |
| terminating list entry for value in configuration file More... | |
Typedefs | |
| typedef enum _sensorType | sensorType_t |
| Sensor type. More... | |
| typedef enum _sensorStatus | sendorStatus_t |
| Sensor status or return code. More... | |
| typedef enum _sensorTwiMode | sensorTwiMode_t |
| Sensor TWI mode. More... | |
| typedef enum _sensorResolution | sensorOutputResolution_t |
| Sensor resolution. More... | |
| typedef enum _sensorOutputFormat | sensorOutputFormat_t |
| Sensor output format. More... | |
| typedef struct _sensor_reg | sensorReg_t |
| define a structure for sensor register initialization values More... | |
| typedef struct _sensor_output | sensorOutput_t |
| typedef struct _sensor_profile | sensorProfile_t |
| define a structure for sensor profile More... | |
Enumerations | |
| enum | _sensorType { SENSOR_COMS = 0, SENSOR_CCD } |
| Sensor type. More... | |
| enum | _sensorStatus { SENSOR_OK = 0, SENSOR_TWI_ERROR, SENSOR_ID_ERROR, SENSOR_RESOLUTION_NOT_SUPPORTED } |
| Sensor status or return code. More... | |
| enum | _sensorTwiMode { SENSOR_TWI_REG_BYTE_DATA_BYTE = 0, SENSOR_TWI_REG_2BYTE_DATA_BYTE, SENSOR_TWI_REG_BYTE_DATA_2BYTE } |
| Sensor TWI mode. More... | |
| enum | _sensorResolution { QVGA = 0, VGA, SVGA, XGA, WXGA, UVGA } |
| Sensor resolution. More... | |
| enum | _sensorOutputFormat { RAW_BAYER_12_BIT = 0, RAW_BAYER_10_BIT, YUV_422_8_BIT, YUV_422_10_BIT, MONO_12_BIT } |
| Sensor output format. More... | |
Functions | |
| sendorStatus_t | sensor_twi_write_regs (Twid *pTwid, const sensorReg_t *pReglist) |
| Initialize a list of registers. More... | |
| sendorStatus_t | sensor_twi_read_regs (Twid *pTwid, const sensorReg_t *pReglist) |
| read list of registers. More... | |
| sendorStatus_t | sensor_setup (Twid *pTwid, const sensorProfile_t *sensor_profile, sensorOutputResolution_t resolution) |
| Load and configure sensor setting with giving profile. More... | |
| sendorStatus_t | sensor_get_output (sensorOutputFormat_t *format, uint32_t *width, uint32_t *height, sensorOutputResolution_t resolution) |
| Retrieves sensor output format and size for giving resolution. More... | |
| #define SENDOR_SUPPORTED_OUTPUTS 7 |
| #define SENSOR_REG_TERM 0xFF |
terminating list entry for register in configuration file
| #define SENSOR_VAL_TERM 0xFF |
terminating list entry for value in configuration file
| typedef enum _sensorStatus sendorStatus_t |
Sensor status or return code.
| typedef struct _sensor_output sensorOutput_t |
| typedef enum _sensorOutputFormat sensorOutputFormat_t |
Sensor output format.
| typedef enum _sensorResolution sensorOutputResolution_t |
Sensor resolution.
| typedef struct _sensor_profile sensorProfile_t |
define a structure for sensor profile
| typedef struct _sensor_reg sensorReg_t |
define a structure for sensor register initialization values
| typedef enum _sensorTwiMode sensorTwiMode_t |
Sensor TWI mode.
| typedef enum _sensorType sensorType_t |
Sensor type.
| enum _sensorOutputFormat |
| enum _sensorResolution |
| enum _sensorStatus |
| enum _sensorTwiMode |
| enum _sensorType |
| sendorStatus_t sensor_get_output | ( | sensorOutputFormat_t * | format, |
| uint32_t * | width, | ||
| uint32_t * | height, | ||
| sensorOutputResolution_t | resolution | ||
| ) |
Retrieves sensor output format and size for giving resolution.
| width | pointer to image width to be read. |
| height | pointer to image height to be read. |
| resolution | pointer to resolution request. |
| sendorStatus_t sensor_setup | ( | Twid * | pTwid, |
| const sensorProfile_t * | sensor_profile, | ||
| sensorOutputResolution_t | resolution | ||
| ) |
Load and configure sensor setting with giving profile.
| sensor_profile | pointer to a profile instance. |
| resolution | resolution request |
| sendorStatus_t sensor_twi_read_regs | ( | Twid * | pTwid, |
| const sensorReg_t * | pReglist | ||
| ) |
read list of registers.
The list of registers is terminated by the pair of values
| pTwid | TWI interface |
| pReglist | Register list to be read |
| sendorStatus_t sensor_twi_write_regs | ( | Twid * | pTwid, |
| const sensorReg_t * | pReglist | ||
| ) |
Initialize a list of registers.
The list of registers is terminated by the pair of values
| pTwid | TWI interface |
| pReglist | Register list to be written |


A Bug's Life (1998)
Directed by John Lasseter (Toy Story), and Andrew Stanton (A Story)
Written by Andrew Stanton, Don McEnery (Hercules), and Bob Shaw (Hercules)
Featuring the voices of: Dave Foley ("Newsradio"), Kevin Spacey (LA Confidential), Julia Louis-Dreyfus ("Seinfeld"), Hayden Panettiere (The Object of my Affection), Phyillis Diller ("The Bold and the Beautiful"), Richard Kind ("Spin City"), David Hyde Pierce ("Frasier"), Joe Ranft (Toy Story), Dennis Leary (Wag the Dog), Johnathan Harris ("Lost in Space"), Madeline Kahn (Clue), Bonnie Hunt (Jumanji)
As reviewed by James Brundage
Well, the battle of the bugs is finally over and I think, cash wise, that Disney will come out on top once again. After all, there is such a thing a customer loyalty when it comes to kids and animated movies and whatever they see at McDonalds (Disney) seems to be their drug of choice. Sadly, it has to be ours.
A Bug's Life is about a colony of Ants who refuse to give their food over to the locusts (actually the film's main character, Flick (the Leonardo da Vinci of Ants (he'd cut an ear off if he had one), messes things up for them at the beginning by knocking over the altar the ants give the grasshoppers food on). Having to meet double-quota by the end of fall, the powers that be send Flick away on a false mission to get larger bugs to help them defeat the grasshoppers.
So Flick's out of the way and they're working their tails (if they had em) off to get enough food for the grasshoppers and them. But Flick ends up mistaking some circus bugs for warriors (due to the temper of Francis (Dennis Leary), and comes back with them. They find out what he actually wants, decide to leave, but end up staying after saving one of the Queen ant's daughters, Dot, from being eaten by a bird (who has a roar that sounds like a T-rex from Jurassic Park). Why?
So everyone, under the guidance of the genius ant Flick, bands together to defeat the grasshoppers while developing characters, making cheap jokes, and laughing all around.
The sad thing about this year's battle of the bugs was that neither film could make it the right for both ages, like Pixar's earlier film Toy Story and the rather intelligent short Geri's Game, which everyone got to watch as A Bug's Life started up. This one catered specifically to the younger generation, which is fine for them but disappoints me, because I haven't been five for a long time.  Look on their faces. I'm saddened by the both of them, as much as I personally loved Antz, because they've all gotten so caught up in making the buck that they've forgotten that they have to appeal to both kids and adults.
I thought both were funny, I thought both had excellent computer animation, and I think both will do moderately well. But if they could have only focused on their target audience (families), then they would have done a helluva lot better.
http://fly.to/criticsheaven
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


Ever need a lean, simple, quick lightbox for images that is responsive, delegates, pretty, no required images, includes captions? That is exactly what Rebox does. Instead of using a rediculous amount of javascript to restrict image sizes within the window, Rebox uses css max-width. The design requires no images, although if you want to reskin it you can. This keeps the library clean, and simple.
The final thing you should know.. Rebox comes from REsponsive lightBOX.
Get Started
Highly Recommended
Subscribe to my newsletter and follow me @practicalweb.
Donation
Has Rebox been helpful to you?
Download
Just include the js and css file along with either Zepto or jQuery. After that you're all set for the examples below!
When using Zepto you need to include fx and fx_methods outside of the basic build. Also if you want touch swipe guestures include the touch module. I suggest using Zepto Builder to create a clean build.
Version
Version 0.1
Last updated on 03/20/2014
jQuery Rebox is currently available for use in all personal or commercial projects under MIT license.
Examples
Single Initialization
Create a single lightbox, individually on each image:
$('#gallery1 a').rebox();
Dynamically add images after the fact
During page interactions you can add to your container element and new images will be pickedup (But not during an open modal):
$('#gallery3').rebox({ selector: 'a' }); // don't worry about the following, it just injects a new img.. var counter = 0; $('#gallery3Add').on('click', function(e){ e.preventDefault(); var images = ['a','b','c','d'], letter = images[counter++ % images.length]; $('#gallery3').append( ''+ ''+ ' ' ); });
Custom Content
Using templates you can show images, videos, or anything. By default only the "image" template is implemented.
First you need to add a template type. Each type is a function that is passed the current item that needs to be shown (the thumb image), current Rebox settings, and a callback you must call when your new jquery object is created. The scope of the callback must be this new element. If you want the callback to execute immediately just use jquery's .each().
Next on your gallery links you need to set the template to use with the data attribute: data-rebox-template="video" By default all .
Using this function approach to templates you're able to do your post creation work to the new content when needed.
/*

 */ $('#gallery4 a').rebox({ templates:{ video: function($item, settings, callback){ var url = $item.attr('href').replace(/\.\w+$/,''); return $('<video class="'+ settings.theme +'-content" controls preload="metadata" '+ 'poster="'+url+'.jpg">'+ '<source src="'+url+'.webm" type="video/webm" />'+ '<source src="'+url+'.mp4" type="video/mp4" />'+ 'Your browser does not support the HTML5 video tag'+ '</video>').on('loadeddata', callback); } } });
Events Example
Click through the gallery with your console open to view the events:
$('#gallery5').rebox({ selector: 'a' }) .on('rebox:open', function(e, rx){ console.log(e.type, rx); }) .on('rebox:close', function(e, rx){ console.log(e.type, rx); }) .on('rebox:goto', function(e, rx, i, $item, $img){ console.log(e.type, rx, i, $item, $img); });
The Options
{ theme: 'rebox', // class name parent gets (for your css) selector: null, // the selector to delegate to, should be to the  which contains an  prev: '←', // use an image, text, whatever for the previous button next: '→', // use an image, text, whatever for the next button loading: '%', // use an image, text, whatever for the loading notification close: '×', // use an image, text, whatever for the close button speed: 600, // speed to fade in or out zIndex: 1000, // zIndex to apply to the outer container cycle: true, // whether to cycle through galleries or stop at ends captionAttr: 'title' // name of the attribute to grab the caption from template: 'image', // the default template to be used (see templates below) templates: { // define templates to create the elements you need function($item, settings) image: function($item, settings, callback){ return $('').load(callback); } } }
The Methods
// Initialize a rebox instance $el.rebox({}); // Enable a rebox, generally you don't have to call this // but if you want to enable and disable this could be useful $el.rebox('enable'); // Disable a rebox. Again you generally don't need this // but if you want to enable and disable this could be useful $el.rebox('disable'); // Go to the next image in the queue $el.rebox('next'); // Go to the prev image in the queue $el.rebox('prev'); // Go to a specific index in the queue $el.rebox('goto', 4); // Destroy a rebox $el.rebox('destroy'); // Get or set an option. When value is provided a Set takes place // If only the key is provided the value will be retrieved $el.rebox('option', key, value); // if an object is passed each setting will be applied $el.rebox('option', { speed: 500 }); // set global defaults $.rebox.setDefaults({ theme: 'mytheme' });
The Events
// when the control is opened $el.bind('rebox:open', function(e){}); // when the control is closed $el.bind('rebox:close', function(e){}); // when the control changes image, passes the index as second parameter $el.bind('rebox:goto', function(e, i){}); // when the control is disabled $el.bind('rebox:disable', function(e){}); // when the control is destroyed $el.bind('rebox:destroy', function(e){});


Strictly Come Dancing: Michelle Visage voted out in Week 9
She and Giovanni Pernice lost out to Saffron Barker
by Robert LeighDrag Race star Michelle Visage's wild ride on Strictly Come Dancing has come to an end in Blackpool.
The US TV personality, 51, became the ninth celebrity to leave the BBC One competition after she lost out in the dance off to YouTuber Saffron Barker.
Michelle and pro partner Giovanni Pernice found themselves rock bottom of the leaderboard on Saturday night, despite picking up a respectable 32 points for their couple's choice - a street commercial to Vogue by Madonna.
Judges and viewers at home via social media made it clear how much they appreciated the routine's bold theme, but it seems that did not translate into votes.
Read more: Michelle Visage 'at war with BBC over her axing from Strictly Come Dancing tour'
Craig Revel Horwood remarked yesterday evening: "I loved the high styling of it and I loved the sentiment of it."
And head judge Shirley Ballas added: "A dance is an expression to music and you used it fully. I also loved the sentiment."
Meanwhile, Saffron and her partner AJ Pritchard racked up a score of 35 to finish fourth out of the seven acts remaining.
That, too, was not enough to keep them safe from potential elimination and demonstrates how every point counts as the contest reaches the later stages.
Read more: Strictly's Motsi Mabuse tickles viewers with a bizarre slip of the tongue during Blackpool show
And although the standard of performances was very high for the annual bonanza in the north west, there was controversy elsewhere when Karim Zeroual was denied a perfect score.
Many fans felt the presenter had been 'robbed' of four 10s.
Veteran pro partner Anton du Beke will probably have fond memories of this trip to Blackpool, though. The 53-year-old achieved his first 10 in 17 years on the show!
And following a dramatic show, it seems the show's stars made the most of unwinding before another week of hard training. According to a tabloid report, the post-show party in Blackpool for some continued until 5am.
Some of Michelle's fans feel she lost her place in the competition because viewers didn't understand the significance and importance of Vogue-ing, which is so rooted within the gay community.
They argued that her routine didn't contain enough technical dance moves.
Strictly Come Dancing returns to BBC One next Saturday at 7pm
Leave us a comment on our Facebook page @EntertainmentDailyFix and let us know what you think of this story.


{% extends 'base.html' %} {% block title %} Directives | Bear Blog {% endblock %} {% block content %} {% if blog.upgraded %} Directives Extend your Bear blog by adding custom code to the <head> and <footer> tags. {% csrf_token %} ← Back Save View Head directive: {{ blog.header_directive }} Footer directive: {{ blog.footer_directive }} Markdown/HTML {% else %} Upgrade to add header and footer directives to your Bear blog. {% endif %} {% endblock %}
Extend your Bear blog by adding custom code to the <head> and <footer> tags.
← Back Save View
Head directive: {{ blog.header_directive }}
Footer directive: {{ blog.footer_directive }} Markdown/HTML


Travis Scott x Air Jordan
26 Sep 2019 - Elfar
Travis Scott x Air Jordan 1 High OG TS
Travis Scott Jordan 1 Buyer’s Guide
Cost: $175
Color: Sail/Black-Dark Mocha-University Red
Style Code: CD4487-100
After months of unfettered anticipation, two shock drops, and plenty of speculation, the Travis Scott Air Jordan 1 is finally set to release tomorrow. With Scott’s white-hot popularity and the AJ1’s current standing as Jordan Brand’s foremost retro silhouette, the shoes are nothing short of a perfect storm of hype. However, they’re certainly not all sizzle and no steak. The design stacks up as well with its bold backwards lateral Swoosh, hidden stash pocket, and versatile sail/brown/black colorway. Although we’re not even 50% of the way through 2019 yet, many pundits have La Flame’s AJ1s pegged as their preemptive pick for shoe of the year, and for good reason: it’s certainly difficult to see another sneaker generating — and then sustaining — this level of buzz. Although most raffles have already closed, you’ll still get to try your luck at some spots tomorrow, so take one final look at the design right here.


I have {{friends.length}} friends. They are: {{friends}}
[{{$index + 1}}] {{friend.name}} who is {{friend.age}} years old.


About me
I am a Software Developer. Graduated from the University of Texas at Dallas with M.S. in Computer Science in 2017. I am interested and specialized in Software Development, Computer Networking, Web Development, Software Defined Network, Fog/Cloud Computing, Optical network design and Network security.
I love programming and I have built various programs related to my interest. Most of them are open source projects on Github. Please feel free to check them out and I would be very happy to hear your valueable feedback.


@article{lee2021diffeomorphic, title = {Diffeomorphic Particle Image Velocimetry}, author = {Lee, Yong and Mei, Shuang}, journal = {IEEE Transactions on Instrumentation and Measurement}, doi = {10.1109/tim.2021.3132999}, url = {https://doi.org/10.1109/TIM.2021.3132999}, issn = {0018-9456}, year = {2021} }


Numbering Paths
问题描述 :
This problem involves determining the number of routes available to an emergency vehicle operating in a city of one-way streets.
Given the intersections connected by one-way streets in a city, you are to write a program that determines the number of different routes between each intersection. A route is a sequence of one-way streets connecting two intersections.
Intersections are identified by non-negative integers. A one-way street is specified by a pair of intersections. For example, j k indicates that there is a one-way street from intersection j to intersection k. Note that two-way streets can be modeled by specifying two one-way streets: j k and k j .
Consider a city of four intersections connected by the following one-way streets:
0 1
0 2
1 2
2 3
There is one route from intersection 0 to 1, two routes from 0 to 2 (the routes are 0-1-2 and 0-2 ), two routes from 0 to 3, one route from 1 to 2, one route from 1 to 3, one route from 2 to 3, and no other routes.
It is possible for an infinite number of different routes to exist. For example if the intersections above are augmented by the street , there is still only one route from 0 to 1, but there are infinitely many different routes from 0 to 2. This is because the street from 2 to 3 and back to 2 can be repeated yielding a different sequence of streets and hence a different route. Thus the route 0-2-3-2-3-2 is a different route than 0-2-3-2 .
输入:
There will never be a one-way street from an intersection to itself. No city will have more than 30 intersections.
输出:
If there are an infinite number of different paths between two intersections a -1 should be printed. DO NOT worry about justifying and aligning the output of each matrix. All entries in a row should be separated by whitespace.
样例输入:
7 0 1 0 2 0 4 2 4 2 3 3 1 4 3 5 0 2 0 1 1 5 2 5 2 1 9 0 1 0 2 0 3 0 4 1 4 2 1 2 0 3 0 3 1
样例输出:
matrix for city 0 0 4 1 3 2 0 0 0 0 0 0 2 0 2 1 0 1 0 0 0 0 1 0 1 0 matrix for city 1 0 2 1 0 0 3 0 0 0 0 0 1 0 1 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 matrix for city 2 -1 -1 -1 -1 -1 0 0 0 0 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 0 0 0
题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=1625、
思路：大牛说是floyd判环，一想确实如此，我还一直在想如果用记忆化的怎么处理环呢…orz….
首先通过Floyd预处理，把所有的路径数求出来，即d[i][j] += d[i][k] * d[k][j]。然后确定有无环，如果存在环的话，即d[k][k] != 0（存在环），那么所有的点i，j，只要经过了k（i->k->j），那么它的路径数是不能确定的，反之，确定。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; #define MAXN 55 int path[MAXN][MAXN]; int m,n; void floyd(){ for(int k=0;k<=n;k++){ for(int i=0;i<=n;i++){ for(int j=0;j<=n;j++){ path[i][j]+=path[i][k]*path[k][j]; } } } for(int i=0;i<=n;i++)if(path[i][i]){ path[i][i]=-1; for(int j=0;j<=n;j++){ for(int k=0;k<=n;k++){ if(path[j][i]&&path[i][k]){ path[j][k]=-1; } } } } } int main(){ int u,v,t=0; while(~scanf("%d",&m)){ memset(path,0,sizeof(path)); n=0; for(int i=1;i<=m;i++){ scanf("%d%d",&u,&v); path[u][v]=1; n=max(n,max(u,v)); } printf("matrix for city %d\n",t++); floyd(); for(int i=0;i<=n;i++){ for(int j=0;j<n;j++){ printf(" %d",path[i][j]); } printf(" %d\n",path[i][n]); } } return 0; }
解题报告转自：http://www.cnblogs.com/wally/archive/2013/05/11/3072575.html
不错的代码！
int L[m+1][n+1];这样定义出错，这个在gcc上可以编译通过 在VS上不行 应该改为new 或者vector
涨姿势了
不需要输出，只要函数返回值正确就行
和编译器有关吧，我用的g++正常。头文件可能还需要一个<string.h>
惊艳了，没想到代码如此简洁
惊艳了，没想到代码如此简洁
代码过于复杂了吧
printf这个函数在计算的时候是从右到左，打印是从左到右。
有两个重复的话结果是正确的，但解法不够严谨，后面重复的覆盖掉前面的，由于题目数据限制也比较严，所以能提交通过。已更新算法
这个后缀数组不是常用的那个.
输出规范写错了哦~


The above operators are available in the following packages:
rx.all.js
rx.all.compat.js
rx.binding.js (requires either rx.js or rx.compat.js)
rx.lite.js
rx.lite.compat.js
RxJS also has a multicast operator which operates on an ordinary Observable,
multicasts that Observable by means of a particular Subject that you specify, applies a
transformative function to each emission, and then emits those transformed values as its own
ordinary Observable sequence. Each subscription to this new Observable will trigger a
new subscription to the underlying multicast Observable.
Sample Code
var subject = new Rx.Subject();
var source = Rx.Observable.range(0, 3)
.multicast(subject);
var observer = Rx.Observer.create(
function (x) { console.log('Next: ' + x); },
function (err) { console.log('Error: ' + err); },
function () { console.log('Completed'); }
);
var subscription = source.subscribe(observer);
subject.subscribe(observer);
var connected = source.connect();
subscription.dispose();
The multicast operator is available in the following packages:
rx.all.js
rx.all.compat.js
rx.binding.js (requires either rx.lite.js or rx.compat.js)
rx.lite.js
rx.lite.compat.js
There is also a let operator (the alias letBind is available for
browsers such as Internet Explorer before IE9 where “let” is
forbidden). It is similar to multicast but does not multicast the underlying
Observable through a Subject:
Sample Code
var obs = Rx.Observable.range(1, 3);
var source = obs.let(function (o) { return o.concat(o); });
var subscription = source.subscribe(
function (x) { console.log('Next: ' + x); },
function (err) { console.log('Error: ' + err); },
function () { console.log('Completed'); });
var subscription = source.subscribe(
function (x) { console.log('Next: ' + x); },
function (err) { console.log('Error: ' + err); },
function () { console.log('Completed'); });


A set of functions to handle date values in various shapes
(version 1.0.0)
-
Functions are grouped into:
-
set*(), to create various value shapes expressing a date:
-
setDateObj( value ), a simple object with integer values ({ year:, month:, day: })
-
setDateArray( value ), an array of integers ([ yaer, month, day ])
-
setDateStr( value ), a string in form of 'YYYYMMDD' (where YYYY is for year, MM for month, DD for day)
-
setDateRepr( value, pattern ) a representation string in form of 'DD/MM/YYYY' (by default but also customizable to other patterns)
-
setDateDate( value ) an instance of JS Date class
-
-
get*(), to evaluate and retrieve the date values from the above shapes:
-
getDateObj( value ), date values from an object ({ year:, month:, day: })
-
getDateArray( value ), date values from an array of integers ([ yaer, month, day ])
-
getDateStr( value ), date values from a string in form of 'YYYYMMDD'
-
getDateRepr( value, pattern ), date values from a representation string like 'DD/MM/YYYY'
-
getDateDate( value ), date values from an instance of JS Date class
-
-
op*(), to compare two date values:
-
opEqualTo( date1, date2 ), the one date should be equal to the other
-
opNotEqualTo( date1, date2 ), the one date should not be equal to the other
-
opGreaterThan( date1, date2 ), the first date should be greater than the second
-
opGreaterThanEqualTo( date1, date2 ), the first date should be greater than or equal to the second
-
opLessThan( date1, date2 ), the first date should be less than the second
-
opLessThanEqualTo( date1, date2 ), the first date should be less than or equal to the second
-
-
calc*(), to calculate new date or related values:
-
calcDayOfWeek( date ), the position of a date in the days sequence of the week (from 1 to 7, monday to sunday)
-
calcDayOfYear( date ), the position of a date in the days sequence of the year (from 1 to 365/366)
-
calcDateByDayOfYear( day, year ), the date according to a day in the sequence of a year (from 1 to 365/366)
-
calcDateByDaysAddition( from, days ), the date according to a starting date and a positive or negative number of days to be added
-
calcWeeksOfRange( from, till ), the weeks according to a range of days that are placed within
-
-
count*(), to count date related values
-
countDaysOfMonth( month, year ), the number of days of a month
-
countDaysOfYear( year ), the number of days of a year
-
countDaysOfRange( from, till ), the number of days of a date range including the starting and ending limits
-
-
is*(), to validate date related values:
-
isYear( value ), if a value is an integer expressing a year (by default from 1900 to 2099 but also customizable to other values)
-
isLeapYear( value ), if a value is an integer expressing a leap year
-
isMonth( month, year ), if a value is an integer expressing a month (from 1 to 12)
-
isDate( year, month, day ), if a series of values expressing a date
-
-
config.set*(), to customize general parameters:
-
config.setYearRange( from, till ), the range of valid years (by default from 1900 to 2099)
-
config.setReprPattern( pattern ), the pattern for the date representation (by default DD/MM/YYYY)
-
-
config.get*(), to retrieve general parameters:
-
config.getYearRange(), the range of valid years
-
config.getReprPattern(), the pattern for the date representation
-
-
Repository here
Documentation here


Page generated at {{data.pageTimestamp}}
Translations downloaded at {{data.downloadTimestamp}}
{{filename}}


This rule detects JUnit assertions in object equality. These assertions should be made by more specific methods, like assertEquals.
public class FooTest extends TestCase { void testCode() { Object a, b; assertTrue(a.equals(b)); // violation assertEquals("a should equals b", a, b); // good usage } }


great expectations
novel
★ ★ ★ ★ ★
The book is really amazing! I couldn't stop reading! Gripping plot with unexpected twists, convincing characters, amazing dialogues and tons of eternal life lessons. Many details creating the atmosphere of the epoch. Nice and moving reading!
Chapter 1
My father�s family name being Pirrip, and my Christian name Philip, my infant tongue could make of both names nothing longer or more explicit than Pip. So, I called myself Pip, and came to be called Pip.


IDS Server Release Notes
2.0.0
Make the transition to Payara 6
- #138: Upgrade to Java 11 and JakartaEE 10 API for compatibility with Payara 6
- #139: Remove getApiVersion call, deprecated in 1.8.0.
Remove runtime property writeDelaySeconds, deprecated in 1.10.0.
Deprecate FileChecker and getLink call
1.12.1
- #122: Bump dependency on logback-classic to version 1.2.0.
- #134: Bump dependency on commons-fileupload to version 1.5
- #128: Use python3 instead of python in the interpreter line of Python scripts
1.12.0
Improve performance in some cases
- #115, #118: Work around an issue in icat.server
that causes queries to take much longer then tolerable.
- #116: Bump icat.utils to version 4.16.1.
- #113: Bump dependency on junit to version 4.13.1.
1.11.0
Various small enhancements
- #104, #110: Extend getStatus() and getSize() to accept a preparedID.
- #105, #106: Add an optional configuration option enableWrite.
- #108: The API calls archive, restore, and write throw NotImplementedException in
the case of single level storage.
- #103: Bump dependency on commons-fileupload to version 1.3.3.
1.10.1
Bug fix release
- #101: Fix write call fails with DataNotOnlineError if an ARCHIVE request is
pending.
- Documentation fixes.
1.10.0
Add file system locking in the storage plugin
- #80: Call mainStorage.lock(DsInfo, boolean) whenever a dataset is locked
internally. This call has been added to MainStorageInterface ids.plugin
1.5.0. The plugin may implement this call to acquire a file system lock.
This would then allow safe concurrent access to main storage for other
processes.
- #94: Add new configuration properties delayDatasetWritesSeconds and
delayDatafileOperationsSeconds, replacing writeDelaySeconds. Deprecate
writeDelaySeconds.
- #96: Error handling in DsRestorer in the case of a corrupt ZIP archive.
- Require ids.plugin 1.5.0.
1.9.1
Bug fix release
- #87: Fix uncaught exception in DfRestorer can cause restoration to stall until
IDS is restarted.
- #85: Fix once again JMS Session not closed if an exception is thrown. The
previous fix from 1.9.0 was not thread safe.
- #92: Fix: must escape single quote character in datafile location values when
building JPQL queries.
1.9.0
Add a new Write API call and review the internal locking
- #67: Add a new Write API call that triggers write to archive storage.
- #59: Review of the internal locking mechanism which fixes various race
conditions.
- #63: Ignore Datafiles having the location attribute not set.
- #84: Change the HTTP status returned on DataNotOnlineException to 503.
- #85: Fix JMS Session not closed if an exception is thrown.
- #75: Add a configuration option "testHome" to be set in settings.xml. Files are
created relative to this directory when running the tests.
- Tests are now independent of locale.
- Glassfish 4.0 is no longer supported
1.8.0
Bug fix release - with new style deployment
- Workaround for oracle planning bug
- Make the implementation of getSize much more efficient.
- Modified a ContainerResponseFilter to allow Content-Type
headers to be transmitted properly.
- Provided a restful "version" call. The getApiVersion call is
marked as deprecated.
- Make isPrepared more efficient.
- Ensure that Tidier action runs at high priority.
- Plugins need a slightly different interface - hence the move
to 1.8.0
- File checker for Datasets no longer generates an error for an
empty Dataset
- Add list of failed restores to the information returned by
getServiceStatus.
- Avoid marking files as unavailable when unsure
- The prepareData call resets flags marking previous restore
failures.
1.7.0
Deal with multiple Datafiles with the same location and bug
fixes
- If the icat.url in the ids.properties file contains a
recognised wsdl suffix it will be removed. It is better not to
include any suffix however.
- It is now permissible to have multiple Datafiles with the
same location. The IDS has no mechanism to write such as structure
however it can arise from an icat call to the cloneEntity operation
or by storing and cataloguing data outside the IDS. It is possible
for the getSize call to be inaccurate however as a physical file may
be counted more than once.
1.6.0
Checks the value of maxEntities from the ICAT it is using and
various improvements and bug fixes.
- No attempt will be made to restore a file when it is already
on-line
- The server checks the value of maxEntities from the ICAT it
is using to avoid generating queries that will fail in ICAT.
- The messages from the file checker have been improved when
storage is by dataset and a zip file is found to be corrupt.
- Now waits for ICAT connection if ICAT not available at
startup.
- Protect against non numeric values being passed to the put
call.
- Produces JMS logging for all calls as specified in the
ids.properties file
- Moved to the latest icat.utils to support multiple containers
- Uses logback via slf4j rather than log4j via slf4j
- A race condition has been avoided which could have resulted
in the loss of data
- If writing to secondary storage fails then archive is
inhibited for that data set or data file. This is to prevent data
loss.
- Code changed to be more efficient when dealing with very
large investigations or data sets.
- container specified in ids-setup.properties must an entry
from TargetServer
Though only Glassfish is working properly at the moment.
1.5.0
New getDatafileIds, getIcatUrl and improved performance of
prepareData.
- Added getDatafileIds call.
- Improved performance of prepareData by performing some
operations asynchronously.
- Changed values of filesCheck.lastIdFile and
filesCheck.errorLog to be relative to ../data/ids rather than
../data/icat in the ids.properties.example file.
- getStatus allows sessionId to be null.
1.4.0
New getIcatUrl and now uses icat 4.5 client.
- Bug fix release to fix handling of corrupt
filesCheck.lastIdFile file.
- Work with icat 4.5
- Added getIcatUrl call.
- All calls now produce CORS headers.
1.3.1
Bug fix release to fix file handle leak.
- Minor corrections to the documentation.
- Ensure that files are closed when returned individually.
- Remove redundant (and possibly dangerous) line of code from
DsWriter.
1.3.0
Add getApiVersion call, make major change to prepareData, make
it also support archive by datafile and provide the option of
protecting Datafile.location with a cryptographic hash.
- getApiVersion call added to return version of server
- ids.properties values: preparedCacheSize1024bytes,
datasetCacheSize1024bytes, compressDatasetCache, and
tolerateWrongCompression are no longer used.
- ids.properties value preparedCount has changed its meaning.
- ids.properties value tidyBlockSize has been added.
- ids.properties value maxIdsInQuery has been added.
- The json string returned by getServiceStatus has changed.
- The Datafile.location value can be protected by a
cryptographic hash. This is enabled by adding a property "key" to the
ids.properties file.
1.2.0
For two level storage clean up main storage as needed.
- Add parameters: startArchivingLevel1024bytes,
stopArchivingLevel1024bytes and linkLifetimeSeconds.
- Cope with some obscure file checker errors.
- Datasets are archived when main storage becomes too full.
1.1.0
Provide background file checking and facility control of
returned zip file structure.
- Another file handle leak fixed.
- Compatible with plugin interface 1.1.0.
- Provide background file checking - which requires that the
parameter checkFiles.parallelCount is set to an integer. If the
integer is non zero then other entries must be set in the
ids.properties file.
- ids.properties needs a new parameter: plugin.zipMapper.class
which identifies the code to define the zip file structure.
1.0.1
Bug fix release.
- Files are now being closed properly to avoid running out of
file handles.
1.0.0
Initial public release.


BICLORA - chlophedianol hydrochloride and chlorcyclizine hydrochloride liquid
Hawthorn Pharmaceuticals, Inc
Disclaimer: Most OTC drugs are not reviewed and approved by FDA, however they may be marketed if they comply with applicable regulations and policies. FDA has not evaluated whether this product complies.
Drug Facts
Active ingredients
(in each 5 mL teaspoonful)Chlophedianol Hydrochloride 12.5 mg
Chlorcyclizine Hydrochloride 12.5 mg
Purpose
Antitussive
Antihistamine
Uses
Temporarily relieves these symptoms due to the
common cold,
hay fever (
allergic rhinitis) or other upper respiratory allergies:
- cough due to minor throat and bronchial irritation
- calms the cough control center and relieves coughing
- runny nose
- sneezing
- itching of the nose or throat
- itchy, watery eyes
Warnings
Ask a doctor before use if you have
- a cough that lasts or is chronic such as occurs with smoking, asthma or emphysema
- a cough that occurs with too much phlegm (mucus)
- a breathing problem such as emphysema or chronic bronchitis
- glaucoma
- difficulty in urination due to the enlargement of the prostate gland
Ask a doctor or pharmacist before use if you are taking sedatives or tranquilizers.
When using this product
- excitability may occur, especially in children
- may cause marked drowsiness
- avoid alcoholic drinks
- alcohol, sedatives, and tranquilizers may increase the drowsiness effect
- be careful when driving a motor vehicle or operating machinery
Stop use and ask a doctor if
- cough persists for more than 1 week, tends to recur, or is accompanied by a fever, rash, or persistent headache. A persistent cough may be a sign of a serious condition
- new symptoms occur
Keep out of reach of children.
In case of
overdose, get medical help or contact a Poison Control Center immediately.
Directions
Do not exceed recommended dosage.Use a calibrated measuring device for administering the drug to a child.
Adults and children 12 years of age and over:
|
2 teaspoonfuls (10 mL) every 6 to 8 hours, not to exceed 6 teaspoonfuls in 24 hours, or as directed by a doctor.
|
Children 6 to under 12 years of age:
|
1 teaspoonful (5 mL) every 6 to 8 hours, not to exceed 3 teaspoonfuls in 24 hours, or as directed by a doctor.
|
Children under 6 years of age:
|
Consult a doctor.
|
Other information
Store at 20°-25°C (68°-77°F); excursions permitted to 15°-30°C (59°-86°F).
[See USP Controlled Room Temperature].
Inactive ingredients
Cherry Flavor, Citric Acid, Glycerin, Propylene Glycol, Purified Water, Sodium Citrate, Sorbitol, Sucralsoe.
Questions? Comments?
To report a serious adverse event or obtain product information, contact
1-888-455-5253.
Manufactured for:
Hawthorn Pharmaceuticals,
Madison, MS 39110
HI282 Rev. 12/11
Product Packaging
The packaging below represents the labeling currently used.
Principal display panel for 8 fl oz. label:
NDC 63717-331-08biclora LIQUIDAntitusive · Antihistamine
Each teaspoonful (5 mL) contains:
Chlophedianol HCl.......................12.5 mg
Chlorcyclizine HCl.......................12.5 mg
For professional use.
The labeling for this product includes professional labeling
which is not intended for use by the general public.
Patent Pending
Alcohol Free · Dye Free
Cherry FlavorHAWTHORNPHARMACEUTICALS, INC.
8 fl oz (240 mL)


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object android.support.v7.media.MediaRouteDescriptor
public final class MediaRouteDescriptor
Describes the properties of a route.
Each route is uniquely identified by an opaque id string. This token may take any form as long as it is unique within the media route provider.
This object is immutable once created using a MediaRouteDescriptor.Builder
instance.
| Nested Class Summary | |
|---|---|
static class |
MediaRouteDescriptor.Builder
Builder for media route descriptors . |
| Method Summary | |
|---|---|
android.os.Bundle |
asBundle()
Converts this object to a bundle for serialization. |
static MediaRouteDescriptor |
fromBundle(android.os.Bundle bundle)
Creates an instance from a bundle. |
java.util.List<android.content.IntentFilter> |
getControlFilters()
Gets the route's media control intent filters. |
java.lang.String |
getDescription()
Gets the user-visible description of the route. |
android.os.Bundle |
getExtras()
Gets a bundle of extras for this route descriptor. |
java.lang.String |
getId()
Gets the unique id of the route. |
java.lang.String |
getName()
Gets the user-visible name of the route. |
int |
getPlaybackStream()
Gets the route's playback stream. |
int |
getPlaybackType()
Gets the route's playback type. |
int |
getPresentationDisplayId()
Gets the route's presentation display id, or -1 if none. |
int |
getVolume()
Gets the route's current volume, or 0 if unknown. |
int |
getVolumeHandling()
Gets the route's volume handling. |
int |
getVolumeMax()
Gets the route's maximum volume, or 0 if unknown. |
boolean |
isConnecting()
Gets whether the route is connecting. |
boolean |
isEnabled()
Gets whether the route is enabled. |
boolean |
isValid()
Returns true if the route descriptor has all of the required fields. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Method Detail |
|---|
public java.lang.String getId()
The route id associated with a route descriptor functions as a stable identifier for the route and must be unique among all routes offered by the provider.
public java.lang.String getName()
The route name identifies the destination represented by the route. It may be a user-supplied name, an alias, or device serial number.
public java.lang.String getDescription()
The route description describes the kind of destination represented by the route. It may be a user-supplied string, a model number or brand of device.
public boolean isEnabled()
public boolean isConnecting()
public java.util.List<android.content.IntentFilter> getControlFilters()
media control intent
filters.
public int getPlaybackType()
public int getPlaybackStream()
public int getVolume()
public int getVolumeMax()
public int getVolumeHandling()
public int getPresentationDisplayId()
public android.os.Bundle getExtras()
public boolean isValid()
public java.lang.String toString()
toString
in class java.lang.Object
public android.os.Bundle asBundle()
public static MediaRouteDescriptor fromBundle(android.os.Bundle bundle)
bundle
- The bundle, or null if none.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


hackedGaudi is Gaudi ported to Haxe. Below is the JavaScript targeted build, which you can run in your browser.