| missing_arg {rlang} | R Documentation |
These functions help using the missing argument as a regular R object.
missing_arg()
generates a missing argument.
is_missing()
is like base::missing()
but also supports
testing for missing arguments contained in other objects like
lists.
maybe_missing()
is useful to pass down an input that might be
missing to another function, potentially substituting by a
default value. It avoids triggering an "argument is missing" error.
missing_arg() is_missing(x) maybe_missing(x, default = missing_arg())
x |
An object that might be the missing argument. |
default |
The object to return if the input is missing,
defaults to |
base::quote(expr = )
is the canonical way to create a missing
argument object.
expr()
called without argument creates a missing argument.
quo()
called without argument creates an empty quosure, i.e. a
quosure containing the missing argument object.
The missing argument is an object that triggers an error if and
only if it is the result of evaluating a symbol. No error is
produced when a function call evaluates to the missing argument
object. This means that expressions like x[[1]] <- missing_arg()
are perfectly safe. Likewise, x[[1]]
is safe even if the result
is the missing object.
However, as soon as the missing argument is passed down between
functions through an argument, you're at risk of triggering a
missing error. This is because arguments are passed through
symbols. To work around this, is_missing()
and maybe_missing(x)
use a bit of magic to determine if the input is the missing
argument without triggering a missing error.
maybe_missing()
is particularly useful for prototyping
meta-programming algorithms in R. The missing argument is a likely
input when computing on the language because it is a standard
object in formals lists. While C functions are always allowed to
return the missing argument and pass it to other C functions, this
is not the case on the R side. If you're implementing your
meta-programming algorithm in R, use maybe_missing()
when an
input might be the missing argument object.
missing_arg()
and is_missing()
are stable.
Like the rest of rlang, maybe_missing()
is maturing.
# The missing argument usually arises inside a function when the # user omits an argument that does not have a default: fn <- function(x) is_missing(x) fn() # Creating a missing argument can also be useful to generate calls args <- list(1, missing_arg(), 3, missing_arg()) quo(fn(!!! args)) # Other ways to create that object include: quote(expr = ) expr() # It is perfectly valid to generate and assign the missing # argument in a list. x <- missing_arg() l <- list(missing_arg()) # Just don't evaluate a symbol that contains the empty argument. # Evaluating the object `x` that we created above would trigger an # error. # x # Not run # On the other hand accessing a missing argument contained in a # list does not trigger an error because subsetting is a function # call: l[[1]] is.null(l[[1]]) # In case you really need to access a symbol that might contain the # empty argument object, use maybe_missing(): maybe_missing(x) is.null(maybe_missing(x)) is_missing(maybe_missing(x)) # Note that base::missing() only works on symbols and does not # support complex expressions. For this reason the following lines # would throw an error: #> missing(missing_arg()) #> missing(l[[1]]) # while is_missing() will work as expected: is_missing(missing_arg()) is_missing(l[[1]])


