--- title: Apple Tablet date: '2010-01-15T13:12:51+05:30' tags: [] tumblr_url: https://sureshshanmugam.com/post/335483122/apple-tablet ---
I wish Apple could make a computing device that would make Wacom Cintiq redundant.
My ideal product for touch, brush/tool based computer, follows this premise ‘everything is the screen’. No haggling with the cables and all the other nasty bits.
Apple whip out a product for this, please.


I love creating impactful digital content products while laughing and drinking coffee.
Manage visual content strategy for HouseLogic, a home ownership website from the National Association of REALTORS® (NAR). NAR is America's largest trade association, representing 1.2 million members and covering all aspects of the residential and commercial real estate industries. Grew library from zero to 7,000+ on-brand photo and video assets from diverse sources including influencers, stock, and custom shoots. Collaborate with key stakeholders in marketing, editorial, SEO, and tech teams to ensure visuals conformed to internal and legal standards. Developed imagery-related CMS replatforming requirements.
Directed strategy and creative development for both consumer-specific and advertiser-specific video products. Moved marketing video production in-house, saving $20,000+. Oversaw video production for web properties while building partnerships with external vendors and content providers. Internal experience also included writing and training teams on video procedures across platforms. Worked with marketing department on programs to support video products including direct mail, e-mail, search engine marketing campaigns, and collateral. Member of Gannett corporate video advisory board.
Established one of the nation's most recognized local TV news websites. Known for innovative features that become standards in the industry, WCPO.com was the first local news website in the U.S. with a web-only newscast, around-the-clock online news updates, podcasts and more. Oversaw all aspects of initial site launch, from strategy, budgeting, and staffing to information design, editorial decision-making and technical implementation. Digital content products included website, e-mail newsletters, and a video-on-demand partnership. as well as numerous redesigns. Also created the area’s first hyper-local website with targeted news coverage for more than 50 Cincinnati-area communities. Supervised digital operations team of website producers, artists, technical staff, and freelance coders. Presented regular website traffic reports and analysis to senior management.
Worked on numerous projects during a college internship that quickly begat a paid position. Created promotional pages for CNN TV programs. Hosted public chat rooms, handling problem users and directing the flow of conversation to news-based events and issues. Initiated public message boards based on news events. Conceptualized and followed through with feedback solutions. Integrated appropriate chat/message board content into CNN's TalkBack Live TV program in real time.


Carlo is a student and videographer in Bicol University Polangui Campus' Graphikarista. He will share his knowledge about “Video Editing using Adobe Premiere”.
Gregory Jan
Gregory is a Graphic Artist and part time Instructor at Bicol University. He will talk about “Graphic Design using Photoshop”.
Our Partners for Tech Talk 11
Our Venue
Contacts
Need further info? Please get in touch with us through our
Bicol IT Facebook Group. Feel free to post your enquiries on any of the pinned posts and the group admins will respond as soon as possible.


Typeface
Vanilla CSS will use whatever default system fonts are available for faster speed and optimization.
Vanilla CSS is a minimal baseline stylesheet for any web project. It includes a basic reset and default styling for all HTML5 elements (which you can see live below).
Copy and paste the following inside your head
element:
<link rel="stylesheet" href="https://vanillacss.com/vanilla.css">
Or import directly in your own CSS:
@import url('https://vanillacss.com/vanilla.css');
This project is completely free and open source. Check it out on Github.
Vanilla CSS will use whatever default system fonts are available for faster speed and optimization.
A paragraph (from the Greek paragraphos, “to write beside” or “written beside”) is a self-contained unit of a discourse in writing dealing with a particular point or idea. A paragraph consists of one or more sentences. Though not required by the syntax of any language, paragraphs are usually an expected part of formal writing, used to organize longer prose.
A block quotation (also known as a long quotation or extract) is a quotation in a written document, that is set off from the main text as a paragraph, or block of text.
It is typically distinguished visually using indentation and a different typeface or smaller size quotation. It may or may not include a citation, usually placed at the bottom.
Said no one, ever.
| Table Heading 1 | Table Heading 2 | Table Heading 3 | Table Heading 4 |
|---|---|---|---|
| Table Cell 1 | Table Cell 2 | Table Cell 3 | Table Cell 4 |
| Table Cell 1 | Table Cell 2 | Table Cell 3 | Table Cell 4 |
| Table Cell 1 | Table Cell 2 | Table Cell 3 | Table Cell 4 |
| Table Cell 1 | Table Cell 2 | Table Cell 3 | Table Cell 4 |
| Table Footer 1 | Table Footer 2 | Table Footer 3 | Table Footer 4 |
Keyboard input: Cmd
Inline code:
code

Sample output: This is sample output from a computer program.
P R E F O R M A T T E D T E X T ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
This text has added emphasis.
The b element is stylistically different text from normal text, without any special importance.
The i element is text that is offset from the normal text.
The u element is text with an unarticulated, though explicitly rendered, non-textual annotation.
This text is deleted and This text is inserted.
This text has a strikethrough.
Superscript®.
Subscript for things like H2O.
This small text is small for fine print, etc.
Abbreviation: HTML
This text is a short inline quotation.
This is a citation.
The dfn element indicates a definition.
The mark element indicates a highlight.
The variable element, such as x = y.
The time element:
There is comment here:
There is a comment spanning multiple tags and lines below here.

element

element, no

element, with a

Very basic input styling is also supported:
Looking for custom form styling?


[gecode-users] sequence constraint: variable occurring multiply
Guido Tack
tack at gecode.org
Thu Aug 19 09:10:13 CEST 2010
Hi,
David Rijsman wrote:
> you are absolutely right, this extension is very useful for cyclical rosters. Should not be very hard to enable in the current implementation, basically changing the check at posting the constraint. I see if I can do this and see if this gets accepted?
The question is whether the algorithm is still correctly reporting fixpoints when the variable array contains variables more than once. I don't know the algorithm well enough to tell from just a quick glance. Usually, the test suite is pretty good at detecting these cases, so you could simply remove the check in the post function and write a test to see if anything goes wrong.
If shared variables are indeed a problem for the algorithm, you can use unshare to replace all shared variables with fresh variables (linked to the originals by equality constraints).
Cheers,
Guido
>
> David
>
>>>>
> From: Kish Shen <kisshen at cisco.com>
> To: <users at gecode.org>
> Date: 8/19/2010 2:03 AM
> Subject: [gecode-users] sequence constraint: variable occurring multiply
>
> Hi,
>
> I have another question about the sequence constraint: exception
> ArumentSame is thrown if a variable occurs more than once. Should this
> exception be thrown? I can see that it does not make sense for a
> variable to occur in a subsequence of q variables, but if the 'distance'
> between the same variable > q, i.e. it cannot occur multiply in the same
> subsequence, should this be allowed? Can the implemented algorithm deal
> with this?
>
> There are useful cases for variables to occur multiply, the simplest is
> a cycle, e.g. say for the following variables
>
> x1,x2,x3,x4,x5
>
> and a cycle would be
>
> x1,x2,x3,x4,x5,x1,x2,....
>
> such cycle could be used for a schedule that repeats.
>
> Cheers,
>
> Kish
> --
> This e-mail may contain confidential and privileged material for the
> sole use of the intended recipient. Any review, use, distribution or
> disclosure by others is strictly prohibited. If you are not the intended
> recipient (or authorized to receive for the recipient), please contact
> the sender by reply e-mail and delete all copies of this message.
> Cisco Systems Limited (Company Number: 02558939), is registered in
> England and Wales with its registered office at 1 Callaghan Square,
> Cardiff, South Glamorgan CF10 5BT.
>
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users
>
>
> _______________________________________________
> Gecode users mailing list
> users at gecode.org
> https://www.gecode.org/mailman/listinfo/gecode-users
--
Guido Tack, http://people.cs.kuleuven.be/~guido.tack/
More information about the users
mailing list


