| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
| 6.1 Simple Commands & Pipelines | ||
| 6.2 Precommand Modifiers | ||
| 6.3 Complex Commands | ||
| 6.4 Alternate Forms For Complex Commands | ||
| 6.5 Reserved Words | ||
| 6.6 Errors | ||
| 6.7 Comments | ||
| 6.8 Aliasing | ||
| 6.9 Quoting |
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
A simple command is a sequence of optional parameter assignments followed by blank-separated words, with optional redirections interspersed. For a description of assignment, see the beginning of Parameters.
The first word is the command to be executed, and the remaining words, if any, are arguments to the command. If a command name is given, the parameter assignments modify the environment of the command when it is executed. The value of a simple command is its exit status, or 128 plus the signal number if terminated by a signal. For example,
echo foo
is a simple command with arguments.
A pipeline is either a simple command, or a sequence of two or more simple commands where each command is separated from the next by ‘|’ or ‘|&’. Where commands are separated by ‘|’, the standard output of the first command is connected to the standard input of the next. ‘|&’ is shorthand for ‘2>&1 |’, which connects both the standard output and the standard error of the command to the standard input of the next. The value of a pipeline is the value of the last command, unless the pipeline is preceded by ‘!’ in which case the value is the logical inverse of the value of the last command. For example,
echo foo | sed 's/foo/bar/'
is a pipeline, where the output (‘foo’ plus a newline) of the first command will be passed to the input of the second.
If a pipeline is preceded by ‘coproc’, it is executed as a coprocess; a two-way pipe is established between it and the parent shell. The shell can read from or write to the coprocess by means of the ‘>&p’ and ‘<&p’ redirection operators or with ‘print -p’ and ‘read -p’. A pipeline cannot be preceded by both ‘coproc’ and ‘!’. If job control is active, the coprocess can be treated in other than input and output as an ordinary background job.
A sublist is either a single pipeline, or a sequence of two or more pipelines separated by ‘&&’ or ‘||’. If two pipelines are separated by ‘&&’, the second pipeline is executed only if the first succeeds (returns a zero status). If two pipelines are separated by ‘||’, the second is executed only if the first fails (returns a nonzero status). Both operators have equal precedence and are left associative. The value of the sublist is the value of the last pipeline executed. For example,
dmesg | grep panic && print yes
is a sublist consisting of two pipelines, the second just a simple command which will be executed if and only if the grep command returns a zero status. If it does not, the value of the sublist is that return status, else it is the status returned by the print (almost certainly zero).
A list is a sequence of zero or more sublists, in which each sublist is terminated by ‘;’, ‘&’, ‘&|’, ‘&!’, or a newline. This terminator may optionally be omitted from the last sublist in the list when the list appears as a complex command inside ‘(...)’ or ‘{...}’. When a sublist is terminated by ‘;’ or newline, the shell waits for it to finish before executing the next sublist. If a sublist is terminated by a ‘&’, ‘&|’, or ‘&!’, the shell executes the last pipeline in it in the background, and does not wait for it to finish (note the difference from other shells which execute the whole sublist in the background). A backgrounded pipeline returns a status of zero.
More generally, a list can be seen as a set of any shell commands whatsoever, including the complex commands below; this is implied wherever the word ‘list’ appears in later descriptions. For example, the commands in a shell function form a special sort of list.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
A simple command may be preceded by a precommand modifier, which will alter how the command is interpreted. These modifiers are shell builtin commands with the exception of nocorrect which is a reserved word.
The command is executed with a ‘-’ prepended to its argv[0] string.
The command word is taken to be the name of a builtin command, rather than a shell function or external command.
The command word is taken to be the name of an external command, rather than a shell function or builtin. If the POSIX_BUILTINS option is set, builtins will also be executed but certain special properties of them are suppressed. The -p flag causes a default path to be searched instead of that in $path. With the -v flag, command is similar to whence and with -V, it is equivalent to whence -v.
The following command together with any arguments is run in place of the current process, rather than as a sub-process. The shell does not fork and is replaced. The shell does not invoke TRAPEXIT, nor does it source zlogout files. The options are provided for compatibility with other shells.
The -c option clears the environment.
The -l option is equivalent to the - precommand modifier, to treat the replacement command as a login shell; the command is executed with a - prepended to its argv[0] string. This flag has no effect if used together with the -a option.
The -a option is used to specify explicitly the argv[0] string (the name of the command as seen by the process itself) to be used by the replacement command and is directly equivalent to setting a value for the ARGV0 environment variable.
Spelling correction is not done on any of the words. This must appear before any other precommand modifier, as it is interpreted immediately, before any parsing is done. It has no effect in non-interactive shells.
Filename generation (globbing) is not performed on any of the words.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
A complex command in zsh is one of the following:
The if list is executed, and if it returns a zero exit status, the then list is executed. Otherwise, the elif list is executed and if its status is zero, the then list is executed. If each elif list returns nonzero status, the else list is executed.
Expand the list of words, and set the parameter name to each of them in turn, executing list each time. If the ‘in word’ is omitted, use the positional parameters instead of the words.
The term consists of one or more newline or ; which terminate the words, and are optional when the ‘in word’ is omitted.
More than one parameter name can appear before the list of words. If N names are given, then on each execution of the loop the next N words are assigned to the corresponding parameters. If there are more names than remaining words, the remaining parameters are each set to the empty string. Execution of the loop ends when there is no remaining word to assign to the first name. It is only possible for in to appear as the first name in the list, else it will be treated as marking the end of the list.
The arithmetic expression expr1 is evaluated first (see Arithmetic Evaluation). The arithmetic expression expr2 is repeatedly evaluated until it evaluates to zero and when non-zero, list is executed and the arithmetic expression expr3 evaluated. If any expression is omitted, then it behaves as if it evaluated to 1.
Execute the do list as long as the while list returns a zero exit status.
Execute the do list as long as until list returns a nonzero exit status.
word is expanded and treated as an arithmetic expression, which must evaluate to a number n. list is then executed n times.
The repeat syntax is disabled by default when the shell starts in a mode emulating another shell. It can be enabled with the command ‘enable -r repeat’
Execute the list associated with the first pattern that matches word, if any. The form of the patterns is the same as that used for filename generation. See Filename Generation.
Note further that, unless the SH_GLOB option is set, the whole pattern with alternatives is treated by the shell as equivalent to a group of patterns within parentheses, although white space may appear about the parentheses and the vertical bar and will be stripped from the pattern at those points. White space may appear elsewhere in the pattern; this is not stripped. If the SH_GLOB option is set, so that an opening parenthesis can be unambiguously treated as part of the case syntax, the expression is parsed into separate words and these are treated as strict alternatives (as in other shells).
If the list that is executed is terminated with ;& rather than ;;, the following list is also executed. The rule for the terminator of the following list ;;, ;& or ;| is applied unless the esac is reached.
If the list that is executed is terminated with ;| the shell continues to scan the patterns looking for the next match, executing the corresponding list, and applying the rule for the corresponding terminator ;;, ;& or ;|. Note that word is not re-expanded; all applicable patterns are tested with the same word.
where term is one or more newline or ; to terminate the words. Print the set of words, each preceded by a number. If the in word is omitted, use the positional parameters. The PROMPT3 prompt is printed and a line is read from the line editor if the shell is interactive and that is active, or else standard input. If this line consists of the number of one of the listed words, then the parameter name is set to the word corresponding to this number. If this line is empty, the selection list is printed again. Otherwise, the value of the parameter name is set to null. The contents of the line read from standard input is saved in the parameter REPLY. list is executed for each selection until a break or end-of-file is encountered.
Execute list in a subshell. Traps set by the trap builtin are reset to their default values while executing list.
Execute list.
First execute try-list. Regardless of errors, or break, continue, or return commands encountered within try-list, execute always-list. Execution then continues from the result of the execution of try-list; in other words, any error, or break, continue, or return command is treated in the normal way, as if always-list were not present. The two chunks of code are referred to as the ‘try block’ and the ‘always block’.
Optional newlines or semicolons may appear after the always; note, however, that they may not appear between the preceding closing brace and the always.
An ‘error’ in this context is a condition such as a syntax error which causes the shell to abort execution of the current function, script, or list. Syntax errors encountered while the shell is parsing the code do not cause the always-list to be executed. For example, an erroneously constructed if block in try-list would cause the shell to abort during parsing, so that always-list would not be executed, while an erroneous substitution such as ${*foo*} would cause a run-time error, after which always-list would be executed.
An error condition can be tested and reset with the special integer variable TRY_BLOCK_ERROR. Outside an always-list the value is irrelevant, but it is initialised to -1. Inside always-list, the value is 1 if an error occurred in the try-list, else 0. If TRY_BLOCK_ERROR is set to 0 during the always-list, the error condition caused by the try-list is reset, and shell execution continues normally after the end of always-list. Altering the value during the try-list is not useful (unless this forms part of an enclosing always block).
Regardless of TRY_BLOCK_ERROR, after the end of always-list the normal shell status $? is the value returned from try-list. This will be non-zero if there was an error, even if TRY_BLOCK_ERROR was set to zero.
The following executes the given code, ignoring any errors it causes. This is an alternative to the usual convention of protecting code by executing it in a subshell.
{ # code which may cause an error } always { # This code is executed regardless of the error. (( TRY_BLOCK_ERROR = 0 )) } # The error condition has been reset.
An exit command (or a return command executed at the outermost function level of a script) encountered in try-list does not cause the execution of always-list. Instead, the shell exits immediately after any EXIT trap has been executed.
where term is one or more newline or ;. Define a function which is referenced by any one of word. Normally, only one word is provided; multiple words are usually only useful for setting traps. The body of the function is the list between the { and }. See Functions.
If the option SH_GLOB is set for compatibility with other shells, then whitespace may appear between the left and right parentheses when there is a single word; otherwise, the parentheses will be treated as forming a globbing pattern in that case.
In any of the forms above, a redirection may appear outside the function body, for example
func() { ... } 2>&1
The redirection is stored with the function and applied whenever the function is executed. Any variables in the redirection are expanded at the point the function is executed, but outside the function scope.
The pipeline is executed, and timing statistics are reported on the standard error in the form specified by the TIMEFMT parameter. If pipeline is omitted, print statistics about the shell process and its children.
Evaluates the conditional expression exp and return a zero exit status if it is true. See Conditional Expressions for a description of exp.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Many of zsh’s complex commands have alternate forms. These are non-standard and are likely not to be obvious even to seasoned shell programmers; they should not be used anywhere that portability of shell code is a concern.
The short versions below only work if sublist is of the form ‘{ list }’ or if the SHORT_LOOPS option is set. For the if, while and until commands, in both these cases the test part of the loop must also be suitably delimited, such as by ‘[[ ... ]]’ or ‘(( ... ))’, else the end of the test will not be recognized. For the for, repeat, case and select commands no such special form for the arguments is necessary, but the other condition (the special form of sublist or use of the SHORT_LOOPS option) still applies.
An alternate form of if. The rules mean that
if [[ -o ignorebraces ]] { print yes }
works, but
if true { # Does not work! print yes }
does not, since the test is not suitably delimited.
A short form of the alternate if. The same limitations on the form of list apply as for the previous form.
A short form of for.
where term is at least one newline or ;. Another short form of for.
A short form of the arithmetic for command.
Another form of for.
An alternative form of while. Note the limitations on the form of list mentioned above.
An alternative form of until. Note the limitations on the form of list mentioned above.
This is a short form of repeat.
An alternative form of case.
where term is at least one newline or ;. A short form of select.
This is a short form of function.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The following words are recognized as reserved words when used as the first word of a command unless quoted or disabled using disable -r:
do done esac then elif else fi for case if while function repeat time until select coproc nocorrect foreach end ! [[ { } declare export float integer local readonly typeset
Additionally, ‘}’ is recognized in any position if neither the IGNORE_BRACES option nor the IGNORE_CLOSE_BRACES option is set.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Certain errors are treated as fatal by the shell: in an interactive shell, they cause control to return to the command line, and in a non-interactive shell they cause the shell to be aborted. In older versions of zsh, a non-interactive shell running a script would not abort completely, but would resume execution at the next command to be read from the script, skipping the remainder of any functions or shell constructs such as loops or conditions; this somewhat illogical behaviour can be recovered by setting the option CONTINUE_ON_ERROR.
Fatal errors found in non-interactive shells include:
If the POSIX_BUILTINS option is set, more errors associated with shell builtin commands are treated as fatal, as specified by the POSIX standard.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
In non-interactive shells, or in interactive shells with the INTERACTIVE_COMMENTS option set, a word beginning with the third character of the histchars parameter (‘#’ by default) causes that word and all the following characters up to a newline to be ignored.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Every eligible word in the shell input is checked to see if there is an alias defined for it. If so, it is replaced by the text of the alias if it is in command position (if it could be the first word of a simple command), or if the alias is global. If the replacement text ends with a space, the next word in the shell input is always eligible for purposes of alias expansion. An alias is defined using the alias builtin; global aliases may be defined using the -g option to that builtin.
A word is defined as:
Alias expansion is done on the shell input before any other expansion except history expansion. Therefore, if an alias is defined for the word foo, alias expansion may be avoided by quoting part of the word, e.g. \foo. Any form of quoting works, although there is nothing to prevent an alias being defined for the quoted form such as \foo as well.
When POSIX_ALIASES is set, only plain unquoted strings are eligible for aliasing. The alias builtin does not reject ineligible aliases, but they are not expanded.
For use with completion, which would remove an initial backslash followed by a character that isn’t special, it may be more convenient to quote the word by starting with a single quote, i.e. ’foo; completion will automatically add the trailing single quote.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Although aliases can be used in ways that bend normal shell syntax, not every string of non-white-space characters can be used as an alias.
Any set of characters not listed as a word above is not a word, hence no attempt is made to expand it as an alias, no matter how it is defined (i.e. via the builtin or the special parameter aliases described in The zsh/parameter Module). However, as noted in the case of POSIX_ALIASES above, the shell does not attempt to deduce whether the string corresponds to a word at the time the alias is created.
For example, an expression containing an = at the start of a command line is an assignment and cannot be expanded as an alias; a lone = is not an assignment but can only be set as an alias using the parameter, as otherwise the = is taken part of the syntax of the builtin command.
It is not presently possible to alias the ‘((’ token that introduces arithmetic expressions, because until a full statement has been parsed, it cannot be distinguished from two consecutive ‘(’ tokens introducing nested subshells. Also, if a separator such as && is aliased, \&& turns into the two tokens \& and &, each of which may have been aliased separately. Similarly for \<<, \>|, etc.
There is a commonly encountered problem with aliases illustrated by the following code:
alias echobar='echo bar'; echobar
This prints a message that the command echobar could not be found. This happens because aliases are expanded when the code is read in; the entire line is read in one go, so that when echobar is executed it is too late to expand the newly defined alias. This is often a problem in shell scripts, functions, and code executed with ‘source’ or ‘.’. Consequently, use of functions rather than aliases is recommended in non-interactive code.
Note also the unhelpful interaction of aliases and function definitions:
alias func='noglob func' func() { echo Do something with $* }
Because aliases are expanded in function definitions, this causes the following command to be executed:
noglob func() { echo Do something with $* }
which defines noglob as well as func as functions with the body given. To avoid this, either quote the name func or use the alternative function definition form ‘function func’. Ensuring the alias is defined after the function works but is problematic if the code fragment might be re-executed.
| [ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
A character may be quoted (that is, made to stand for itself) by preceding it with a ‘\’. ‘\’ followed by a newline is ignored.
A string enclosed between ‘$’’ and ‘’’ is processed the same way as the string arguments of the print builtin, and the resulting string is considered to be entirely quoted. A literal ‘’’ character can be included in the string by using the ‘\’’ escape.
All characters enclosed between a pair of single quotes (’’) that is not preceded by a ‘$’ are quoted. A single quote cannot appear within single quotes unless the option RC_QUOTES is set, in which case a pair of single quotes are turned into a single quote. For example,
print ''''
outputs nothing apart from a newline if RC_QUOTES is not set, but one single quote if it is set.
Inside double quotes (""), parameter and command substitution occur, and ‘\’ quotes the characters ‘\’, ‘‘’, ‘"’, ‘$’, and the first character of $histchars (default ‘!’).
| [ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on April 26, 2019 using texi2html 5.0.
Zsh version 5.7.1, released on February 3, 2019.


Get Energy Accounts V1
This page documents version 1 of the Get Energy Account end point.
- Data Holders MAY go-live on November 15 2022 with this version.
- Data Holders MUST implement Get Energy Accounts v2 by April 7th 2023.
- Data Holders MAY decommission Get Energy Accounts v1 as soon as Get Energy Accounts v2 is supported.
- Data Holders MUST provide values for all mandatory fields and select reasonable default values if the data is not available for closed accounts
This version is to be ceased to be called by data recipients when the Data Holder supports Get Energy Accounts v2.
Get Energy Accounts
Code samples
GET /energy/accounts HTTP/1.1
Accept: application/json
x-v: string
x-min-v: string
x-fapi-interaction-id: string
x-fapi-auth-date: string
x-fapi-customer-ip-address: string
x-cds-client-headers: string
var headers = {
'Accept':'application/json',
'x-v':'string',
'x-min-v':'string',
'x-fapi-interaction-id':'string',
'x-fapi-auth-date':'string',
'x-fapi-customer-ip-address':'string',
'x-cds-client-headers':'string'
};
$.ajax({
url: '/energy/accounts',
method: 'get',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
GET /energy/accounts
Obtain the list of energy accounts available under the authorised consent
Endpoint Version
Parameters
| Name |
In |
Type |
Required |
Description |
| page |
query |
PositiveInteger |
optional |
Page of results to request (standard pagination) |
| page-size |
query |
PositiveInteger |
optional |
Page size to request. Default is 25 (standard pagination) |
| x-v |
header |
string |
mandatory |
Version of the API end point requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between x-min-v and x-v. If the value of x-min-v is equal to or higher than the value of x-v then the x-min-v header should be treated as absent. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. See HTTP Headers |
| x-min-v |
header |
string |
optional |
Minimum version of the API end point requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between x-min-v and x-v. If all versions requested are not supported then the data holder must respond with a 406 Not Acceptable. |
| x-fapi-interaction-id |
header |
string |
optional |
An [RFC4122] UUID used as a correlation id. If provided, the data holder must play back this value in the x-fapi-interaction-id response header. If not provided a [RFC4122] UUID value is required to be provided in the response header to track the interaction. |
| x-fapi-auth-date |
header |
string |
conditional |
The time when the customer last logged in to the Data Recipient Software Product as described in [FAPI-R-Draft]. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls. |
| x-fapi-customer-ip-address |
header |
string |
optional |
The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls. |
| x-cds-client-headers |
header |
Base64 |
conditional |
The customer's original standard http headers Base64 encoded, including the original User Agent header, if the customer is currently logged in to the data recipient. Mandatory for customer present calls. Not required for unattended or unauthenticated calls. |
Example responses
200 Response
{
"data": {
"accounts": [
{
"accountId": "string",
"accountNumber": "string",
"displayName": "string",
"creationDate": "string",
"plans": [
{
"nickname": "string",
"servicePointIds": [
"string"
],
"planOverview": {
"displayName": "string",
"startDate": "string",
"endDate": "string"
}
}
]
}
]
},
"links": {
"self": "string",
"first": "string",
"prev": "string",
"next": "string",
"last": "string"
},
"meta": {
"totalRecords": 0,
"totalPages": 0
}
}
Responses
| Status |
Header |
Type |
Format |
Description |
| 200 |
x-v |
string |
|
none |
| 200 |
x-fapi-interaction-id |
string |
|
none |
| 400 |
x-fapi-interaction-id |
string |
|
none |
| 406 |
x-fapi-interaction-id |
string |
|
none |
| 422 |
x-fapi-interaction-id |
string |
|
none |
EnergyAccountListResponse
{
"data": {
"accounts": [
{
"accountId": "string",
"accountNumber": "string",
"displayName": "string",
"creationDate": "string",
"plans": [
{
"nickname": "string",
"servicePointIds": [
"string"
],
"planOverview": {
"displayName": "string",
"startDate": "string",
"endDate": "string"
}
}
]
}
]
},
"links": {
"self": "string",
"first": "string",
"prev": "string",
"next": "string",
"last": "string"
},
"meta": {
"totalRecords": 0,
"totalPages": 0
}
}
Properties
EnergyAccount
{
"accountId": "string",
"accountNumber": "string",
"displayName": "string",
"creationDate": "string",
"plans": [
{
"nickname": "string",
"servicePointIds": [
"string"
],
"planOverview": {
"displayName": "string",
"startDate": "string",
"endDate": "string"
}
}
]
}
Properties
allOf
and
| Name |
Type |
Required |
Description |
| anonymous |
object |
mandatory |
The array of plans containing service points and associated plan details |
| » plans |
[object] |
mandatory |
The array of plans containing service points and associated plan details |
| »» nickname |
string |
optional |
Optional display name for the plan provided by the customer to help differentiate multiple plans |
| »» servicePointIds |
[string] |
mandatory |
An array of servicePointIds, representing NMIs, that this plan is linked to. If there are no service points allocated to this plan then an empty array would be expected |
| »» planOverview |
object |
mandatory |
none |
| »»» displayName |
string |
optional |
The name of the plan if one exists |
| »»» startDate |
DateString |
mandatory |
The start date of the applicability of this plan |
| »»» endDate |
DateString |
optional |
The end date of the applicability of this plan |
EnergyAccountBase
{
"accountId": "string",
"accountNumber": "string",
"displayName": "string",
"creationDate": "string"
}
Properties
| Name |
Type |
Required |
Description |
| accountId |
string |
mandatory |
The ID of the account. To be created in accordance with CDR ID permanence requirements |
| accountNumber |
string |
optional |
Optional identifier of the account as defined by the data holder. This must be the value presented on physical statements (if it exists) and must not be used for the value of accountId |
| displayName |
string |
optional |
An optional display name for the account if one exists or can be derived. The content of this field is at the discretion of the data holder |
| creationDate |
DateString |
mandatory |
The date that the account was created or opened |
LinksPaginated
{
"self": "string",
"first": "string",
"prev": "string",
"next": "string",
"last": "string"
}
Properties
| Name |
Type |
Required |
Description |
| self |
URIString |
mandatory |
Fully qualified link that generated the current response document |
| first |
URIString |
conditional |
URI to the first page of this set. Mandatory if this response is not the first page |
| prev |
URIString |
conditional |
URI to the previous page of this set. Mandatory if this response is not the first page |
| next |
URIString |
conditional |
URI to the next page of this set. Mandatory if this response is not the last page |
| last |
URIString |
conditional |
URI to the last page of this set. Mandatory if this response is not the last page |
{
"totalRecords": 0,
"totalPages": 0
}
Properties


Girder
A minimalistic grid targeted at modern web apps with a lean and nimble UI. It uses Sass silent classes (placeholders) to structure content in HTML and keeps your Markup free of excess presentational classes like "unit_1of4", "small-2", "grid4".
Why I use it:
- Its fast and simple to use with Sass or plain CSS.
- Flexible, responsive and scalable; It likes relative units.
- A ton of utility but it doesn't have to generate any extra CSS
- Uses document flow, box-sizing and adjustable gutters
- Semantic & concise. Its a layout helper with just the essentials.
- Integrates easily, works with Node-Sass or Ruby.
Simple Grid Units
unit(golden-small)
unit(golden-large)
unit(half)
unit(half)
unit(three-fourths)
(fourth)
(fourth)
(fourth)
(fourth)
(fourth)
.push-one
(golden-small)
Setup
Copy the Scss folder and files directly into your project's path. Get them from Github or from the downloaded examples.
With Bower just use: "bower install girder --save" and add a reference to either scss/_girder.scss or girder.css inside the components folder.
Using Scss
@import the _girder.scss partial which should reside next to its modules in your project.
Standard CSS
Simply include girder.css in your document along with the site's styles. Here's an Example.


This RPC is used to tell the head unit to use bluetooth to dial a phone number using the phone.
@since SDL 4.0
Convenience init to initiate a dial number request
- (nonnull instancetype)initWithNumber:(nonnull NSString *)number;
init(number: String)
Up to 40 character string representing the phone number. All characters stripped except for ‘0’-‘9’, ‘*’, ‘#’, ‘,’, ‘;’, and ‘+’.
An SDLDialNumber object
Up to 40 character string representing the phone number. All characters stripped except for ‘0’-‘9’, ‘*’, ‘#’, ‘,’, ‘;’, and ‘+’
@property (nonatomic, strong) NSString *_Nonnull number;
var number: String { get set }


I go by BlackGuyCoding and I'm passionate about code.
Web Developer - Data Analyst - User Experience Designer
Portfolio
Contact Me
Use this form to get in touch with me.
I go by BlackGuyCoding and I'm passionate about code.
Use this form to get in touch with me.


public class PacManhattanAITest
extends java.lang.Object
| Constructor and Description |
|---|
PacManhattanAITest() |
| Modifier and Type | Method and Description |
|---|---|
void |
bfsNearestSafetySquareTest()
Test to get the nearest safety square about the initial player position.
|
void |
convertPathToDirectionTest()
Test to get the direction about a path.
|
void |
convertPathToDirectionTest2()
Test to get the direction about a path.
|
void |
getValidNeighborsTest()
Test to get the list of valid neighbors about the player's square.
|
void |
hurryMoveTest()
Test the choose of the direction in the last resort (No Best Direction found).
|
void |
nextMoveTest()
Test to get the next move about the initial player position.
|
void |
safetyPelletSquareTest()
Test to get the nearest safe square where there is a pellet about
the initial player position.
|
void |
safetySquareTest()
Test to know if the square is safe or not for the player.
|
void |
setUpPacman()
Launch the user interface.
|
void |
tearDown()
Quit the user interface when we're done.
|
public void setUpPacman()
public void tearDown()
public void safetySquareTest()
public void getValidNeighborsTest()
public void bfsNearestSafetySquareTest()
public void nextMoveTest()
public void safetyPelletSquareTest()
public void convertPathToDirectionTest()
public void convertPathToDirectionTest2()
public void hurryMoveTest()


|
| | ACTileNavigationBar (Context context) |
| | Initializes a new instance of the ACTileNavigationBar class. More...
|
| |
| | ACTileNavigationBar (Context context, ACTileController controller) |
| | Initializes a new instance of the ACTileNavigationBar class. More...
|
| |
| | ACTileNavigationBar () |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | ACTileNavigationBar (CGRect rect) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | ACTileNavigationBar (Context context, IAttributeSet attr) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | ACTileNavigationBar (IntPtr javaReference, JniHandleOwnership transfer) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | ACTileNavigationBar (Context context, IAttributeSet attr, int defStyle) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| virtual void | BarShownCompleted () |
| | Bars the shown completed. More...
|
| |
| virtual void | BarHiddenCompleted () |
| | Bars the hidden completed. More...
|
| |
| void | Redraw () |
| | Forces this ACTileNavigationBar to fully redraw itself More...
|
| |
| void | Resize (nfloat width) |
| | Resize to the specified width. More...
|
| |
| void | ShowNavigationBar (bool animated) |
| | Shows the ACTileNavigationBar More...
|
| |
| void | HideNavigationBar (bool animated) |
| | Hides the ACTileNavigationBar More...
|
| |
| Button | AddLeftButton (string title, Bitmap icon, int width, int height, EventHandler< TouchEventArgs > action) |
| | Adds a new button to the left side of the navigation bar. More...
|
| |
| void | AddLeftButton (Button button) |
| | Adds the given button to the left side of the control. More...
|
| |
| void | RemoveLeftButton (int n) |
| | Removes the requested button from the left side of the navigation bar. More...
|
| |
| Button | AddRightButton (string title, Bitmap icon, int width, int height, EventHandler< TouchEventArgs > action) |
| | Adds a button to the right side of the navigation bar. More...
|
| |
| void | AddRightButton (Button button) |
| | Adds the given button to the right side of the navigation bar. More...
|
| |
| void | RemoveRightButton (int n) |
| | Removes a button from the right side of the navigation bar. More...
|
| |
| override void | Draw (CGRect rect) |
| | Draw the specified rect. More...
|
| |
| override void | LayoutSubviews () |
| | Layouts the subviews. More...
|
| |
| delegate void | ACTileNavigationBarShownDelegate (ACTileNavigationBar navigationBar) |
| | Occurs when this ACTileNavigationBar is shown More...
|
| |
| delegate void | ACTileNavigationBarHiddenDelegate (ACTileNavigationBar navigationBar) |
| | Occurs when the ACTileNavigationBar hidden. More...
|
| |
| | UIView () |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | UIView (CGRect rect) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | UIView (Context context) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | UIView (Context context, IAttributeSet attr) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | UIView (IntPtr javaReference, JniHandleOwnership transfer) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| | UIView (Context context, IAttributeSet attr, int defStyle) |
| | Initializes a new instance of the T:UIKit.UIView class. More...
|
| |
| void | SetNeedsDisplay () |
| | Sets the needs display flag. More...
|
| |
| void | SetNeedsLayout () |
| | Sets the needs layout. More...
|
| |
| virtual void | TouchesBegan (NSSet touches, UIEvent evt) |
| | Sent when one or more fingers touches the screen. More...
|
| |
| virtual void | TouchesMoved (NSSet touches, UIEvent evt) |
| | Sent when the ACTile is being dragged More...
|
| |
| virtual void | TouchesEnded (NSSet touches, UIEvent evt) |
| | Send when one or more fingers are lifted from the screen. More...
|
| |
| virtual void | AddSubview (UIView view) |
| | Adds the subview. More...
|
| |
| void | InvokeOnMainThread (Action action) |
| | Invokes the given action on the main UI thread. More...
|
| |
| override bool | OnTouchEvent (MotionEvent e) |
| | Handle the touch event. More...
|
| |
|
| Object | tag [get, set] |
| | Gets or sets the [OPTIONAL] tag that can be assosciated with this ACTileNavigationBar More...
|
| |
| List< Button > | leftButtons [get] |
| | Gets the left navigation bar buttons. More...
|
| |
| List< Button > | rightButtons [get] |
| | Gets the right navigation bar buttons. More...
|
| |
| ACTileNavigationBarAppearance | appearance [get, set] |
| | Gets or sets the ACTileNavigationBarAppearance for this ACTileNavigationBar More...
|
| |
| string | title [get, set] |
| | Gets or sets the title for this ACTileNavigationBar More...
|
| |
| bool | hidden [get] |
| | Gets a value indicating whether this ACTileNavigationBar is hidden. More...
|
| |
| CGRect | Frame [get, set] |
| | Gets or sets the frame. More...
|
| |
| CGRect | Bounds [get, set] |
| | Gets or sets the bounds. More...
|
| |
| Canvas | DrawCanvas [get, set] |
| | Gets or sets the draw canvas. More...
|
| |
| ACColor | BackgroundColor = null [get, set] |
| | Gets or sets the color of the background. More...
|
| |
| bool | UserInteractionEnabled [get, set] |
| | Gets or sets a value indicating whether this T:UIKit.UIView user interaction enabled. More...
|
| |
| bool | MultipleTouchEnabled = false [get, set] |
| | Gets or sets a value indicating whether this T:UIKit.UIView multiple touch enabled. More...
|
| |
| CGPoint | LastTouchPoint = false [get, set] |
| | Gets or sets the last touch point. More...
|
| |
| bool | ClipsToBounds = new CGPoint(0, 0) [get, set] |
| | Gets or sets a value indicating whether this T:UIKit.UIView clips to bounds. More...
|
| |
| bool | ExclusiveTouch [get, set] |
| | Gets or sets a value indicating whether this T:UIKit.UIView exclusive touch. More...
|
| |
| bool | CacheViewDrawing = true [get, set] |
| | Gets or sets a value indicating whether this T:UIKit.UIView cache view drawing to improve redraw performance. More...
|
| |
| List< UIView > | Subviews = true [get] |
| | Gets the subviews. More...
|
| |
Handles the Navigation Bar that can be shown at the top of a ACTileController
. The developer can include Buttons
on the left and right hand sides of the bar.


{{< layout}} {{$propositionHeader}}{{/propositionHeader}} {{$pageTitle}}Code error{{/pageTitle}} {{$header}}
Check your code and try again. You need to enter the code exactly as it’s written.
You entered: ab.de/1fG2h3i
If this keeps happening, contact the company that provided your digital photo.
Try again


Saudi Arabia's Capital Market Authority Approves IPO of Oil Giant Aramco
The move comes a day after Aramco’s IPO was greenlighted by Saudi Arabia’s Crown Prince Mohammed bin Salman, in line with his plan to shake up the kingdom’s economy and diversify away from oil.
Saudi Arabia’s Capital Market Authority (CMA) has approved the initial public offering of state oil giant Aramco, in a move that the CMA said would be valid for at least six months.
In a statement on Sunday, the CMA also said that Aramco’s prospectus is due to be published in the run-up to the beginning of the subscription period.
The move comes a day after Reuters cited unnamed sources as saying that “Crown Prince [Mohammed bin Salman] finally gave the green light” to Aramco’s IPO.
Plans for the decision were first announced in 2016 as part of Saudi Arabia’s Vision 2030 economic overhaul programme but have been delayed a number of times.
Riyadh reportedly expects the IPO to value the oil giant at some $2 trillion, the largest such valuation in history, which would allow the company to raise as much as $100 billion by listing just a 5 percent stake.
The oil facilities belonging to Aramco were attacked in mid-September, which resulted in a temporary sharp decrease in the kingdom's oil output.
The Yemeni rebel Houthi movement claimed responsibility for the attack. Riyadh blamed the incident on Iran, which for its part denied allegations.


Your Friends & Neighbors (1998)
Director: Neil LaBute Cast: Amy Brenneman, Aaron Eckhart, Catherine Keener, Natassja Kinski, Jason Patric, Ben Stiller Screenplay: Neil LaBute Producers: Steve Golin, Jason Patric Runtime: 99 min. US Distribution: Rated R: Graphic sexual dialogue, strong sexuality and language
By Nathaniel R. Atcheson<EMAIL_ADDRESS>Some films are cynical, and others make you crave for something as benign as cynicism. To call Neil LaBute a cynical filmmaker is a vast understatement, for here is a man who has made two of the most disturbing films I've seen in the last five years. His debut feature, In the Company of Men, is a harsh tale of two men exercising their hatred of women on an innocent one.
The six characters are all related in some way. Aaron Eckhart and Amy Brenneman play a married couple who provide the facade of being happy to their friends; the man, however, can only be sexually pleased with masturbation, and his wife thinks that his lack of performance is because of her. They're friends with a boyfriend-girlfriend couple, played by Ben Stiller and Catherine Keener.
The central conflicts arise when Stiller's character expresses interest in the Brenneman character, and the two attempt an affair.  On the outset of all of this, not directly related to any particular aspect of the film, is Jason Patric, who plays a womanizing monster. He's friends with Eckhart's character. On a side note, I've gone out of my way to avoid using any of the characters' names; this is because LaBute refrains from using their names at any time during the picture.
If you're looking for fun, you won't find it in Your Friends & Neighbors. This is an ugly, painful film. I didn't like it, so much as I "liked" it and admired it for its strength. I've seen it twice, and it certainly passes for entertainment -- there isn't a boring moment, and I imagine most viewers will be adequately diverted regardless of how they like the film. There are individual scenes that are horrifying, but you'll find that the overall impression is what hurts the most. LaBute thinks we're all hopelessly screwed up, and this film is a deeply compelling argument for that assertion. Its central theme, I believe, coincides with his reasons for not using the characters' names. It also explains why the locations are never described, why everything takes place in generic apartments, gyms, and restaurants. LaBute wants his film to look like Anyplace, USA, in which Everyone is sexually depraved.
I'm almost embarrassed to admit that I laughed through much of this picture. As hopeless as it is, as ugly and harrowing as LaBute makes it, he wrings distant and uncomfortable laughs out of odd situations. One of the funniest scenes has Eckhart and Brenneman in a grocery store; Eckhart says, "I think that, for a while, we just need to treat each other like . . . meat.  It's kind of a disturbing thought, but it's one of the lighter moments in the film, one that permits guiltless laughter. The second half of the film is far less forgiving.  Perhaps I shouldn't be discussing all of this in my review, for a lot of the film works because it takes its audience by surprise. I doubt that it matters much -- this scene gripped me even the second time I saw it.
The six performances are all superb, and LaBute's writing is sharp and realistic. Patrick is at his very best here -- I've never seen him act like this, and the character he creates here is one of the most vivid and hateful I've ever seen. Eckhart is also fantastic; after seeing his turn in Company, it's surprising to see him as a sympathetic character. Brenneman is the best of the female parts, and is also the most sympathetic character -- she doesn't talk a lot, but the array of emotions she flies through are all believable and upsetting. Stiller and Keener are good, but play mean-spirited people; Kinski is also good, but her character ultimately becomes hopelessly pathetic.
And that's where the film falters. In the Company of Men has characters you could latch on to -- people lived through that story. Nobody lives through Your Friends & Neighbors. A certain level of cynicism is okay, but I can't believe that we're all as bad off as LaBute wants us to think. Some of the story elements aren't completely believable -- for instance, I find it difficult to believe that Patrick's and Eckhart's characters would be friends in real life. What's to be said for a film that attacks its audience as strongly as this, and then tells them that there's no way out? I can only hope that LaBute is warning us, saying, "Don't let this happen to you." I'd hate to think that LaBute wants us to know that we've already let it happened, simply by being human.
***1/2 out of **** (8/10, A-)
Visit FILM PSYCHOSIS at http://www.pyramid.net/natesmovies
Nathaniel R. Atcheson
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


The jumplist
Vico maintains a list of locations while you move around in files. Some movement commands are considered "jumps", and those jumps are remembered in a list.
Generally, movement commands that generate jumps are those that move more than a few lines. So the word, character and line search motion commands do not generate a jump, but the line and search motions do.
You navigate the jumplist either by pressing the jumplist arrows in the toolbar, or pressing ctrl-o to go back and ctrl-i (or tab) to go forward.
Only the last 100 jumps are remembered, and duplicates are removed.


Check suite activity has occurred. The type of activity is specified in the action property of the payload object. For more information, see the "check suites" REST API.
action


LIBRARY
Add New Book
NEW BOOK
yes I have read
No I have not read
SAVED BOOKS ARE HERE
Name
Author
Pages read
Status
Read
Remove


Home
About
Contact
Projects
Skills
I AM
SIDDHANT MAHATO
ABOUT ME
SIDDHANT MAHATO
Engineering student, interested in Cloud Computing and want to explore more
PROJECTS
CRIME DETECTION
SMART IRRIGATION
DESIGN GAME USING C++
SKILLS
HTML/CSS
PYTHON
C++
CONTACT
mail


Quick Headline News
Home
News
Blogs
Contact
TODAY'S TOP HEADLINES
{% for title,desc,img,p_date,url in contents %}
{{title}}
{{desc}}
Publish Date:-
{{p_date}}
{% endfor %}


Nobody's gonna understand my pain.
I'm falling
Down
Down.
My heart bleeds when you walk away.
But loving you puts knives in my heart.
You can't fix my heart without a display of love.


This application needs JavaScript enabled in your browser!
ISS Tracker BOT
Your Input:
Send
View Larger Map


float rect(vec2 st, vec2 bottomLeft, vec2 topRight, float blur) {
float rect = smoothstep(bottomLeft.x, bottomLeft.x+blur, st.x);
rect *= smoothstep(bottomLeft.y, bottomLeft.y+blur, st.y);
rect *= smoothstep(topRight.x+blur, topRight.x, st.x);
rect *= smoothstep(topRight.y+blur, topRight.y, st.y);
return rect;
}
float circle(vec2 st, vec2 center, float size, float blur) {
float dist = distance(st, center);
return smoothstep(dist, dist+blur, size);
}
A UV map is a 2D map which projects a 2D texture onto a 3D model's surface. The "U" and "V" stand for x and y respectively.
The vUv variable is a 2D vector that contains the UV coordinates of the pixel being processed. This is not the same as a UV, since the UV is a 2D map and not specific coordinates. This is often confused with how ShaderToy's naming scheme goes, since ShaderToy's uv variable is synonymous with Three.JS's vUv variable.
Three.JS uses modular GLSL building blocks called ShaderChunks to assemble all sorts of different shaders. Each material that Three.JS offers mostly differ by the ShaderChunks used.
ShaderChunks often contain if statements which check that a certain macro is defined. Macros in glsl are those #define NAME VALUE statements that you normally see on the top of glsl code. Here is an example from a commonly seen ShaderChunk called uv_vertex.glsl.js:
export default /* glsl */`
#ifdef USE_UV
vUv = ( uvTransform * vec3( uv, 1 ) ).xy;
#endif
USE_UV
macro to be defined in order for vUv to be defined and assigned a value.
The documentation for onBeforeCompile() is lacking to say the least, but they define this functions as follows, "An optional callback that is executed immediately before the shader program is compiled. This function is called with the shader source code as a parameter. Useful for the modification of built-in materials." The key points to note are highlighted here, but the implicationss of what this means really falls through the cracks here. In short, using onBeforeCompile() allows you to edit the material's vertex and/or fragment shaders before any of the ShaderChunk definitions get loaded as actual glsl code. This lets you add and remove ShaderChunks, pass in your own uniforms/varying variables, and define any macros needed for certain ShaderChunks to work as intended.
In order to make sure that I use onBeforeCompile() correctly, I generally follow this formula:
function editedMaterial(color, height) {
let material = new THREE.MeshLambertMaterial({
// Material properties here
});
material.onBeforeCompile = function ( shader ) {
// Uniforms
shader.uniforms.color = { type: 'v3', value: color };
shader.uniforms.height = { type: 'f', value: height };
// Vertex shader edits
shader.vertexShader = shader.vertexShader.replace(
// Replace an already existing line of code in the vertex shader
)
// Fragment shader edits
shader.fragmentShader = shader.fragmentShader.replace(
// Replace an already existing line of code in the fragment shader
);
// View the shader in the console to verify the edits you've made to the vertex and fragment shaders
console.log(shader);
// Assign this newly edited shader to the material.
material.userData.shader = shader;
}
// Make sure WebGLRenderer doesnt reuse a single program.
// This is Three.JS's way to efficiently cache shaders. However, if you don't return the parameters used by the editedMaterial() function,
// then a completely different material may unexpectedly inherit this same shader if that other material also uses onBeforeCompile.
material.customProgramCacheKey = function () {
return [
color,
height
];
};
return material;
}
Now with all of this information, we can finally address the answer. We need to define the USE_UV
macro in both the vertex shader and the fragment shader. How we go about this is actually quite easy if we follow the boilerplate shown earlier. Here's an example of an actual function which does exactly this:
function holderTexture(lightmap) {
let material = new THREE.MeshLambertMaterial({
lightMap: lightmap,
lightMapIntensity: lightMapIntensity,
});
material.onBeforeCompile = function ( shader ) {
shader.uniforms.lightmap = { type: 't', value: lightmap };
shader.vertexShader = shader.vertexShader.replace(
`#define LAMBERT`,
`#define LAMBERT
#define USE_UV`
)
// Fragment Code
shader.fragmentShader = shader.fragmentShader.replace(
`uniform vec3 diffuse;`,
`#define USE_UV
uniform vec3 diffuse;`,
);
shader.fragmentShader = shader.fragmentShader.replace(
`vec4 diffuseColor = vec4( diffuse, opacity );`,
`vec3 newDiffuse = vec3(1.0, vUv.y, 0.0);
vec4 diffuseColor = vec4( newDiffuse, opacity );`,
);
console.log(shader);
material.userData.shader = shader;
}
// Make sure WebGLRenderer doesnt reuse a single program
material.customProgramCacheKey = function () {
return lightmap;
};
return material;
}


Saturday 24 January
West Ham United
WHU
2-1
Everton
EVE
Premier League
London Stadium
→
Saturday 31 January
Newcastle United
NEW
0-0
West Ham United
WHU
Premier League
St James Park
→
Wednesday 4 February
Preston North End
PNE
1-3
West Ham United
WHU
Carabao Cup third round replay semi final
Gigg Lane
→
Saturday 7 February
Manchester United
MNU
15:00
West Ham United
WHU
Premier League
Old Trafford
→


Interpolations for HTML DOM event attributes are disallowed
This error occurs when one tries to create a binding for event handler attributes or properties like onclick
, onload
, onsubmit
, etc.
There is no practical value in binding to these attributes/properties and doing so only exposes your application to security vulnerabilities like XSS.
For these reasons binding to event handler attributes and properties (formaction
and all starting with on
) is not supported.
An example code that would allow XSS vulnerability by evaluating user input in the window context could look like this:
<input ng-model="username">

click me

Since the onclick
evaluates the value as JavaScript code in the window context, setting the username
model to a value like javascript:alert('PWND')
would result in script injection when the div
is clicked.
Please use the ng-*
or ng-on-*
versions instead (such as ng-click
or ng-on-click
rather than onclick
).


Mat knew he was in trouble from the day he moved into the Tarasin Palace. He could have refused. Just because the flaming dice started or stopped did not mean he had to do anything; usually when they stopped spinning, it was too late not to do something. The problem was, he wanted to know why. Before very many days, he wished he had taken his curiosity by the throat and throttled it.
After Nynaeve and Elayne left his room, once he could manage to reach his feet without his head falling off, he spread the word among his men. Nobody seemed to see the disadvantages. He just wanted to prepare them, but nobody listened.
“Very good, my Lord,” Nerim murmured, tugging Mat’s boot onto his foot. “My Lord will finally have decent rooms. Oh, very good.” For a moment, he seemed to lose his mournful expression. For just a moment. “I will brush the red silk coat for my Lord; my Lord has stained the blue rather badly with wine.” Mat waited impatiently, put on the coat, and headed down the hall.
“Aes Sedai?” Nalesean muttered as his head popped out at the top of a clean shirt. His round-bellied manservant, Lopin, was hovering behind him. “Burn my soul, I don’t much like Aes Sedai, but . . . The Tarasin Palace, Mat.”
Mat winced; bad enough the man could drink a barrel of brandy with no effect the next morning, but did he have to grin so? “Ah, Mat, now we can forget dice, and play cards with our own kind.” He meant nobles, the only ones who could afford to play except for well-to-do merchants who would not remain well-to-do long if they began betting for the stakes nobles did. Nalesean rubbed his hands briskly while Lopin tried to settle his laces; even his beard seemed eager. “Silk sheets,” he murmured. Whoever heard of silk sheets? Those old memories nudged, but Mat refused to listen.
“Full of nobles,” Vanin growled downstairs, pursing his lips to spit. His glance searching for Mistress Anan was automatic now; he decided instead to swallow from the mug of rough wine that was his breakfast. “Be good to see the Lady Elayne again, though,” he mused. His free hand rose as if to knuckle his forehead; he did not seem aware of the gesture. Mat groaned. That woman had ruined a good man. “You want me to look in on Carridin again?” Vanin went on as if the rest was unimportant. “His street’s so full of beggars, it’s hard to see anything, but he has an awful lot of folk come to call.” Mat told him that would be fine.  Much more comfortable.
 A true fact, they kept assuring themselves.
Things did not get any better when he went into the kitchens searching for Mistress Anan to settle the bill. Caira was there, but with all her bad temper of the night before doubled; she stuck out her lower lip, glowering at him, and stalked out the door to the stableyard rubbing the back of her skirt. Maybe she had gotten herself into some misery or other, but how she could blame Mat Cauthon was beyond him.
Mistress Anan was out, it seemed—she was always organizing soup kitchens for refugees or leaping into some other good work—but Enid was waving a long wooden spoon at her scurrying helpers and ready to take his coin in her stout hand. “You squeeze too many melons, my young Lord, and you shouldn’t be surprised when a rotten one breaks in your hand,” she said darkly for some reason. “Or two,” she added after a moment, nodding.  “You’ll only make trouble for yourself if you say a word. You won’t.” That did not sound like a question.
“Not a word,” Mat said. What in the Light was she talking about? It seemed the right response, though, because she nodded and waddled away waving that spoon twice as vigorously as before. For a moment, he had thought she meant to thump him with it. The pure truth was, women all had a violent streak, not just some of them.
One thing and another, it was a relief when Nerim and Lopin got into a shouting match over whose master’s baggage would be carried over first. Smoothing their feathers required a good half an hour from him and Nalesean both. A manservant with his dander ruffled could make your life miserable. Then he had to settle which of the Redarms were to have the honor of lugging the chest of gold across and which were to take the horses.
Once he was ensconced in his new rooms, though, he almost forgot troubles at first.  Most of the furniture was bright red or bright blue, where it was not layered with gilt. A small door near the bed led to a cramped room for Nerim, which the fellow seemed to think was excellent despite a narrow bed and no window. Mat’s rooms all had tall arched windows letting onto white wrought-iron balconies that overlooked the Mol Hara. The stand-lamps were gilded, and so were the mirror frames; there were two mirrors in the sulking room, three in the sitting room, and four in the bedchamber. The clock—a clock!—on the marble mantel above the fireplace in the sitting room sparkled with gilt, as well. The washbasin and pitcher were red Sea Folk porcelain. He was almost disappointed to discover that the chamber pot under the bed was only plain white pottery. There was even a shelf in the large sitting room with a full dozen books. Not that he read much.
Even given the jarring colors of walls and ceilings and floor tiles, the rooms shouted rich. Any other time, he would have danced a jig. Any time when he was not aware that a woman with chambers right down the hall wanted to stick him in hot water and put a bellows to the fire. If Teslyn or Merilille or one of that lot did not manage it first despite his medallion.  Curiosity. He had heard a saying on several women’s lips back home, usually when he had done something that looked fun at the time. “Men teach cats curiosity, but cats keep sense for themselves.”
“I’m no bloody cat,” he muttered, stalking out of the bedchamber into the sitting room. He just had to know; that was all.
“Of course you’re not a cat,” Tylin said. “You’re a succulent little duckling, is what you are.”
Mat gave a start and stared. Duckling? And a little duckling, at that! The woman stood well short of his shoulder. Indignation or no indignation, he managed an elegant bow anyway. She was the Queen; he had to remember that. “Majesty, thank you for these wonderful apartments. I’d love to talk with you, but I have to go out and—”
Smiling, she advanced across the red-and-green floor tiles, layered blue and white silk petticoats swishing, large dark eyes fixed on him. He had no desire at all to look at the marriage knife nestled in her generous cleavage. Or the larger, gem-studded dagger thrust behind an equally gem-studded belt. He backed away.
“Majesty, I have an important—”
She started humming. He recognized the tune; he had hummed it to a few girls lately. He was wise enough not to try actually singing with his voice, and besides, the words they used in Ebou Dar would have singed his ears. Around here, they called it “I Will Steal Your Breath with Kisses.”
Laughing nervously, he tried to put a lapis-inlaid table between them, but she somehow got around it first without seeming to increase her speed. “Majesty, I—”
She laid a hand flat on his chest, back-heeled him into a high-backed chair, and plumped herself down on his lap. Between her and the chair arms, he was trapped. Oh, he could have picked her up and set her on her feet quite easily.  This was Ebou Dar, after all, where a woman killing a man was justified until proven otherwise. He could have picked her up easily, except . . .
He had seen fishmongers in the city selling peculiar creatures called squid and octopus—Ebou Dari actually ate the things!—but they had nothing on Tylin. The woman possessed ten hands. He thrashed about, vainly trying to fend her off, and she laughed softly. Between kisses, he breathlessly protested that someone might walk in, and she just chuckled. He babbled his respect for her crown, and she chortled. He claimed betrothal to a girl back home who held his heart in her hands. She really laughed at that.
“What she does not know cannot harm her,” she murmured, her twenty hands not slowing for an instant.
Someone knocked at the door.
Prying his mouth free, he shouted, “Who is it?” Well, it was a shout. A high-pitched shout. He was out of breath, after all.
Tylin was off his lap and three paces away so fast it seemed she was just here then there. The woman had the nerve to give him a reproachful look! And then she made a kiss at him.
That barely left her lips before the door opened, and Thom stuck his head in. “Mat? I wasn’t sure that was you. Oh! Majesty.” For a scrawny old gleeman with pretensions, Thom could flourish a bow with the best in spite of his limp. Juilin could not, but he snatched off his ridiculous red hat and did what he could. “Forgive us. We won’t disturb—” Thom began, but Mat broke in hurriedly.
“Come in, Thom!”  These two might miss that his shirt was undone to his belly, but they would not miss his breeches falling off. Tylin’s blue dress was not mussed at all! “Juilin, come in!”
“I am glad you find the rooms acceptable, Master Cauthon,” Tylin said, dignity incarnate. Except for her eyes, anyway, when she stood so Thom and Juilin could not see them. Her eyes laced innocuous words with added meaning. “I look forward to having your company with pleasure; I shall find it interesting, having a ta’veren where I can reach out and touch him at will. But I must leave you to your friends, now. No, do not stand; please.” That with just the hint of a mocking smile.
“Well, boy,” Thom said, knuckling his mustaches when she was gone, “there’s luck for you, being welcomed with open arms by the Queen herself.” Juilin became very interested in his cap.
Mat eyed them warily, mentally daring them to say a word more—just one word!—but once he asked after Nynaeve and Elayne, he quit worrying what they suspected. The women were not back. He almost leaped up, breeches or no.   Elayne would demand a confession and expect the man to break down; Nynaeve would try to beat one out of him.
“I doubt they are bothering Carridin,” Juilin said, scratching behind his ear. “I believe Aviendha and Birgitte are taking a look at him, from what I heard. We didn’t see them go. I do not think you need to worry about him knowing what he’s seeing even if he walks right by them.” Thom, pouring himself a golden goblet of the wine punch that Mat had found waiting, took up the explanation.
Mat put a hand over his eyes. Disguises made with the Power; no wonder they had slipped away like snakes whenever they wanted. Those women were going to make trouble. That was what women did best. It hardly surprised him to learn that Thom and Juilin knew less about this Bowl of the Winds than he did.
After they left to ready themselves for a trip to the Rahad, he had time to set his clothes to rights before Nynaeve and Elayne came back. He had time to check on Olver, in his room one floor down. The boy’s skinny frame had fleshed out somewhat, with Enid and the rest of the cooks at The Wandering Woman stuffing him, but he would always be short even for a Cairhienin, and if his ears shrank to half their size and his mouth to half its width, his nose would still stop him well short of handsome. No fewer than three serving women fussed over him while he sat cross-legged on his bed.
“Mat, doesn’t Haesel have the most beautiful eyes?” Olver said, beaming at the big-eyed young woman Mat had met the last time he came to the palace. She beamed back and ruffled the boy’s hair. “Oh, but Alis and Loya are so sweet, I could never choose.” A plump woman just short of her middle years looked up from unpacking Olver’s saddlebags to give him a broad grin, and a slender girl with bee-stung lips patted the towel she had just put on his washstand, then flung herself onto the bed to tickle Olver’s ribs till he fell over laughing helplessly.
Mat snorted. Harnan and that lot were bad enough, but now these women were encouraging the boy! How was he ever going to learn to behave if women did that? Olver ought to be playing in the streets like any other ten-year-old. He had had no serving women falling over him in his rooms. Tylin had seen to that, he was sure.
He had time to check on Olver, and to look in on Harnan and the rest of the Redarms, sharing a long room lined with beds not far from the stables, and to saunter down to the kitchens for some bread and beef—he had not been able to face that porridge back at the inn. Still Nynaeve and Elayne had not returned. He finally looked over the books in his sitting room and began reading The Travels of Jain Farstrider, though he barely made out a word for worrying. Thom and Juilin came in just as the women finally bustled in exclaiming over finding him there, as if they thought he would not keep his word.
He closed the book gently, set it gently on the table beside his chair. “Where have you been?”
“Why, we went for a walk,” Elayne said brightly, blue eyes wider than he remembered seeing before. Thom frowned and produced a knife from his sleeve, rolling it back and forth through his fingers. He very markedly did not so much as glance at Elayne.
“We had tea with some women your innkeeper knows,” Nynaeve said. “I won’t bore you with talk about needlework.” Juilin started to shake his head, then stopped before she noticed.
“Please, don’t bore me,” Mat said dryly. He supposed she knew one end of a needle from the other, but he suspected she would as soon stick one through her tongue as talk about needlework.  “I’ve told off two fellows to walk out with each of you this afternoon, and there will be two more tomorrow and every day. If you’re not inside the palace or under my nose, you’ll have bodyguards. They know their turns already. They’ll stay with you at all times—all times—and you will let me know where you’re headed. No more making me worry till my hair falls out.”
He expected indignation and argument. He expected weaseling over what they had or had not promised. He expected that demanding this whole loaf might get him a slice at the end; a butt slice, if his luck was in. Nynaeve looked at Elayne; Elayne looked at Nynaeve.
“Why, bodyguards are a wonderful idea, Mat,” Elayne exclaimed, her cheek dimpling in a smile. “I suppose you were right about that. It’s very smart of you to have your men already to a schedule.”
“It is a wonderful notion,” Nynaeve said, nodding enthusiastically, “Very smart of you, Mat.”

Mat sighed. Trouble; he had known it. And that was before they told him to forget the Rahad for the time being.
Which was how he found himself on a bench in front of a cheap tavern not far from the riverfront called The Rose of the Elbar, drinking from one of the dented tin cups chained to the bench. At least they washed the cups out for each new patron. The stink from a dyer’s shop across the way only raised the style of the Rose. Not that it was a shabby neighborhood really, though the street was too narrow for carriages. A fair number of brightly lacquered sedan chairs swayed through the crowd. If far more passersby wore wool and perhaps a guild vest than silk, the wool was as often well cut as frayed. The houses and shops were the usual array of white plaster, and if most were small and even run-down, the tall house of a wealthy merchant stood on a corner to his right and on the left a diminutive palace—smaller than the merchant’s house, at least—with a single green-banded dome and no spire. A pair of taverns and an inn in plain sight looked cool and inviting. Unfortunately, the Rose was the only one where a man could sit outside, the only one in just the right spot. Unfortunately.
 “What is it we’re doing again?”
“You are swilling that foul excuse for wine and sweating like a goat,” Mat muttered, tugging his hat to shade his eyes better. “I’m being ta’veren.” He glared at the dilapidated house, between the dyer’s and a noisy weaver’s establishment, that he had been told to watch. Not asked—told—that was what it came to, however they phrased it, squirming around their pledges. Oh, they made it sound like asking, made it sound like pleading at the end, which he would believe when dogs danced, but he knew when he had been bullied. “Just be ta’veren, Mat,” he mimicked. “I know you’ll just know what to do. Bah!”  “If the pig-kissing Bowl is in the Rahad, how am I supposed to find it on this flaming side of the river?”
“I do not remember them saying,” Juilin said wryly, and took a long swallow of some drink made from a yellow fruit grown in the countryside. “You’ve asked that fifty times, at least.” He claimed the pale drink was refreshing in the heat, but Mat had taken a bite of one of those lemons, and he was not about to swallow anything made from them. With his head still throbbing faintly, he himself drank tea. It tasted as if the tavern-keeper, a scrawny fellow with beady suspicious eyes, had been dumping new leaves and water in yesterday’s leavings since the founding of the city. The taste suited his mood.
“What interests me,” Thom murmured over steepled fingers, “is why they asked so many questions about your innkeeper.” He did not seem very upset at the women still keeping secrets; sometimes, he was decidedly odd. “What do Setalle Anan and these women have to do with the Bowl?”
Women did pass in and out of the dilapidated house. A steady stream of women, just about, some well dressed if none in silks, and not one man. Three or four wore the red belt of a Wise Woman. Mat had considered following some of them when they left, but it felt too planned. He did not know how ta’veren worked—he had never really seen any sign of it in himself—but his luck was always best when everything was random. Like with dice. Most of those little iron tavern puzzles eluded him, however lucky he felt.
He ignored Thom’s question; Thom had asked it at least as often as Mat had asked how he was to find the Bowl here. Nynaeve had told him to his face she had not promised to tell him every last thing she knew; she said she would tell him whatever he needed to know; she said . . . Watching her nearly choke from not calling him names was not nearly enough vengeance.
“I suppose I should take a walk down the alley,” Nalesean sighed. “In case one of those women decides to climb over the garden wall.” The narrow gap between the house and the dyer lay in full view for its whole length, but another alleyway ran along behind the shops and houses. “Mat, tell me again why we’re doing this instead of playing cards.”
“I’ll do it,” Mat said. Maybe he would find out how ta’veren worked behind the garden wall. He went, and found out nothing.
By the time twilight began creeping over the street and Harnan came with a bald-headed, narrow-eyed Andoran named Wat, the only possible effect of being ta’veren he had seen was that the tavern-keeper brewed a fresh pot of tea. It tasted almost as bad as the old.
Back in his rooms in the palace, he found a note, an invitation of sorts, elegantly lettered on thick white paper that smelled like a garden of flowers.
My little rabbit, I expect to have you for dinner tonight in my apartments.
No signature, but he hardly needed one. Light! The woman had no shame at all! There was a red-painted iron lock on the door to the corridor; he found the key and locked it. Then, for good measure, he jammed a chair under the latch on the door to Nerim’s room. He could do well enough without dinner. Just as he was about to climb into bed, the lock rattled; out in the hall, a woman laughed at finding the door secured.
He should have been able to sleep soundly then, but for some reason he lay there listening to his belly grumble. Why was she doing this? Well, he knew why, but why him? Surely she had not decided to toss all decency over the barn just to bed a ta’veren. He was safe now, anyway. Tylin would not batter down the door, after all. Would she? Not even most birds could get in through the wrought-iron arabesques screening the balconies. Besides, she would need a long ladder to reach that high. And men to carry it. Unless she climbed down from the roof on a rope. Or she could . . . The night passed, his stomach rumbled, the sun rose, and he never closed his eyes or had a decent thought. Except that he did make a decision. He thought of a use for the sulking room. He certainly never sulked.
At first light, he sneaked out of his rooms and found another of the palace servants he remembered, a balding fellow named Madic, with a smug, self-satisfied air and a shy twist to his mouth that said he was not satisfied at all. A man who could be bought. Though the startled look that flashed across his square face, and the smirk he barely bothered to hide, said he knew exactly why Mat was slipping gold into his hand. Blood and ashes! How many people knew what Tylin was up to?
Nynaeve and Elayne did not seem to, thank the Light. Though that did mean they chided him about missing dinner with the Queen, which they had learned about when Tylin inquired whether he was ill. And worse . . .
“Please,” Elayne said, smiling almost as if the word did not pain her, “you must put your best foot forward with the Queen. Don’t be nervous.  There was no doubt with her that being civil hurt; her brows drew down in concentration, her jaw tightened, and her hands trembled to pull her braid. “Be accommodating for once in your—I mean to say, remember she’s a decent woman, and don’t try any of your—Light, you know what I mean.”
Nervous. Ha! Decent woman. Ha!
Neither seemed the least concerned that he had wasted a whole afternoon. Elayne patted his shoulder sympathetically and asked him please to try another day or two; it certainly was better than tramping through the Rahad in this heat. Nynaeve said the exact same thing, the way women did, but without the shoulder pat. They admitted right out that they intended to spend the day trying to spy on Carridin with Aviendha, though they evaded his question of who it was they thought they might recognize. Nynaeve let that slip, and Elayne gave her such a look he thought he might see Nynaeve’s ears boxed for once.
They meekly accepted his stricture not to lose sight of their bodyguards, and meekly let him see the disguises they intended to wear.  Well, Nynaeve made a sickly stab at meekness, growling when she realized he had meant what he said about the Aiel woman needing no bodyguard, but she came close. Either one of these women folding her hands and answering submissively made him nervous. Both of them together—with Aviendha nodding approvingly!—and he was happy to send them on their way. Just to be sure, though, he ignored their suddenly flat mouths and made them demonstrate their disguises for the men he was sending along first.
The fat man had not learned much watching on his own. Just as on the day before, a surprising number of people had come to call on Carridin, including some in silk, but that was not proof they were all Darkfriends. All said and done, the man was the Whitecloak ambassador; more folk who wanted to trade into Amadicia probably went to him than to the Amadician ambassador, whoever he or she was. Vanin did say two women had definitely been watching Carridin’s palace, too—the look on his face when Aviendha suddenly turned into a third Ebou Dari woman was a wonder—and also an old man, he thought, though the fellow proved surprisingly spry. Vanin had not managed to get a good look at him despite spotting him three times. Once Vanin and the women left, Mat sent off Thom and Juilin to see what they could uncover concerning Jaichim Carridin and a bent, white-haired old man with an interest in Darkfriends. If the thief-catcher could not discover a way to trip Carridin on his face, it did not exist, and Thom seemed to have a way of putting together all the gossip and rumor in a place and filtering out the truth. All that was the easy part, of course.
For two days he sweated on that bench, with an occasional stroll down the alley beside the dyer’s, and the only thing that changed was that the tea got worse again. The wine was so bad, Nalesean began drinking ale. The first day, the tavern-keeper offered fish for a midday meal, but by the smell they had been caught last week. The second day, he offered a stew of oysters; Mat ate five bowls of that despite the bits of shell. Birgitte declined both.
He had been surprised when she caught up to him and Nalesean hurrying across the Mol Hara that first morning. The sun barely made a rim above the rooftops, but already people and carts dotted the square. “I must have blinked,” she laughed. “I was waiting the way I thought you’d come out. If you don’t mind company.”
“We move fast sometimes,” he said evasively. Nalesean looked at him sideways; of course, he had no idea why they had crept out through a tiny side door near the stables. It was not that Mat thought Tylin would actually leap on him in the halls in broad daylight, but then again, it never hurt to be careful. “Your company is welcome any time. Uh. Thanks.” She just shrugged and murmured something he did not catch and fell in on the other side of him.
That was the beginning with her. Any other woman he had ever known would have demanded to know thanks for what, and then explained why none were necessary at such length that he wanted to cover his ears, or upbraided him at equal length for thinking they were, or sometimes made it clear she expected something more substantial than words. Birgitte just shrugged, and over the next two days, something startling occurred in his head.
Normally, to him, women were to admire and smile at, to dance with and kiss if they would allow, to snuggle with if he was lucky. Deciding which women to chase was almost as much fun as chasing them, if not nearly so much as catching them. Some women were just friends, of course. A few. Egwene, for one, though he was not sure how that friendship would survive her becoming Amyrlin. Nynaeve was sort of a friend, in a way; if she could forget for one hour that she had switched his bottom more than once and remember he was not a boy anymore. But a woman friend was different from a man; you always knew her mind ran along other paths than yours, that she saw the world with different eyes.
Birgitte leaned toward him on the bench. “Best be wary,” she murmured. “That widow is looking for a new husband; the sheath on her marriage knife is blue. Besides, the house is over there.”
He blinked, losing sight of the sweetly plump woman who rolled her hips so extravagantly as she walked, and Birgitte answered his sheepish grin with a laugh. Nynaeve would have flayed him with her tongue for looking, and even Egwene would have been coolly disapproving. By the end of the second day on that bench, he realized he had sat all that time with his hip pressed against Birgitte’s and never once thought of trying to kiss her. He was sure she did not want to be kissed by him—frankly, considering the dog-ugly men she seemed to enjoy looking at, he might have been insulted if she had—and she was a hero out of legend whom he still half-expected to leap over a house and grab a couple of the Forsaken by the neck on the way. But that was not it: He would as soon have thought of kissing Nalesean. The same as the Tairen, just exactly the same as, he liked Birgitte.
Two days on that bench, up and down to trot down the alley beside the dyer and stare at the tall wall of bare brick at the back of the house’s garden. Birgitte could have climbed it, but even she might have broken her neck if she tried wearing a dress. Three times he decided on the spur of the moment to follow a woman coming out of the house, two wearing the red belt of a Wise Woman. Random chance did seem to invoke his luck. One of the Wise Women went around the corner and bought a bunch of shriveled turnips before going back; the other walked two streets over to buy a pair of big, green-striped fish. The third woman, tall and dark in neat gray wool, maybe a Tairen, crossed two bridges before entering a large shop where she was greeted with smiles by a skinny bowing fellow and began supervising the loading of lacquered boxes and trays into sawdust-filled baskets that were then loaded into a wagon. By what he heard, she hoped to fetch a pretty piece of silver with them in Andor. Mat barely managed to escape without buying a box. So much for random luck.
No one else had any either. Nynaeve and Elayne and Aviendha made their pilgrimages to the streets around Carridin’s small palace without seeing anyone they recognized, which frustrated them no end. They still refused to say who; it hardly mattered, since the people were not to be seen. That was what they said, showing him enough teeth for six women. The grimaces were supposed to be smiles, he thought. It was a shame Aviendha seemed to have fallen in with the other two so thoroughly, but there was a moment when he was pressing them for an answer, and Elayne snapped at him, staring down her nose, and the Aiel woman whispered something in her ear.
“Forgive me, Mat,” Elayne said earnestly, her face going so red her hair seemed to pale. “I humbly beg pardon for speaking so. I . . . will beg on my knees, if you wish.” No surprise that her voice faltered at the end.
“No need for that,” he said faintly, trying not to goggle. “You’re forgiven; it was nothing.” The oddest thing, though; Elayne looked at Aviendha the whole time she spoke to him and did not twitch an eyelid when he replied, but she heaved a great sigh of relief when Aviendha nodded. Women were just strange.
Thom reported that Carridin gave to beggars frequently, and aside from that, every scrap of word about him in Ebou Dar was the kind to be expected, depending on whether the speaker thought Whitecloaks were murderous monsters or the true saviors of the world. Juilin learned that Carridin had purchased a plan of the Tarasin Palace, which might indicate some Whitecloak intention toward Ebou Dar and might indicate that Pedron Niall wanted a palace for himself and intended to copy the Tarasin. If he still lived; rumors had sprung up in the city that he was dead, but then, half said Aes Sedai had killed him and half said Rand had, which showed their worth. Neither Juilin or Thom had scuffed up a pebble concerning a white-haired old man with a much-worn face.

Mat found out how things were to go that first night when he finally got back to his rooms. Olver was there, already fed and curled up in a chair with The Travels of Jain Farstrider by the light of the stand-lamps, and not at all upset over being moved out of his own room. Madic had been as good as his word; as good as the gold he stuffed in his pouch, anyway. The sulking room now held Olver’s bed. Just let Tylin try anything with a child watching her! The Queen had not been idle either, though. He sneaked down to the kitchens like a fox, slipping from corner to corner, flashing down stairs—and found there was no food to be had.
Oh, the smell of cooking permeated the air, roasts turning on spits in the big fireplaces, pots bubbling atop the white-tiled stoves, and cooks kept popping open ovens to prod this or that. There was just no food for Mat Cauthon. Smiling women in pristine white aprons ignored his own smiles and put themselves in his way so he could not get near the sources of those wonderful smells. They smiled and rapped his knuckles when he tried to snatch a loaf of bread or just a bit of honey-glazed turnip. They smiled and told him he must not spoil his appetite if he was to eat with the Queen. They knew. Every last one of them knew! His own blushes as much as anything else drove him back to his rooms, bitterly regretting that odorous fish at midday. He locked the door behind him. A woman who would starve a man might try anything.
He was lying on a green silk carpet playing Snakes and Foxes with Olver when the second note was slipped under his door.
I have been told it is more sporting to take a pigeon on the wing, to watch it flutter, but sooner or later, a hungry bird will fly to the hand.
“What is it, Mat?” Olver asked.
“Nothing.” Mat crumpled the note. “Another game?”
“Oh, yes.” The boy would play the fool game all day, given a chance. “Mat, did you try any of that ham they cooked tonight? I never tasted anything—”
“Just throw the dice, Olver.
Coming back for his third night in the palace, he bought bread and olives and ewe’s milk cheese on the way, which was just as well. The kitchen still had its orders.
He maintained his dignity. He did not grab a platter and run. He made his finest leg, flourishing an imaginary cloak. “Gracious ladies, your warmth and hospitality overwhelm me.”
His withdrawal would have gone a deal better if one of the cooks had not cackled at his back, “The Queen will feast on roast duckling soon enough, lad.” Very droll. The other women roared so hard, they must have been rolling on the floor.
Bread and olives and salty cheese made a fine meal, with a little water from his washstand to wash it down. There had not been any wine punch in his room since that first day. Olver tried to tell him about some sort of roasted fish with mustard sauce and raisins; Mat told him to practice his reading.
Nobody slipped a note under his door that night. Nobody rattled the lock. He began to think things might turn for the better. Tomorrow was the Festival of Birds. From what he had heard of the costumes some people wore, men and women both, it might be possible Tylin would find herself a new duckling to chase after.  Things just had to turn for the better.
When he woke for his third morning in the Tarasin Palace, the dice were rolling in his head.


langmap issue
-
anonymous
I think command-t behaves wrong with regard to the langmap option. E.g. I have a German keyboard layout and use this:
set langmap+=zy,yz,jh,kj,lk,öl
Vim uses this mapping in command mode but not when entering :commands or when in insert mode.
When searching for files with command-t, the langmap mappings are active, which makes the combination rather unusable.
Thanks, Stefan
-
Greg Hurrell
I'm not a
'langmap'
user myself so I don't really know how it works.If I understand you correctly, you're suggesting that Command-T should temporarily ignore the
'langmap'
setting when searching for files, and then restore the setting to its prior value once a file has been selected or the Command-T window is otherwise dismissed?
Reply
This topic is now closed.


Responsive Design
Tailwind allows you to build responsive designs in the same way you build the rest of your design — using utility classes. Every utility in Tailwind is also available in screen-size specific variations. For example, the .font-bold
utility can be used on small screen sizes using the .sm:font-bold
class, on medium screen sizes using the .md:font-bold
class, on large screen sizes using the .lg:font-bold
class and on extra large screen sizes using the .xl:font-bold
class.
This is done using predefined screen sizes (media query breakpoints), each of which are given a unique name like sm
, md
, lg
and xl
. By default Tailwind takes a "mobile first" approach, where each screen size represents a minimum viewport width. Any classes you apply at smaller screen sizes are also applied to larger sizes, unless of course you override them, which is the whole point! This approach, while simple, is actually very powerful and can be used to build complex, beautiful, responsive designs.
Responsive example
Customizing screens
You define your project's screen sizes in your Tailwind config under the screens
key. Screens in Tailwind are essentially CSS media queries. If you provide a single value for a screen, Tailwind will treat this as the minimum screen size value for that screen breakpoint.
Here are the default screen sizes:
screens: {
'sm': '576px',
// => @media (min-width: 576px) { ... }
'md': '768px',
// => @media (min-width: 768px) { ... }
'lg': '992px',
// => @media (min-width: 992px) { ... }
'xl': '1200px',
// => @media (min-width: 1200px) { ... }
},
Feel free to have as few or as many screens as you want, naming them in whatever way you'd prefer for your project.
For example, you could use device names instead of sizes:
screens: {
'tablet': '576px',
// => @media (min-width: 576px) { ... }
'laptop': '992px',
// => @media (min-width: 992px) { ... }
'desktop': '1200px',
// => @media (min-width: 1200px) { ... }
},
These screen names will be reflected in your utilities, so your .bg-red
utilities would now look like this:
.bg-red { background-color: config('colors.red'); }
@media (min-width: 576px) {
.tablet\:bg-red { background-color: config('colors.red'); }
}
@media (min-width: 992px) {
.laptop\:bg-red { background-color: config('colors.red'); }
}
@media (min-width: 1200px) {
.desktop\:bg-red { background-color: config('colors.red'); }
}
Advanced screens
Tailwind also allows for more complex screen definitions, which can be useful in certain situations. For example, if you wanted to define both the minimum and maximum size for your screens, you could do that like this:
screens: {
'sm': {'min': '576px', 'max': '767px'},
'md': {'min': '768px', 'max': '991px'},
'lg': {'min': '992px', 'max': '1199px'},
'xl': {'min': '1200px'},
},
You can also provide multiple ranges per screen. This is useful in situations where you have a sidebar navigation and want to maintain consistent content breakpoints, regardless of the navigation being visible or not. Here's an example:
screens: {
'sm': '500px',
'md': [
// Sidebar appears at 768px, so revert to `sm:` styles between 768px
// and 868px, after which the main content area is wide enough again to
// apply the `md:` styles.
{'min': '668px', 'max': '767px'},
{'min': '868px'}
],
'lg': '1100px',
'xl': '1400px',
},
Print screens
As mentioned earlier, screens in Tailwind are essentially just CSS media queries. So while you normally define your screensizes in pixels, it's possible to also define non-regular screens using the raw
key. Here is an example of how you could use this to create a print-only screen size.
screens: {
'sm': '576px',
'md': '768px',
'lg': '992px',
'xl': '1200px',
'print': {'raw': 'print'}
},


Behavior
Squirtle has a fairly calm character, although sometimes it is difficult to control. In this regard, it is harder to train than Bulbasaur, but easier than Charmander. Squirtle is very attached to his relatives. But, nevertheless, he gets along well with other species of Pokemon. Wild Squirtle are pretty distrustful of humans. Squirtle and Pikachu can become good friends.


Exit Modding Shop
Mod Type
Select Mod Type
Mods List:
Test
Shopping Cart:
Total:
$0
Purchase Items
Clear Cart


--- layout: base title: About permalink: /about/ ---
The Marfs are a loose collection of furries hooked on reading. Back in 2013, they banded together to create Bookmarfs! as a way to share the books that they enjoyed, and to talk through the ones that they didn't. From there, Bookmarfs! as a club was born, with the goal of reading a book a month and having an hour (at least) discussion about them after, live-streamed for any and all comers.
Bookmarfs! was the brainchild of Lunostophiles. Other original Marfs include Makyo, Peri, Forneus, Tabbie, and AC Fox, with many more showing up here and there.
We read books of all sorts! Prior to our hiatus, we read:
There are some furry books, some fiction, some non-fiction (and Fear and Loathing which can't make up its mind), and all sorts of genres. Our goal with the monthly book is to get something not everyone has read and have a chance to work through it. What about it works? What doesn't? What did we like and dislike? How does it work for us as furries?
The monthly books aren't all we read, either. Small groups and individuals can read books and come up with their own discussions, or even do some write-ups (called Wags).
Monthly book chats will take place every month, natch. Books will be decided before the month they're to be read in a chat somewhere *vague handwaving*
Outside of the monthly chats, Bookmarfs! is continual. There's always books to be read, and always yaps to be had about them! To that end, the locations are...
Bookmarfs! inhabits a Telegram chat and a Goodreads group, places that we can call our own. These are both free to join and a good place for talking about both the monthly books, as well as any ol' book you come across. Smaller sub-groups and individual projects are both smiled beatifically upon, and encouraged to turn into the write-ups we call Wags.
As we've struggled in the past with keeping from getting overrun by spam, both of these locations are currently private, though will be given out to any earnest seeker who asks.
There are a lot of furry books. A loooot of them. But they're not the only books that furries read, we read all sorts of things! We want to celebrate that folks within the subculture are reading for enjoyment or hunting for meaning just as much as those outside the subculture.
Stay tuuuuned.


WITNESS LIST Economic Development Committee (SUBCOMMITTEE ON Enterprise Zone Program) April 19, 2006-8:00A Texas Enterprise Zone For: Shields, Chris (Ryan & Co., Toyota, Radio Shack) On: Chase, Tim (Wichita Falls Board of Commerce & Industry) Chrobak, Michael (Office of the Governor, Economic Development & Tourism) Registering, but not testifying: For: Richmond, Karin (City of Corpus Christi) On: Stolte Goetz, Theresia (Office of the Governor, Economic Development & Tourism)


12.4. Editing Comment Buffers
In VC mode, three operations typically pop up a buffer to
accept comment or notification text: check in, lock stealing, and
(under circumstances to be explained later in the chapter) file
registration. In each case, the operation is on hold until you type
C-c C-c to commit the comment
buffer. You can enter a comment right away and finish the operation,
or you can go off and do something else. VC waits patiently to commit
until you are ready. If you delete the pop-up buffer, the operation
is quietly scrubbed.
The comment buffer is a plain-text buffer. However, each time you
commit a comment buffer, the contents are saved to a new slot in a
ring of comment buffers. You can cycle backwards in the ring with
M-p and forward with M-n, or you can search for text backwards in
the ring with M-r and forward with
M-s. By design, these are the same
keys you can use to navigate an Emacs minibuffer command history. By
far the most commonly used of these commands is M-p. Being able to recall and edit the last
change comment is often useful since it's common to
make a series of related changes.
|