|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.nio.charset.CharsetEncoder
public abstract class CharsetEncoder
An engine that can transform a sequence of sixteen-bit Unicode characters into a sequence of
bytes in a specific charset.
The input character sequence is provided in a character buffer or a series
of such buffers. The output byte sequence is written to a byte buffer
or a series of such buffers. An encoder should always be used by making
the following sequence of method invocations, hereinafter referred to as an
encoding operation:
Reset the encoder via the Invoke the Invoke the Invoke the There are two general types of encoding errors. If the input character
sequence is not a legal sixteen-bit Unicode sequence then the input is considered malformed. If
the input character sequence is legal but cannot be mapped to a valid
byte sequence in the given charset then an unmappable character has been encountered.
How an encoding error is handled depends upon the action requested for
that type of error, which is described by an instance of the The default action for malformed-input and unmappable-character errors
is to This class is designed to handle many of the details of the encoding
process, including the implementation of error actions. An encoder for a
specific charset, which is a concrete subclass of this class, need only
implement the abstract Instances of this class are not safe for use by multiple concurrent
threads.
Each invocation of the reset
method, unless it
has not been used before; encode
method zero or more times, as
long as additional input may be available, passing false for the
endOfInput argument and filling the input buffer and flushing the
output buffer between invocations; encode
method one final time, passing
true for the endOfInput argument; and then flush
method so that the encoder can
flush any internal state to the output buffer. encode
method will encode as many
characters as possible from the input buffer, writing the resulting bytes
to the output buffer. The encode
method returns when more
input is required, when there is not enough room in the output buffer, or
when an encoding error has occurred. In each case a CoderResult
object is returned to describe the reason for termination. An invoker can
examine this object and fill the input buffer, flush the output buffer, or
attempt to recover from an encoding error, as appropriate, and try again.
CodingErrorAction
class. The possible error actions are to ignore
the erroneous input,
report
the error to the invoker via
the returned
CoderResult
object, or replace
the erroneous input with the current value of the
replacement byte array. The replacement
is initially set to the encoder's default replacement, which often
(but not always) has the initial value { (byte)'?' };
its value may be changed via the
replaceWith
method.
report
them. The
malformed-input error action may be changed via the
onMalformedInput
method; the
unmappable-character action may be changed via the onUnmappableCharacter
method.
encodeLoop
method, which
encapsulates the basic encoding loop. A subclass that maintains internal
state should, additionally, override the flush
and reset
methods.
ByteBuffer
,
CharBuffer
,
Charset
,
CharsetDecoder
| Constructor Summary | |
|---|---|
protected |
CharsetEncoder(Charset cs,
float averageBytesPerChar,
float maxBytesPerChar)
Initializes a new encoder. |
protected |
CharsetEncoder(Charset cs,
float averageBytesPerChar,
float maxBytesPerChar,
byte[] replacement)
Initializes a new encoder. |
| Method Summary | |
|---|---|
float |
averageBytesPerChar()
Returns the average number of bytes that will be produced for each character of input. |
boolean |
canEncode(char c)
Tells whether or not this encoder can encode the given character. |
boolean |
canEncode(CharSequence cs)
Tells whether or not this encoder can encode the given character sequence. |
Charset |
charset()
Returns the charset that created this encoder. |
ByteBuffer |
encode(CharBuffer in)
Convenience method that encodes the remaining content of a single input character buffer into a newly-allocated byte buffer. |
CoderResult |
encode(CharBuffer in,
ByteBuffer out,
boolean endOfInput)
Encodes as many characters as possible from the given input buffer, writing the results to the given output buffer. |
protected abstract CoderResult |
encodeLoop(CharBuffer in,
ByteBuffer out)
Encodes one or more characters into one or more bytes. |
CoderResult |
flush(ByteBuffer out)
Flushes this encoder. |
protected CoderResult |
implFlush(ByteBuffer out)
Flushes this encoder. |
protected void |
implOnMalformedInput(CodingErrorAction newAction)
Reports a change to this encoder's malformed-input action. |
protected void |
implOnUnmappableCharacter(CodingErrorAction newAction)
Reports a change to this encoder's unmappable-character action. |
protected void |
implReplaceWith(byte[] newReplacement)
Reports a change to this encoder's replacement value. |
protected void |
implReset()
Resets this encoder, clearing any charset-specific internal state. |
boolean |
isLegalReplacement(byte[] repl)
Tells whether or not the given byte array is a legal replacement value for this encoder. |
CodingErrorAction |
malformedInputAction()
Returns this encoder's current action for malformed-input errors. |
float |
maxBytesPerChar()
Returns the maximum number of bytes that will be produced for each character of input. |
CharsetEncoder |
onMalformedInput(CodingErrorAction newAction)
Changes this encoder's action for malformed-input errors. |
CharsetEncoder |
onUnmappableCharacter(CodingErrorAction newAction)
Changes this encoder's action for unmappable-character errors. |
byte[] |
replacement()
Returns this encoder's replacement value. |
CharsetEncoder |
replaceWith(byte[] newReplacement)
Changes this encoder's replacement value. |
CharsetEncoder |
reset()
Resets this encoder, clearing any internal state. |
CodingErrorAction |
unmappableCharacterAction()
Returns this encoder's current action for unmappable-character errors. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected CharsetEncoder(Charset cs, float averageBytesPerChar, float maxBytesPerChar, byte[] replacement)
averageBytesPerChar
- A positive float value indicating the expected number of
bytes that will be produced for each input charactermaxBytesPerChar
- A positive float value indicating the maximum number of
bytes that will be produced for each input characterreplacement
- The initial replacement; must not be null, must have
non-zero length, must not be longer than maxBytesPerChar,
and must be
legal
IllegalArgumentException
- If the preconditions on the parameters do not holdprotected CharsetEncoder(Charset cs, float averageBytesPerChar, float maxBytesPerChar)
averageBytesPerChar
- A positive float value indicating the expected number of
bytes that will be produced for each input charactermaxBytesPerChar
- A positive float value indicating the maximum number of
bytes that will be produced for each input character
IllegalArgumentException
- If the preconditions on the parameters do not hold| Method Detail |
|---|
public final Charset charset()
public final byte[] replacement()
public final CharsetEncoder replaceWith(byte[] newReplacement)
This method invokes the implReplaceWith
method, passing the new replacement, after checking that the new
replacement is acceptable.
newReplacement
- The new replacement; must not be null, must have
non-zero length, must not be longer than the value returned by
the maxBytesPerChar
method, and
must be
legal
IllegalArgumentException
- If the preconditions on the parameter do not holdprotected void implReplaceWith(byte[] newReplacement)
The default implementation of this method does nothing. This method should be overridden by encoders that require notification of changes to the replacement.
newReplacement
- public boolean isLegalReplacement(byte[] repl)
A replacement is legal if, and only if, it is a legal sequence of bytes in this encoder's charset; that is, it must be possible to decode the replacement into one or more sixteen-bit Unicode characters.
The default implementation of this method is not very efficient; it should generally be overridden to improve performance.
repl
- The byte array to be tested
public CodingErrorAction malformedInputAction()
public final CharsetEncoder onMalformedInput(CodingErrorAction newAction)
This method invokes the implOnMalformedInput
method, passing the new action.
newAction
- The new action; must not be null
IllegalArgumentException
- If the precondition on the parameter does not holdprotected void implOnMalformedInput(CodingErrorAction newAction)
The default implementation of this method does nothing. This method should be overridden by encoders that require notification of changes to the malformed-input action.
public CodingErrorAction unmappableCharacterAction()
public final CharsetEncoder onUnmappableCharacter(CodingErrorAction newAction)
This method invokes the implOnUnmappableCharacter
method, passing the new action.
newAction
- The new action; must not be null
IllegalArgumentException
- If the precondition on the parameter does not holdprotected void implOnUnmappableCharacter(CodingErrorAction newAction)
The default implementation of this method does nothing. This method should be overridden by encoders that require notification of changes to the unmappable-character action.
public final float averageBytesPerChar()
public final float maxBytesPerChar()
public final CoderResult encode(CharBuffer in, ByteBuffer out, boolean endOfInput)
The buffers are read from, and written to, starting at their current
positions. At most in.remaining()
characters
will be read and at most out.remaining()
bytes will be written. The buffers' positions will be advanced to
reflect the characters read and the bytes written, but their marks and
limits will not be modified.
In addition to reading characters from the input buffer and writing
bytes to the output buffer, this method returns a CoderResult
object to describe its reason for termination:
CoderResult.UNDERFLOW
indicates that as much of the
input buffer as possible has been encoded. If there are no characters
remaining and the invoker has no further input then the encoding
operation is complete. Otherwise there is insufficient input for the
operation to proceed, so this method should be invoked again with
further input.
CoderResult.OVERFLOW
indicates that the output buffer
is full. This method should be invoked again with a non-full output
buffer.
A malformed-input
result indicates that a malformed-input
error has been detected. The malformed characters begin at the input
buffer's (possibly incremented) position; the number of malformed
characters may be determined by invoking the result object's
length
method. This case applies only if the
malformed action
of this encoder
is
CodingErrorAction.REPORT
; otherwise the malformed input
will be ignored or replaced, as requested.
An unmappable-character
result indicates that an
unmappable-character error has been detected. The characters that
encode the unmappable character begin at the input buffer's (possibly
incremented) position; the number of such characters may be determined
by invoking the result object's
length
method. This case applies only if the unmappable action
of this encoder is
CodingErrorAction.REPORT
; otherwise the unmappable character will be
ignored or replaced, as requested.
The endOfInput parameter advises this method as to whether the invoker can provide further input beyond that contained in the given input buffer. If there is a possibility of providing additional input then the invoker should pass false for this parameter; if there is no possibility of providing further input then the invoker should pass true. It is not erroneous, and in fact it is quite common, to pass false in one invocation and later discover that no further input was actually available. It is critical, however, that the final invocation of this method in a sequence of invocations always pass true so that any remaining unencoded input will be treated as being malformed.
This method works by invoking the encodeLoop
method, interpreting its results, handling error conditions, and
reinvoking it as necessary.
in
- The input character bufferout
- The output byte bufferendOfInput
- true if, and only if, the invoker can provide no
additional input characters beyond those in the given buffer
IllegalStateException
- If an encoding operation is already in progress and the previous
step was an invocation neither of the reset
method, nor of this method with a value of false for
the endOfInput parameter, nor of this method with a
value of true for the endOfInput parameter
but a return value indicating an incomplete encoding operation
CoderMalfunctionError
- If an invocation of the encodeLoop method threw
an unexpected exceptionpublic final CoderResult flush(ByteBuffer out)
Some encoders maintain internal state and may need to write some final bytes to the output buffer once the overall input sequence has been read.
Any additional output is written to the output buffer beginning at
its current position. At most out.remaining()
bytes will be written. The buffer's position will be advanced
appropriately, but its mark and limit will not be modified.
If this method completes successfully then it returns CoderResult.UNDERFLOW
. If there is insufficient room in the output
buffer then it returns CoderResult.OVERFLOW
. If this happens
then this method must be invoked again, with an output buffer that has
more room, in order to complete the current encoding
operation.
This method invokes the implFlush
method to
perform the actual flushing operation.
out
- The output byte buffer
CoderResult.UNDERFLOW
or
CoderResult.OVERFLOW
IllegalStateException
- If the previous step of the current encoding operation was an
invocation neither of the reset
method nor of
the three-argument encode
method
with a value of true for the endOfInput
parameterprotected CoderResult implFlush(ByteBuffer out)
The default implementation of this method does nothing, and always
returns CoderResult.UNDERFLOW
. This method should be overridden
by encoders that may need to write final bytes to the output buffer
once the entire input sequence has been read.
out
- The output byte buffer
CoderResult.UNDERFLOW
or
CoderResult.OVERFLOW
public final CharsetEncoder reset()
This method resets charset-independent state and also invokes the
implReset
method in order to perform any
charset-specific reset actions.
protected void implReset()
The default implementation of this method does nothing. This method should be overridden by encoders that maintain internal state.
protected abstract CoderResult encodeLoop(CharBuffer in, ByteBuffer out)
This method encapsulates the basic encoding loop, encoding as many
characters as possible until it either runs out of input, runs out of room
in the output buffer, or encounters an encoding error. This method is
invoked by the encode
method, which handles result
interpretation and error recovery.
The buffers are read from, and written to, starting at their current
positions. At most in.remaining()
characters
will be read, and at most out.remaining()
bytes will be written. The buffers' positions will be advanced to
reflect the characters read and the bytes written, but their marks and
limits will not be modified.
This method returns a CoderResult
object to describe its
reason for termination, in the same manner as the encode
method. Most implementations of this method will handle encoding errors
by returning an appropriate result object for interpretation by the
encode
method. An optimized implementation may instead
examine the relevant error action and implement that action itself.
An implementation of this method may perform arbitrary lookahead by
returning CoderResult.UNDERFLOW
until it receives sufficient
input.
in
- The input character bufferout
- The output byte buffer
public final ByteBuffer encode(CharBuffer in) throws CharacterCodingException
This method implements an entire encoding operation; that is, it resets this encoder, then it encodes the characters in the given character buffer, and finally it flushes this encoder. This method should therefore not be invoked if an encoding operation is already in progress.
in
- The input character buffer
IllegalStateException
- If an encoding operation is already in progress
MalformedInputException
- If the character sequence starting at the input buffer's current
position is not a legal sixteen-bit Unicode sequence and the current malformed-input action
is CodingErrorAction.REPORT
UnmappableCharacterException
- If the character sequence starting at the input buffer's current
position cannot be mapped to an equivalent byte sequence and
the current unmappable-character action is CodingErrorAction.REPORT
CharacterCodingException
public boolean canEncode(char c)
This method returns false if the given character is a
surrogate character; such characters can be interpreted only when they
are members of a pair consisting of a high surrogate followed by a low
surrogate. The canEncode(CharSequence)
method may be used to test whether or not a
character sequence can be encoded.
This method may modify this encoder's state; it should therefore not be invoked if an encoding operation is already in progress.
The default implementation of this method is not very efficient; it should generally be overridden to improve performance.
IllegalStateException
- If an encoding operation is already in progresspublic boolean canEncode(CharSequence cs)
If this method returns false for a particular character sequence then more information about why the sequence cannot be encoded may be obtained by performing a full encoding operation.
This method may modify this encoder's state; it should therefore not be invoked if an encoding operation is already in progress.
The default implementation of this method is not very efficient; it should generally be overridden to improve performance.
IllegalStateException
- If an encoding operation is already in progress
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.