This document descibes the MySQL network protocol version 10, as of October 2002 (MySQL 3.23.52). It has been produced by reading libmysql.c, net.c and sql_show.cc in the MySQL source.
The protocol requires first that a client and server negotiate a connection, including agreeing about protocol features and authentication. This is followed by a series of requests from the client and reponses from the server, until either the client issues a QUIT request or the connection is broken.
MySQL uses either a Unix domain socket (usually /tmp/mysql.sock or /var/run/mysqld/mysql.sock), an MS Windows named pipe (usually \\hostname\pipe\mysql) or a TCP port (usually 3306). It treats all communications methods identically.
Each client message is sent as a single MySQL 'packet'; a server response may consist of many packets. These packets are not related to the underlying network layer packets, and indeed many response packets may be contained in a single IP datagram.
Each packet begins with a 4-byte header. The first three header bytes give the body length as a Little-Endian integer (all MySQL integers are Little-Endian unless described otherwise). The fourth gives a packet number for this transaction, starting from 0, and including both client and server messages. The body of the message then follows.
All example packets are taken from a real system.
Once the transport-level connection is established, the connection negotiation starts with the server identifying itself.
The host sends an initial greeting similar to:
| 2c 00 00 00 | Body Length=44, packet=0 |
| 0a | Protocol=10 |
| 33 2e 32 33 2e 35 32 2d 6c 6f 67 00 | Version="3.23.52-log" |
| 04 00 00 00 | Thread ID=4 |
| 79 46 2f 57 48 43 57 6a 00 | Salt="yF/WHCWj" |
| 2c 20 | Caps=LONG_FLAG | CONNECT_WITH_DB | COMPRESS | TRANSACTIONS |
| 08 | Charset=Latin-1 |
| 02 00 | Status=AUTOCOMMIT |
| 00 00 00 00 00 00 00 00 00 00 00 00 00 | 13 bytes unused |
The first byte of the message body is the protocol version, currently 10; the current client is capable of connecting to protocol 9 or 10 servers. The protocol version is followed by a version string for the server (here 3.23.52-log), null-terminated - the -log suffix means logging is enabled. Following this is a 4-byte integer describing the thread ID of the server thread handling the request. Finally an 8-byte 'scramble string' salt for encryption, again null-terminated.
Newer servers follow this by a 2-byte integer describing the server's capabilities - this server can do LONG_FLAG and CONNECT_WITH_DB, as well as the more recent COMPRESS and TRANSACTIONS. Even newer servers follow this with a single byte giving the server character set and two bytes describing the server status.
The client now sends a request to the server, similar to:
| 12 00 00 01 | Body Length=18, packet=1 |
| 85 24 | Caps=LONG_PASSWORD | LONG_FLAG | TRANSACTIONS | INTERACTIVE | LOCAL_FILES |
| 00 00 00 | Max packet=16777216 |
| 72 6f 6f 74 00 | User="root" |
| 5b 43 4f 54 52 46 47 59 | Password="[COTRFGY" |
This is the client's turn to send its capabilities in two bytes. These will always include LONG_PASSWORD, LONG_FLAG and TRANSACTIONS for modern clients, and in this case include INTERACTIVE and LOCAL_FILES as well, as this is the standard MySQL command-line client.
At this point the client will switch to SSL on the communications channel if it has set the SSL capability bit - which it will not do if the server has not also set that bit.
This is followed by three bytes giving the maximum allowed packet length. A value of 0 here means 2^24=16MB, and will be used by modern clients. This is followed by the username, null-terminated, and the eight characters of scrambled password (the example given here is not a real password) if a password is provided.
If the client is trying to connect to a particular database and the server is capable of CONNECT_WITH_DB, it will add the database name as a null-terminated string.
The client will now expect the server to send an OK simple response or an error. After an OK response, the flow of client commands can begin; after an error response the client closes the connection.
If the client and server are both capable of compression, and the client wants to use it (it usually has to be explicitly enabled), the client will now switch to using it. It follows the standard packet header with a three-byte compressed length. The compression mechanism used is standard zlib.
Most commands produce a simple 'OK' response. This will usually be of the form:
| 05 00 00 01 | Body Length=5, packet=1 |
| 00 00 00 02 00 | OK |
In the case of an OK response to the initial authentication, of course, the packet number will be 2.
For an error, the response will be more like the following:
| 27 00 00 01 | Body Length=39, packet=1 |
| ff | Error |
| 7a 04 | Error code=NO_SUCH_TABLE (1146) |
| 54 61 62 6c 65 20 27 72 65 64 66 65 72 6e 69 2e 73 61 6d 70 6c 65 27 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 | Error meesage="Table 'redferni.sample' doesn't exist" |
The first byte of the error response body is set to 255.
If the body length is at least 4, then the packet contains a 2-byte error code, followed by the error message, of up to 200 characters. The error code is absent in protocol 9 servers.
There are 218 error codes, ranging from HASHCHK (1000) to ROW_IS_REFERENCED (1217).
A simple command is sent in the form:
| 0f 00 00 00 | Body Length=15, packet=0 |
| 03 | Command=QUERY |
| 73 68 6f 77 20 64 61 74 61 62 61 73 65 73 | Arg="show databases" |
The first byte is the command code, followed by an optional argument. Any command not explicitly listed, including any SQL command, is sent as QUERY, as in the example.
When the client wishes to disconnect, it sends a QUIT simple
command and closes its end of the connection, as follows
| 01 00 00 00 | Body Length=1, packet=0 |
| 01 | Command=QUIT |
The server will close its end of the connection without further response.
When data is sent in tabular form, each field is preceded by its field length, encoded in the following manner:
| Byte | Meaning |
|---|---|
| 0-250 | Same as byte |
| 251 | NULL field |
| 252 | Value in following 2 bytes |
| 253 | Value in following 3 bytes |
| 254 | Value in following 8 bytes |
This mechanism is also used for encoding other integers efficiently.
When returning data as a table, as a response to a QUERY, FIELD_LIST or PROCESS_INFO command, MySQL first describes the fields in each row, then sends the rows.
| 16 00 00 02 | Body Length=22, packet=2 |
| 06 73 65 6d 70 6c 65 | Table="sample" |
| 04 6e 61 6d 65 | Field="name" |
| 03 14 00 00 | Length=20 |
| 01 fd | Type=VAR_STRING |
| 03 00 00 00 | Flags=0000, Decimals=00 |
There is one logical packet per field description. Each field description contains five parts, each preceded by their length in field_length encoding: the table name, the field name, the maximum length (a 3 byte integer), the field type and 2 bytes of flags followed by one byte of decimals.
In a client or server without the LONG_FLAG capability, there is only one byte of field flags.
If default values are provided (this will usually just be for the FIELD_LIST command), there is a sixth part to the field description: default value.
| 01 00 00 04 | Body Length=1, packet=4 |
| fe | End of field list |
After all the field description packets, a packet with just a single byte of value 254 indicates the start of the rows.
| 09 00 00 05 | Body Length=9, packet=5 |
| 06 41 73 68 6c 65 79 | Row 1 Col 1="Ashley" |
| 01 31 | Row 1 Col 2=1 |
Each row is in a separate packet, with the field values preceded by a field length. All non-binary fields values are sent as text - in particular, all numeric fields appear as ASCII, and timestamps as YYYY-MM-DD HH:MM:SS. Trailing spaces are removed from char and varchar fields.
| 01 00 00 07 | Body Length=1, packet=7 |
| fe | End of row list |
After the last row, another packet holding just the byte 254 indicates the end of the data.
There are four commands that can return complex responses.
The STATISTICS command response is simply a string describing the current server statistics.
The FIELD_LIST command response is the same as the first part of a tabular response (the field descriptions) - with the exception that a default value may be attached to each field description.
The PROCESS_INFO command response is first a packet containing a field count, in field_length encoding, followed by a tabular response.
The QUERY command handles all SQL commands, as well as almost all client commands.
There are three forms of response. The simplest is where no tabular data needs to be returned:
| 05 00 00 01 | Body Length=5, packet=1 |
| 00 | 0=OK - no tabular data |
| 00 | Affected rows=0 |
| 00 | Insert id=0 |
| 02 00 | Status=AUTOCOMMIT |
Here, the first byte is 0 and the following two entries are field_length encoded. If the server is capable of transactions, two bytes of server status will follow.
Finally, some additional information may be provided as a string, preceded by its field length.
If a file is to be sent to the server, the following response is generated:
| 01 00 00 01 | Body Length=1, packet=1 |
| fb | 251=Upload file |
The file is sent by the client as a series of ordinary packets, with the final packet empty.
Otherwise, the result contains a field count, followed by some extra information (possibly a row count), both field_length encoded:
| 01 00 00 01 | Body Length=1, packet=1 |
| 02 | Field count=2 |
This is then followed by the tabular data.
Many MySQL clients and drivers expect certain behaviour from the server, and perform queries behind the scenes. The important responses are shown below.
The mysql command-line client issues the request
select DATABASE(),USER()
when the user asks for the current status. It will expect the
following response:
| DATABASE() | USER() |
| VARCHAR(34) NOT NULL | VARCHAR(77) NOT NULL |
The DATABASE() field may be empty. The USER() field is of the form user@host.
The current status response is similar to:
Uptime: 129 Threads: 1 Questions: 6 Slow queries: 0 Opens: 6 Flush tables: 1 Open tables: 0 Queries per second avg: 0.047
The mysql client assumes the number following the first space is a time and formats it appropriately.
| Variable_name | Value |
| CHAR(30) NOT NULL | CHAR(256) NOT NULL |
| Database |
| CHAR(64) NOT NULL |
| Tables_in_db |
| CHAR(64) NOT NULL |
| Field | Type | Null | Key | Default | Extra |
| CHAR(64) NOT NULL | CHAR(40) NOT NULL | CHAR(1) NOT NULL | CHAR(3) NOT NULL | CHAR(64) | CHAR(20) NOT NULL |
The Null field takes values '' or 'YES' - this is presumably a bug. The Key field is 'PRI', 'UNI', 'MUL'or ''.
The same output is produce by show columns, desc or describe.
| Id | User | Host | db | Command | Time | State | Info |
| Int | CHAR(16) NOT NULL | CHAR(64) NOT NULL | CHAR(64) | CHAR(16) NOT NULL | CHAR(7) NOT NULL | CHAR(30) | CHAR(100) |
Show processlist full removes the size limit on the Info column.
The protocol 9 and protocol 10 password algorithms are different. In both cases, a seed is provided by the server and a password is provided by the user, and together they are used to generate a scrambled message of the same length as the seed.
A string is hashed to a pair of unsigned longs using the following algorithm:
| n1 =<PHONE_NUMBER> n2 = 305419889 add = 7 foreach c in password (ignoring space or tab) | |
|
n1 = n1 EOR
(((n1 & 63) + add) * c +
n1 * 256) n2 = (n2 * 256) EOR n1 add = add + c |
Only the bottom 31 bits of the unsigned longs are used.
First the password, then the salt are hashed to give two pairs of longs: p1, p2, s1 and s2. These are then used to generate the two seeds of a random number generator, which takes values between 0 and 230-2.
seed1 = p1 EOR
s1
seed2 = p2 EOR
s2
The random number generator algorithm is:
seed1 = (seed1 * 3 +
seed2) mod 230 - 1
seed2 = (seed1 +
seed2 + 33) mod 230 - 1
return seed1 / (230 - 1)
The random number generator is called once for each byte of the salt, and the number given is multiplied by 31 and added to 64 to give an ASCII character between '@' and '^'.
msg[i] = chr(64 + rng()*31)
The string just given then has each character exclusive-ored with the random number generator multiplied by 31.
msg[i] = msg[i] eor(rng()*31)
Here only p1 and s1 are used, 230 is replaced by 229 and seed2 is initially set to seed1 / 2. The final exclusive-or pass to modify the message is also skipped.
MySQL uses the following codes:
| Capability name | Value | Meaning |
|---|---|---|
| LONG_PASSWORD | 1 | New more secure passwords |
| FOUND_ROWS | 2 | Found instead of affected rows |
| LONG_FLAG | 4 | Get all column flags |
| CONNECT_WITH_DB | 8 | One can specify db on connect |
| NO_SCHEMA | 16 | Don't allow database.table.column |
| COMPRESS | 32 | Can use compression protocol |
| ODBC | 64 | ODBC client |
| LOCAL_FILES | 128 | Can use LOAD DATA LOCAL |
| IGNORE_SPACE | 256 | Ignore spaces before '(' |
| CHANGE_USER | 512 | Support the mysql_change_user() |
| INTERACTIVE | 1024 | This is an interactive client |
| SSL | 2048 | Switch to SSL after handshake |
| IGNORE_SIGPIPE | 4096 | IGNORE sigpipes |
| TRANSACTIONS | 8192 | Client knows about transactions |
| Command | Code | Arguments | Allowed from client |
|---|---|---|---|
| SLEEP | 0 | No | |
| QUIT | 1 | "" | |
| INIT_DB | 2 | db | |
| QUERY | 3 | query | |
| FIELD_LIST | 4 | table | |
| CREATE_DB | 5 | db | |
| DROP_DB | 6 | db | |
| REFRESH | 7 | option bits | |
| SHUTDOWN | 8 | ||
| STATISTICS | 9 | ||
| PROCESS_INFO | 10 | ||
| CONNECT | 11 | No | |
| PROCESS_KILL | 12 | 4-byte pid | |
| DEBUG | 13 | ||
| PING | 14 | ||
| TIME | 15 | No | |
| DELAYED_INSERT | 16 | No | |
| CHANGE_USER | 17 | user | |
| BINLOG_DUMP | 18 | ||
| TABLE_DUMP | 19 | ||
| CONNECT_OUT | 20 | No |
| Type | Code | Type | Code |
|---|---|---|---|
| DECIMAL | 0 | ENUM | 247 |
| TINY | 1 | SET | 248 |
| SHORT | 2 | TINY_BLOB | 249 |
| LONG | 3 | MEDIUM_BLOB | 250 |
| FLOAT | 4 | LONG_BLOB | 251 |
| DOUBLE | 5 | BLOB | 252 |
| NULL | 6 | VAR_STRING | 253 |
| TIMESTAMP | 7 | STRING | 254 |
| LONGLONG | 8 | ||
| INT24 | 9 | ||
| DATE | 10 | ||
| TIME | 11 | ||
| DATETIME | 12 | ||
| YEAR | 13 | ||
| NEWDATE | 14 |
| Status | Code |
|---|---|
| IN_TRANS | 1 |
| AUTOCOMMIT | 2 |
| Charset | Code | Charset | Code |
|---|---|---|---|
| big5 | 1 | hebrew | 16 |
| czech | 2 | win1251 | 17 |
| dec8 | 3 | tis620 | 18 |
| dos | 4 | euc_kr | 19 |
| german1 | 5 | estonia | 20 |
| hp8 | 6 | hungarian | 21 |
| koi8_ru | 7 | koi8_ukr | 22 |
| latin1 | 8 | win1251ukr | 23 |
| latin2 | 9 | gb2312 | 24 |
| swe7 | 10 | greek | 25 |
| usa7 | 11 | win1250 | 26 |
| ujis | 12 | croat | 27 |
| sjis | 13 | gbk | 28 |
| cp1251 | 14 | cp1257 | 29 |
| danish | 15 | latin5 | 30 |
| Field Flag | Value | Meaning |
|---|---|---|
| NOT_NULL | 1 | Field can't be NULL |
| PRI_KEY | 2 | Field is part of a primary key |
| UNIQUE_KEY | 4 | Field is part of a unique key |
| MULTIPLE_KEY | 8 | Field is part of a key |
| BLOB | 16 | Field is a blob |
| UNSIGNED | 32 | Field is unsigned |
| ZEROFILL | 64 | Field is zerofill |
| BINARY | 128 | Field is binary |
| ENUM | 256 | Field is an enum |
| AUTO_INCREMENT | 512 | Field is an autoincrement field |
| TIMESTAMP | 1024 | Field is a timestamp |
| SET | 2048 | Field is a set |
| NUM | 32768 | Field is num (for clients) |
Note that the NUM flag is set automatically by the client, based on the field type.
| Error | Value | Error | Value |
|---|---|---|---|
| HASHCHK | 1000 | WRONG_PARAMETERS_TO_PROCEDURE | 1108 |
| NISAMCHK | 1001 | UNKNOWN_TABLE | 1109 |
| NO | 1002 | FIELD_SPECIFIED_TWICE | 1110 |
| YES | 1003 | INVALID_GROUP_FUNC_USE | 1111 |
| CANT_CREATE_FILE | 1004 | UNSUPPORTED_EXTENSION | 1112 |
| CANT_CREATE_TABLE | 1005 | TABLE_MUST_HAVE_COLUMNS | 1113 |
| CANT_CREATE_DB | 1006 | RECORD_FILE_FULL | 1114 |
| DB_CREATE_EXISTS | 1007 | UNKNOWN_CHARACTER_SET | 1115 |
| DB_DROP_EXISTS | 1008 | TOO_MANY_TABLES | 1116 |
| DB_DROP_DELETE | 1009 | TOO_MANY_FIELDS | 1117 |
| DB_DROP_RMDIR | 1010 | TOO_BIG_ROWSIZE | 1118 |
| CANT_DELETE_FILE | 1011 | STACK_OVERRUN | 1119 |
| CANT_FIND_SYSTEM_REC | 1012 | WRONG_OUTER_JOIN | 1120 |
| CANT_GET_STAT | 1013 | NULL_COLUMN_IN_INDEX | 1121 |
| CANT_GET_WD | 1014 | CANT_FIND_UDF | 1122 |
| CANT_LOCK | 1015 | CANT_INITIALIZE_UDF | 1123 |
| CANT_OPEN_FILE | 1016 | UDF_NO_PATHS | 1124 |
| FILE_NOT_FOUND | 1017 | UDF_EXISTS | 1125 |
| CANT_READ_DIR | 1018 | CANT_OPEN_LIBRARY | 1126 |
| CANT_SET_WD | 1019 | CANT_FIND_DL_ENTRY | 1127 |
| CHECKREAD | 1020 | FUNCTION_NOT_DEFINED | 1128 |
| DISK_FULL | 1021 | HOST_IS_BLOCKED | 1129 |
| DUP_KEY | 1022 | HOST_NOT_PRIVILEGED | 1130 |
| ERROR_ON_CLOSE | 1023 | PASSWORD_ANONYMOUS_USER | 1131 |
| ERROR_ON_READ | 1024 | PASSWORD_NOT_ALLOWED | 1132 |
| ERROR_ON_RENAME | 1025 | PASSWORD_NO_MATCH | 1133 |
| ERROR_ON_WRITE | 1026 | UPDATE_INFO | 1134 |
| FILE_USED | 1027 | CANT_CREATE_THREAD | 1135 |
| FILSORT_ABORT | 1028 | WRONG_VALUE_COUNT_ON_ROW | 1136 |
| FORM_NOT_FOUND | 1029 | CANT_REOPEN_TABLE | 1137 |
| GET_ERRNO | 1030 | INVALID_USE_OF_NULL | 1138 |
| ILLEGAL_HA | 1031 | REGEXP_ERROR | 1139 |
| KEY_NOT_FOUND | 1032 | MIX_OF_GROUP_FUNC_AND_FIELDS | 1140 |
| NOT_FORM_FILE | 1033 | NONEXISTING_GRANT | 1141 |
| NOT_KEYFILE | 1034 | TABLEACCESS_DENIED_ERROR | 1142 |
| OLD_KEYFILE | 1035 | COLUMNACCESS_DENIED_ERROR | 1143 |
| OPEN_AS_READONLY | 1036 | ILLEGAL_GRANT_FOR_TABLE | 1144 |
| OUTOFMEMORY | 1037 | GRANT_WRONG_HOST_OR_USER | 1145 |
| OUT_OF_SORTMEMORY | 1038 | NO_SUCH_TABLE | 1146 |
| UNEXPECTED_EOF | 1039 | NONEXISTING_TABLE_GRANT | 1147 |
| CON_COUNT_ERROR | 1040 | NOT_ALLOWED_COMMAND | 1148 |
| OUT_OF_RESOURCES | 1041 | SYNTAX_ERROR | 1149 |
| BAD_HOST_ERROR | 1042 | DELAYED_CANT_CHANGE_LOCK | 1150 |
| HANDSHAKE_ERROR | 1043 | TOO_MANY_DELAYED_THREADS | 1151 |
| DBACCESS_DENIED_ERROR | 1044 | ABORTING_CONNECTION | 1152 |
| ACCESS_DENIED_ERROR | 1045 | NET_PACKET_TOO_LARGE | 1153 |
| NO_DB_ERROR | 1046 | NET_READ_ERROR_FROM_PIPE | 1154 |
| UNKNOWN_COM_ERROR | 1047 | NET_FCNTL_ERROR | 1155 |
| BAD_NULL_ERROR | 1048 | NET_PACKETS_OUT_OF_ORDER | 1156 |
| BAD_DB_ERROR | 1049 | NET_UNCOMPRESS_ERROR | 1157 |
| TABLE_EXISTS_ERROR | 1050 | NET_READ_ERROR | 1158 |
| BAD_TABLE_ERROR | 1051 | NET_READ_INTERRUPTED | 1159 |
| NON_UNIQ_ERROR | 1052 | NET_ERROR_ON_WRITE | 1160 |
| SERVER_SHUTDOWN | 1053 | NET_WRITE_INTERRUPTED | 1161 |
| BAD_FIELD_ERROR | 1054 | TOO_LONG_STRING | 1162 |
| WRONG_FIELD_WITH_GROUP | 1055 | TABLE_CANT_HANDLE_BLOB | 1163 |
| WRONG_GROUP_FIELD | 1056 | TABLE_CANT_HANDLE_AUTO_INCREMENT | 1164 |
| WRONG_SUM_SELECT | 1057 | DELAYED_INSERT_TABLE_LOCKED | 1165 |
| WRONG_VALUE_COUNT | 1058 | WRONG_COLUMN_NAME | 1166 |
| TOO_LONG_IDENT | 1059 | WRONG_KEY_COLUMN | 1167 |
| DUP_FIELDNAME | 1060 | WRONG_MRG_TABLE | 1168 |
| DUP_KEYNAME | 1061 | DUP_UNIQUE | 1169 |
| DUP_ENTRY | 1062 | BLOB_KEY_WITHOUT_LENGTH | 1170 |
| WRONG_FIELD_SPEC | 1063 | PRIMARY_CANT_HAVE_NULL | 1171 |
| PARSE_ERROR | 1064 | TOO_MANY_ROWS | 1172 |
| EMPTY_QUERY | 1065 | REQUIRES_PRIMARY_KEY | 1173 |
| NONUNIQ_TABLE | 1066 | NO_RAID_COMPILED | 1174 |
| INVALID_DEFAULT | 1067 | UPDATE_WITHOUT_KEY_IN_SAFE_MODE | 1175 |
| MULTIPLE_PRI_KEY | 1068 | KEY_DOES_NOT_EXITS | 1176 |
| TOO_MANY_KEYS | 1069 | CHECK_NO_SUCH_TABLE | 1177 |
| TOO_MANY_KEY_PARTS | 1070 | CHECK_NOT_IMPLEMENTED | 1178 |
| TOO_LONG_KEY | 1071 | CANT_DO_THIS_DURING_AN_TRANSACTION | 1179 |
| KEY_COLUMN_DOES_NOT_EXITS | 1072 | ERROR_DURING_COMMIT | 1180 |
| BLOB_USED_AS_KEY | 1073 | ERROR_DURING_ROLLBACK | 1181 |
| TOO_BIG_FIELDLENGTH | 1074 | ERROR_DURING_FLUSH_LOGS | 1182 |
| WRONG_AUTO_KEY | 1075 | ERROR_DURING_CHECKPOINT | 1183 |
| READY | 1076 | NEW_ABORTING_CONNECTION | 1184 |
| NORMAL_SHUTDOWN | 1077 | DUMP_NOT_IMPLEMENTED | 1185 |
| GOT_SIGNAL | 1078 | FLUSH_MASTER_BINLOG_CLOSED | 1186 |
| SHUTDOWN_COMPLETE | 1079 | INDEX_REBUILD | 1187 |
| FORCING_CLOSE | 1080 | MASTER | 1188 |
| IPSOCK_ERROR | 1081 | MASTER_NET_READ | 1189 |
| NO_SUCH_INDEX | 1082 | MASTER_NET_WRITE | 1190 |
| WRONG_FIELD_TERMINATORS | 1083 | FT_MATCHING_KEY_NOT_FOUND | 1191 |
| BLOBS_AND_NO_TERMINATED | 1084 | LOCK_OR_ACTIVE_TRANSACTION | 1192 |
| TEXTFILE_NOT_READABLE | 1085 | UNKNOWN_SYSTEM_VARIABLE | 1193 |
| FILE_EXISTS_ERROR | 1086 | CRASHED_ON_USAGE | 1194 |
| LOAD_INFO | 1087 | CRASHED_ON_REPAIR | 1195 |
| ALTER_INFO | 1088 | WARNING_NOT_COMPLETE_ROLLBACK | 1196 |
| WRONG_SUB_KEY | 1089 | TRANS_CACHE_FULL | 1197 |
| CANT_REMOVE_ALL_FIELDS | 1090 | SLAVE_MUST_STOP | 1198 |
| CANT_DROP_FIELD_OR_KEY | 1091 | SLAVE_NOT_RUNNING | 1199 |
| INSERT_INFO | 1092 | BAD_SLAVE | 1200 |
| INSERT_TABLE_USED | 1093 | MASTER_INFO | 1201 |
| NO_SUCH_THREAD | 1094 | SLAVE_THREAD | 1202 |
| KILL_DENIED_ERROR | 1095 | TOO_MANY_USER_CONNECTIONS | 1203 |
| NO_TABLES_USED | 1096 | SET_CONSTANTS_ONLY | 1204 |
| TOO_BIG_SET | 1097 | LOCK_WAIT_TIMEOUT | 1205 |
| NO_UNIQUE_LOGFILE | 1098 | LOCK_TABLE_FULL | 1206 |
| TABLE_NOT_LOCKED_FOR_WRITE | 1099 | READ_ONLY_TRANSACTION | 1207 |
| TABLE_NOT_LOCKED | 1100 | DROP_DB_WITH_READ_LOCK | 1208 |
| BLOB_CANT_HAVE_DEFAULT | 1101 | CREATE_DB_WITH_READ_LOCK | 1209 |
| WRONG_DB_NAME | 1102 | WRONG_ARGUMENTS | 1210 |
| WRONG_TABLE_NAME | 1103 | NO_PERMISSION_TO_CREATE_USER | 1211 |
| TOO_BIG_SELECT | 1104 | UNION_TABLES_IN_DIFFERENT_DIR | 1212 |
| UNKNOWN_ERROR | 1105 | LOCK_DEADLOCK | 1213 |
| UNKNOWN_PROCEDURE | 1106 | TABLE_CANT_HANDLE_FULLTEXT | 1214 |
| WRONG_PARAMCOUNT_TO_PROCEDURE | 1107 | CANNOT_ADD_FOREIGN | 1215 |
This document is in the public domain, and you may do anything with it you wish. The author takes no responsibility for the accuracy of its contents. Some of the terms in this document are trademarks of MySQL AB and other companies. No trade secrets or other privileged information has been used in its compilation, and the author has no relationship with MySQL.


