This post will focus on gain margins for LQR. It turns out that the feedback controller which comes out as a solution to the LQR problem has some robustness built in. The discussion is based on these notes. $ \newcommand{\abs}[1]{| #1 |} \newcommand{\ind}{\mathbf{1}} \newcommand{\norm}[1]{\lVert #1 \rVert} \newcommand{\ip}[2]{\langle #1, #2 \rangle} \newcommand{\R}{\mathbb{R}} \newcommand{\C}{\mathbb{C}} \newcommand{\Z}{\mathbb{Z}} \newcommand{\T}{\mathsf{T}} \newcommand{\Proj}{\mathcal{P}} \newcommand{\Tr}{\mathrm{Tr}} \newcommand{\A}{\mathcal{A}} $
LQR Review
Here we briefly recall the continuous-time infinite horizon LQR problem formulation and solution. Consider the LTI system $G$ described as $\dot{x} = A x + B u$ with $(A, B)$ stabilizable. Suppose we want to find a $u$ which minimizes $$ J(u) = \int_0^\infty (x^\T Q x + u^\T R u) \: dt \:, $$ where $Q \succeq 0$ and $R \succ 0$. The solution is to set $u = - K x$, where $K = R^{-1} B^\T P$ and $P$ solves the continuous-time ARE (CARE) $$ \begin{align} A^\T P + P A - PB R^{-1} B^\T P + Q = 0 \:. \label{eq:care} \end{align} $$ We will assume that a solution $P$ exists and is positive definite. Sufficient conditions to ensure this are $(A, B)$ stabilizable and $(A, Q)$ observable.
LQR Robustness
Suppose we use the feedback law $u = -Kx$ with a modified system $\dot{x} = A x + {B}_1 u$, where ${B}_1 = B N$. This is equivalent to a system $\widehat{G}$ which places a static gain block $N$ in front of the original system $G$. What conditions on $N$ ensure that the resulting closed loop system remains stable? Letting $P$ denote a positive definite solution to the CARE, let us use a simple Lyapunov argument.
Proposition: Consider the closed loop system $\dot{x} = (A - B_1 K) x$, where $K = R^{-1} B^\T P$ and $P$ is a positive definite solution to the CARE $\eqref{eq:care}$. Suppose that $$ \begin{align} - Q + P B (R^{-1} - R^{-1} N^\T - N R^{-1} ) B^\T P \prec 0 \:. \label{eq:stability_lmi} \end{align} $$ Then the closed loop system is stable.
Proof: Define $V(x) = x^\T P x$. Then, $$ \begin{align*} \dot{V}(x) &= \dot{x}^\T P x + x^\T P \dot{x} \\ &= x^\T (A^\T - K^\T {B}_1^\T) P x + x^\T P (A - {B}_1 K) x \\ &= x^\T (A^\T P + P A - K^\T B_1^\T P - P B_1 K) x \\ &= x^\T (A^\T P + P A - K^\T N^\T B^\T P - P B N K) x \\ &= x^\T (- Q + P B R^{-1} B^\T P - K^\T N^\T B^\T P - P B N K ) x \\ &= x^\T (- Q + P B (R^{-1} - R^{-1} N^\T - N R^{-1} ) B^\T P ) x \\ &< 0 \:. \end{align*} $$ Hence, $V$ is a valid Lyapunov function for the closed loop system, from which we conclude its stability. $\square$
Note that a sufficient condition for $\eqref{eq:stability_lmi}$ to hold is that $Q \succ 0$ and $$ N R^{-1} + R^{-1} N^\T - R^{-1} \succeq 0 \:. $$ For simplicity, let us suppose that both $N$ and $R$ are diagonal. Then this equation reduces to $$ n_i r_i^{-1} + r_i^{-1} n_i \geq r_i^{-1} \:, \:\: i = 1, ..., n \:. $$ or equivalently that $n_i \geq 1/2$ for all $i=1, ..., n$. Hence, in this case we see that we have an infinite gain margin, and can tolerate a 50% reduction in gain while remaining stable.
Concluding Remarks
It turns out there is a more general robustness theory around LQR. See for instance Safonov and Athans, where they show that a generalization of $\eqref{eq:stability_lmi}$ ensures stability. This more general result can be used to show that LQR also has a 60 degree phase margin.


This privacy policy is for this website [www.websitename.co.uk] and served by [### COMPANY NAME ###] and governs the privacy of its users who choose to use it.
The policy sets out the different areas where user privacy is concerned and outlines the obligations & requirements of the users, the website and website owners. Furthermore the way this website processes, stores and protects user data and information will also be detailed within this policy.
This website and it's owners take a proactive approach to user privacy and ensure the necessary steps are taken to protect the privacy of its users throughout their visiting experience. This website comply's to all UK national laws and requirements for user privacy.
This website uses cookies to better the users experience while visiting the website. Where applicable this website uses a cookie control system allowing the user on their first visit to the website to allow or disallow the use of cookies on their computer / device. This complies with recent legislation requirements for website's to obtain explicit consent from users before leaving behind or reading files such as cookies on a users computer / device.
Cookies are small files saved to the users computers hard drive that track, save and store information about the users interactions and usage of the website. This allows the website, through it's server to provide the users with a tailored experience within this website. Users are advised that if they wish to deny the use and saving of cookies from this website on to their computers hard drive they should take necessary steps within their web browsers security settings to block all cookies from this website and it's external serving vendors.
This website uses tracking software to monitor it's visitors to better understand how they use it. This software is provided by Google Analytics which uses cookies to track visitor usage. The software will save a cookie to your computers hard drive in order to track and monitor your engagement and usage of the website but will not store, save or collect personal information. You can read Google's privacy policy here for further information [ http://www.google.com/privacy.html ]. Other cookies may be stored to your computers hard drive by external vendors when this website uses referral programs, sponsored links or adverts. Such cookies are used for conversion and referral tracking and typically expire after 30 days, though some may take longer. No personal information is stored, saved or collected.
Users contacting this website and/or it's owners do so at their own discretion and provide any such personal details requested at their own risk. Your personal information is kept private and stored securely until a time it is no longer required or has no use, as detailed in the Data Protection Act 1998. Every effort has been made to ensure a safe and secure form to email submission process but advise users using such form to email processes that they do so at their own risk. This website and it's owners use any information submitted to provide you with further information about the products / services they offer or to assist you in answering any questions or queries you may have submitted. This includes using your details to subscribe you to any email newsletter program the website operates but only if this was made clear to you and your express permission was granted when submitting any form to email process. Or whereby you the consumer have previously purchased from or enquired about purchasing from the company a product or service that the email newsletter relates to. This is by no means an entire list of your user rights in regard to receiving email marketing material. Your details are not passed on to any third parties.
This website operates an email newsletter program, used to inform subscribers about products and services supplied by this website. Users can subscribe through an online automated process should they wish to do so but do so at their own discretion. Some subscriptions may be manually processed through prior written agreement with the user.
Subscriptions are taken in compliance with UK Spam Laws detailed in the Privacy and Electronic Communications Regulations 2003. All personal details relating to subscriptions are held securely and in accordance with the Data Protection Act 1998. No personal details are passed on to third parties nor shared with companies / people outside of the company that operates this website. Under the Data Protection Act 1998 you may request a copy of personal information held about you by this website's email newsletter program. A small fee will be payable. If you would like a copy of the information held on you please write to the business address at the bottom of this policy.
Email marketing campaigns published by this website or it's owners may contain tracking facilities within the actual email. Subscriber activity is tracked and stored in a database for future analysis and evaluation. Such tracked activity may include; the opening of emails, forwarding of emails, the clicking of links within the email content, times, dates and frequency of activity [this is by no far a comprehensive list]. This information is used to refine future email campaigns and supply the user with more relevant content based around their activity.
In compliance with UK Spam Laws and the Privacy and Electronic Communications Regulations 2003 subscribers are given the opportunity to un-subscribe at any time through an automated system. This process is detailed at the footer of each email campaign. If an automated un-subscription system is unavailable clear instructions on how to un-subscribe will by detailed instead.
Although this website only looks to include quality, safe and relevant external links users should always adopt a policy of caution before clicking any external web links mentioned throughout this website.
The owners of this website cannot guarantee or verify the contents of any externally linked website despite their best efforts. Users should therefore note they click on external links at their own risk and this website and it's owners cannot be held liable for any damages or implications caused by visiting any external links mentioned.
This website may contain sponsored links and adverts. These will typically be served through our advertising partners, to whom may have detailed privacy policies relating directly to the adverts they serve.
Clicking on any such adverts will send you to the advertisers website through a referral program which may use cookies and will tracks the number of referrals sent from this website. This may include the use of cookies which may in turn be saved on your computers hard drive. Users should therefore note they click on sponsored external links at their own risk and this website and it's owners cannot be held liable for any damages or implications caused by visiting any external links mentioned.
Communication, engagement and actions taken through external social media platforms that this website and it's owners participate on are custom to the terms and conditions as well as the privacy policies held with each social media platform respectively.
Users are advised to use social media platforms wisely and communicate / engage upon them with due care and caution in regard to their own privacy and personal details. This website nor it's owners will ever ask for personal or sensitive information through social media platforms and encourage users wishing to discuss sensitive details to contact them through primary communication channels such as by telephone or email.
This website may use social sharing buttons which help share web content directly from web pages to the social media platform in question. Users are advised before using such social sharing buttons that they do so at their own discretion and note that the social media platform may track and save your request to share a web page respectively through your social media platform account.
This website and it's owners through their social media platform accounts may share web links to relevant web pages. By default some social media platforms shorten lengthy url's [web addresses].
Users are advised to take caution and good judgement before clicking any shortened url's published on social media platforms by this website and it's owners. Despite the best efforts to ensure only genuine url's are published many social media platforms are prone to spam and hacking and therefore this website and it's owners cannot be held liable for any damages or implications caused by visiting any shortened links.


Home Sweet Home 2.0
SF Neighborhoods
Home
About
Furniture
For The Home
Bed & Bath
Kitchen
Research
Schools
Visit
Hotels
Reserve Tour
Settle
Apartments
Furnish
Furniture
For The Home
Bed & Bath
Kitchen
Loading Macy's For the Home...
Capital One Rewards Balance: Loading...


Bitcoin (BTC) Price Nears Possible Short Term Bottom At $6.5K
- Bitcoin price is declining and approaching the next bearish target of $6,500 against the US Dollar.
- The price is down close to 10% and it seems like the bears are targeting $6,500 or $6,400.
- There is a new connecting bearish trend line forming with resistance near $7,010 on the hourly chart of the BTC/USD pair (data feed from Kraken).
- The bulls are likely to take a stand near the main $6,500 support (the medium term outlook bearish target).
Bitcoin price is approaching the key $6,500 support area against the US Dollar. There are high chances of BTC finding bids near $6,500 and starting an upside correction.
Bitcoin Price Analysis
This past week, we discussed the chances of more downsides below $7,500 in bitcoin price against the US Dollar. BTC did decline and broke the first key bearish target near the $7,000 level.
Moreover, the price broke the $6,800 support zone and settled well below the 100 hourly simple moving average. It opened the doors for more losses below $6,700 and the price traded as low as $6,575 (close to the main bearish target of $6,500 as discussed in the last medium term outlook).
At the moment, the price is consolidating losses above $6,600. Besides, it is testing the 23.6% Fib retracement level of the recent downward move from the $7,279 high to $6,575 low.
On the upsides, there are many resistances near the $6,880, $6,900 and $6,930 levels. The first major resistance is near the $6,930 level since it is close to the 50% Fib retracement level of the recent downward move from the $7,279 high to $6,575 low.
Additionally, there is a new connecting bearish trend line forming with resistance near $7,010 on the hourly chart of the BTC/USD pair. Therefore, bitcoin price needs to climb above the $6,930 and $7,000 resistance levels to start a decent recovery.
The next major resistance is near the $7,360 level and the 100 hourly simple moving average. Conversely, the price may perhaps continue to move down below $6,600.
The main support is near the $6,500 level, where the bulls are likely to put up a strong fight. Any further losses could decrease the chances of a short term correction and the price might decline towards $6,400 or $6,200.
Looking at the chart, bitcoin price is clearly struggling to correct above $6,800. Thus, there remains a risk of another slide or spike towards $6,500 and $6,400 before an upside correction.
Technical indicators:
Hourly MACD – The MACD is currently gaining momentum in the bearish zone.
Hourly RSI (Relative Strength Index) – The RSI for BTC/USD is currently moving further into the bearish zone.
Major Support Levels – $6,500 followed by $6,400.
Major Resistance Levels – $6,880, $6,920 and $7,000.


Color
Line Width
Background
Clear
Canvas is not supported by your browser.
×
Line Weight:
0
×
Color Selector
Red:
Green:
Blue:
Alpha:


Awesome
Baking
Back to HashRouter
##mode:list
##mode:list/sort:date/direction:down
##mode:view/recipeID:44
##mode:view/recipeID:44/pictures:show
##mode:edit/recipeID:44
##mode:[]/recipieID:[getRandomID]
#mode:list/recipeID:[null]
Page Variables


“I love deadlines.
I like the
whooshing
sound they make
as they fly by.”
This project is an exploration of fonts. In this series I explore how two complementary fonts can blend into a cohesive design that is stylistically appealing and also fun.
When tempted to fight fire with fire, remember that the Fire Department usually uses
"Well, I could do that... but I won't because I'm not an animal and I don't hate myself." - Steve Kinney
in Everything moderation moderation including
“I love deadlines.
I like the
whooshing
sound they make
as they fly by.”
― Douglas Adams


Activity data - info about current activities available to the player.
COMPONENT TYPE: CharacterActivities
Base information about the character in question.
COMPONENT TYPE: Characters
COMPONENT TYPE: Collectibles
A "lookup" convenience component that can be used to quickly check if the character has access to items that can be used for purchasing.
COMPONENT TYPE: CurrencyLookups
Equipped items on the character.
COMPONENT TYPE: CharacterEquipment
The character-level non-equipped inventory items.
COMPONENT TYPE: CharacterInventories
The set of components belonging to the player's instanced items.
COMPONENT TYPE: [See inside the DestinyItemComponentSet contract for component types.]
Items available from Kiosks that are available to this specific character.
COMPONENT TYPE: Kiosks
When sockets refer to reusable Plug Sets (see DestinyPlugSetDefinition for more info), this is the set of plugs and their states that are scoped to this character.
This comes back with ItemSockets, as it is needed for a complete picture of the sockets on requested items.
COMPONENT TYPE: ItemSockets
COMPONENT TYPE: PresentationNodes
Character progression data, including Milestones.
COMPONENT TYPE: CharacterProgressions
COMPONENT TYPE: Records
Character rendering data - a minimal set of information about equipment and dyes used for rendering.
COMPONENT TYPE: CharacterRenderData
The set of components belonging to the player's UNinstanced items. Because apparently now those too can have information relevant to the character's state.
COMPONENT TYPE: [See inside the DestinyItemComponentSet contract for component types.]
The response contract for GetDestinyCharacter, with components that can be returned for character and item-level data.


Simple `fetch` wrapper for JSON based requests.
- Author:
-
- License:
- Source:
Members
(inner, constant) DEFAULT_TIMEOUT :number
Default timeout in milliseconds.
Type:
- Source:
Methods
(async, static) request(url, optionsopt) → {Promise.<(ResponseWrapper|Error)>}
Simple `fetch` wrapper for JSON based requests.
- Provides timeout functionality
- Unlike `fetch` errors on a response status >= 500
- Does not error on `AbortController` `abort()`, simply returns `undefined` response body and `Response` object
Parameters:
| Name |
Type |
Attributes |
Description |
url |
string
|
|
URL of the resource to request |
options |
Object
|
<optional>
|
An object containing any `fetch` settings plus additional settings detailed below
Properties
| Name |
Type |
Attributes |
Description |
abortController |
AbortController
|
<optional>
|
An `AbortController` object instance to abort the request,
this is the preferred way to use an `AbortController`, if an `AbortController` `signal` is passed in the
`options` then this will be overwritten |
jsonBody |
Object
|
<optional>
|
The request body as an object which can be converted to a `string` via
`JSON.stringify()`, will overwrite any `options.body` |
searchParams |
Object
|
<optional>
|
Any value accepted by URLSearchParams constructor which will be appended to
the request URL |
timeout |
number
|
<optional>
|
The request timeout in milliseconds, if not supplied it defaults to
`DEFAULT_TIMEOUT`, if `0` or `Infinity` are provided then the request will not timeout |
|
- Source:
- See:
-
- DEFAULT_TIMEOUT
- fetch
- URLSearchParams
Throws:
-
-
- If the response status is 500 or above
-
-
Type
-
NetworkError
-
-
- If the request reaches the timeout limit
-
-
Type
-
TimeoutError
-
-
- If the specified URL string includes user credentials, see fetch
-
-
Type
-
TypeError
-
-
- If the `fetch` fails (connection refused)
-
-
Type
-
TypeError
-
-
- If the response has an incorrect `Content-Type`
-
-
Type
-
TypeError
Returns:
-
Type
-
Promise.<(ResponseWrapper|Error)>
Type Definitions
ResponseWrapper
Type:
Properties:
| Name |
Type |
Attributes |
Description |
body |
Object
|
<optional>
|
The parsed `Response` stream |
response |
Response
|
<optional>
|
The `Response` object |
- Source:


To assist with the quick lookup of multiple values in a Map (or HashMap) type field, you can create an index (sometimes referred to as a “map index”) on specific (or all) keys in that field.
For example, you could create a map index to support the following query:
SELECT * FROM /users u WHERE u.name['first'] = 'John' OR u.name['last'] = 'Smith'
The map index extends regular range indexes created on single key by maintaining indexes for other specified keys, or for all keys if *
is used. The underlying structure of the map index can be thought of as a wrapper around all these indexes.
The following Java code samples provide examples of how to create a map index:
QueryService qs = cache.getQueryService();
//This will create indexes for for keys 'PVTL' and 'VMW'
qs.createIndex("indexName", "p.positions['PVTL', 'VMW']", "/portfolio p");
QueryService qs = cache.getQueryService();
//This will create indexes for all keys
qs.createIndex("indexName", "p.positions[*]", "/portfolio p");
In gfsh, the equivalents are:
gfsh>create index --name="IndexName" --expression="p.positions['PVTL', 'VMW']" --region="/portfolio p"
gfsh>create index --name="IndexName" --expression="p.positions[*]" --region="/portfolio p"
In order to create or query a map index, you must use the bracket notation to list the map field keys you wish to index or query. For example: [*]
, ['keyX1','keyX2’]
. Note that using p.pos.get('keyX1')
will not create or query the map index.
Note: You can still query against Map or HashMap fields without querying against a map index. For example, you can always create a regular range query on a single key in any Map or HashMap field. However, note that subsequent query lookups will be limited to a single key.


| Reading | Lecture Video | Duration | Notes | Online HW (graded) | Textbook HW (ungraded) |
|---|---|---|---|---|---|
| 3.2 | The Product and Quotient Rules | 31 | Notes | Section 3.2 | 3.2: 1-33(odd), 41, 43, 45, 47, 49 |
| 3.1b | Exponential Functions | 14 | Notes | Section 3.1b | 3.1: 25, 29, 31, 37 |
| 3.1b | The Natural Exponential Function | 22 | Notes | Comment: Do not worry if you don't know what "concave up" means in the last slide. |
Exam 1 is scheduled for today at 8:45pm-10:15pm ET (it is a 1.5 hour exam). A summary of your instructor-approved exam locations is posted on UBlearns under “Your Grades and Exam Arrangements”.
| Reading | Lecture Video | Duration | Notes | Online HW (graded) | Textbook HW (ungraded) |
|---|---|---|---|---|---|
| 3.3 | Derivatives of Trigonometric Functions | 38 | Notes | Section 3.3 | 3.3: 1-25(odd), 33, 35, 39-51(odd) |
| 3.4 | The Chain Rule | 44 | Notes | Section 3.4 | 3.4: 1-53(odd), 61, 71 |
| 3.5a | Implicit Differentiation | 35 | Notes | Section 3.5a | 3.5a: 1-39(odd) |
Section 3.3: I recommend that you start the graded homework for section 3.3 before watching the lecture. I have written the homework for this section in such a way that you should be able to complete most (if not all) of it, using only the derivative rules we have looked at so far and maybe a few trig identities. Think of this lecture as backup in case you get stuck.
Section 3.5a: Below is the lecture we use for Implicit Differentiation in another course. This may be a helpful resource, if you find yourself struggling with this section.
| Lecture Video | Duration | Notes | Comments |
|---|---|---|---|
| Implicit Differentiation and Related Rates | 34 |
Notes | The first 24-minutes covers implicit differentiation. The last 10-minutes covers the similar topic of related rates. |
We have recitation scheduled for today at 2-2:50pm ET
Below are the three lectures assigned for this week. (There are also additional resources and review material available further down in case you want more practice with the material.)
| Reading | Lecture Video | Duration | Notes | Online HW (graded) | Textbook HW (ungraded) |
|---|---|---|---|---|---|
| 3.5b | Derivatives of Inverse Trigonometric Functions | 17 | Notes | Section 3.5b | 3.5b: 49-59(odd), 75 |
| 3.6a | Derivatives of Logarithmic Functions | 25 | Notes | Section 3.6a | 3.6a: 1-33(odd) |
| 3.6b | Logarithmic Differentiation | 15 | Notes | Section 3.6b | 3.6b: 39-49(odd) |
Section 3.5b and 3.6: Below is a more in-depth review of functions and inverse functions, which you may find useful, especially since we are looking at inverse trigonometric and inverse exponential (logarithmic) functions this week.
| Lecture Video | Duration | Notes | Comments |
|---|---|---|---|
| Introduction to Functions | 63 |
Notes |
|
Section 3.6: Below are the lectures we use for Logarithms in another course. This may be a helpful resource, if you find yourself struggling with this section.
| Lecture Video | Duration | Notes | Comments |
|---|---|---|---|
| The Natural Logarithm Function | 14 |
Notes | Cancellation Properties and How to Solve Logarithmic Equations. |
| The Derivative of the Natural Logarithm Function | 17 |
Notes | Also covers the General Logarithmic Rule for Derivatives. |
| Properties of the Natural Logarithm Function | 16 |
Notes | Also covers Logarithmic Differentiation. |
We have recitation scheduled for today at 2-2:50pm ET
Below are the three lectures assigned for this week. (There are also additional resources and review material available further down in case you want more practice with the material.)
| Reading | Lecture Video | Duration | Notes | Online HW (graded) | Textbook HW (ungraded) |
|---|---|---|---|---|---|
| 3.8 | Exponential Growth and Decay | 40 | Notes | Section 3.8 | 3.8: 1-19(odd) |
| 3.10a | Linear Approximations | 28 | Notes | Section 3.10 | 3.10: 1-35(odd) |
| 3.10b | Differentials | 16 | Notes |
Comment: The homework for Sections 3.10a and 3.10b have been combined into one problem set.
Section 3.8: Below is the lecture we use for Exponential Growth and Decay in another course. This may be a helpful resource, if you find yourself struggling with this section.
| Lecture Video | Duration | Notes | Comments |
|---|---|---|---|
| Exponential Growth and Decay | 40 | Notes | Population Growth, Radioactive Decay, and Radiocarbon Dating |
Remember that Exam 2 is scheduled for Thursday, October 24, 2019 at 8:45pm-10:15pm ET.


How to play bonga Charades
Bonga Charades is a Kenyan parlor or party word guessing game. Originally, the game was a dramatic form of literary charades: a single person would act out
each syllable of a word or phrase in order, followed by the whole phrase together, while the rest of the group guessed
Rules of the game.
- Two teams divided into equal players
- A time and score keeper is selected, usually a person not taking part or else one person from each team can take turns
- No words. No pointing at objects in a room. No lip movements.
- Only "acting out" words or pantomiming similar sounding words.
- The team demonstrating the act choose their actor, no actor may act more than once until all team members had a chance to be the actor.
How to beat your opponent.
A cheatsheet of sorts!
- “A” is signed by steepling index fingers together. Following it with either
the stretching rubber band sign or “close, keep guessing!” sign, will often elicit “an” and “and”. (sometimes “and” is signed by pointing at ones palm with the index finger) - “I” is signed by pointing at one’s eye, or one’s chest.
- “The” is signed by making a “T” sign with the index fingers. The “close, keep guessing!” sign will then usually elicit a rigmarole of other very common words starting with “th”.
- Pretending to paddle a canoe can be used to sign the word “or.”
- Pointing to the ear means “sounds like”
- The actor has limited time (2-3 minutes) to act out the phrase to his own team.
- The actor can make any gestures to act out the word.


Sporting Life Racing Podcast: Ben Linfoot and Matt Brocklebank are joined by some star guests including Daryl Jacob ahead of the Betfair Chase
by Sporting LifeBen Linfoot and Matt Brocklebank are joined by Ed Chamberlin, Oli Bell and Fran Berry to discuss the weekend’s action, while Daryl Jacob is on the line to talk Bristol De Mai.
In part one, Ben and Matt discuss Slate House’s 6lb rise for falling in the BetVictor Gold Cup at Cheltenham before talking Newbury Winter Festival following a press day in the week.
Onto part two where Ben is joined by Oli Bell, Fran Berry and Ed Chamberlin to look ahead to Altior v Cyrname and the Betfair Chase ahead of what promises to be a thrilling weekend.
And finally, Daryl Jacob talks all things Bristol De Mai and more ahead of his horse’s mission to win his third consecutive Betfair Chase at Haydock on Saturday.


settings
add
Title
Path
close
Add
reorder
{title}
{path}
remove
Yes
No
Welcome to pathmarks.
No paths are configured, use the
settings
Options
page of this extension to configure paths or add paths with the path icon.


| 1 | /* =========================================================== | |
| 2 | * JFreeChart : a free chart library for the Java(tm) platform | |
| 3 | * =========================================================== | |
| 4 | * | |
| 5 | * (C) Copyright 2000-2008, by Object Refinery Limited and Contributors. | |
| 6 | * | |
| 7 | * Project Info: http://www.jfree.org/jfreechart/index.html | |
| 8 | * | |
| 9 | * This library is free software; you can redistribute it and/or modify it | |
| 10 | * under the terms of the GNU Lesser General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2.1 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This library is distributed in the hope that it will be useful, but | |
| 15 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
| 16 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public | |
| 17 | * License for more details. | |
| 18 | * | |
| 19 | * You should have received a copy of the GNU Lesser General Public | |
| 20 | * License along with this library; if not, write to the Free Software | |
| 21 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
| 22 | * USA. | |
| 23 | * | |
| 24 | * [Java is a trademark or registered trademark of Sun Microsystems, Inc. | |
| 25 | * in the United States and other countries.] | |
| 26 | * | |
| 27 | * ---------------------------- | |
| 28 | * DataPackageResources_pl.java | |
| 29 | * ---------------------------- | |
| 30 | * (C) Copyright 2002-2008, by Object Refinery Limited. | |
| 31 | * | |
| 32 | * Original Author: David Gilbert (for Object Refinery Limited); | |
| 33 | * Contributor(s): -; | |
| 34 | * Polish translation: Krzysztof Pa<EMAIL_ADDRESS>| |
| 35 | * | |
| 36 | * Changes | |
| 37 | * ------- | |
| 38 | * 21-Mar-2002 : Version 1 (DG); | |
| 39 | * 17-Oct-2002 : Fixed errors reported by Checkstyle (DG); | |
| 40 | * 02-Feb-2007 : Removed author tags all over JFreeChart sources (DG); | |
| 41 | * | |
| 42 | */ | |
| 43 | ||
| 44 | package org.jfree.data.resources; | |
| 45 | ||
| 46 | import java.util.ListResourceBundle; | |
| 47 | ||
| 48 | /** | |
| 49 | * A resource bundle that stores all the items that might need localisation. | |
| 50 | */ | |
| 51 | public class DataPackageResources_pl extends ListResourceBundle { | |
| 52 | ||
| 53 | /** | |
| 54 | * Returns the array of strings in the resource bundle. | |
| 55 | * | |
| 56 | * @return The localised resources. | |
| 57 | */ | |
| 58 | public Object[][] getContents() { | |
| 59 |
1
1. getContents : mutated return of Object value for org/jfree/data/resources/DataPackageResources_pl::getContents to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return CONTENTS; |
| 60 | } | |
| 61 | ||
| 62 | /** The resources to be localised. */ | |
| 63 | private static final Object[][] CONTENTS = { | |
| 64 | ||
| 65 | {"series.default-prefix", "Serie"}, | |
| 66 | {"categories.default-prefix", "Kategorie"}, | |
| 67 | ||
| 68 | }; | |
| 69 | ||
| 70 | } | |
Mutations | ||
| 59 |
1.1 |


pg_resetxlog [-f] [-n] [-ooid ] [-x xid ] [-e xid_epoch ] [-m mxid ] [-O mxoff ] [-l timelineid,fileid,seg ] datadir
pg_resetxlog clears the write-ahead log (WAL) and optionally resets some other control information stored in the pg_control file. This function is sometimes needed if these files have become corrupted. It should be used only as a last resort, when the server will not start due to such corruption.
After running this command, it should be possible to start the server, but bear in mind that the database might contain inconsistent data due to partially-committed transactions. You should immediately dump your data, run initdb, and reload. After reload, check for inconsistencies and repair as needed.
This utility can only be run by the user who installed the server, because it requires read/write access to the data directory. For safety reasons, you must specify the data directory on the command line. pg_resetxlog does not use the environment variable PGDATA.
If pg_resetxlog complains that it cannot determine valid data for pg_control, you can force it to proceed anyway by specifying the -f (force) switch. In this case plausible values will be substituted for the missing data. Most of the fields can be expected to match, but manual assistance might be needed for the next OID, next transaction ID and epoch, next multitransaction ID and offset, and WAL starting address fields. These fields can be set using the switches discussed below. If you are not able to determine correct values for all these fields, -f can still be used, but the recovered database must be treated with even more suspicion than usual: an immediate dump and reload is imperative. Do not execute any data-modifying operations in the database before you dump, as any such action is likely to make the corruption worse.
The -o, -x, -e, -m, -O, and -l switches allow the next OID, next transaction ID, next transaction ID's epoch, next multitransaction ID, next multitransaction offset, and WAL starting address values to be set manually. These are only needed when pg_resetxlog is unable to determine appropriate values by reading pg_control. Safe values can be determined as follows:
A safe value for the next transaction ID (-x) can be determined by looking for the numerically largest file name in the directory pg_clog under the data directory, adding one, and then multiplying by 1048576. Note that the file names are in hexadecimal. It is usually easiest to specify the switch value in hexadecimal too. For example, if 0011 is the largest entry in pg_clog, -x 0x1200000 will work (five trailing zeroes provide the proper multiplier).
A safe value for the next multitransaction ID (-m) can be determined by looking for the numerically largest file name in the directory pg_multixact/offsets under the data directory, adding one, and then multiplying by 65536. As above, the file names are in hexadecimal, so the easiest way to do this is to specify the switch value in hexadecimal and add four zeroes.
A safe value for the next multitransaction offset (-O) can be determined by looking for the numerically largest file name in the directory pg_multixact/members under the data directory, adding one, and then multiplying by 65536. As above, the file names are in hexadecimal, so the easiest way to do this is to specify the switch value in hexadecimal and add four zeroes.
The WAL starting address (-l) should be larger than any WAL segment file name currently existing in the directory pg_xlog under the data directory. These names are also in hexadecimal and have three parts. The first part is the "timeline ID" and should usually be kept the same. Do not choose a value larger than 255 (0xFF) for the third part; instead increment the second part and reset the third part to 0. For example, if<PHONE_NUMBER>0000320000004A is the largest entry in pg_xlog, -l 0x1,0x32,0x4B will work; but if the largest entry is<PHONE_NUMBER>00003A000000FF, choose -l 0x1,0x3B,0x0 or more.
Note: pg_resetxlog itself looks at the files in pg_xlog and chooses a default -l setting beyond the last existing file name. Therefore, manual adjustment of -l should only be needed if you are aware of WAL segment files that are not currently present in pg_xlog, such as entries in an offline archive; or if the contents of pg_xlog have been lost entirely.
There is no comparably easy way to determine a next OID that's beyond the largest one in the database, but fortunately it is not critical to get the next-OID setting right.
The transaction ID epoch is not actually stored anywhere in the database except in the field that is set by pg_resetxlog, so any value will work so far as the database itself is concerned. You might need to adjust this value to ensure that replication systems such as Slony-I work correctly — if so, an appropriate value should be obtainable from the state of the downstream replicated database.
The -n (no operation) switch instructs pg_resetxlog to print the values reconstructed from pg_control and then exit without modifying anything. This is mainly a debugging tool, but can be useful as a sanity check before allowing pg_resetxlog to proceed for real.
The -V and --version options print the pg_resetxlog version and exit. The options -? and --help show supported arguments, and exit.
This command must not be used when the server is running. pg_resetxlog will refuse to start up if it finds a server lock file in the data directory. If the server crashed then a lock file might have been left behind; in that case you can remove the lock file to allow pg_resetxlog to run. But before you do so, make doubly certain that there is no server process still alive.


I am a Senior Computer Science major at the University of North Carolina at Chapel Hill. I am currently studying to obtain a Bachelor of Arts in CS. I am well trained in many coding languages and emphasise clean and legibile code in my work with modern UI design. In the Previous Projects tab you'll find several examples of coding projects I have previously done in my time at UNC. I also have a love for photography and have displayed some of my favorite shots under the Photography tab. Thank you for visiting!
Currently, I am on a team of four developing a search system for Gillings Research at UNC. This system will allow for easy browsing of scientific publications by the departments. I am also improving my web development skills and teaching myself a better understanding of JQuery, JSON, and Node.js along with learning iOS development. My classes for this semester are:


--- date: 2016-06-22 tags: - org author: jamworld layout: post title: yassnippet excerpt: yassnippet with spacemacs categories: - study ---
It is strange that it seems the spacemacs won't auto-load all the snippets from your private snippets directory. However, if you create snippets by M-x yas-new-snippets. Then everything will just works fine. Kind of amazing. Anyway, Cheers, I got a fantastic yassnippet auto-complete now!!!


WWX2016 talk by Alex Hoyau, CTO @ Secret Media
Alex Hoyau CTO @ Secret Media
unblock ads
optimize ads
block unacceptable ads
Flash and JS ads
ads loading ads loading ads…
…loading JS and Flash code for analytics, viewability, fraud detection, tracking
proxify
obfuscate
modify
modify HTML, CSS, JS, SWF
on the fly
both on the server side and client side
Alex @lexoyo
Clemos @clemenchar
Juraj @back2dos
JB @JbIPS
1½ year old company
~800K€ per year atm
Twitch, IGN, JWPlayer, Dailymotion, TF1…
2M hits/min
80K lines of Haxe code, JS, Flash, nodejs targets
…and the Secret sauce…
www.secretmedia.com


--- title: 'MAPS Crowdsourced Open Science Project: Data Imputation' author: "Corey Pembleton" date: '2019-06-05' slug: maps-crowdsourced-open-science-project-data-imputation categories: ["R"] tags: ["data cleaning", "statistics", "tutorial"] keywords: ["R", "Programming", "statistics"] thumbnailImagePosition: "left" thumbnailImage: "/img/cover_img.png" coverImage: "/img/cover_img.png" metaAlignment: "center" coverMeta: "out" ---
Missing data can cause a compromise in inferences made from clinicial trials, and the mechanism (or reason) why the data is missing in the first place implicates whether or not an analytic method can be used to correct that missingness at all. There are three mechanisms which can cause missing data: missing completely at random (MCAR) missing at random (MAR), or and missing not at random (MNAR) Jakobsen, Gluud, Wetterslev & Winkel (2017).
There are risks to using analytic methods to impute missing values, such as creating a bias by imputing unavoidably missing data, and not understanding the mechanism by which data can be missing.
I won’t go into detail of each mechanism (check the cited paper above), but rather will focus on the mechanism attributed by authors for missing data in this study, which the authors note as possibly being MNAR or conditionally MAR, and selecting multiple imputation (MI) as the analytic method to replace missing values.
“Both anxiety and depression measured at age 7years were associated with non-response at age 18 (results not shown): individuals with evidence of anxiety and depression at age 7 were more likely to have missing outcome data at age 18, suggesting that the outcomes could be MNAR, or MAR conditional on anxiety and depression at age 7 (we acknowledge that this cannot be determined from the observed data).” (p. 4, Khouja et. al (2019))
While I’m operating under the assumption that the method used by the authors is acceptable, I would like to understand data imputation in R further (I have never worked with it before), and learn how different methods can impact future analysis differently.
According to this flow chart created following a meta review of data imputation used in clinical trials, several of the conditions for using multiple imputation are questionable, although passable: that there is too large a proportion of the data missing (only 12.7% of cases are complete) and that an MNAR assumption is possible, although conditionally.
Complete case analysis: Complete case analysis is statistical analysis based on participates with a complete set of outcome data. Participants with any missing data are excluded from analysis.
Single Imputation: When using single imputation, missing values are replaced by a value defined by a certain rule, e.g. simple mean imputation, or last value carried forward.
Multiple Imputation: Multiple imputation has been shown to be a valid general method for handling missing data in randomised clinical trials, and this method is available for most types of data.
After reviewing several blog posts e.g. KDnuggets; Analytics Vidhya, I’ve decided to review one of the mainstaypackages used in R for data imputation, the mice
package. In the future I would like to look closer at two other packages,hmisc
, and missforest
.
Multivariate Imputation by Chained Equations package, developed by Stef van Buuren and Karin Groothuis-Oudshoorn.
#will use a smaller version of the dataset with first 1,000 rows
orig_dat <- read_csv("https://raw.githubusercontent.com/pembletonc/OpenNorth_MAPS/master/maps-synthetic-data.csv") %>% rename(ID = X1)
vars_model1 <- c("dep_score", "text_wend", "text_week", "tv_wend", "tv_week",
"comp_week", "comp_wend")
small_dat <- orig_dat %>% select(one_of("ID", vars_model1)) %>% head(1000)
#restructure the dataset renaming the categorical variables:
dat_1 <- small_dat %>% mutate_at(vars(c(dep_score, text_wend, text_week, tv_wend, tv_week, comp_week, comp_wend)),
list(cat = ~case_when(. %in% c("Not at all") ~ 0,
. %in% c("Less than 1 hour") ~ 1,
. %in% c("1-2 hours") ~2,
. %in% c("3 or more hours") ~3,
TRUE ~NA_real_))) %>%
select(ID, dep_score, contains("cat"), -dep_score_cat) %>%
mutate_at(c("dep_score", "text_wend_cat", "text_week_cat",
"tv_wend_cat", "tv_week_cat", "comp_week_cat", "comp_wend_cat"),
funs(factor(.)))
library(mice)
#following the vignette offered, the process looks like this:
ini <- mice(dat_1, maxit = 0)
meth <- ini$meth
meth
## ID dep_score text_wend_cat text_week_cat tv_wend_cat
## "" "polyreg" "polyreg" "polyreg" "polyreg"
## tv_week_cat comp_week_cat comp_wend_cat
## "polyreg" "polyreg" "polyreg"
#set the method for factor variables with >= 2 levels with polyreg(Bayesian polytomous regression)
meth[3:8] <- "polyreg"
meth
## ID dep_score text_wend_cat text_week_cat tv_wend_cat
## "" "polyreg" "polyreg" "polyreg" "polyreg"
## tv_week_cat comp_week_cat comp_wend_cat
## "polyreg" "polyreg" "polyreg"
pred <- ini$pred
pred[, "dep_score"] <- 0
pred[, "ID"] <- 0
Setting the pred of certain variables to 0 indicates they won’t be used as predictor variables and creates a “predictor matrix”. In this case, ID
anddep_score
won’t be used as a variable to predict the missing values (dep_score will be included in the second iteration):
| ID | dep_score | text_wend_cat | text_week_cat | tv_wend_cat | tv_week_cat | comp_week_cat | comp_wend_cat | |
|---|---|---|---|---|---|---|---|---|
| ID | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
| dep_score | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
| text_wend_cat | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
| text_week_cat | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 1 |
| tv_wend_cat | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 |
| tv_week_cat | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 |
| comp_week_cat | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 |
| comp_wend_cat | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 |
In their second vignette, the authors of the mice
package provide a description of how to pool results and “avoid pitfalls researchers may fall into”. The authors write that “In general, we would like the streams to intermingle and be free of any trends at the later iterations.”, so I’m going to try to achieve this as well.
The mice function uses a Markov Chain Monte Carlo type of algorithm, and when reviewing the trace lines we can study convergence (here 5 iterations is used as the default minimum):
#run the first imputation with the methods and predictor variables (currently none used)
imp1 <- mice(dat_1, meth = meth, pred = pred, print = FALSE)
plot(imp1, c("dep_score", "text_wend_cat","text_week_cat", "tv_wend_cat", "tv_week_cat"))
#run second imputation, this time with depression_score as pred
pred <- ini$pred
pred[, "ID"] <- 0
pred
## ID dep_score text_wend_cat text_week_cat tv_wend_cat
## ID 0 1 1 1 1
## dep_score 0 0 1 1 1
## text_wend_cat 0 1 0 1 1
## text_week_cat 0 1 1 0 1
## tv_wend_cat 0 1 1 1 0
## tv_week_cat 0 1 1 1 1
## comp_week_cat 0 1 1 1 1
## comp_wend_cat 0 1 1 1 1
## tv_week_cat comp_week_cat comp_wend_cat
## ID 1 1 1
## dep_score 1 1 1
## text_wend_cat 1 1 1
## text_week_cat 1 1 1
## tv_wend_cat 1 1 1
## tv_week_cat 0 1 1
## comp_week_cat 1 0 1
## comp_wend_cat 1 1 0
imp2 <- mice(dat_1, meth = meth, pred = pred, print = FALSE)
plot(imp2, c("dep_score", "text_wend_cat","text_week_cat", "tv_wend_cat", "tv_week_cat"))
A test for robustness can be increasing the amount of iterations on the imputation and comparing convergence, which is more convincing with more iterations (m = 20 here):
imp3 <- mice.mids(imp2, maxit = 20, printFlag = FALSE)
plot(imp3, c("dep_score", "text_wend_cat","text_week_cat", "tv_wend_cat", "tv_week_cat"))
It doesn’t look like there is significant convergence, however it does look like some variables have patterns emerging, which I plan to look into further.
Density plots comparing imputation against actual can help to measure approximate accuracy, here looking at a single variable:
densityplot(imp2, ~text_week_cat)
As always, tabular results need to be examined as well:
mice::complete(imp2, 1)[1:10,] %>%
kableExtra::kable() %>%
kable_styling(full_width = F, position = "center")
| ID | dep_score | text_wend_cat | text_week_cat | tv_wend_cat | tv_week_cat | comp_week_cat | comp_wend_cat |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 2 | 2 | 2 | 2 |
| 2 | 3 | 2 | 3 | 3 | 3 | 2 | 1 |
| 3 | 1 | 3 | 3 | 1 | 2 | 2 | 1 |
| 4 | 0 | 2 | 2 | 1 | 1 | 2 | 3 |
| 5 | 2 | 0 | 0 | 3 | 2 | 2 | 1 |
| 6 | 0 | 1 | 1 | 3 | 2 | 2 | 1 |
| 7 | 0 | 1 | 1 | 2 | 2 | 3 | 2 |
| 8 | 0 | 1 | 1 | 2 | 2 | 2 | 2 |
| 9 | 0 | 1 | 3 | 2 | 2 | 3 | 3 |
| 10 | 1 | 3 | 2 | 1 | 1 | 1 | 1 |
Looks pretty good! There are more tests for robustness but in this little example, it has been interesting to learn how to use imputation on datasets (especially with categorical variables).
I see that imputation is in itself a field of study, and I look forward to learning more about it.
I anticipate that once I begin comparing the full dataset to the imputed dataset, I’ll gain a better understanding of how different imputation approaches can impact the data, and which will be best for the needs of this study.


The API is just one GET method.
http://getjson.net/get/?url=http://www.google.com/&callback=fn
Pass in the URL you want to fetch and the callback function name for JSONP requests. The result will be a JSON-encoded text string containing the fetched content.
Optionally, you can specify type=json
parameter, which will return the
decoded JSON object instead of the string value. For this, the original data to be fetched must be JSON as well.
If you're building an awesome web app, there's a lot that you can do - audio, video, 3D, realtime.
But there's one thing you largely can't do: fetch data from anywhere in the internet. Thanks to the XMLHttpRequest same-origin policy, you can only make requests to your own server, or to servers which specifically allowed you to do so.GetJSON solves this, for free.
This example uses jQuery .ajax()
to get an RSS feed from my blog:
$(function() { $.ajax('http://getjson.net/get/?url=' + escape('http://senko.net/en/feed/'), { dataType: "jsonp xml", /* make a JSONP request, convert the result to XML */ success: function(data) { /* do something with XML data */ } }); });
Need to use SSL or make POST requests? We've got that coming.  Spam is so 200X.


Faculty
Mari Ostendorf
Professor
EEB 215D
Students
Kevin Everson
PhD Student
Chia-Hsuan (Michael) Lee
PhD Student
Bo-Ru (Roy) Lu
PhD Student
Sara Ng
PhD Student
Zeqiu (Ellen) Wu
PhD Student
Sitong Zhou
PhD Student
Yushi Hu
PhD Student
Alumni
Ji He
PhD EE 2017
Aaron Jaech
PhD EE 2018
Hao Fang
PhD ECE 2019
Yi Luan
PhD ECE 2019
Hao Cheng
PhD ECE 2019
Vicky Zayats
PhD ECE 2020
Kevin Lybarger
PhD ECE 2020
Farah Nadeem
PhD ECE 2020
Trang Tran
PhD ECE 2020


--- layout: post tags: [AutoFixture] date: 2010-01-20 22:59:39 UTC title: "AutoFixture 1.0 RC2" --- {% include JB/setup %}
AutoFixture 1.0 Release Candidate 2 is now available on the CodePlex site! Compared to Release Candidate 1 there are very few changes, but the test period uncovered the need for a few extra methods on a recent addition to the library. RC2 contains these additional methods.
This resets the clock for the Release Candidate trial period. Key users have a chance to veto this release until a week from now. If no-one complains within that period, we will promote RC2 to version 1.0.
The RC2 release page has more details about this particular release.


|
|
What is Volleyball?
Overviewfrom the United States | globally popular
Set-uptwo teams | court divided by a net
Objectiveground the ball on the opponent's court | protect your court
How to Startright back-row player serves
Rulesmax 3 touches to send the ball over the net | no consecutive hits by the same player (blocks are exempted)
Rally Endsball touches the ground | ball goes ‘out' | failure to return ball | faults
Scoringteam winning a rally scores a pointif receiving team wins a rally: they earn the right to serve | their players rotate one position clockwise best of 3 or 5 games will win matches non-deciding games: 25 points to win | minimum 2-point advantage | no scoring cap deciding games: 15 points to win | minimum 2-point advantage | no scoring cap |


ECOMETER
{{profile?.name}}
{{co2amount}} KG(s) of CO2 Reduced
{{totalRides}}
Rides shared
{{distance}} KM
Distance shared
No NEW FRIENDS YET
New friends made
{{amount}} INR
Amount saved


Add a single repository to an installation.
PUT /user/installations/:installation_id/repositories/:repository_id
The authenticated user must have admin access to the repository.
Status: 204 No Content


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use net.ontopia.utils | |
|---|---|
| net.ontopia.infoset.content | |
| net.ontopia.persistence.proxy | An object-relational mapping framework. |
| net.ontopia.topicmaps.cmdlineutils | Provides a collection of command-line utilities for working with topic maps. |
| net.ontopia.topicmaps.cmdlineutils.utils | |
| net.ontopia.topicmaps.core | Provides interfaces for topic map objects; the topic map API for all Ontopia topic map implementations. |
| net.ontopia.topicmaps.db2tm | The implementation of and public API to the DB2TM module for converting relational data (in CSV files or RDBMSs) to Topic Maps. |
| net.ontopia.topicmaps.entry | High level interfaces for locating and maintaining references to topic maps. |
| net.ontopia.topicmaps.impl.basic | The in-memory implementation of the core topic map interfaces. |
| net.ontopia.topicmaps.impl.basic.index | Index classes for use with the basic implementation. |
| net.ontopia.topicmaps.impl.rdbms | Relational database implementation of the core topic map interfaces. |
| net.ontopia.topicmaps.impl.utils | INTERNAL: Classes that are used by many implementations. |
| net.ontopia.topicmaps.nav.context | Contains the classes that implement the user context filter in the Navigator Framework. |
| net.ontopia.topicmaps.nav.utils.comparators | Provides Comparators which are used by the Navigator. |
| net.ontopia.topicmaps.nav.utils.stringifiers | Provides Stringifiers which are used by the Navigator. |
| net.ontopia.topicmaps.nav2.core | Provides interfaces for the Navigator Tag Libraries and Framework. |
| net.ontopia.topicmaps.nav2.impl.basic | The basic implementation of the Navigator core interfaces. |
| net.ontopia.topicmaps.nav2.impl.framework | The implementation of the Navigator Framework related interfaces. |
| net.ontopia.topicmaps.nav2.taglibs.output | Output-producing tags, which extract information from the provided collection (mostly topic map related information), and write it to the document output. |
| net.ontopia.topicmaps.nav2.taglibs.value | General (Topic Map independent) value-producing tags, which provide mainly set manipulation operations on collections. |
| net.ontopia.topicmaps.nav2.utils | Provides utility classes for the Navigator Tag Libraries and Framework. |
| net.ontopia.topicmaps.query.core | Contains the interfaces through which interaction with query processors, queries, and query results are done. |
| net.ontopia.topicmaps.query.impl.basic | Contains the in-memory implementation of the query language. |
| net.ontopia.topicmaps.schema.utils | Contains classes containing useful utilities that make working with schemas easier. |
| net.ontopia.topicmaps.utils | This package provides topic map utility classes, which are a toolkit for working with the topic map model provided by the core interfaces. |
| net.ontopia.topicmaps.utils.deciders | Provides DeciderIFs which are used by the Navigator. |
| net.ontopia.topicmaps.utils.jtm | This package provides support for the JSON Topic Map Notation (or JTM) format for topic maps. |
| net.ontopia.topicmaps.utils.ltm | This package provides support for the textual Linear Topic Map Notation (or LTM) format for topic maps. |
| net.ontopia.topicmaps.utils.rdf | This package provides support for RDF (Resource Description Framework), a topic map-like data model for metadata defined by the W3C. |
| net.ontopia.topicmaps.utils.tmrap | |
| net.ontopia.topicmaps.viz | |
| net.ontopia.topicmaps.webed.core | The core interfaces of the Web Editor Framework; the main interfaces used to build Web Editor applications. |
| net.ontopia.topicmaps.webed.impl.basic | The basic implementation of the core interfaces belonging to Ontopia's web editor framework, except the classes related to the to the implementation of actions (which are in their own package structure). |
| net.ontopia.topicmaps.webed.impl.utils | |
| net.ontopia.topicmaps.xml | Classes for importing and exporting topic maps in the XML interchange format. |
| net.ontopia.utils | Contains utility classes and generic interfaces. |
| ontopoly.model | |
| ontopoly.utils |
| Classes in net.ontopia.utils used by net.ontopia.infoset.content | |
|---|---|
| OntopiaException
PUBLIC: An exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.persistence.proxy | |
|---|---|
| LookupIndexIF
INTERNAL: An interface implemented by objects which can be used to look up information, but which can do no more. |
|
| OntopiaException
PUBLIC: An exception class that can be used to wrap other exceptions with. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
|
| SoftHashMapIndex
INTERNAL: A lookup index implementation that uses soft references for the keys, in order to allow them to be garbage-collected. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.cmdlineutils | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.cmdlineutils.utils | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.core | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.db2tm | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.entry | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.impl.basic | |
|---|---|
| CollectionFactoryIF
INTERNAL: Factory that creates collection objects. |
|
| UniqueSet
INTERNAL: |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.impl.basic.index | |
|---|---|
| CollectionFactoryIF
INTERNAL: Factory that creates collection objects. |
|
| CollectionMap
INTERNAL: A map which stores entries containing Collection values. |
|
| CollectionSortedMap
INTERNAL: A sorted map which stores entries containing Collection values. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.impl.rdbms | |
|---|---|
| LookupIndexIF
INTERNAL: An interface implemented by objects which can be used to look up information, but which can do no more. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.impl.utils | |
|---|---|
| CachedIF
INTERNAL: Interface that objects containing cached information should implement. |
|
| CollectionFactoryIF
INTERNAL: Factory that creates collection objects. |
|
| LookupIndexIF
INTERNAL: An interface implemented by objects which can be used to look up information, but which can do no more. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav.context | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav.utils.comparators | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| GrabberIF
INTERNAL: Grabs an object from another object. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav.utils.stringifiers | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.core | |
|---|---|
| HistoryMap
INTERNAL: Helper class for storing elements up to a certain amount, lower most elements will be removed to ensure a fixed size of the collection. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.impl.basic | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.impl.framework | |
|---|---|
| HistoryMap
INTERNAL: Helper class for storing elements up to a certain amount, lower most elements will be removed to ensure a fixed size of the collection. |
|
| RingBuffer
INTERNAL: Utility for storing objects in a ring buffer. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.taglibs.output | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.taglibs.value | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| FilterIF
INTERNAL: Filters the objects in an iterator. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.nav2.utils | |
|---|---|
| CompactHashSet
INTERNAL: Implements the Set interface more compactly than java.util.HashSet by using a closed hashtable. |
|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.query.core | |
|---|---|
| OntopiaException
PUBLIC: An exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.query.impl.basic | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.schema.utils | |
|---|---|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| GrabberIF
INTERNAL: Grabs an object from another object. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils.deciders | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils.jtm | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils.ltm | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils.rdf | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.utils.tmrap | |
|---|---|
| OntopiaException
PUBLIC: An exception class that can be used to wrap other exceptions with. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.viz | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
|
| StringifierIF
PUBLIC: Stringifies objects. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.webed.core | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.webed.impl.basic | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.webed.impl.utils | |
|---|---|
| FileWatchdog
INTERNAL: Check every now and then that a certain file has not changed. |
| Classes in net.ontopia.utils used by net.ontopia.topicmaps.xml | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by net.ontopia.utils | |
|---|---|
| CachedIF
INTERNAL: Interface that objects containing cached information should implement. |
|
| CachedIndex.Entry
|
|
| ClearableIF
INTERNAL: A marker interface implemented by objects which can be cleared. |
|
| CmdlineOptions
INTERNAL: A class that parses command line options. |
|
| CmdlineOptions.ListenerIF
INTERNAL: A listener interface that must be implemented by object that are interested in options found by the CmdlineOptions instance. |
|
| CmdlineOptions.OptionsException
INTERNAL: An exception that is thrown when there are problems with the options specified on the command line. |
|
| CollectionFactoryIF
INTERNAL: Factory that creates collection objects. |
|
| CompactHashSet
INTERNAL: Implements the Set interface more compactly than java.util.HashSet by using a closed hashtable. |
|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| FilterIF
INTERNAL: Filters the objects in an iterator. |
|
| GrabberIF
INTERNAL: Grabs an object from another object. |
|
| LexicalComparator
INTERNAL: Comparator that performs a lexical comparison. |
|
| LookupIndexIF
INTERNAL: An interface implemented by objects which can be used to look up information, but which can do no more. |
|
| NullObject
INTERNAL: A singleton null object for use where null cannot be used, and an object is required. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
|
| ResourcesDirectoryReader
|
|
| ResourcesDirectoryReader.ResourcesFilterIF
|
|
| SoftHashMapIndex.SoftEntry
|
|
| SoftValueHashMapIndex.SoftEntry
|
|
| StringifierIF
PUBLIC: Stringifies objects. |
|
| UniqueSet
INTERNAL: |
| Classes in net.ontopia.utils used by ontopoly.model | |
|---|---|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
| Classes in net.ontopia.utils used by ontopoly.utils | |
|---|---|
| DeciderIF
PUBLIC: Interface for classes that decides whether an object is acceptable or not. |
|
| OntopiaRuntimeException
PUBLIC: A runtime exception class that can be used to wrap other exceptions with. |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Before you can start, please visit this page and login using your GroupMe username and password:
GroupMe Login
Then, copy and pase the token provided into this box:


First of all, I would like to thank everyone on r/adeptustitanicus for the support and kind words. I’m happy with the results so far. After a few modifications, I have made the designs available for purchase. On Shapeways if you want to order them printed, and cgtrader if you want the STLs to try and print them yourself (I would be glad to hear of your experience).
Continue reading
I received my order from Shapeways! The body was a bit damaged, but I was able to salvage it with greenstuff. They will send me a replacement part that will go on doggie number two. I tested everything, and… it fits very well!
Continue reading
My recent order to Shapeways was the occasion to try something I whipped up a while ago: parametric ork missiles! For a long time, I’ve wanted to convert stantard shooty boyz to tankbustas simply by adding a missile to the front of their shoota. The reasoning being that firing a bullet in a missile was a very good way to launch it.
Continue reading


Seated behind her gilded writing table, Elaida fingered an age-dark ivory carving of a strange bird with a beak as long as its body and listened with some amusement to the six women standing on the other side on the table. Each a Sitter for her Ajah, they frowned sideways at one another, shifted velvet slippers on the brightly patterned carpet that covered most of the russet floor tiles, twitched at vine-worked shawls so the colored fringes danced, and generally looked and sounded like a gaggle of peevish serving girls wishing they had the nerve to go for each others’ throats in front of their mistress. Frost coated the glassed casements fitted into the windows so that it was hardly possible to see the snow swirling outside, though sometimes the winds howled with an icy rage. Elaida felt quite warm, and not just for the thick logs blazing in the white marble fireplace. Whether these women knew it or not—well, Duhara knew, certainly, and perhaps the others did—she was their mistress. The elaborate gold-covered case clock that Cemaile had commissioned ticked away. Cemaile’s vanished dream would come true; The Tower returned to its glory. And firmly in the capable hands of Elaida do Avriny a’Roihan.
“No ter’angreal has ever been found that can ‘control’ a woman’s channeling,” Velina was saying in a voice cool and precise but almost girlishly high-pitched, a voice at strong odds with her eagle’s beak of a nose and her sharp, tilted eyes. She sat for the White, and was the very model of a White sister, in all but her fierce appearance. Her plain, snowy dress seemed stark and cold.  Therefore, logically, if such a ter’angreal were found, or more than one, improbable as that must be, there could not be sufficient of them to control more than two or three women at most. It follows that the reports of these so-called Seanchan are exaggerated wildly. If women on ‘leashes’ exist, they cannot channel. Plainly not. I do not deny these people hold Ebou Dar, and Amador, and perhaps more, but clearly they are but a creation of Rand al’Thor, perhaps to frighten people into flocking to him. Like this Prophet of his. It is simple logic.”
“I am very glad you don’t deny Amador and Ebou Dar at least, Velina,” Shevan said drily. And she could be very dry indeed. As tall as most men, and bonily thin with it, the Brown Sitter had an angular face and a long chin, not improved by a cap of curls. With spidery fingers she rearranged her shawl and smoothed skirts of dark golden silk, and her voice took on pointed amusement. “I’m uncomfortable saying what can and can’t be. For example, not long gone, everyone ‘knew’ only a shield woven by a sister could stop a woman channeling. Then comes a simple herb, forkroot, and anyone at all can feed you a tea that leaves you unable as a stone to channel for hours.  Maybe next, someone will learn to make ter’angreal again.”
Elaida’s mouth tightened. She did not concern herself with impossibilities, and if no sister had managed to rediscover the making of ter’angreal in three thousand years, one never would and that was that. It was knowledge slipping through her fingers when she wanted it held close that curled Elaida’s tongue. In spite of all her efforts, every last initiate in the Tower had learned of forkroot, now. No one liked knowing in the least. No one liked suddenly being vulnerable to anyone with a knowledge of herbs and a little hot water. That knowledge was worse than poison, as the Sitters here made clear.
At mention of the herb, Duhara’s big, dark eyes grew uneasy in her coppery face, and she held herself more stiffly than usual, hands clutching skirts so red they seemed nearly black. Sedore actually swallowed, and her fingers tightened on the worked leather folder Elaida had handed her, though the round-faced Yellow usually carried herself with a frosty elegance. Andaya shivered! She actually wrapped her gray-fringed shawl around her convulsively.
Elaida wondered what they would do if they learned the Asha’man had rediscovered Traveling. As it was, they were barely able to make themselves speak of them. At least she had managed to hold that knowledge to a handful.
“I think we might better concern ourselves with what we know to be true, yes?” Andaya said firmly, back in control of herself. Her light brown hair, brushed till it gleamed, hung flowing down her back, and her silver-slashed blue dress was cut in the style of Andor, but Tarabon still rested strongly on her tongue. Though neither particularly small nor particularly slim, she somehow always reminded Elaida of a sparrow about to hop on a branch. A most unlikely-appearing negotiator, though her reputation had been earned. She smiled at the others, not very pleasantly, and that seemed sparrowlike, too. Perhaps it was how she held her head. “Idle speculation, it wastes precious time. The world hangs by a thread, and myself, I do not wish to fritter away valuable hours prattling about supposed logic or chattering over what every fool and novice knows. Does anyone have anything useful to say?” For a sparrow, she could put acid on her words. Velina’s face went red, and Shevan’s darkened.
Rubinde twisted her lips at the Gray. Perhaps they were meant to make a smile, but they merely seemed to writhe. With raven-black hair and eyes like sapphires, the Mayener usually looked as if she intended to walk through a stone wall, and planting her fists on her hips now, she seemed ready to walk through two. “We’ve dealt with what we can for the time being, Andaya. Most of it, anyway. The rebels are caught by the snows in Murandy, and we’ll make winter hot enough for them that in the spring they’ll come crawling back to apologize and beg penance. Tear will be taken care of as soon as we find where the High Lord Darlin has vanished to, and Cairhien once we root Caraline Damodred and Toram Riatin out of their hiding places. Al’Thor has the crown of Illian for the moment, but that’s in work. So, unless you have a scheme for snaffling the man into the Tower or making these so-called ‘Asha’man’ vanish, I have the business of my Ajah to be about.”
Andaya drew herself up, her feathers well and truly ruffled. For that matter, Duhara’s eyes narrowed; mention of men who could channel always lit fires in her head. Shevan clicked her tongue as if at children squabbling—though she looked pleased to see it—and Velina frowned, for some reason sure Shevan had aimed at her. This was amusing, but getting out of hand.
“The business of the Ajahs is important, daughters.” Elaida did not raise her voice, but every head swiveled toward her. She replaced the ivory carving with the rest of her collection in the large box covered with roses and golden scrolls, carefully adjusted the positions of her writing case and correspondence box so the three lacquered boxes lined up just so on the table, and once their silence was perfect she went on. “The business of the Tower is more important, though. I trust you will effect my decrees promptly. I see too much sloth in the Tower. I fear Silviana may find herself very busy if matters do not come right soon.” She did not voice any further threat. She merely smiled.
“As you command, Mother,” murmured six voices not so steady as their owners might have wished. Even Duhara’s face was pasty pale as they made their curtsies. Two Sitters had been stripped of their chairs, and half a dozen had served days of Labor for penance—which was humiliating enough in their position to be Mortification of the Spirit besides; Shevan and Sedore certainly wore tight mouths as they remembered all too well scrubbing floors and working in the laundries—but none had been sent to Silviana for Mortification of the Flesh. No one wanted to be. The Mistress of Novices had two or three visits each week from sisters who been given penance by their Ajahs or set one for themselves—a dose of the strap, however painful, was done with much more quickly than raking garden paths for a month—but Silviana possessed considerably less mercy with sisters than with the novices and Accepted in her charge. More than one sister must have spent the next few days wondering whether a month pulling a rake might not have been preferable after all.
They scurried toward the doors, eager to be away. Sitters or no, not one would have set foot this high in the Tower without Elaida’s direct summons. Fingering her striped stole, Elaida let her smile become one of pleasure. Yes, she was the mistress in the White Tower. As was only proper for the Amyrlin Seat.
Before that fast-stepping knot of Sitters reach the doorway, the left-hand door opened, and Alviarin stepped in, the narrow white stole of the Keeper almost vanishing against a silk dress that made Velina’s seem dingy.
Elaida felt her smile go crooked and begin sliding from her face. Alviarin had a single sheet of parchment in one slim hand. Odd, what one noticed at a time like this. The woman had been gone almost two weeks, vanished from the Tower without word or note, without anyone so much as seeing her go, and Elaida had begun to think fond thoughts of Alviarin lying in a snowbank, or swept away in a river, sliding beneath the ice.
The six Sitters skidded to a halt uncertainly when Alviarin did not move out of their way. Even a Keeper with Alviarin’s influence did not impede Sitters. Though Velina, normally the most self-possessed woman in the Tower, flinched for some reason. Alviarin glanced once at Elaida, coolly, studied the Sitters for a moment, and understood everything.
“I think you should leave that with me,” she said to Sedore in tones only a fraction warmer than the snow outside. “The Mother likes to consider her decrees carefully, as you know. This would not be the first time she changed her mind after signing.” She held out a slim hand.
Sedore, whose arrogance was notable even among Yellows, barely hesitated before giving her the leather folder.
Elaida ground her teeth in fury. Sedore had hated her five days up to her elbows in hot water and scrub boards. Elaida would find something less comfortable for her next time. Maybe Silviana after all. Maybe cleaning the cesspits!
Alviarin stepped aside without a word, and the Sitters went, adjusting shawls, muttering to themselves, reassuming the dignity of the Hall. Briskly, Alviarin closed the door behind them and walked toward Elaida thumbing through the papers in the folder. The decrees she had signed hoping Alviarin was dead. Of course, she had not rested on hope. She had not spoken to Seaine, in case someone might see and tell Alviarin when she returned, but Seaine was certainly working away as instructed, following the path of treason that surely would lead to Alviarin Freidhen. But Elaida had hoped. Oh, how she had hoped.
Alviarin murmured to herself as she rifled the folder. “This can go through, I suppose. But not this. Or this. And certainly not this!” She crumpled a decree, signed and sealed by the Amyrlin Seat, and tossed it to the floor contemptuously. Stopping beside Elaida’s gilded chair, with the Flame of Tar Valon in moonstones atop its high back, she slapped the folder and her own parchment down on the table.
“I thought we had settled this, Elaida.” The monstrous woman’s voice made the snowstorm outside seem warm. “I know how to save the Tower from your blunders, and I won’t have you making new ones behind my back. If you persist, be assured that I will see you deposed, stilled, and howling under the birch before every initiate and even the servants!”
With an effort, Elaida kept her hand away from her cheek. She did not need a mirror to tell her it was red. She had to be careful. Seaine had found nothing yet, or she would have come. Alviarin could open her mouth before the Hall and reveal the whole disastrous kidnapping of the al’Thor boy. She might see her deposed and stilled and birched with that alone, but Alviarin had another string to her bow. Toveine Gazal was leading fifty sisters and two hundred of the Tower Guard against a Black Tower Elaida had been sure, when she gave the orders, held perhaps two or three men who could channel. Yet even with the hundreds—hundreds! with Alviarin staring coldly down at her, that thought still curdled Elaida’s stomach!—even with hundreds of these Asha’man, she had hope for Toveine. The Black Tower would be rent in fire and blood, she had Foretold, and sisters would walk its grounds. Surely that meant that somehow, Toveine would triumph. More, the rest of the Foretelling had told her that the Tower would regain all its old glories under her, that al’Thor himself would quail at her anger. Alviarin had heard the words coming out of Elaida’s mouth when the Foretelling took her. And she had not remembered later, when she began her blackmail, had not understood her own doom. Elaida waited in patience. She would repay the woman threefold! But she could be patient. For now.
Making no attempt to hide her sneer, Alviarin pushed the folder aside and moved the single parchment in front of Elaida. She flipped open the green-and-gold writing case, dipped Elaida’s pen in the inkwell and thrust it at her. “Sign.”
Elaida took the pen wondering what madness she would be putting her name to this time. Yet another increase in the Tower Guard, when the rebels would be done before there was any use for soldiers? Another attempt to make the Ajahs reveal publicly which sisters headed them? That had certainly fallen on its nose! Reading quickly, she felt a knot of ice grow in her belly and keep growing. Giving each Ajah final authority over any sister in its quarter no matter her own Ajah had been the worst insanity so far—how could picking apart the very fabric of the Tower save it?—but this—!
The world now knows that Rand al’Thor is the Dragon Reborn. The world knows that he is a man who can touch the One Power. Such men have lain within the authority of the White Tower since time immemorial. The Dragon Reborn is granted the protection of the Tower, but whosoever attempts to approach him save through the White Tower lies attainted of treason against the Light, and anathema is pronounced against them now and forever. The world may rest easily knowing that the White Tower will safely guide the Dragon Reborn to the Last Battle and the inevitable triumph.
Automatically, numbly, she added “of the Light” after “triumph,” but then her hand froze. Publicly acknowledging al’Thor as the Dragon Reborn could be borne, since he was, and this might lead many to accept the rumors that he had knelt to her already, which would prove useful, but for the rest, she could not believe so much damage could be contained in so few words.
“The Light have mercy,” she breathed fervently. “If this is proclaimed, it will be impossible to convince al’Thor that his abduction was unsanctioned.” It would be hard enough without, but she had seen people convinced before that what had happened, had not, and them in the middle of it happening. “And he will be ten times on his guard against another attempt. Alviarin, at best, this will frighten away a few of his followers. At best!” Many likely had waded so deep with him they did not dare try to wade back. Certainly not if they thought anathema already hung over their heads! “I might as well set fire to the Tower with my own hand as sign this!”
Alviarin sighed impatiently. “You haven’t forgotten your catechism, have you? Say it for me, as I taught you.”
Elaida’s lips compressed of their own accord. One pleasure in the woman’s absence—not the greatest, but a very real pleasure—had been not being forced to repeat that vile litany every day. “I will do as I am told,” she said at last, in a flat voice. She was the Amyrlin Seat! “I will speak the words you tell me to speak, and no more.” Her Foretelling ordained her triumph, but, oh, Light, let it come soon! “I will sign what you tell me to sign, and nothing else. I am . . . ” She choked over the last. “I am obedient to your will.”
“You sound as if you need to be reminded of the truth of that,” Alviarin said with another sigh. “I suppose I’ve left you alone too long.” She tapped the parchment with a peremptory finger. “Sign.”
Elaida signed, dragging the pen across the parchment. There was nothing else she could do.
Alviarin barely waited for the pen’s nib to lift before snatching up the decree. “I will seal this myself,” she said, heading for the door. “I shouldn’t have left the Amyrlin’s seal where you could find it. I want to talk to you later. I have left you to yourself too long. Be here when I return.”
“Later?” Elaida said. “When? Alviarin? Alviarin?”
The door closed behind the woman, leaving Elaida to fume. Be there when Alviarin returned! Confined to her quarters like a novice in the punishment cells!
For a time she fingered her correspondence box, with its golden hawks fighting among white clouds in a blue sky, yet she could not make herself open it. With Alviarin gone, that box had begun once more to hold letters and reports of importance, not just the table scraps Alviarin let fall to her, yet with the woman’s return, it might as well have been empty. Rising, she began rearranging the roses in their white vases, each atop a white marble plinth in a corner of the room. Blue roses; the most rare.
Abruptly she realized that she was staring at a broken rose stem in her hands, snapped in two. Half a dozen more littered the floor tiles. She made a vexed sound in her throat. She had been thinking of her hands around Alviarin’s throat. It was not the first time she had considered killing the woman. But Alviarin would have taken precautions. Sealed documents, to be opened should anything untoward happen, had no doubt been left with the last sisters Elaida would suspect. That had been her one real worry during Alviarin’s absence, that someone else might think the woman dead, and come forward with the evidence that would drag the stole from her shoulders. Sooner or later, though, one way or another, Alviarin was finished, as surely as those roses were—
“You didn’t answer my knock, Mother, so I came on in,” a woman said gruffly behind her.
Elaida turned, ready to flay with her tongue, but at the sight of the stocky, square-faced woman in a red-fringed shawl standing just inside the room, the blood drained from her own cheeks.
“The Keeper said you wanted to speak me,” Silviana said irritably. “About a private penance.” Even to the Amyrlin Seat, she made no effort to hide her disgust. Silviana believed private penance a ridiculous affectation. Penance was public; only punishment took place in private. “She also asked me to remind you of something, but she rushed off before saying what.” She finished with a snort. Silviana saw anything that took time away from her novices and Accepted as needless interruption.
“I think I remember,” Elaida told her dully.
When Silviana finally left—after only half an hour by the chimes of Cemaile’s clock, yet an endless eternity—all that kept Elaida from calling the Hall to sit immediately so she could demand Alviarin be stripped of the Keeper’s stole were the certainty of her Foretelling and the certainty that Seaine would trace that trail of treason back to Alviarin. That, and the sure fact that whether or not Alviarin fell in the confrontation, she herself definitely would. So, Elaida do Avriny a’Roihan, Watcher of the Seals, the Flame of Tar Valon, the Amyrlin Seat, surely the most powerful ruler in the world, lay facedown on her bed and blubbered into her pillows, too tender to don the shift that lay discarded on the floor, certain that when Alviarin returned, the woman would insist on her sitting through the entire interview. She blubbered, and through her tears she prayed for Alviarin’s downfall to come soon.
“I did not tell you to have Elaida . . . beaten,” that voice of crystal chimes said. “Do you rise above yourself?”
Alviarin flung herself from her knees onto her belly before the woman who seemed made of dark shadows and silvery light. Seizing the hem of Mesaana’s dress, she rained kisses on it. The weave of Illusion—it must be that, though she could not see a single thread of saidar any more than she could sense the ability to channel in the woman who stood over her—did not hold completely, with her frantically shifting the skirt’s edge. Flickers of bronze silk with a thin border of intricately embroidered black scrollwork showed through.
“I live to serve and obey you, Great Mistress,” Alviarin panted between kisses. “I know that I am among the lowest of the low, a worm in your presence, and I pray only for your smile.” She had been punished once for “rising above herself”—not for disobedience, thanks be to the Great Lord of the Dark!—and she knew that whatever howls Elaida might be raising right then, they could not be half so loud as her own had been.
 “The decree has gone out.” It was not a question, but Alviarin answered hastily.
“Yes, Great Mistress. Copies went to Northharbor and Southharbor even before I had Elaida sign. The first couriers have gone, and no merchant will leave the city without copies to distribute.” Mesaana knew all that, of course. She knew everything. A cramp tightened the back of Alviarin’s awkwardly craned neck, but she did not move. Mesaana would tell her when to move. “Great Mistress, Elaida is an empty husk. With all humility, would it not be better without the need to use her?” She held her breath. Questions could be dangerous, with the Chosen.
A shadow-nailed silvery finger tapped silver lips pursed in an amused smile. “Better if you wore the Amyrlin’s stole, child?” Mesaana said at last.  For now, I have a tiny task for you. In spite of all the walls that have gone up between the Ajahs, the heads of the Ajahs seem to encounter one another with surprising frequency. By chance, they make it seem. All but the Red, at least; a pity Galina got herself killed, or she could tell you what they are about. Very probably it is trivial, but you will learn why they bare teeth at one another in public, then whisper together in private.”
“I hear and obey, Great Mistress,” Alviarin replied promptly, grateful that Mesaana considered it unimportant. The great “secret” of who headed the Ajahs was none to her—every Black sister was required to relay to the Supreme Council every whisper inside her supposed Ajah—but only Galina among them had been Black. That meant querying the Black sisters among the Sitters, which meant going through all the layers between them and her. That would take time, and without any certainty of success. Except for Ferane Neheran and Suana Dragand, who were the heads of the their Ajahs, Sitters rarely seemed to know what their Ajah’s head was thinking until they were told. “I will tell you as soon as I learn, Great Mistress.”
But she did file away a tidbit for herself. Trivial matter or not, Mesaana did not know everything that happened in the White Tower. And Alviarin would keep her eyes open for a sister in bronze skirts bordered on the hem in black scrollwork. Mesaana was hiding herself in the Tower, and knowledge was power.


Notebooks
Story: The rain (and eating tortoises)
The rain (and eating tortoises)
Title
The rain (and eating tortoises)
Collection
Summary
Certain serpents and tortoises supposed to be kept in store by the Rain. (L VIII.-16. 7431 rev. and 7432 rev.). For fear of arousing the wrath of the Rain, a certain kind of tortoise is not to be eaten by young unmarried men and women. The Rain to be addressed when it appears to be displeased. (L VIII.-26. 8303-8309. The manner in which the Rain is addressed by the old men. (L VIII.-26. 8304 rev. and 8305 rev., note).
Comments
1) p.8302v: the |xam names of some of |han≠kass'o's relations (who told |han≠kass'o this story), 2) p.8304v: what |han≠kass'o's grandfather and old men say to the rain, 3) p.8305v: why the rain is ashamed, 4) p.8307v: what white men and the |xam call the falling rainwater, 5) p.8308v: see: An illustration of the use of ddabba-i, 6) This story is found in Book VIII-26
Contributors
|han≠kass'o (Klein Jantje) (VIII)
Date
6 – 8 March 1879
Categories
Keywords
rain (the Rain) , rain (!khwa or !khoa) , rain (goes away with its tail between its legs) , rain (is made ashamed) , rain (is addressed by a man with a good heart) , rain (respecting) , rain (scolding) , rain (the education of children concerning) , rain (is angry, or wrathful) , rain (the old man's address to) , rain (|han≠kass'o's grandfather Tsatsi's address to) , rain (what |han≠kass'o's relations told him about) , rain (is asked to fall gently) , rain (its liquid) , rain (what the |xam call it) , rain (what the white men call it) , rain (and thunder and lightning) , rain ('lightens') , rain (its clouds) , rain (when thundering, 'sounds hollowly') , rain (and its things) , rain (its tortoise must not be eaten by young unmarried men and women) , rain (eating its things prohibited) , tortoise (eating of prohibited) , tortoise (and the rain) , tortoise (is the rain's thing) , tortoise (must not be eaten by young men and women) , tortoise (eating it angers the rain) , food (avoidance of tortoise and the rain's things) , food (the rain's things must not be eaten) , food (tortoise must not be eaten by unmarried men and women) , food (and respect for the rain) , |han≠kass'o (the names of some of his relations) , |han≠kass'o (his grandfather Tsatsi's address to the rain) , |han≠kass'o (what his relations told him about the rain) , |han≠kass'o (his personal history) , address (to the rain) , address (to the angry rain) , address (|han≠kass'o's grandfather Tsatsi's to the rain) , address (what old men say to the rain) , address (by a man with a good heart who does not scold it) , name (of Rain is !khwa or !khoa) , name (what the |xam call the rain) , name (what the white men call the rain) , name (names of |han≠kass'o's relations) , personal history (the names of some of |han≠kass'o's relations) , personal history (|han≠kass'o's grandfather Tsatsi's address to the rain) , education (of children concerning the rain and eating tortoise) , education (about respecting the rain's things) , education (what |han≠kass'o's relations told him about the rain) , teaching (children about the rain and eating tortoise) , teaching (about respecting the rain's things) , teaching (what |han≠kass'o's relations told him about the rain)
Story Pages
8303-8309


| 1 | /* Woodstox Lite ("wool") XML processor | |
| 2 | * | |
| 3 | * Copyright (c) 2006- Tatu Saloranta<EMAIL_ADDRESS>| |
| 4 | * | |
| 5 | * Licensed under the License specified in the file LICENSE which is | |
| 6 | * included with the source code. | |
| 7 | * You may not use this file except in compliance with the License. | |
| 8 | * | |
| 9 | * Unless required by applicable law or agreed to in writing, software | |
| 10 | * distributed under the License is distributed on an "AS IS" BASIS, | |
| 11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 12 | * See the License for the specific language governing permissions and | |
| 13 | * limitations under the License. | |
| 14 | */ | |
| 15 | ||
| 16 | package com.fasterxml.aalto.in; | |
| 17 | ||
| 18 | /** | |
| 19 | * This intermediate abstract class defines more specialized API needed | |
| 20 | * by components like symbol tables, which need to provide efficient | |
| 21 | * access to byte-based PNames. Byte-based names can be used to directly | |
| 22 | * convert byte sequences to actual character-based names, without | |
| 23 | * intervening byte-to-character decoding phase. | |
| 24 | */ | |
| 25 | public abstract class ByteBasedPName | |
| 26 | extends PName | |
| 27 | { | |
| 28 | /** | |
| 29 | * Since the hash is calculated different from the way eventual | |
| 30 | * String's hash will be (bit faster, not significantly worse | |
| 31 | * hashing uniformness), we need to store that hash here. | |
| 32 | */ | |
| 33 | protected final int mHash; | |
| 34 | ||
| 35 | protected ByteBasedPName(String pname, String prefix, String ln, | |
| 36 | int hash) | |
| 37 | { | |
| 38 | super(pname, prefix, ln); | |
| 39 | mHash = hash; | |
| 40 | } | |
| 41 | ||
| 42 | /* | |
| 43 | ////////////////////////////////////////////////////////// | |
| 44 | // Specialized comparators and accessors | |
| 45 | ////////////////////////////////////////////////////////// | |
| 46 | */ | |
| 47 | ||
| 48 | // From base class: | |
| 49 | ||
| 50 | @Override | |
| 51 | public abstract int getFirstQuad(); | |
| 52 | ||
| 53 | @Override | |
| 54 | public abstract int getQuad(int index); | |
| 55 | ||
| 56 | @Override | |
| 57 | public abstract int sizeInQuads(); | |
| 58 | ||
| 59 | // additional ones: | |
| 60 | ||
| 61 | public abstract boolean equals(int quad1, int quad2); | |
| 62 | ||
| 63 | public abstract boolean equals(int[] quads, int qlen); | |
| 64 | ||
| 65 | public abstract boolean hashEquals(int h, int quad1, int quad2); | |
| 66 | ||
| 67 | public abstract boolean hashEquals(int h, int[] quads, int qlen); | |
| 68 | | |
| 69 | /* | |
| 70 | ////////////////////////////////////////////////////////// | |
| 71 | // Redefined standard methods | |
| 72 | ////////////////////////////////////////////////////////// | |
| 73 | */ | |
| 74 | ||
| 75 | /** | |
| 76 | * Whether we should use internal hash, or the hash of prefixed | |
| 77 | * name string itself is an open question. For now, let's use | |
| 78 | * former. | |
| 79 | */ | |
| 80 | @Override | |
| 81 |
1
1. hashCode : replaced return of integer sized value with (x == 0 ? 1 : 0) → KILLED |
public int hashCode() { return mHash; } |
| 82 | } | |
| 83 | ||
Mutations | ||
| 81 |
1.1 |


{% extends "base.html" %} {% load i18n placeholder_tags simple_translation_tags %} {% load url from future %} {% block main %} {% with event|get_preferred_translation_from_request:request as event_title %} {% trans "Back to Events" %}
{{ event_title.description }}
{% with event.placeholders|choose_placeholder:"content" as content %} {% render_placeholder content %} {% endwith %} {% with event.placeholders|choose_placeholder:"detailed_description" as detailed_description %} {% render_placeholder detailed_description %} {% endwith %} {% endwith %} {% endblock %}