JDet is a multiplatform software for the interactive calculation and visualization of function-related conservation patterns in multiple sequence alignments and structures. It contains the set of tools and features we consider critical for the daily work with this kind of data, and that previously were disseminated in different packages and web servers. The package includes two of our recently developed programs for extracting this kind of information from protein alignments. JDet can be extended via plugins to implement other methods or parse their results.
For a general description of the package and the biological problem which prompted its development, as well as more information on multiple sequence alignments (MSAs), conserved positions, specificity determining positions (SDPs), etc., please take a look at the following article: Muth et al. (2012). Bioinformatics 28 (4): 584-586.; and the references cited there, specially Pazos et al. (2006) Bioinformatics. 22(12):1440-1448 and Rausell et al. (2010) PNAS. 107(5)1995-2000
Here you can find on-line versions of the user manual and the guided tutorial. These are also included in the dowloadable distribution.
Please cite the following reference when reporting any data or image generated with the program:
JDet includes binary distributions of two functional residue detection programs, Xdet and S3Det. These binaries can be also used outside the JDet environment, directly from the command line, e.g. for massive/batch runs (see Documentation above).
JDet uses Java3DTM, for research and instructional Use
JDet also includes the Jmol plugin:
Other third-party libraries are referenced in JDet's site at Google Code
For general questions/queries about the software, please contact Florencio Pazos (), for technical questions contact Juan A. Garcia Martin ().


Aref Ruqaa is an Arabic typeface that aspires to capture the essence of the classical Ruqaa calligraphic style.
The Latin part is based on AMS Euler, but spaced for regular text rather than mathematics.
The Aref Ruqaa project is led by Khaled Hosny, a type designer based in Cairo, Egypt. To contribute, see github.com/khaledhosny/aref-ruqaa


Med Cabinet's mission is aimed at allowing our users to make the switch from addictive pharmaceutical pain medication to all natural earth grown medication.
Our app will find your very own personalized strain of medical cannabis, along with recommended dosage, intake method, and intake schedule.
The two primary strain types of cannabis are indica and sativa.
Our algorithm will match you to the perfect strain that fits your needs.
Indica is a primary marijuana strain type known to be calming and relaxing. Indica strains are ideal for activities during the evening that require little to no physical activity or social interaction. In terms of effects, indica strains provide a high for your mind and body, creating a sedated and sleepy state of mind.
Sativa is a primary marijuana strain type known to be energizing and cerebral. Sativa strains are ideal for activities during the daytime that require physical activity or a high level of social interaction. In terms of effects, sativa strains provide a high for your mind, jumpstarting creativity, focus and mental energy.


Home
Menu
Contact
Visit Us:
Sokkar Cafe
Kailasa Pillayar Kovil Road , Nallur ,
Jaffna ,
Srilanka
Tel:021-222-xxxx
Every Day:
Mrg 7am-3pm
Eve 5pm-10pm
Place your Feet