public final class SearchSourceBuilder extends java.lang.Object implements Writeable, ToXContentObject, Rewriteable<SearchSourceBuilder>
searchSource()
.| 限定符和类型 | 类和说明 |
|---|---|
static class |
SearchSourceBuilder.IndexBoost |
static class |
SearchSourceBuilder.ScriptField |
Writeable.Reader<V>, Writeable.Writer<V>
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
EMPTY_PARAMS
MAX_REWRITE_ROUNDS
| 构造器和说明 |
|---|
SearchSourceBuilder()
Constructs a new search source builder.
|
SearchSourceBuilder(StreamInput in)
Read from a stream.
|
| 限定符和类型 | 方法和说明 |
|---|---|
SearchSourceBuilder |
addRescorer(RescorerBuilder<?> rescoreBuilder) |
SearchSourceBuilder |
aggregation(AggregationBuilder aggregation)
Add an aggregation to perform as part of the search.
|
SearchSourceBuilder |
aggregation(PipelineAggregationBuilder aggregation)
Add an aggregation to perform as part of the search.
|
AggregatorFactories.Builder |
aggregations()
Gets the bytes representing the aggregation builders for this request.
|
SearchSourceBuilder |
clearRescorers() |
CollapseBuilder |
collapse() |
SearchSourceBuilder |
collapse(CollapseBuilder collapse) |
SearchSourceBuilder |
copyWithNewSlice(SliceBuilder slice)
Create a shallow copy of this builder with a new slice configuration.
|
SearchSourceBuilder |
docValueField(java.lang.String name)
Adds a field to load from the docvalue and return as part of the
search request.
|
java.util.List<java.lang.String> |
docValueFields()
Gets the docvalue fields.
|
boolean |
equals(java.lang.Object obj) |
java.lang.Boolean |
explain()
Indicates whether each search hit will be returned with an explanation of
the hit (ranking)
|
SearchSourceBuilder |
explain(java.lang.Boolean explain)
Should each
SearchHit be returned with
an explanation of the hit (ranking). |
java.util.List<SearchExtBuilder> |
ext() |
SearchSourceBuilder |
ext(java.util.List<SearchExtBuilder> searchExtBuilders) |
FetchSourceContext |
fetchSource()
Gets the
FetchSourceContext which defines how the _source should
be fetched. |
SearchSourceBuilder |
fetchSource(boolean fetch)
Indicates whether the response should contain the stored _source for
every hit
|
SearchSourceBuilder |
fetchSource(FetchSourceContext fetchSourceContext)
Indicate how the _source should be fetched.
|
SearchSourceBuilder |
fetchSource(java.lang.String[] includes,
java.lang.String[] excludes)
Indicate that _source should be returned with every hit, with an
"include" and/or "exclude" set which can include simple wildcard
elements.
|
SearchSourceBuilder |
fetchSource(java.lang.String include,
java.lang.String exclude)
Indicate that _source should be returned with every hit, with an
"include" and/or "exclude" set which can include simple wildcard
elements.
|
int |
from()
Gets the from index to start the search from.
|
SearchSourceBuilder |
from(int from)
From index to start the search from.
|
static SearchSourceBuilder |
fromXContent(XContentParser parser) |
int |
hashCode() |
static HighlightBuilder |
highlight()
A static factory method to construct new search highlights.
|
HighlightBuilder |
highlighter()
Gets the highlighter builder for this request.
|
SearchSourceBuilder |
highlighter(HighlightBuilder highlightBuilder)
Adds highlight to perform as part of the search.
|
SearchSourceBuilder |
indexBoost(java.lang.String index,
float indexBoost)
Sets the boost a specific index or alias will receive when the query is executed
against it.
|
java.util.List<SearchSourceBuilder.IndexBoost> |
indexBoosts()
Gets the boost a specific indices or aliases will receive when the query is
executed against them.
|
boolean |
isSuggestOnly() |
java.lang.Float |
minScore()
Gets the minimum score below which docs will be filtered out.
|
SearchSourceBuilder |
minScore(float minScore)
Sets the minimum score below which docs will be filtered out.
|
void |
parseXContent(XContentParser parser)
Parse some xContent into this SearchSourceBuilder, overwriting any values specified in the xContent.
|
QueryBuilder |
postFilter()
Gets the post filter for this request
|
SearchSourceBuilder |
postFilter(QueryBuilder postFilter)
Sets a filter that will be executed after the query has been executed and
only has affect on the search hits (not aggregations).
|
boolean |
profile()
Return whether to profile query execution, or
null if
unspecified. |
SearchSourceBuilder |
profile(boolean profile)
Should the query be profiled.
|
QueryBuilder |
query()
Gets the query for this request
|
SearchSourceBuilder |
query(QueryBuilder query)
Sets the search query for this request.
|
java.util.List<RescorerBuilder> |
rescores()
Gets the bytes representing the rescore builders for this request.
|
SearchSourceBuilder |
rewrite(QueryRewriteContext context)
Rewrites this search source builder into its primitive form. e.g. by
rewriting the QueryBuilder.
|
SearchSourceBuilder |
scriptField(java.lang.String name,
Script script)
Adds a script field under the given name with the provided script.
|
SearchSourceBuilder |
scriptField(java.lang.String name,
Script script,
boolean ignoreFailure)
Adds a script field under the given name with the provided script.
|
java.util.List<SearchSourceBuilder.ScriptField> |
scriptFields()
Gets the script fields.
|
java.lang.Object[] |
searchAfter()
The sort values that indicates which docs this request should "search after".
|
SearchSourceBuilder |
searchAfter(java.lang.Object[] values)
Set the sort values that indicates which docs this request should "search after".
|
static SearchSourceBuilder |
searchSource()
A static factory method to construct a new search source.
|
int |
size()
Gets the number of search hits to return.
|
SearchSourceBuilder |
size(int size)
The number of search hits to return.
|
SliceBuilder |
slice()
Gets the slice used to filter the search hits, the top hits and the aggregations.
|
SearchSourceBuilder |
slice(SliceBuilder builder)
Sets a filter that will restrict the search hits, the top hits and the aggregations to a slice of the results
of the main query.
|
SearchSourceBuilder |
sort(SortBuilder<?> sort)
Adds a sort builder.
|
SearchSourceBuilder |
sort(java.lang.String name)
Add a sort against the given field name.
|
SearchSourceBuilder |
sort(java.lang.String name,
SortOrder order)
Adds a sort against the given field name and the sort ordering.
|
java.util.List<SortBuilder<?>> |
sorts()
Gets the bytes representing the sort builders for this request.
|
java.util.List<java.lang.String> |
stats()
The stats groups this request will be aggregated under.
|
SearchSourceBuilder |
stats(java.util.List<java.lang.String> statsGroups)
The stats groups this request will be aggregated under.
|
SearchSourceBuilder |
storedField(java.lang.String name)
Adds a stored field to load and return as part of the
search request.
|
StoredFieldsContext |
storedFields()
Gets the stored fields context.
|
SearchSourceBuilder |
storedFields(java.util.List<java.lang.String> fields)
Sets the stored fields to load and return as part of the search request.
|
SearchSourceBuilder |
storedFields(StoredFieldsContext context)
Indicates how the stored fields should be fetched.
|
SuggestBuilder |
suggest()
Gets the suggester builder for this request.
|
SearchSourceBuilder |
suggest(SuggestBuilder suggestBuilder) |
int |
terminateAfter()
Gets the number of documents to terminate after collecting.
|
SearchSourceBuilder |
terminateAfter(int terminateAfter)
An optional terminate_after to terminate the search after collecting
terminateAfter documents |
TimeValue |
timeout()
Gets the timeout to control how long search is allowed to take.
|
SearchSourceBuilder |
timeout(TimeValue timeout)
An optional timeout to control how long search is allowed to take.
|
java.lang.String |
toString() |
java.lang.String |
toString(ToXContent.Params params) |
XContentBuilder |
toXContent(XContentBuilder builder,
ToXContent.Params params) |
boolean |
trackScores()
Indicates whether scores will be tracked for this request.
|
SearchSourceBuilder |
trackScores(boolean trackScores)
Applies when sorting, and controls if scores will be tracked as well.
|
boolean |
trackTotalHits()
Indicates if the total hit count for the query should be tracked.
|
SearchSourceBuilder |
trackTotalHits(boolean trackTotalHits) |
java.lang.Boolean |
version()
Indicates whether the document's version will be included in the search
hits.
|
SearchSourceBuilder |
version(java.lang.Boolean version)
Should each
SearchHit be returned with a
version associated with it. |
void |
writeTo(StreamOutput out)
Write this into the StreamOutput.
|
isFragment
rewrite, rewrite, rewrite, rewriteAndFetch, rewriteAndFetch
public static final ParseField FROM_FIELD
public static final ParseField SIZE_FIELD
public static final ParseField TIMEOUT_FIELD
public static final ParseField TERMINATE_AFTER_FIELD
public static final ParseField QUERY_FIELD
public static final ParseField POST_FILTER_FIELD
public static final ParseField MIN_SCORE_FIELD
public static final ParseField VERSION_FIELD
public static final ParseField EXPLAIN_FIELD
public static final ParseField _SOURCE_FIELD
public static final ParseField STORED_FIELDS_FIELD
public static final ParseField DOCVALUE_FIELDS_FIELD
public static final ParseField SCRIPT_FIELDS_FIELD
public static final ParseField SCRIPT_FIELD
public static final ParseField IGNORE_FAILURE_FIELD
public static final ParseField SORT_FIELD
public static final ParseField TRACK_SCORES_FIELD
public static final ParseField TRACK_TOTAL_HITS_FIELD
public static final ParseField INDICES_BOOST_FIELD
public static final ParseField AGGREGATIONS_FIELD
public static final ParseField AGGS_FIELD
public static final ParseField HIGHLIGHT_FIELD
public static final ParseField SUGGEST_FIELD
public static final ParseField RESCORE_FIELD
public static final ParseField STATS_FIELD
public static final ParseField EXT_FIELD
public static final ParseField PROFILE_FIELD
public static final ParseField SEARCH_AFTER
public static final ParseField COLLAPSE
public static final ParseField SLICE
public static final ParseField ALL_FIELDS_FIELDS
public SearchSourceBuilder()
public SearchSourceBuilder(StreamInput in) throws java.io.IOException
java.io.IOException
public static SearchSourceBuilder fromXContent(XContentParser parser) throws java.io.IOException
java.io.IOException
public static SearchSourceBuilder searchSource()
public static HighlightBuilder highlight()
public void writeTo(StreamOutput out) throws java.io.IOException
Writeable
public SearchSourceBuilder query(QueryBuilder query)
QueryBuilders
public QueryBuilder query()
public SearchSourceBuilder postFilter(QueryBuilder postFilter)
public QueryBuilder postFilter()
public SearchSourceBuilder from(int from)
public int from()
public SearchSourceBuilder size(int size)
public int size()
public SearchSourceBuilder minScore(float minScore)
public java.lang.Float minScore()
public SearchSourceBuilder explain(java.lang.Boolean explain)
SearchHit
be returned with
an explanation of the hit (ranking).public java.lang.Boolean explain()
public SearchSourceBuilder version(java.lang.Boolean version)
SearchHit
be returned with a
version associated with it.public java.lang.Boolean version()
public SearchSourceBuilder timeout(TimeValue timeout)
public TimeValue timeout()
public SearchSourceBuilder terminateAfter(int terminateAfter)
terminateAfter
documentspublic int terminateAfter()
public SearchSourceBuilder sort(java.lang.String name, SortOrder order)
name
- The name of the fieldorder
- The sort orderingpublic SearchSourceBuilder sort(java.lang.String name)
name
- The name of the field to sort bypublic SearchSourceBuilder sort(SortBuilder<?> sort)
public java.util.List<SortBuilder<?>> sorts()
public SearchSourceBuilder trackScores(boolean trackScores)
public boolean trackScores()
public boolean trackTotalHits()
public SearchSourceBuilder trackTotalHits(boolean trackTotalHits)
public java.lang.Object[] searchAfter()
public SearchSourceBuilder searchAfter(java.lang.Object[] values)
public SearchSourceBuilder slice(SliceBuilder builder)
public SliceBuilder slice()
public CollapseBuilder collapse()
public SearchSourceBuilder collapse(CollapseBuilder collapse)
public SearchSourceBuilder aggregation(AggregationBuilder aggregation)
public SearchSourceBuilder aggregation(PipelineAggregationBuilder aggregation)
public AggregatorFactories.Builder aggregations()
public SearchSourceBuilder highlighter(HighlightBuilder highlightBuilder)
public HighlightBuilder highlighter()
public SearchSourceBuilder suggest(SuggestBuilder suggestBuilder)
public SuggestBuilder suggest()
public SearchSourceBuilder addRescorer(RescorerBuilder<?> rescoreBuilder)
public SearchSourceBuilder clearRescorers()
public SearchSourceBuilder profile(boolean profile)
public boolean profile()
null
if
unspecified.public java.util.List<RescorerBuilder> rescores()
public SearchSourceBuilder fetchSource(boolean fetch)
public SearchSourceBuilder fetchSource(@Nullable java.lang.String include, @Nullable java.lang.String exclude)
include
- An optional include (optionally wildcarded) pattern to filter
the returned _sourceexclude
- An optional exclude (optionally wildcarded) pattern to filter
the returned _sourcepublic SearchSourceBuilder fetchSource(@Nullable java.lang.String[] includes, @Nullable java.lang.String[] excludes)
includes
- An optional list of include (optionally wildcarded) pattern to
filter the returned _sourceexcludes
- An optional list of exclude (optionally wildcarded) pattern to
filter the returned _sourcepublic SearchSourceBuilder fetchSource(@Nullable FetchSourceContext fetchSourceContext)
public FetchSourceContext fetchSource()
FetchSourceContext
which defines how the _source should
be fetched.public SearchSourceBuilder storedField(java.lang.String name)
public SearchSourceBuilder storedFields(java.util.List<java.lang.String> fields)
public SearchSourceBuilder storedFields(StoredFieldsContext context)
public StoredFieldsContext storedFields()
public java.util.List<java.lang.String> docValueFields()
public SearchSourceBuilder docValueField(java.lang.String name)
public SearchSourceBuilder scriptField(java.lang.String name, Script script)
name
- The name of the fieldscript
- The scriptpublic SearchSourceBuilder scriptField(java.lang.String name, Script script, boolean ignoreFailure)
name
- The name of the fieldscript
- The scriptpublic java.util.List<SearchSourceBuilder.ScriptField> scriptFields()
public SearchSourceBuilder indexBoost(java.lang.String index, float indexBoost)
index
- The index or alias to apply the boost againstindexBoost
- The boost to apply to the indexpublic java.util.List<SearchSourceBuilder.IndexBoost> indexBoosts()
public SearchSourceBuilder stats(java.util.List<java.lang.String> statsGroups)
public java.util.List<java.lang.String> stats()
public SearchSourceBuilder ext(java.util.List<SearchExtBuilder> searchExtBuilders)
public java.util.List<SearchExtBuilder> ext()
public boolean isSuggestOnly()
public SearchSourceBuilder rewrite(QueryRewriteContext context) throws java.io.IOException
rewrite
在接口中 Rewriteable<SearchSourceBuilder>
java.io.IOException
public SearchSourceBuilder copyWithNewSlice(SliceBuilder slice)
public void parseXContent(XContentParser parser) throws java.io.IOException
fromXContent(XContentParser)
if you have normal defaults.java.io.IOException
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
toXContent
在接口中 ToXContent
java.io.IOException
public int hashCode()
hashCode
在类中 java.lang.Object
public boolean equals(java.lang.Object obj)
equals
在类中 java.lang.Object
public java.lang.String toString()
toString
在类中 java.lang.Object
public java.lang.String toString(ToXContent.Params params)


Using shared development center (expensive, no team collab...)
Running MAMP, WAMP, LAMP on localhost (no automation, long error prone install guides, no team collab, not shareable, not isolated...)
Not all developers want to be sysadmins
Install software manually over and over again
Helping others to install software manualy over and over again
We really need to develop on the same OS, architecture, package versions and configuration as production
We want to have working code all around
Scripting is better, having a set-it-and-forget-it service is best
I want to write code to tell the computer how to set up itself
Virtualization & Configuration management
Free and open source - https://github.com/mitchellh/vagrant
Works on Linux, MAC OS, Windows
Written in Rubby
Started on 21.1.2010 by Mitchell Hashimoto and John Bender
7.3.2010 - first release - 0.1.0
30.5.2014 - latest release - 1.6.3
Create and configure leightweight, reproducible and portable development environments.
Describe VM resource in Configuration share via VSC
Lowers development environment setup time
Maximises dev/prod parity
Makes the "works on my machine" excuse a relic of the past
Easy to distribute and update
##################################################
# Generated by phansible.com
##################################################
Vagrant.configure("2") do |config|
config.vm.provider :virtualbox do |v|
v.name = "Score"
v.customize ["modifyvm", :id, "--memory", 512]
end
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
#
config.vm.network :private_network, ip: "<IP_ADDRESS>"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.ssh.forward_agent = true
#############################################################
# Ansible provisioning (you need to have ansible installed)
#############################################################
config.vm.provision "ansible" do |ansible|
ansible.playbook = "ansible/playbook.yml"
end
config.vm.synced_folder "./", "/var/www", id: "vagrant-root", :mount_options => ['dmode=777', 'fmode=777']
end
IT orchestration engine that automates configuration management, application deployment, and many other IT needs.
Open source
Free software
Written in Python
Agent-less
Commercial version
Enterprise support
Comunity growth - 3. provisioner by number of usage in Vagrant
Built in & Custom modules
Run commands
Transfer files
Install packages
Manage deamons
Manage users and groups
Gather facts
Manage DBs
Configuration, deployment, and orchestration language
Yaml files & Jinja 2 templating language
Designed to be human-readable and are developed in a basic text language
Executed in order it is written
http://phansible.com/ - online generator for playbooks
Idempotent operations
All team members will have to install Vagrant, VirtualBox & Ansible
At least one person will be responsible for writing the Vagrantfile and the provisioning scripts
Vagrantfile & Ansible scripts are part of version control system
Using localhost is strictly forbidden!!!