Usage
Setting it up
Install Nodemailer from npm
npm install nodemailer
To send emails you need a transporter object
let transporter = nodemailer.createTransport(transport[, defaults])
Where
- transporter is going to be an object that is able to send mail
- transport is the transport configuration object, connection url or a transport plugin instance
- defaults is an object that defines default values for mail options
You have to create the transporter object only once. If you already have a transporter object you can use it to send mail as much as you like.
Send using SMTP
See the details about setting up a SMTP based transporter here.
Send using a transport plugin
See the details about setting up a plugin based transporter here.
Sending mail
Once you have a transporter object you can send mail with it:
transporter.sendMail(data[, callback])
Where
- data defines the mail content (see Message Configuration for possible options)
- callback is an optional callback function to run once the message is delivered or it failed
- err is the error object if message failed
- info includes the result, the exact format depends on the transport mechanism used
- info.messageId most transports should return the final Message-Id value used with this property
- info.envelope includes the envelope object for the message
- info.accepted is an array returned by SMTP transports (includes recipient addresses that were accepted by the server)
- info.rejected is an array returned by SMTP transports (includes recipient addresses that were rejected by the server)
- info.pending is an array returned by Direct SMTP transport. Includes recipient addresses that were temporarily rejected together with the server response
- response is a string returned by SMTP transports and includes the last SMTP response from the server
If the message includes several recipients then the message is considered sent if at least one recipient is accepted
If callback
argument is not set then the method returns a Promise object. Nodemailer itself does not use Promises internally but it wraps the return into a Promise for convenience.


2 Cabinet members face Duterte probe
by Efren MontanoPRESIDENT Rodrigo Duterte will order a separate investigation of two Cabinet members the Presidential Anti-Corruption Commission (PACC) previously flagged for alleged corruption.
PACC Commissioner Greco Belgica said they have already submitted their findings and recommendation to the Office of the President.
But Duterte’s spokesman Salvador Panelo said the President would likely validate the commission’s report first and conduct his own investigation before he makes a move.
“Of course, the President will order an investigation, he will validate it,” Panelo told reporters Thursday in Malacañang.
The PACC revealed that it conducted a lifestyle check on the two Cabinet members last August.
Duterte has fired several government officials over allegations of graft and corruption while in office.
But he was also criticized for “recycling” officials he had sacked by reappointing them to other government posts.


--- layout: post title: ! 'java.lang.IllegalStateException: Could not load JDBC driver class [${jdbc.driverClassName}]' date: type: post published: false status: draft categories: [] tags: [] meta: _edit_last: '36016338' _wpcom_is_markdown: '1' author: login: velmuruganv email<EMAIL_ADDRESS>display_name: velmuruganv first_name: '' last_name: '' ---
It looks like PropertyPlaceholderConfigurer can't locate your database.properties. Try placing that file on the app classpath and set the location property like in the following example
Answer:


The TMEndSession API call ends the session on the 1-Wire network that was designated by the session handle 'session_handle'. It returns a 1 if the session specified by 'session_handle' was successfully closed, and 0 if there was no valid session established with the specified session handle.
For a description of the above types, see the TMEX Type Descriptions.
Parameters
session_handle
Specifies session handle on an 1-Wire network. The session handle must be set as a result of a call to TMExtendedStartSession.
Return Value
0 => session_handle already invalid
1 => session ended, session_handle no longer valid
<0 => TMEX Session Error Return Codes
See Also
TMExtendedStartSession, TMValidSession


Ant and Dec slam 'frustrating' I'm A Celebrity contestant Gillian McKeith
I’m A Celebrity… Get Me Out Of Here! presenters Ant and Dec have named Gillian McKeith as the most ‘frustrating’ campmate in the show’s 17-year history.
Gillian appeared on the 10th series of the ITV show, alongside the likes of Stacey Solomon, Alison Hammond and Coronation Street’s Nigel Havers back in 2010, and has claimed going on the show left her with PTSD following her spate of Bushtucker Trials and fainting spell.
When asked about their least favourite contestant, Dec confessed: ‘Gillian McKeith not doing trials was frustrating at the time but that was her journey on the show.’
‘At the time when you’re there and you’re trying to get her to do it and she says no, you feel sorry for all the people that have put so much effort into producing the trials and making them so spectacular.’
Advertisement Advertisement
Dec continued to The Sun: ‘Probably my least favourites are some of them you don’t actually remember, as they didn’t bring a lot to the camp.’
Ant went on to say that Gillian fainting was one of his favourite I’m A Celebrity moments.
Can we blame him?
Gillian recently opened up about her time in the infamous Australian jungle and branded it ‘the stuff of nightmares’.
‘It was like being in a horror movie, to be honest,’ she told Daily Star Online, adding she’s still not ‘fully recovered’ from the experience.
‘I honestly think I’m suffering from PTSD,’ she continued.

Advertisement Advertisement
It’s also been teased that former EastEnders star Cliff Parisi will join the stars as the secret campmate.
I’m A Celebrity… Get Me Out Of Here! airs weekdays at 9pm on ITV.
Got a showbiz story?
If you've got a story, video or pictures get in touch with the Metro.co.uk Entertainment team by emailing us<EMAIL_ADDRESS>calling 020 3615 2145 or by visiting our Submit Stuff page - we'd love to hear from you.


Introduction
CSS describes all presentation aspects of the page via a description of its visual properties. CSS is powerful in that these properties are mixed and matched via identifiers to control the page's layout and visual characteristics through the layering of style rules (the "cascade").
Guidelines
- Always keep in mind that we are working mobile first.
- Don’t use ids.
- In general, CSS shorthand is preferred.
- When grouping selectors, put each individual selector on a single line.
- Use
//
for small comment blocks and /** */
for larger ones, like the blocks on top of each SCSS file.
- By default we don't apply styling directly on tags (unless they are namespaced).
- Classes are separated by hyphens (
-
).
- We use pseudo-selectors in favour of extra divs and spans.
- Use classes with a semantical meaning.
- For overrides always prepend with the classname of the element you are overriding.
Code semantics
- Put spaces after the
:
in property declarations.
- Put spaces before
{
in rule declarations.
- Put line breaks between rulesets.
- Place
}
on a new line.
- Each declaration should appear on its own line.
- Each declaration is indented.
- Don't specify units for zero values, e.g.,
margin: 0;
instead of margin: 0px;
.
- Also use a semicolon for the last property.


API
Global Interface
context$
Will be shared across nested actions.
meta$
Will be shared across nested actions. Data will be transfered.
delegate$
Will be shared across nested actions but the called service don't pass it to the next. Data will be transfered.
auth$
Will be used to store sensitive data e.g plugins which provide authentication or authorization mechanism.
plugin$
Returns the current plugin instance.
register
Functionattributes
Objectname
StringparentPlugin
Stringoptions
Object
request$
Returns the current request object.
id
Stringtype
"request" or "pubsub"service
Stringmethod
String
trace$
Returns current tracing informations
traceId
StringparentSpanId
StringspanId
Stringtimestamp
Numberservice
Stringmethod
Stringduration
Number
get plugins
Returns the list of all registered plugins.
get router
Returns the bloomrun instance.
get load
Returns the load instance.
config
Returns the config.
list(pattern: Object, options: Object)
Returns the list of registered actions.
get topics
Returns all registered topics.
get errors
Returns all default error objects.
get transport
Returns the current node-nats instance.
ready(handler: Function)
Ready event.
static createError(name: String)
Create a custom error object.
act(pattern: Object, handler: Function)
Call a service method.
add(pattern: Object, handler: Function)
Register a service method.
remove(topic: String, maxMessages: Number)
Unsubcribe a topic from NATS and remove all pattern from index.
removeAll()
Unsubcribe all registered topics from NATS and removes all pattern from index.
ext(type: String, handler: Function)
Register an extension.
use(plugin: Object, opts: Object)
Register a plugin.
decorate(key: String, object: Object, array: deps)
Expose data which can be accessed from all plugins.
hasDecorator(key: String)
Dheck the presence of a decorator
setOption(key: String, value: Any)
Updates the plugin option value.
setConfig(key: String, value: Any)
Updates the config value.
close()
Gracefully shutdown of all plugins, NATS and hemera.
Server method interface
_actMeta
Returns the metadata of the server method.
schema
Objectpattern
Objectaction
Functionplugin
Object
_topic
Returns the current topic name.
_request
Returns the current request object.
payload
Objecterror
Object
_response
Returns the current response object.
payload
Objecterror
Object
_pattern
Returns the pattern of the server method.
Client method interface
_actCallback
Returns the callback of the action.
_cleanPattern
Returns the pattern.
_request
Returns the current request object.
payload
Objecterror
Object
_response
Returns the current response object.
payload
Objecterror
Object
_pattern
Returns the pattern of the server method.


Demo¶
This is a quick Demo for using the website interface of SemlogWeb.
In this demo we would show how to successfully search the image database with the website and train a food classifier.
Prerequisite¶
You should first go through all the steps from Installation Guide and Quick Start to make sure SemlogWeb is successfully deployed in your PC.
Right now you should have two terminal running for Django and MongoDB server.
Use the website¶
After you click the Connect button on the main page, you should be able to view the search engine of SemLogWeb.
1. Choose collections¶
Although we can leave this input field blank to search for all available collections, in order to speed up the process, we would only search for one collection.
For example Food.f_in_drawers_1.
2. Add objects¶
Add two class names to search for all images containing at least one of these class objects.
For example MPWatermelon and MPBreadPizza.
3. Dataset preparation¶
Right now in this library we support two kinds of datasets.
The first is full images with coordinates of bounding boxes, which can be used to train object detection algorithms such as SSD, YOLO, or Mask-RCNN.
The second is cropped objects based on our inputs. We use such dataset to train our image classifier.
Click Multiclass Classifier.
Image postprocessing¶
After target objects and dataset types are selected, we can choose to customize the image resolution and image types that are needed.
After objects are cropped from the original image, the resolutions of all cropped images are varying. By applying image postprocessing, we make sure all images are convert to the size resolution for further training.
1. Resize image¶
For this demo, input 80 for width and 80 for height to stretch all cropped images to share the same resolution.
2. Image type¶
Two mandatory types are RGB and Mask. You can also select more types for other purposes. SemloWeb will automatically arrange the display layout.
Click the Search button to start query and create the dataset.
Options after searching¶
You can select different options for using our datasets. After the server finished searching, you can click three buttons.
Download¶
If you only need the dataset and want to do other processing by yourself, you can click Download button to retrieve the full dataset from the server.
View¶
You can click View to view the result images on the website conveniently.
Click the image to view the 3D point cloud as long as you selected Depth image type before. Click the little label on top left to view the image in original resolution.
Click Bounding box/Scans to view cropped images.
Train¶
In order to monitor relevant metrics during the training stage, we have embedded the website with Visdom.
Open a new terminal, enter
visdom
to run the visdom server.
All preparations are finished right now. Click Train and visit localhost:8097
to check the training process!


第四周作业 2014学年第四周作业 Written By Joyee Cheung — October 14, 2014 算法分析与设计 10月&11月sicily题目 郭老10月&11月大礼包！ Written By Joyee Cheung — October 14, 2014 第二周作业 2014学年第二周作业 Written By Joyee Cheung — October 01, 2014 第一周作业 2014学年第一周作业 Written By Joyee Cheung — September 27, 2014 Hello 这里是12级计应的主页~ Written By Joyee Cheung — September 23, 2014


Add Mentor to DB
Enter first name:
Enter surname name:
Provide mentors's e-mail:
Provide basic password:
Enter current position in Code Cool:
Mentor's Bio:
Add


Psalm 34
A Psalm of David; when he pretended to be insane before Abimelech, who drove him out.
1 I will praise Yahweh at all times;
his praise will always be in my mouth.
2 I will praise Yahweh;
may the oppressed hear and rejoice.
3 Praise Yahweh with me;
let us lift up his name together.
4 I sought Yahweh, and he answered me,
and he gave me victory over all my fears.
5 Those who look to him are radiant,
and their faces are not ashamed.
6 This oppressed man cried, and Yahweh heard him
and saved him from all his troubles.
7 The angel of Yahweh camps around those who fear him,
and he rescues them.
8 Taste and see that Yahweh is good;
blessed is the man who takes refuge in him.
9 Fear Yahweh, you, his holy people;
there is no lack for those who fear him.
10 The young lions sometimes lack food and suffer hunger;
but those who seek Yahweh will not lack anything good.
11 Come, children, listen to me;
I will teach you the fear of Yahweh.
12 What man desires life
and desires to live many days and have a good life?
13 Then keep from speaking evil,
and keep your lips from speaking lies.
14 Turn away from evil and do good;
seek peace and promote it.
15 The eyes of Yahweh are on the righteous,
and his ears are directed toward their cry.
16 Yahweh is against evildoers,
in order to wipe out their memory from the earth.
17 The righteous cry out, and Yahweh hears
and rescues them from all their troubles.
18 Yahweh is near the brokenhearted,
and he saves those with a crushed spirit.
19 Many are the troubles of the righteous,
but Yahweh gives him victory over them all.
20 He protects all his bones;
not one of them will be broken.
21 Evil will kill the wicked;
those who hate the righteous will be condemned.
22 Yahweh redeems the souls of his servants;
none of those who take refuge in him will be condemned.