In all reality, this class is unnecessary. It is provided only as a replacement for GdiplusBase, which provides overloads for 'new' and 'delete,' which is not implemented in AggOO.
The documentation for this class was generated from the following file:
C:/SDKs/AggOO/include/AggOOBase.h
Generated on Fri Oct 24 11:31:58 2008 for AggOO_Documentation by
1.5.6


Brush at least twice a day. The best time to brush teeth is after meals. Choose a toothbrush with a small head for better access to back teeth.Use fluoridated toothpaste as it helps to harden tooth enamel and reduces your risk of decay.Floss your teeth daily.Limit acidic drinks like soft drinks, cordials and fruit juices. Food acids soften tooth material and dissolve the minerals in tooth enamel, causing holes (cavities).
Stop smoking, and avoid secondhand smoke or environmental irritants. Eat foods rich in antioxidants. Get vaccinations like the flu vaccine and the pneumonia vaccine. ... Exercise more frequently, which can help your lungs function properly. Improve indoor air quality.The air quality outside can vary from day to day and sometimes is unhealthy to breathe.
Eating fresh produce and eliminating processed foods from your diet will reduce trans- fats, the number one cause of heart disease in men and women.By increasing your intake of antioxidants found in nuts, leafy greens, and citrus fruits you can ensure good heart health.Smoking causes the blood vessels going to and fro from the heart to constrict, increasing the odds of getting a heart attack. Aerobics, Zumba, yoga, swimming, brisk walking, jogging, and taekwondo will increase heart rate which keeps the system functioning well.
Regular exercise is good for more than just your waistline. It can lower the risk of chronic kidney disease. A healthy diet that’s low in sodium, processed meats, and other kidney-damaging foods may help reduce the risk of kidney damage.Water helps clear sodium and toxins from your kidneys. It also lowers your risk of chronic kidney disease. Smoking damages your body’s blood vessels. This leads to slower blood flow throughout your body and to your kidneys.
Three meals and three snacks per day. Consume more of complex carbohydrates. Reduce added sugar. Eat good quality and quantity of protein.  Fulfill your daily dairy consumption. Fiber creates magic with your blood sugar. Light and tasty snacks are a smart choice. The body is water, so keep yourself hydrated.
Eat a healthy diet, with an emphasis on fruits, vegetables, and whole grains. Get recommended cancer screenings.   Avoid environmental toxins. Don't use tobacco. Stop smoking. Food safety during cancer treatment. High protein foods. High calorie snacks. Clear liquids and full liquids. Enteral and parenteral nutrition for adults. Exercise for appetite and digestion. Lactose intolerance. Increasing calories and protein (low to no lactose).


00001 /********************************************************************** 00002 * GBDI Arboretum - Copyright (c) 2002-2004 GBDI-ICMC-USP 00003 * 00004 * Homepage: http://gbdi.icmc.usp.br/arboretum 00005 **********************************************************************/ 00006 /* ==================================================================== 00007 * The GBDI-ICMC-USP Software License Version 1.0 00008 * 00009 * Copyright (c) 2004 Grupo de Bases de Dados e Imagens, Instituto de 00010 * Ciências Matemáticas e de Computação, University of São Paulo - 00011 * Brazil (the Databases and Image Group - Intitute of Matematical and 00012 * Computer Sciences). All rights reserved. 00013 * 00014 * Redistribution and use in source and binary forms, with or without 00015 * modification, are permitted provided that the following conditions 00016 * are met: 00017 * 00018 * 1. Redistributions of source code must retain the above copyright 00019 * notice, this list of conditions and the following disclaimer. 00020 * 00021 * 2. Redistributions in binary form must reproduce the above copyright 00022 * notice, this list of conditions and the following disclaimer in 00023 * the documentation and/or other materials provided with the 00024 * distribution. 00025 * 00026 * 3. The end-user documentation included with the redistribution, 00027 * if any, must include the following acknowledgment: 00028 * "This product includes software developed by Grupo de Bases 00029 * de Dados e Imagens, Instituto de Ciências Matemáticas e de 00030 * Computação, University of São Paulo - Brazil (the Databases 00031 * and Image Group - Intitute of Matematical and Computer 00032 * Sciences)" 00033 * 00034 * Alternately, this acknowledgment may appear in the software itself, 00035 * if and wherever such third-party acknowledgments normally appear. 00036 * 00037 * 4. The names of the research group, institute, university, authors 00038 * and collaborators must not be used to endorse or promote products 00039 * derived from this software without prior written permission. 00040 * 00041 * 5. The names of products derived from this software may not contain 00042 * the name of research group, institute or university, without prior 00043 * written permission of the authors of this software. 00044 * 00045 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 00046 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 00047 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00048 * DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OF THIS SOFTWARE OR 00049 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00050 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00051 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 00052 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 00053 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 00054 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 00055 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00056 * SUCH DAMAGE. 00057 * 00058 * ==================================================================== 00059 * http://gbdi.icmc.usp.br/ 00060 */ 00074 // Copyright (c) 2002 GBDI-ICMC-USP 00075 #ifndef __STPAGEMANAGER_H 00076 #define __STPAGEMANAGER_H 00077 00078 #include <arboretum/stTypes.h> 00079 #include <arboretum/stPage.h> 00080 00093 class stPageManager{ 00094 00095 public: 00096 00100 virtual ~stPageManager(){} 00101 00109 virtual bool IsEmpty() = 0; 00110 00123 virtual void WriteHeaderPage(stPage * headerpage){ 00124 WritePage(headerpage); 00125 }//end WriteHeaderPage 00126 00144 virtual stPage * GetHeaderPage() = 0; 00145 00160 virtual stPage * GetPage(stPageID pageid) = 0; 00161 00176 virtual void ReleasePage(stPage * page) = 0; 00177 00190 virtual stPage * GetNewPage() = 0; 00191 00201 virtual void WritePage(stPage * page) = 0; 00202 00213 virtual void DisposePage(stPage * page) = 0; 00214 00222 virtual void ResetStatistics(){ 00223 00224 this->ReadCount = 0; 00225 this->WriteCount = 0; 00226 }//end ResetStatistics 00227 00235 long int GetReadCount(){ 00236 return this->ReadCount; 00237 }//end GetReadCount 00238 00247 long int GetWriteCount(){ 00248 return this->WriteCount; 00249 }//end GetWriteCount 00250 00255 long int GetAccessCount(){ 00256 return this->ReadCount + this->WriteCount; 00257 }//end GetAccessCount 00258 00263 virtual stSize GetMinimumPageSize() = 0; 00264 00265 protected: 00266 00272 void UpdateReadCounter(unsigned long count = 1){ 00273 ReadCount += count; 00274 }//end UpdateReadCounter 00275 00281 void UpdateWriteCounter(unsigned long count = 1){ 00282 WriteCount += count; 00283 }//end UpdateWriteCounter 00284 00285 private: 00286 00294 long int ReadCount; 00295 00303 long int WriteCount; 00304 00305 };//end stPageManager 00306 00307 #endif //__STPAGEMANAGER_H


Researcher Keplon:
Hm..Unfortunately I don't have enough Dimensional Stones myself... I could help you if you absolutely need them. I could sell some of mine to you?
Buy a Green Dimensional Stone. (10,000 Adena)
Buy a Blue Dimensional Stone. (10,000 Adena)
Buy a Red Dimensional Stone. (10,000 Adena)


County board's resolution warns journalists on reporting in southwestern Wisconsin
MADISON, Wis. (AP) - Some local government officials in southwestern Wisconsin want to prosecute journalists who "selectively report" on the results of an upcoming water study in the region.
The study is due soon in Lafayette, Grant and Iowa counties. A resolution introduced for a vote at Tuesday's Lafayette County Conservation Committee calls for a press release on the results and warns the media to print it without alteration and not to "glean information and selectively report it in order to interpret the results for their own means." The resolution calls for violators to be prosecuted.
The resolution cited past leaks and slander, but it wasn't immediately clear exactly what prompted the resolution. The body's chairman didn't immediately respond to a message.
Board member Kriss Marion, who posted the resolution on Facebook, called it "nonsense."


Login
|
Search
This page requires JavaScript support.
Files
Images
Music
Video
Sort by
File type
Name
Size
Last modified
Asc
Desc
Loading ...
Moore.IO


Back
{% for entry in entries %}
{#
Next
#}
Question {{ entry.id }} :
{{ entry.question }}
{{ entry.answerA }}
{{ entry.answerB }}
{{ entry.answerC }}
{{ entry.answerD }}
{{ entry.answerE }}
{% endfor %}


Methods
(static) attractor(numPoints, entryString)
Returns the points from an attractor
http://struct.cc/blog/2011/08/15/strange-attractors/
Parameters:
| Name | Type | Description |
|---|---|---|
numPoints |
number | number of points to generate |
entryString |
string | initial configuration string |
- Source:
Returns:
a list of xy points
(static) butterflyCurve(origin, scale, loops, lambda)
Returns the points generated by a Butterfly curve
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | xymap with coordinates |
scale |
number | value to scale the points |
loops |
number | number of loops to iterate |
lambda |
number | lambda parameter of the curve |
- Source:
(static) hypocycloid(origin, r, R, loops)
Returns the points generated by a Hypocycloid curve
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | xymap with starting coordinates |
r |
number | minor circle radio |
R |
number | major circle radio |
loops |
number | number of loops to iterate |
- Source:
(static) lorentz(origin, scale, loops, z, a, b, c, h)
Returns the Lorent attractor points
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | xy coordinates |
scale |
number | scale factor |
loops |
number | iterations |
z |
number | value |
a |
number | value |
b |
number | value |
c |
number | value |
h |
number | value |
- Source:
Returns:
a list of xypoints
Lorentz Attractor code.
http://www.algosome.com/articles/lorenz-attractor-programming-code.html
(static) rose(origin, k, loops)
Returns the points generated by a Rose curve.
The k parameter can be expressed as (n/d), being both integer values
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | xymap with starting coordinates |
k |
number | k factor of the Rose curve (n/d) |
loops |
number | number of loops to iterate |
- Source:
(static) rossler(origin, scale, loops, a, b, c, h)
Returns the points from the Rossler attractor
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | xy coordinates to center the attractor |
scale |
number | scale factor |
loops |
number | number of iterations |
a |
number | a value |
b |
number | b value |
c |
number | c value |
h |
number | h value |
- Source:
Returns:
a list of xy points
Rossler Attractor code.
http://paulbourke.net/fractals/rossler/
(static) voronoi(origin, w, h, sites)
Returns the voronoi data (check https://github.com/gorhill/Javascript-Voronoi#usage) for details
Parameters:
| Name | Type | Description |
|---|---|---|
origin |
object | {x,y} point representing the top right corner of the |
w |
number | width of the voronoi area |
h |
number | height of the voronoi area |
sites |
number | list of {x,y} points representing the initial cell centers |
- Source:


--- layout: post title: Lies, damned lies, and marketing date: 2005-02-05 00:00:00 category: business ---
The line between marketing and deliberate misinformation and deception blurs once more. Sigh... here we are, we have the majority of our populations permanently connected and contactable, we can store and retrieve massive amounts of data on behaviours, preferences and tendencies, and how are we sold to? By means of ham-fisted dishonesty and constant interruption.


[1] Herbsleb, James, Christian Kästner, and Christopher Bogart. "Intelligently Transparent Software Ecosystems." IEEE Software 33.1 (2016): 89-96.
[2] L. Dabbish et al., “Leveraging Transparency,” IEEE
Software, vol. 30, no. 1, 2013, pp. 37–43.
[3] K.T. Stolee, S. Elbaum, and D. Dobos, “Solving the Search for Source Code,” ACM Trans. Software Eng. and
Methodology, vol. 23, no. 3, 2014, article 26.
[4] L. Martie, T.D. LaToza, and A. van der Hoek,
“CodeExchange: Supporting Reformulation of Code Queries in Context,” to be published in Proc. 30th Int’l
Conf. Automated Software Eng., 2015.
[5] H. Cleve and A. Zeller, “Locating Causes of Program Failures,” Proc. 27th Int’l Conf. Software Eng. (ICSE 05),
2005, pp. 342–351.
[6] R.E. Kraut and P. Resnick, eds., Building Successful Online Communities: Evidence-Based Social Design, MIT Press, 2011.
[7] K. Crowston et al., “Free/Libre OpenSource Software
Development: What We Know and What We Do Not
Know,” ACM Computing Surveys, vol. 44, no. 2, 2012, article 7.
[8] E.S. Bernstein, “The Transparency Paradox: A Role for
Privacy in Organizational Learning and Operational
Control,” Administrative Science Q., vol. 57, no. 2, 2012, pp. 181–216.
[9] L. Dabbish et al., “Social Coding in GitHub:
Transparency and Collaboration in an Open Software
Repository,” Proc. ACM 2012 Conf. Computer Supported
Cooperative Work, 2012, pp. 1277–1286.
[10] J. Tsay, L. Dabbish, and J. Herbsleb, “In uence of Social and Technical Factors for Evaluating Contribution in
GitHub,” Proc. 36th Int’l Conf. Software Eng. (ICSE 14),
2014, pp. 356–366.
[11] R. Holmes and R.J. Walker, “Customized Awareness: Recommending Relevant External Change Events,” Proc. 32nd ACM/IEEE ACM Int’l Conf. Software Eng. (ICSE
10), 2010, pp. 465–474.
[12] R. Padhye, S. Mani, and V.S. Sinha, “NeedFeed: Taming Change Noti- cations by Modeling Code Relevance,” Proc. 29th ACM/IEEE Int’l Conf. Automated Software
Eng. (ASE 14), 2014, pp. 665–676. 14. G.A. Hall and J.C.
Munson, “Software Evolution: Code Delta and Code Churn,” J. Systems and Software, vol. 54, no. 2, 2000, pp.
111–118.
[13] M. Zhou and A. Mockus, “Developer Fluency: Achieving True Mastery in Software Projects,” Proc. 18th ACM SIGSOFT Int’l Symp. Foundations of Software Eng. (FSE 10), 2010, pp. 137–146.
[14] E.M. Rogers, Diffusion of Innovations, 4th ed., 1995, Free Press. Selected CS articles and columns


Hi all
Congrats on this great project and the forum.
After some reading i didn't find a suitable answer for question. Maybe i didn't searched long or my knowledge on arduino is not much.
I want to monitor the energy consumption of my house sector by sector. But i don't need to send it to the site, although i might do it later, My goal is to plug in a laptop to the board and run some arduino code to read directly the values and put on some text file to be viewd later on.
Is there anyway to do it like that? Or do i always need an emonTx and an emonBase ?
Thank you
Ricardo
Re: Newbie and some confusion on what to buy
Hi Ricardo
You will need an emonTx to connect your sensors and perform the calculations,
Although you could connect this to your laptop using a ftdi usb cable and monitor the serial output but to be honest you would be far better of using a pi emonbase. It will consume very little power being on 24/7 and then emonCMS is designed for monitoring and analyzing energy data, it doesn't cost anything and it can produce csv files if that's what you want.
Using a pi you can have a local copy of emoncms or post to emoncms.org (or both)
Paul
Re: Newbie and some confusion on what to buy
The problem with an Arduino microprocessor is there is very little memory available for data storage after the program for taking the measurements has been loaded, therefore doing as you suggest means that you must keep your laptop connected all the time (or as a minimum, all the time that you want to gather data). If that is what you want, then you need either an Arduino board or an emonTx (but you will not use the RFM12B radio module) and you can transfer the data to your laptop via the serial FTDI port.
Reports suggest that you will get better accuracy if you use an emonTx V3, in preference to an Arduino board. We think the reason is the emonTx has a better design of the analogue part than the Arduino board. But if you need more than 4 current inputs, then you probably have no option but to use an Arduino.
If you use an Arduino, you will need to design and construct your own signal conditioning front end circuits, using the basic information in Building Blocks.
Paul suggests connecting an Arduino or emonTx directly to a Raspberry Pi, to which you add a hard disk drive. How to connect is here: http://openenergymonitor.org/emon/node/3872 If you do this, the Raspberry Pi and HDD replace your laptop.
Re: Newbie and some confusion on what to buy
Hi
I was hoping i didn't have to spend too much money since to monitor all outputs from the main panel I'll need 9 current inputs and that means 2/3 sensors. That would be too much money. But I'll probably be better served with the whole package. Maybe i can monitor 4 at a time.
So, if i buy a Raspberry Pi (Model B) - Web-connected Base Station and a emonTx V2 - Energy Monitoring Transmitter Unit - Kit along with some CTs and sd card and a ftdi cable, i should be good to go, right?
Ricardo
Re: Newbie and some confusion on what to buy
The emonTx V2 will give you 1 voltage and 3 current inputs. However, if you add headers, and your own input circuitry, more inputs are available. The ports diagram here shows that AIO4 & AIO5 are free, you can add a current input circuit to each giving you 1 voltage and 5 current inputs in total. We have found that the emonTx V3 performs slightly better than the V2, therefore you might want to consider the V3 instead. I have not tried this, but you might be able to add the input circuitry and use ADC5 on the V3 to get 5 current inputs.
If you want to measure real power, you need to add an AC-AC adapter to your list, otherwise you will need a 5 V USB power supply and appropriate cables for your emonTx, or use batteries. And don't forget a box, power supply and cables (power, Ethernet) for your Pi.
Re: Newbie and some confusion on what to buy
Hi.
You say that AIO4 & AIO5 are free, but in the board there are more AIO. Why can't they be used?
Thanks
Re: Newbie and some confusion on what to buy
Are there? Where? See P.250 of the Atmel ATmega48PA/88PA/168PA/328P data sheet, section 32.1.
Just one point to note, I believe the emonTx V2 kit will not become available again, ever. The PCB will be available only until all stocks have gone.
Re: Newbie and some confusion on what to buy
I already have the emonTx V2 and it works ok with a laptop registering the values.
I'm planning on buying a base so that i don't have to have a laptop nearby. Just wanted to add more sensors


Google Earth Enterprise Documentation Home | Fusion resources and projects
Add KML layers
Fusion lets you add KML layers in addition to fused vector layers. KML layers consist of a wrapper layer (typically a small, simple resource) that contains a link to a KML or KMZ file. The layer displays the linked content, not the wrapper layer content.
KML layers are useful if you want to give users access to data that isn't hosted on the Earth server, or to data that changes frequently. In fact, the free edition of Google Earth includes many KML layers that stream data from Google servers to the client.
To add a KML layer:
- Open your Fusion vector project and click the blank-page icon in the top right corner of the dialog box.
The Add a layer dialog box appears.
- Add a resource to use as a wrapper layer for the KML or KMZ link.
Users won't see the content of the wrapper layer, so add any small, simple resource that contains lines or polygons. For example, the "CAHighways" resource in the Fusion tutorial dataset. If you want to use a resource that is already in your project, add it a second time.
- Right click the new layer and select Layer Properties.
The Layer Properties dialog box appears.
- In the KML URL field, enter the link to your KML or KMZ file.
The file must be on a server that is accessible to users at all times. If the file is missing, the client may fail. To prevent this, place the file on the Google Earth server or place a small KML file on the Earth server that contains a NetworkLink reference to your target KML or KMZ file on another server.
- Enter a name and select an icon for the layer.
- Click OK to save your changes and exit the Layer Properties dialog box.
Your vector project lists your new KML layer.
- Save your vector project, then rebuild and publish your database.
After the client connects to the published database, users can view the KML layer.
To add multiple KML layers:
If you want to add multiple KML or KMZ files that aren't hosted on the Google Earth server, the best practice is to place one KML file on the Earth server that links to all your files on other servers. Then you can create a layer that loads the single KML file. That way, even if the server that hosts your KML or KMZ files stops responding, the client is unlikely to fail.
- Place your KML or KMZ files on the server or servers that will host them.
- Create a new parent KML file that contains NetworkLink references to each of your KML or KMZ files.
- Place the parent KML file on the Earth server.
- In Fusion, create a KML layer that links to the parent KML file on the Earth server.
In the Earth client, users can expand the parent KML layer to select a child KML layer.


My Gallery
Filter By Category
Travel
Food
Movies
Fashion
Filter By Location
Kisumu
Mombasa
Nairobi
Eldoret


--- title: Slides for An Examination of State Educational Twitter Hashtags at #AECT15 link: http://jmichaelrosenberg.com/slides-for-an-examination-of-state-educational-twitter-hashtags/ author: joshuarosenberg description: post_id: 4435 date: 2015-11-06 10:03:06 created_gmt: 2015/11/06 14:03:06 comment_status: closed post_name: slides-for-an-examination-of-state-educational-twitter-hashtags status: publish post_type: post categories: [presentation] tags: [AECT] ---


# Find the Most Frequent Integer in an Array
Mathematically, this problem would be rephrased as 'Find the Mode of an Array'. So, the function we write to solve the problem will be named mode()
.
The function will take an array of integers as its argument, and simply return the element that appears the most in the array. So, how do we build an algorithm to do that?
An efficient, and considerably easy, method would be to use a hash table. If the mode()
function is given an array of 2 integers x and y, it will create a table like this:
Where x and y are the elements of the array, and a and b are the number of times they occur in the array respectively. To calculate the frequencies of an array's elements, like a and b, we must iterate through the elements and follow this routine:
- Check if the array's element is already in the hash table. We will call this boolean
in
. - If
in
is true - and the element's already in thetable - simply iterate the element's value in the table - that is,element:occurrences
becomeselement:occurences + 1
. - Otherwise, if
in
is false, and the element isn't in the table, place it in the table with a value of 1, representing 1 occurrence.
The image below shows how the routine applies to the list [3, 6, 4, 1, 9, 8, 3, 2, 1, 3]
, at each point that the loop's iteration is at a 3:
At first, in
is false, because 3 is not yet in the hash table. So, the algorithm puts it in the table with a value of 1 (represented in the image by {3:1}.
At the next iteration at a 3, in
is true, of course. So rather than placing the element in the table, the algorithm increments its value - {3:1} becomes {3:2}. The same thing happens at the last appearence of 3, incrementing its value by 1 again, to become 3.
After all of that algorithmicity, we are left with a hash table of array elements and their frequencies. If we used the array shown in the last image, our table would be {3:3, 6:1, 4:1, 1:2, 9:1, 8:1, 2:1}
.
What we need our mode()
function to calculate now is which element (or key) has the highest value. Here's the routine to follow for that:
- Define a variable with a name like
maxKey
, initial value of 0. - Iterate through each key of the hash table (i.e. 3, 6, 4, 1, etc.)
- For each key in the table, if it's value is bigger than
maxKey
,maxKey
's value get's changed to the key (not the key's value).
After the loop described above, `maxKey` will store the element of the array that has the highest frequency (in our example's case, 3). The `mode()` function will return it, and it's finished!
Here is a mode()
function that follows the exact same routines, in python:


Math.pow(100, 3)*2
GROWING FROM 100 TO 2 MILLION
Original Goal
100 Downloads
Sworkit Downloads
What it takes
- Build Simple
- Release + Keywords/Descriptions
- Influencer Outreach
- Introducing Features
- Reviews vs. Feedback
- Seasonal Variations
- Revaluating Keywords
- Organic Sharing
- Price Drop Effect
- Monetization
- Progress Review and Forecasting
- Competitor Analysis
- Redesign and Relaunch
- App Store Feature
Release & Initial Keywords/Descriptions
- Soft Release
- Initial Keywords
- Apple Description
- Google Play Description
- Screenshots
Influencer Outreach
- Target
- Identify
- Relate
- Keep it Short
- Provide Screenshots
Reviews vs. Feedback
Preferred Methods
- Rate Us OR Send Feedback
- Integrated Review Moments
Organic Sharing
Relevant Moments to Share
Monetization
Free vs. Paid vs. In-App Purchase
Reward Systems Over Ad Networks
- Kiip
- SessionM
- Avocarrot
- Media Brix
Redesign and Relaunch
Additional Topics Sprint
- Build Simple
- Release + Keywords/Descriptions
- Influencer Outreach
- Introducing Features
- Reviews vs. Feedback
- Seasonal Variations
- Revaluating Keywords
- Organic Sharing
- Price Drop Effect
- Monetization
- Progress Review and Forecasting
- Competitor Analysis
- Redesign and Relaunch
- App Store Feature


We were able to connect, but the Interactive game connected to your channel is {{ connectedGameName | async }} (version ID {{ connectedVersionId | async }}), while this custom control bundle is linked to {{ linkedGameName | async }} (version ID {{ linkedVersionId | async }}). while this custom control bundle is not linked to any game. Because the sets of controls are different, you may have some unexpected results if the game sends events your controls don't understand.

You can link this set of controls to the connected game, or continue anyways.


November 5, 2019
Just arrived at The Hårga for the Midsummer Festival, hoping to learn and make new friends!
December 13, 2018
Me and Rose. Going to meet the parents this weekend, wish me luck homies.
January 20, 2018
Visiting Crispians parents for their anniversary party, hope everything goes well!
July 17, 2018
The best day of my life, I can't even begin to describe how happy I am, and how grateful, for finally being your wife, Alex. That this lasts for as long as we live.


Weather Dashboard
Search for a City:
Search
Temperature:
Humidity:
Wind Speed:
UV Index:
5-Day Forecast
Display Info from the API
Display Info from the API
Display Info from the API
Display Info from the API
Display Info from the API


Ocean [ao46], ocean, in The Inner Sea
Last updated Turn #141
Ocean [ao46], ocean, in The Inner Sea
------------------------------------------------------------------------
13: Pleasure Sloop [v5n], ship, 30 hulls, 1 rowing port, 90 sails, arrived
13: from Ocean [an46], owner:
13: Dorothy [v1b], Pen, with one worker, 94 sailors
13: Apollo [b5e], Imperial Empire, with 11 workers, six sailors, 63 lt.
13: xbowmen, accompanied by:
13: Lutra [a4w], Imperial Empire, with 12 paladins, 24 pikemen
13: Lungor [y4r], Imperial Empire
13: Hera [g3f], Imperial Empire, with five soldiers, 35 pikemen
13: Thor [r4g], Imperial Empire, with 38 pikemen
13: Eos [a2t], Imperial Empire, with ten workers, 48 lt. xbowmen
13: Khaki Blazer [w4j], Imperial Empire, with eight soldiers,
13: six pikemen, 32 lt. foot
13: Banian [e7n], Imperial Empire, duke, the High Priest of the
13: Church of Eres [151], with two soldiers, ten angels
13: Winstin [o7y], Mandor Confederacy, prisoner
13: Merbit [e2m], Mandor Confederacy, prisoner
13: Black Blazer [s8u], Mandor Confederacy, prisoner
14: Pleasure Sloop [v5n], ship, 30 hulls, 1 rowing port, 90 sails,
14: departed for Ocean [ap46].
Routes leaving Ocean:
North, to Ocean [an46], 6 days
East, to Ocean [ao47], 6 days
South, to Ocean [ap46], 6 days
West, to Ocean [ao45], 6 days


I’m the best thing that ever happened to placeholder text. I have a 10 year old son. He has words. He is so good with these words it's unbelievable. Lorem Ipsum better hope that there are no "tapes" of our conversations before he starts leaking to the press! I’m the best thing that ever happened to placeholder text.
My placeholder text, I think, is going to end up being very good with women. Does everybody know that pig named Lorem Ipsum?  My placeholder text, I think, is going to end up being very good with women. I'm speaking with myself, number one, because I have a very good brain and I've said a lot of things.
Does everybody know that pig named Lorem Ipsum?  An ‘extremely credible source’ has called my office and told me that Barack Obama’s placeholder text is a fraud.
We are using Trump ipsom text here, which can be found hereLorem Ipsum is FAKE TEXT! Lorem Ipsum is the single greatest threat. We are not - we are not keeping up with other websites. An ‘extremely credible source’ has called my office and told me that Barack Obama’s placeholder text is a fraud. Lorem Ipsum is the single greatest threat. We are not - we are not keeping up with other websites.


public class Crypto
This object controls and provides the available and supported signature schemes for Corda.
Any implemented class SignatureScheme
should be strictly defined here.
However, only the schemes returned by {@link #listSupportedSignatureSchemes()} are supported.
Note that Corda currently supports the following signature schemes by their code names:
class SignatureScheme
| Modifier and Type | Field and Description |
|---|---|
static Crypto |
INSTANCE
This object controls and provides the available and supported signature schemes for Corda.
Any implemented
class SignatureScheme should be strictly defined here.
However, only the schemes returned by {@link #listSupportedSignatureSchemes()} are supported.
Note that Corda currently supports the following signature schemes by their code names: |
| Modifier and Type | Method and Description |
|---|---|
java.security.PrivateKey |
decodePrivateKey(byte[] encodedKey)
Decode a PKCS8 encoded key to its PrivateKey object.
|
java.security.PrivateKey |
decodePrivateKey(byte[] encodedKey,
java.lang.String schemeCodeName)
Decode a PKCS8 encoded key to its PrivateKey object based on the input scheme code name.
This will be used by Kryo deserialisation.
|
java.security.PublicKey |
decodePublicKey(byte[] encodedKey)
Decode an X509 encoded key to its PublicKey object.
|
java.security.PublicKey |
decodePublicKey(byte[] encodedKey,
java.lang.String schemeCodeName)
Decode an X509 encoded key to its PrivateKey object based on the input scheme code name.
This will be used by Kryo deserialisation.
|
byte[] |
doSign(java.security.PrivateKey privateKey,
byte[] clearData)
Generic way to sign ByteArray data with a PrivateKey. Strategy on on identifying the actual signing scheme is based
on the PrivateKey type, but if the schemeCodeName is known, then better use doSign(signatureScheme: String, privateKey: PrivateKey, clearData: ByteArray).
|
byte[] |
doSign(java.lang.String schemeCodeName,
java.security.PrivateKey privateKey,
byte[] clearData)
Generic way to sign ByteArray data with a PrivateKey and a known schemeCodeName String.
|
TransactionSignature |
doSign(java.security.PrivateKey privateKey,
MetaData metaData)
Generic way to sign
class MetaData objects with a PrivateKey.
class MetaData is a wrapper over the transaction's Merkle root in order to attach extra information, such as a timestamp or partial and blind signature indicators. |
boolean |
doVerify(java.lang.String schemeCodeName,
java.security.PublicKey publicKey,
byte[] signatureData,
byte[] clearData)
Utility to simplify the act of verifying a digital signature.
It returns true if it succeeds, but it always throws an exception if verification fails.
|
boolean |
doVerify(java.security.PublicKey publicKey,
byte[] signatureData,
byte[] clearData)
Utility to simplify the act of verifying a digital signature by identifying the signature scheme used from the input public key's type.
It returns true if it succeeds, but it always throws an exception if verification fails.
Strategy on identifying the actual signing scheme is based on the PublicKey type, but if the schemeCodeName is known,
then better use doVerify(schemeCodeName: String, publicKey: PublicKey, signatureData: ByteArray, clearData: ByteArray).
|
boolean |
doVerify(java.security.PublicKey publicKey,
TransactionSignature transactionSignature)
Utility to simplify the act of verifying a
class TransactionSignature .
It returns true if it succeeds, but it always throws an exception if verification fails. |
java.lang.String |
findSignatureSchemeCodeName(java.security.Key key)
Retrieve the corresponding signature scheme code name based on the type of the input Key.
See
class Crypto for the supported scheme code names. |
java.security.KeyPair |
generateKeyPair(java.lang.String schemeCodeName)
Utility to simplify the act of generating keys.
Normally, we don't expect other errors here, assuming that key generation parameters for every supported signature scheme have been unit-tested.
|
java.security.KeyPair |
generateKeyPair()
Generate a KeyPair using the default signature scheme.
|
java.lang.String |
getDefaultSignatureSchemeCodeName() |
boolean |
isSupportedSignatureScheme(java.lang.String schemeCodeName)
Check if the requested signature scheme is supported by the system.
|
java.util.List<java.lang.String> |
listSupportedSignatureSchemes() |
public static Crypto INSTANCE
This object controls and provides the available and supported signature schemes for Corda.
Any implemented class SignatureScheme
should be strictly defined here.
However, only the schemes returned by {@link #listSupportedSignatureSchemes()} are supported.
Note that Corda currently supports the following signature schemes by their code names:
class SignatureScheme
public java.lang.String findSignatureSchemeCodeName(java.security.Key key)
Retrieve the corresponding signature scheme code name based on the type of the input Key.
See class Crypto
for the supported scheme code names.
key
- either private or public.class Crypto
public java.security.PrivateKey decodePrivateKey(byte[] encodedKey)
Decode a PKCS8 encoded key to its PrivateKey object.
encodedKey
- a PKCS8 encoded private key.public java.security.PrivateKey decodePrivateKey(byte[] encodedKey, java.lang.String schemeCodeName)
Decode a PKCS8 encoded key to its PrivateKey object based on the input scheme code name. This will be used by Kryo deserialisation.
encodedKey
- a PKCS8 encoded private key.schemeCodeName
- a String that should match a key in supportedSignatureSchemes map (e.g. ECDSA_SECP256K1_SHA256).public java.security.PublicKey decodePublicKey(byte[] encodedKey)
Decode an X509 encoded key to its PublicKey object.
encodedKey
- an X509 encoded public key.public java.security.PublicKey decodePublicKey(byte[] encodedKey, java.lang.String schemeCodeName)
Decode an X509 encoded key to its PrivateKey object based on the input scheme code name. This will be used by Kryo deserialisation.
encodedKey
- an X509 encoded public key.schemeCodeName
- a String that should match a key in supportedSignatureSchemes map (e.g. ECDSA_SECP256K1_SHA256).public java.security.KeyPair generateKeyPair(java.lang.String schemeCodeName)
Utility to simplify the act of generating keys. Normally, we don't expect other errors here, assuming that key generation parameters for every supported signature scheme have been unit-tested.
schemeCodeName
- a signature scheme's code name (e.g. ECDSA_SECP256K1_SHA256).public java.security.KeyPair generateKeyPair()
Generate a KeyPair using the default signature scheme.
public byte[] doSign(java.security.PrivateKey privateKey, byte[] clearData)
Generic way to sign ByteArray data with a PrivateKey. Strategy on on identifying the actual signing scheme is based on the PrivateKey type, but if the schemeCodeName is known, then better use doSign(signatureScheme: String, privateKey: PrivateKey, clearData: ByteArray).
privateKey
- the signer's PrivateKey.clearData
- the data/message to be signed in ByteArray form (usually the Merkle root).public byte[] doSign(java.lang.String schemeCodeName, java.security.PrivateKey privateKey, byte[] clearData)
Generic way to sign ByteArray data with a PrivateKey and a known schemeCodeName String.
schemeCodeName
- a signature scheme's code name (e.g. ECDSA_SECP256K1_SHA256).privateKey
- the signer's PrivateKey.clearData
- the data/message to be signed in ByteArray form (usually the Merkle root).public TransactionSignature doSign(java.security.PrivateKey privateKey, MetaData metaData)
Generic way to sign class MetaData
objects with a PrivateKey.
class MetaData
is a wrapper over the transaction's Merkle root in order to attach extra information, such as a timestamp or partial and blind signature indicators.
privateKey
- the signer's PrivateKey.metaData
- a class MetaData
object that adds extra information to a transaction.class TransactionSignature
object than contains the output of a successful signing and the metaData.class MetaData
,
PrivateKey,
class MetaData
public boolean doVerify(java.lang.String schemeCodeName, java.security.PublicKey publicKey, byte[] signatureData, byte[] clearData)
Utility to simplify the act of verifying a digital signature. It returns true if it succeeds, but it always throws an exception if verification fails.
publicKey
- the signer's PublicKey.signatureData
- the signatureData on a message.clearData
- the clear data/message that was signed (usually the Merkle root).public boolean doVerify(java.security.PublicKey publicKey, byte[] signatureData, byte[] clearData)
Utility to simplify the act of verifying a digital signature by identifying the signature scheme used from the input public key's type. It returns true if it succeeds, but it always throws an exception if verification fails. Strategy on identifying the actual signing scheme is based on the PublicKey type, but if the schemeCodeName is known, then better use doVerify(schemeCodeName: String, publicKey: PublicKey, signatureData: ByteArray, clearData: ByteArray).
publicKey
- the signer's PublicKey.signatureData
- the signatureData on a message.clearData
- the clear data/message that was signed (usually the Merkle root).public boolean doVerify(java.security.PublicKey publicKey, TransactionSignature transactionSignature)
Utility to simplify the act of verifying a class TransactionSignature
.
It returns true if it succeeds, but it always throws an exception if verification fails.
publicKey
- the signer's PublicKey.transactionSignature
- the signatureData on a message.class TransactionSignature
public boolean isSupportedSignatureScheme(java.lang.String schemeCodeName)
Check if the requested signature scheme is supported by the system.
schemeCodeName
- a signature scheme's code name (e.g. ECDSA_SECP256K1_SHA256).public java.lang.String getDefaultSignatureSchemeCodeName()
public java.util.List<java.lang.String> listSupportedSignatureSchemes()
class SignatureScheme
for all of our supported signature schemes, see class Crypto
.


0
Start
Rules
Rules:
1.Time:45s
2.Hit wolf + 10 points
3.Hit baby wolf - 10 points
[close]
Your Score:
Start Over


Mr Key is off gallivanting in foreign parts, so there will be no postages here for a week or so. You may wish to fill the Hooting Yard-shaped hole in your noggin by traipsing through the archives, or perhaps by just gazing into the middle distance with a look of longing and desolation ravaging your countenance. Either way, I shall be back before you can say
Zozozozozozozozozozozozozo zirrharding
Hezezezezezezezezezezezezezezeze cowar ho dze hoi
Higaigaigaigaigaigaigaigaigaigai, guaiagai coricor dzio dzio pi
which, according to the German naturalist Bechstein, is an accurate transcription of the song of the nightingale.


The CAMELS data set (Catchment Attributes and Meteorology for Large-sample Studies) was produced by NCAR and close collaborators and consists of two data sets: hydrometeorological time series introduced in Newman et al. (2015) and the catchment attributes introduced in Addor et al. (2017).
The LSTM model is a novel way to apply machine learning principles to hydrologic prediction. The attributes presenting in Addor et al. have proven useful for LSTM modeling. As part of the NextGen framework, we want to be able to test the performance of LSTM models for various catchments.
This means we need a way to quickly produce the needed catchment attributes, for a given hydrofabric which provides an ideal use case for geogrids
and zonal
. Here we document the attributes and the way they are processed for a NextGen hydrofabric covering HUC-01.
This process is being added to the hydroresolve
workflow for creating and releasing refactored and aggregated catchment networks that conform to the HY_Features standard.
Fraction of precipitation falling as snow
We use the daily GridMet files for tmin_* and tmax_* to create tavg_*. We use a temperature threshold following Keith Jenning’s paper and the data found here. With this temperature threshold, we partition all PPT values into daily snow/rain. Total snow and precipitation are computed for each basin, and the fraction of Snow to PPT is computed.
Seasonality and timing of precipitation (estimated using sine curves to represent the annual temperature and preciptiation cycles, positive [negative] values indicate that precipitation peaks in summer [winter], values close to 0 indicate uniform precipitation (eq 14)
NOT SURE YET.
Frequency of high precipitation days (≥5 times mean daily precipitation) (days/year)
Basin wide meanPPT is multiplied by 5 and used to classify each day as “intense” (TRUE) or not (FALSE). The sum of “intense” days is computed for each basin and divided by the number of years processed.
frequency of dry days (<1 mm/day) (days/year)
Daily PPT is defined as “low” (TRUE) or not (FALSE) based on if it is larger the 1mm. The sum of “low” days is computed for each basin and divided by the number of years processed .
average duration of high precipitation events (number of consecutive days ≥5 times mean daily precipitation) (days)
The average duration of intense rain is computed by transposing the intense PPT TRUE/FALSE matrix and computing a cumulative sum for each catchment resetting the count with each FALSE
. Only the max value in each intense period is kept and the rest set to NA. The mean for each catchment is computed. .
average duration of dry periods (number of consecutive days <1 mm/day) (days)
TThe average duration of low rain is computed by transposing the low PPT TRUE/FALSE matrix and computing a cumulative sum for each catchment resetting the count with each FALSE
. Only the max value in each low period is kept and the rest set to NA. The mean for each catchment is computed. .
Subsurface permeability (log10) m2 from GLHYMPS
Data from: Gleeson, T., Moosdorf ,N., Hartmann,J. and van Beek, L.P.H. (2014) A glimpse beneath earth’s surface: GLobal HYdrogeology MaPS (GLHYMPS) of permeability and porosity. Geophyscial Research Letters, 41: 2014GL059856 doi: 10.1002/2014gl059856
Using field: logK_Ice_x100_INT
from the supplied shapefile the data is rasterized to the CONUS-Soil 1KM2 grid.
Fraction of the catchment area characterized as “Carbonate sedimentary rocks” from GLiM
Data from: Hartmann, J., and Moosdorf, N. (2012), The new global lithological map database GLiM: A representation of rock properties at the Earth surface, Geochem. Geophys. Geosyst., 13, Q12004, doi:10.1029/2012GC004370.
Using field: xx
from the supplied shapefile where polygons == ‘sc’. The data is rasterized to the CONUS-Soil 1KM2 grid.
clay fraction (of the soil material smaller than 2 mm, layers marked as oragnic material, water, bedrock and “other” were excluded) % (STATSGO)
Data from the CONUS Soil clay.bsq
is built into a raster field and the percentage of clay is computed for the top 1m of the soil column. .
silt fraction (of the soil material smaller than 2 mm, layers marked as oragnic material, water, bedrock and “other” were excluded) % (STATSGO)
Data from the CONUS Soil silt.bsq
is built into a raster field and the percentage of silt is computed for the top 1m of the soil column. .
sand fraction (of the soil material smaller than 2 mm, layers marked as organic material, water, bedrock and “other” were excluded) % (STATSGO)
Data from the CONUS Soil sand.bsq
is built into a raster field and the percentage of sand is computed for the top 1m of the soil column. .
saturated hydraulic conductivity (estimated using a multiple linear regression based on sand and clay fraction for the layers marked as USDA soil texture class and a default value [36 cm/hr] for layers marked as organic material, layers marked as water, bedrock and “other” were excluded) cm/hr Table 4
\(-0.60 + (0.0126 x %sand) - (0.0064 x %clay)\)
Using the mean sand and clay percentages in the top 1m of soil, the above formula can be applied.
volumetric porosity (saturated volumetric water content estimated using a multiple linear regression based on sand and clay fraction for the layers marked as USDA soil texture class and a default value [0.9] for layers marked as organic material, layers marked as water, bedrock and “other” were excluded)
\(50.5 - (0.142 x %sand) - (0.037 x %clay)\)
Using the mean sand and clay percentages in the top 1m of soil, the above formula can be applied.
forest fraction
The percent forest from the MODIS land cover is computed. MODIS land cover is represented on the the 1km Soil Grid and forest is computed as the aggregate of Evergreen broadleaf forests (2); Deciduous needleleaf forests (3); Deciduous broadleaf forests (4) and (5) Mixed forests .
The Green Vegetative Fraction (GVF) is computed from NDVI. NDVI is taken from the MODIS Terra mission.
\(GVF = \frac{NDVI_{i} - NDVI_{barren}}{ NDVI_{lc} - NDVI_{barren}}\)
Where, \(NDVI_{i}\) is a time varying NDVI observation (by pixel); \(NDVI_{barren}\) is a global constant for barren land - here we use 0.05; and \(NDVI_{lc}\) is a long term, landcover based constant for each pixel.
For us, we computed monthly GVF over the last 20 years which were reduced to month-based, pixel-wise averages from which, the maximum and maximum-minimum were computed pixel-wise. From these, a catchment mean-maximum and mean-difference were computed.
maximum monthly mean of the green vegetation fraction (based on 12 monthly means)
difference between the maximum and mimumum monthly mean of the green vegetation fraction (based on 12 monthly means)
8-day MODIS LAI measurement were used to generate monthly rasters between 2000 and 2020. These were then used to compute a month based, pixel-wise averages from which, the maximum and maximum-minimum were computed pixel-wise. From these, a catchment mean-maximum and mean-difference were computed.
maximum monthly mean of the leaf area index (based on 12 monthly means)
Will Use Monthly MODIS LAI.
difference between the maximum and mimumum monthly mean of the leaf area index (based on 12 monthly means)