13.0 Specialized Units
13.1 HQ Units
HQs are special combat units that can distribute supplies, rebuild units, and perform engineering tasks. HQs are 1 RE in size, regardless of what is on the unit designation.
13.1a HQs and Modes. The Combat Mode side of an HQ has the greater throw range. DG Mode (5.10e) does not affect an HQ’s special functions (13.1b). An HQ’s defense strength is determined by mode (per 13.1c). An HQ in Strat Mode cannot throw supply (5.8b).
Design Note: Combat Mode represents an HQ having taken up residence; Move Mode shows an HQ with a more mobile status. When in Move Mode, the extra trucks of the HQ are considered to be shuttling around mechanics and bakers instead of supplies.
13.1b HQ Special Functions.
- An HQ can “throw” SP and trace supply to combat units within its throw range (12.3b).
- An HQ can rebuild units (13.5a).
- An Engineer-Capable HQ (13.8a) can perform special functions such as bridging, detrainable creation, and construction.
13.1c HQs and Combat. HQs have some ratings that are not printed on the counters. Their Action Rating is 0. In Combat Mode, they have a parenthesized (defensive-only) strength of 5, and in Move Mode this is reduced to 1.
HQs need supply like any other combat unit. They must change to Move Mode when forced to retreat.
13.1d Special HQs. Games can have HQs of multiple nationalities and/or command levels. HQs are normally able to throw supply to all friendly ground units, without regard to historical chain of command, but there may be limita- tions in specific games. One exception is series-wide: Divisional HQs can only provide supply to their own division’s units or to independent units (defined in 3.2f) of the same nationality.
13.2 Transport Points
Transport Points move SPs across the map. Specialized Combats involving these are covered in 9.14c.
13.2a Sequencing Transport/Supply. A Transport Point can move, pause to use some of its load, and then continue moving. While “pausing” the carried SP can be used to pay for all kinds of fueling and construction/repair. There are two important restrictions: the Transport Point must finish moving before another unit is moved, and upcoming combat/ barrage costs can never be pre-paid in this fashion. SP need not be unloaded from a Transport Point before being used.
13.2b Transport Points and Supply. Transport Points never need fuel and are never Out of Supply.
13.2c Mechanical Handling. Transport Points can carry up to their size in SP. Transport Points can combine and divide within counter-mix limits. Dividing or combining does not cost MP, can only be done in the friendly Movement Phase and only if all of the involved Transport Points are in one hex. The combined/divided Transport Points can continue to move, but must conform to the limitation imposed by 6.1f (but see 12.7e and 12.7f for some liberties given to Extenders). Different types of Transport Points can never be combined into a single counter, and this restriction includes Organic Trucks, which cannot combine with or divide into regular Trucks. (Exception: Unit Consolidation can be used to convert a regular Truck into an Organic Truck, per 13.9
13.2d Mode Restrictions. Transport Points are in Move Mode at all times (never Combat, Strat, Reserve, DG, or Exploit). (Exception: Organic Trucks can enter Reserve Mode, per 13.2g.)
13.2e A Transport Point can be shipped by sea or rail, but not by air. (Exception: Mules, found in some games, can be shipped via Air Transport.) The shipping cost is always equal to the size of the Transport Point, which can be transported while loaded with SP for the same shipping cost.
13.2f Loading and Unloading. Place loaded SP under the Transport Points carrying them, and unloaded SP above any Transport Points in the stack. A Transport Point cannot be loaded via direct-draw or via thrown SP—it must be in the same hex as the dump. Note SP can (in effect) be unloaded by direct- draw as its load is used by nearby units and HQs.
Loading Requirements: A Transport Point can load in any hex.
Unloading Requirements: A Transport Point can only unload in a hex which contains a friendly combat unit, port, air base, or existing unloaded supply dump.
Costs: A Transport Point pays 10% of its printed MA to load/unload any number of SP in a hex. Round the cost normally (so a truck with 45 MA must pay 5 MP to load or unload SP).
13.2g Organic Trucks.
A multi-unit formation sometimes is given special, attached Transport Points. An Organic Truck is handled like other Transport Points, with several exceptions. Organic Trucks…
- A) can never unload their SP on the map,
- B) only allow units of the same multi-unit formation to draw their SP,
- C) can never be combined to form Extenders,
- D) can be put into Reserve Mode (if their hex gets a DG result, remove the Reserve marker),
- E) can tag along with other retreating combat units in their stack (but cannot retreat alone),
- F) convert when captured into regular Transport Points, and
- G) can withhold combat supply (see 12.10a).
Players can use HQs to throw supply from Organic Trucks to units of that formation.
13.2h Full Notation. Some games have Transport Points that have an “F” in a yellow box on one side and no such notation on the back. The “F” denotes that the Transport Point is full, while the other side shows it is empty (use the empty side plus some tokens for a partially loaded Transport Point).
13.2i Transport Points that are captured (see 9.14c) in the Movement Phase can move immediately. If captured in any other phase, no movement is allowed until the capturing side’s next Move- ment Phase.
13.3 Railroads
Railroads are vital for the movement of reinforcements and SP, and are often integral to trace supply. There are usually two types of railroad hexes, multi-track and single-track. Some games also have tracks of differing gauges (see 13.3f).
13.3a Combat units, Transport Points, and SP can be moved using Rail Cap (13.3b). These are the only rail cargo allowed—never aircraft, ships, hedge- hogs, etc. See 4.7 for the Transportation Equivalents of various cargo. Each Rail Cap point can transport one SP or RE any distance by rail movement. There are two possible modifications:
- If cargo is moved along a path that includes one or more Trainbusting zones, double the Rail Cap cost.
- If cargo is moved along a path that is entirely multi-track rail hexes, halve the normal Rail Cap cost.
13.3b Rail Cap is available every turn at levels specified by the scenario rules. It cannot be “saved” for use in another Movement Phase. Rail Cap can only be used in the Movement Phase (never during Reaction or Exploitation).
13.3c Detrainable Hexes. A railroad hex is detrainable if it meets all of these requirements:
- It has a village, city (any size), port, or Engineer-Capable HQ (13.8a).
- It is under control (13.3h).
- It has a rail path free of enemy ZOC back to a supply source. Extender links can be part of this for trace supply, but not for moving cargo. Note EZOC cannot be negated to move cargo, but can to connect with a supply source.
13.3d Railheads.
Some games limit each side’s railroad usage to a certain gauge (or width) of track (13.3f). Show a divide between gauges on the map (as in “German gauge runs to here”) with Railhead markers. (The flip-sides are marked Wrong Gauge to help mark complex junctions.) These markers are only moved by the conversion work of Rail Repair units— other ground units moving through rail hexes have no effect on the position of a Railhead.
Some games have only one gauge of railroad track. In these, players can use Railhead markers to show the forward extent of rail hexes under their control. (The initial extent of each side’s rail lines is sometimes given in the scenario rules, but keep in mind that 13.3h usually makes railheads unnecessary.)
13.3e Rail movement includes three steps: entrain, move, detrain. All three steps must be done in the same phase.
- 1) To entrain, the cargo must be in a detrainable railroad hex (13.3c) that is not in an enemy ZOC. A unit moving by rail must be in Move Mode, and can expend up to half its MA in the phase before entraining. Reinforcements and new SP can entrain “off-map” if their arrival hex contains a railroad (13.6b).
- 2) To move, the cargo follows a path of connected rail hexes that does not enter a hex with an enemy combat unit or ZOC. Rail hexes that are wrong gauge (13.3f) or uncontrolled (13.3h) cannot be used.
- 3) To detrain, cargo must be in a detrainable railroad hex which is not in an enemy ZOC. No further movement is allowed by a unit after it detrains (per 4.7d).
Design Note: Rail capacity involves the marshaling of rolling stock and a lot of time spent loading and unloading. Rail movement is a strategic asset; it is much more efficient to move loads across long distances rather than in short hops.
13.3f Rail Conversion. In games with more than one rail gauge, a side can only use its rail capacity or supply line trace along rail lines of a particular gauge. Eligible Rail Repair units (13.3g) are used to convert rail lines to the gauge appropriate to their side. Players keep track of the current extent of each rail gauge using Railhead markers.
- A) Railroads cannot be converted in an enemy ZOC (no negation).
- B) A Rail Repair unit can convert a rail hex simply by moving into it. Conversion does not cost SP or extra movement points.
13.3g Rail Repair Units. Rail Repair units are combat units that are used to convert railroad hexes. Several special rules govern them:
- A) A Rail Repair unit can combine rail movement with conversion in the Movement Phase. (Exception: They cannot do so if the hexes being used for rail movement were converted in the current phase. No leapfrogging!)
- B) Rail Repair units can move their full MA after using rail movement (less any movement done prior to entraining), and can use rail movement in Combat Mode.
- C) Rail Repair units can entrain and detrain in any railroad hex (it need not be “detrainable”).
- D) Rail Repair units can convert up to 4 hexes (or hexes equal their current MA, if less than 4) during the Movement Phase (not other phases). They must be in Combat Mode, or be in DG Mode and oriented toward Combat Mode (per 5.10e).
Play Note: Conversion is not restricted to merely pushing forward the railhead marking where standard and wide gauges meet; Rail Repair units can, for example, use Strat Mode to get ahead of the normal re-gauging to start working on a forward section of track. “No leapfrogging” is a narrow restriction on not having a second repair unit use rail movement on newly converted track to extend the Railhead.
13.3h Railroad Control. Players can only trace “rail paths” (13.3c) into or through detrainable hexes they control. Initial control is based on the front line (use common sense). Control changes when an enemy combat unit enters the hex, or when the hex is now on the enemy side of the front line (this needs to be clearly the case; when there is any doubt do not change control).
Note that gauge, enemy units, and ZOC will further limit whether a rail path can actually be used for trace supply or rail transport.
Play Note: This supersedes all previous game-specific Railroad Control rules. There is no longer a need to move units through every rail hex — control of detrainable hexes is now the sole concern.
13.4 Artillery Units
Artillery units attack targets within range using Barrage. Barrage Strength is shown in a yellow box (on the lower left of the counter); range is printed below the Action Rating. The Combat Mode side of an artillery unit is the one with the greater Barrage Strength. Artillery units can move and fire in the same phase.
See 10.0for barrage rules.
13.4a Artillery in Reserve or Strat Mode cannot barrage. Otherwise, artillery can barrage in any Barrage Segment in which they are eligible to act, given the needed supply is paid.
13.4b Artillery and Combat. Artillery units all have a parenthesized (defensive- only) strength of 1 in both Combat or Move Mode. This number is not printed on the counters.
13.5 Replacement Units
Players roll on their Variable Replacement Table during each of their Reinforcement Phases. Replacements (Repls) acquired by this roll are additions to the turn’s regular Reinforcements. Repls can be used as soon as they arrive or be saved for later. They come in two types: Equipment (Eq) and Personnel (Pax). These are used to rebuild lost steps or units. Repl counters are not intention- ally limited by the counter-mix, and as with SP both players share the same generic counters so must take care to remember who owns which.
Repls can never enter Combat Mode, but can enter all other modes. They are 1/4 RE for stacking. Repls are Attack- Capable and can be used to take combat or barrage losses. Repls are independent combat units and must be supplied and fueled normally.
13.5a Replacing Losses. A Repl used to replace losses must be in Move Mode. Rebuilding costs vary by unit type and size, and are summarized on each game’s Rebuild Table. There are two general kinds of rebuild possible during every Reinforcement Phase.
- 1) To rebuild a unit in the Dead Pile, the required Repls must be in a single hex at or within 2 hexes of a friendly HQ. The HQ must be in Combat Mode, or else be in DG Mode and oriented toward Combat Mode (per 5.10e). The hex may not be in an enemy ZOC (4.5a). Remove the required Repls and put the rebuilt unit in the hex.
- 2) To rebuild an on-map unit that has taken step losses, follow the above procedure. In addition, the unit being rebuilt must be stacked with the Repls being used.
13.5b A reduced or eliminated multi- step unit can have any number of steps rebuilt in a turn (given required Repls). Its supply status and mode have no effect on rebuilding. Rebuilding does not cost MP; place a newly-rebuilt unit in any voluntary mode. Generally, only units in the Dead Pile and on-map reduced units can be rebuilt. Generics like Breakdown units cannot usually be rebuilt (they are returned to the pool when destroyed).
Play Note: We have found it wise to set up a “training detachment” at a rear area base. Use a “not-so-good” HQ for this, and station incoming Repls adjacent to it. This simplifies the problem of having to hunt down Repls when you need them.
13.5c No-Rebuild Units. Units with a Yellow dot behind their AR cannot be rebuilt and are removed permanently when destroyed.
13.5d One Repl for Two Units. Some very small units (which are listed on the Rebuild Table) can be rebuilt in pairs for only one Repl. If only one such unit is available in the Dead Pile, one Repl must still be expended.
13.5e Truck Rebuilds. Trucks (Organic or regular) can be rebuilt at a cost of 1x Eq per truck. Only trucks that have been destroyed (or captured) by enemy action can be rebuilt in this way, so the player can never have more trucks in play than the scenario provides him. Other Transport Point types (such as wagons and mules) cannot be rebuilt in this way.
13.5f Air Replacements. Some games have tables that provide direct aircraft step replacement. In games with no such result available, players can use Eq to replace air losses. Each Eq can rebuild two aircraft steps. Expend the Eq at an HQ and follow the normal rules with this addition to 13.5a: Air units can be rebuilt at any friendly air base (it need not be near the HQ) and arrive Active from the Dead Pile.
- An aircraft can be rebuilt regardless of flight conditions.
- An Eq cannot be “partially” used to rebuild air units (13.5d).
13.6 Reinforcements
Reinforcements are new units entering the game via the Arrival Chart or the Variable Reinforcement Table. They are placed in their entry hexes during the friendly Reinforcement Phase. The player cannot delay the entry of reinforcements, so “forgotten” units never arrive unless your opponent is very nice. Reinforcing aircraft arrive Active on any friendly Air Base.
13.6a Placement of reinforcements at a port (which cannot be in an enemy ZOC) is limited to its current capacity. Ground units can be overstacked when placed; aircraft arrivals must conform to normal stacking rules (14.2a and 18.2a).
13.6b Reinforcements can enter in any voluntary mode. They can be placed in hexes in an enemy ZOC (but note the Port restriction in 13.6a), and can arrive by rail (ignoring the usual “entraining” requirements of 13.3e). If a map-edge arrival hex is blocked by enemy units, the reinforcements can be placed in the nearest unblocked map-edge hex.
13.6c Organic Trucks arrive loaded. Other Transport Points arrive loaded only if SP are arriving at the same location that turn.
13.7 Formation Markers
Each multi-unit formation has a marker that can be used to show the location of one or more of the formation’s units. Remove the actual units from the map, and keep them anywhere convenient. This helps to reduce some of the map’s counter density and tall stacks.
Unless using option 13.7b, players should take pains not to use these markers to “hide” formations from one another.
Usage notes:
- A) At least one of the Formation’s units must be stacked with the marker or the marker cannot be on the map (except as a reminder of Fueling). So “empties” cannot be used as dummy formations.
- B) A Formation marker can only be used to represent a stack of that formation’s units. The units move and fight normally; the marker just shows their location. Units can freely move into the marker (and for convenience be kept off the map), or from the marker be put back on the map, at no additional MP cost. Eligible units that stack with a Formation marker are not required to enter it (and be pulled off the map).
- C) Units represented by a Formation marker can be in different modes and supply states. The required markers can be put off-map with the units or on-map in the Formation marker’s hex (whichever is easiest). If some units in a hex are in the same mode as some units in the Formation marker, a single marker can usually be used for all. Just remember to think of the off-map units as stacked where the Formation marker is located.
- D) Formation markers have regular and fueled sides. Players must use the fueled side when the “forma- tion” method of fuel cost is paid (see 12.5c).
13.7a Supply Concerns. Combat units in a multi-unit formation must receive trace and fuel supply from the same HQ or the same direct-draw source. If this is not possible:
- For trace supply, one part of the formation can trace “for free” while the rest must “eat SP” or become Out of Supply (per 12.6d).
- For fueling, part of the formation can use the “formation” method, but the remainder will need to use the “single-unit” method. See 12.5c.
13.7b Fog of War Option. If players agree, the Formation markers can be used to heighten the fog of war. Players are allowed to “hide” a tank corps or panzer division by putting its Formation marker under other combat units in a stack. Any such trickery must conform to 4.8b and 4.9a—the Formation needs to be on top if it contains the stack’s only ground units with a ZOC (and one of its units needs to be revealed).
13.8 Engineer Functions
HQs and Engineers are the only units that can perform engineer functions (bridging, construction, and creation of detrainable hexes). Related unit types— such as Rail Repair, Assault Engineers, Pioneers, and Para/Glider Engineers— cannot perform the tasks listed in this section.
13.8a Engineer-Capable. For it to be considered Engineer-Capable, an HQ or Engineer must be in Combat Mode, or else be in DG Mode and oriented toward Combat Mode (per 5.10e).
13.8b Bridging. When adjacent to a Major River, an Engineer-Capable unit automatically reduces the MP cost of Major River hexsides to that of Minor River hexsides. Likewise, an Engineer- Capable unit downgrades Minor River hexsides to “no additional cost.” There is no SP cost. Only friendly units moving into or out of the Engineer-Capable unit’s hex benefit from these reduced movement costs. Apply bridging effects to frozen rivers as appropriate.
Attacking units cannot use the bridging function to cross a hexside to overrun across a river. Bridging has no effect on combat terrain modifiers, but can enable an attack where none would be possible without a bridge.
Bridging will disappear the instant a unit is no longer Engineer-Capable. (Exception: An Engineer-Capable unit can use its own bridge to leave the hex after losing its Engineer-Capable status by changing mode or orientation.)
13.8c Detrainable Creation. This is a special ability of HQ units only, not other engineers. When an Engineer-Capable HQ occupies a functioning railroad hex it automatically makes the hex detrainable (13.3c). There is no SP cost.
This special detrainable status disappears the instant a mode change makes the HQ no longer Engineer-Capable. (Exception: An Engineer-Capable HQ can entrain itself before switching to Move Mode.)
13.8d Construction. In the Movement Phase (only), an Engineer-Capable unit can perform construction within a 2-hex radius (enemy ZOC are ignored, and terrain affects this path as if using Leg MP). Tasks are build/improve/reduce an Air Base (15.3) or Hedgehog (16.0b), and repair/damage a Port (19.0d). An Engineer-Capable unit cannot move in the phase it performs construction.
Construction limits and notes:
- An Engineer-Capable unit can only perform construction in a single hex, and can only perform one type of construction.
- All of the build/improve/repair tasks have an SP cost. The reduce/damage tasks are free of cost.
- Construction is immediate, so for instance a new airfield can be used in the same phase it is built.
Design Note: A large portion of engineer capability is tied to HQ units. In real life, these engineers typically spend most of their time doing their assigned tasks.  The idea here is to prevent such misuse by eliminating most non-combat engineer units from the counter-mix.
13.9 Unit Consolidation
A player can combine crippled formations during his Reinforcement Phase. Units may be consolidated when adjacent to enemy units and when Out of Supply. Ground units being exchanged/combined must be identical on both sides of the counter, and a unit involved in a consolidation cannot have Low or Exhausted internal stocks, or be DG. There are four types of Consolidation:
- 1) To consolidate multi-step units, the two units must be in the same hex (or off-map box). Remove one of the units and change the step losses on the remaining unit to reflect the steps added to it. No unit can be rebuilt beyond full strength in this manner—excess steps would be lost.
- 2) To consolidate multi-unit formations, the player can swap any unit (including an Organic Truck) for the equivalent unit of a different multi-unit formation that is in the Dead Pile. Modes and markers stay the same, and SP loaded on an Organic Truck remain loaded (which does allow the supply to be passed to the other division).
- 3) An independent unit (including regular Transport Points) can be made part of a multi-unit formation (similar to #2 above), but a unit from a multi-unit formation can never be converted into an independent unit.
- 4) Two reduced aircraft of the same type, values, and status (Active or Inactive) can combine into a full strength aircraft if they are in the same hex (or off-map box). This can be done during any phase (not just the Reinforcement Phase).


Enter your age in solar years
At what would prefer to die?
Enter
Your age in mercury years:
Your age in venus years:
Your age in mars years:
Your age in jupiter years:
years you have left to live on each planet (in same order as above):


{% extends "gmessage/gmessage_base.html" %} {% load i18n %} {% block msg-content %}
{% trans "No messages." %}
{% endif %}{% trans "Deleted Messages are removed from the trash at unregular intervals, don't rely on this feature for long-time storage." %}
{% endblock msg-content %} {% block breadcrumbs %}