Strategy
A state & compute distribution policy on a list of devices.
tf.compat.v2.distribute.Strategy
See the guide for overview and examples.
compile
/fit
,
please
read.tf.distribute.Strategy
to
tf.estimator.RunConfig
to specify how a tf.estimator.Estimator
should distribute its computation. See
guide.tf.distribute.Strategy.scope
to specify that a
strategy should be used when building an executing your model.
(This puts you in the "cross-replica context" for this strategy, which
means the strategy is put in control of things like variable placement.)If you are writing a custom training loop, you will need to call a few more methods, see the guide:
tf.data.Dataset
normally or using
tf.distribute.experimental_make_numpy_dataset
to make a dataset out of
a numpy
array.tf.distribute.Strategy.experimental_distribute_dataset
to convert
a tf.data.Dataset
to something that produces "per-replica" values.
If you want to manually specify how the dataset should be partitioned
across replicas, use
tf.distribute.Strategy.experimental_distribute_datasets_from_function
instead.tf.distribute.Strategy.experimental_run_v2
to run a function
once per replica, taking values that may be "per-replica" (e.g.
from a distributed dataset) and returning "per-replica" values.
This function is executed in "replica context", which means each
operation is performed separately on each replica.tf.distribute.Strategy.reduce
) to
convert the resulting "per-replica" values into ordinary Tensor
s.A custom training loop can be as simple as:
with my_strategy.scope(): @tf.function def distribute_train_epoch(dataset): def replica_fn(input): # process input and return result return result total_result = 0 for x in dataset: per_replica_result = my_strategy.experimental_run_v2(replica_fn, args=(x,)) total_result += my_strategy.reduce(tf.distribute.ReduceOp.SUM, per_replica_result, axis=None) return total_result dist_dataset = my_strategy.experimental_distribute_dataset(dataset) for _ in range(EPOCHS): train_result = distribute_train_epoch(dist_dataset)
This takes an ordinary dataset
and replica_fn
and runs it
distributed using a particular tf.distribute.Strategy
named
my_strategy
above. Any variables created in replica_fn
are created
using my_strategy
's policy, and library functions called by
replica_fn
can use the get_replica_context()
API to implement
distributed-specific behavior.
You can use the reduce
API to aggregate results across replicas and use
this as a return value from one iteration over the distributed dataset. Or
you can use tf.keras.metrics
(such as loss, accuracy, etc.) to
accumulate metrics across steps in a given epoch.
See the custom training loop tutorial for a more detailed example.
Note: tf.distribute.Strategy
currently does not support TensorFlow's
partitioned variables (where a single variable is split across multiple
devices) at this time.
__init__
__init__(extended)
Initialize self. See help(type(self)) for accurate signature.
extended
tf.distribute.StrategyExtended
with additional methods.
num_replicas_in_sync
Returns number of replicas over which gradients are aggregated.
experimental_distribute_dataset
experimental_distribute_dataset(dataset)
Distributes a tf.data.Dataset instance provided via dataset
.
The returned distributed dataset can be iterated over similar to how regular datasets can. NOTE: Currently, the user cannot add any more transformations to a distributed dataset.
The following is an example:
strategy = tf.distribute.MirroredStrategy() # Create a dataset dataset = dataset_ops.Dataset.TFRecordDataset([ "/a/1.tfr", "/a/2.tfr", "/a/3.tfr", "/a/4.tfr"]) # Distribute that dataset dist_dataset = strategy.experimental_distribute_dataset(dataset) # Iterate over the distributed dataset for x in dist_dataset: # process dataset elements strategy.experimental_run_v2(train_step, args=(x,))
We will assume that the input dataset is batched by the global batch size. With this assumption, we will make a best effort to divide each batch across all the replicas (one or more workers).
In a multi-worker setting, we will first attempt to distribute the dataset by attempting to detect whether the dataset is being created out of ReaderDatasets (e.g. TFRecordDataset, TextLineDataset, etc.) and if so, attempting to shard the input files. Note that there has to be at least one input file per worker. If you have less than one input file per worker, we suggest that you should disable distributing your dataset using the method below.
If that attempt is unsuccessful (e.g. the dataset is created from a
Dataset.range), we will shard the dataset evenly at the end by appending a
.shard
operation to the end of the processing pipeline. This will cause
the entire preprocessing pipeline for all the data to be run on every
worker, and each worker will do redundant work. We will print a warning
if this method of sharding is selected. In this case, consider using
experimental_distribute_datasets_from_function
instead.
You can disable dataset sharding across workers using the auto_shard
option in tf.data.experimental.DistributeOptions
.
Within each worker, we will also split the data among all the worker devices (if more than one a present), and this will happen even if multi-worker sharding is disabled using the method above.
If the above batch splitting and dataset sharding logic is undesirable,
please use experimental_distribute_datasets_from_function
instead, which
does not do any automatic splitting or sharding.
dataset
: tf.data.Dataset
that will be sharded across all replicas using
the rules stated above.A "distributed Dataset
", which acts like a tf.data.Dataset
except
it produces "per-replica" values.
experimental_distribute_datasets_from_function
experimental_distribute_datasets_from_function(dataset_fn)
Distributes tf.data.Dataset
instances created by calls to dataset_fn
.
dataset_fn
will be called once for each worker in the strategy. Each
replica on that worker will dequeue one batch of inputs from the local
Dataset
(i.e. if a worker has two replicas, two batches will be dequeued
from the Dataset
every step).
This method can be used for several purposes. For example, where
experimental_distribute_dataset
is unable to shard the input files, this
method might be used to manually shard the dataset (avoiding the slow
fallback behavior in experimental_distribute_dataset
). In cases where the
dataset is infinite, this sharding can be done by creating dataset replicas
that differ only in their random seed.
experimental_distribute_dataset
may also sometimes fail to split the
batch across replicas on a worker. In that case, this method can be used
where that limitation does not exist.
The dataset_fn
should take an tf.distribute.InputContext
instance where
information about batching and input replication can be accessed:
def dataset_fn(input_context): batch_size = input_context.get_per_replica_batch_size(global_batch_size) d = tf.data.Dataset.from_tensors([[1.]]).repeat().batch(batch_size) return d.shard( input_context.num_input_pipelines, input_context.input_pipeline_id) inputs = strategy.experimental_distribute_datasets_from_function(dataset_fn) for batch in inputs: replica_results = strategy.experimental_run_v2(replica_fn, args=(batch,))
IMPORTANT: The tf.data.Dataset
returned by dataset_fn
should have a
per-replica batch size, unlike experimental_distribute_dataset
, which uses
the global batch size. This may be computed using
input_context.get_per_replica_batch_size
.
dataset_fn
: A function taking a tf.distribute.InputContext
instance and
returning a tf.data.Dataset
.A "distributed Dataset
", which acts like a tf.data.Dataset
except
it produces "per-replica" values.
experimental_local_results
experimental_local_results(value)
Returns the list of all local per-replica values contained in value
.
Note: This only returns values on the worker initiated by this client.
When using a tf.distribute.Strategy
like
tf.distribute.experimental.MultiWorkerMirroredStrategy
, each worker
will be its own client, and this function will only return values
computed on that worker.
value
: A value returned by experimental_run()
, experimental_run_v2()
,
extended.call_for_each_replica()
, or a variable created in scope
.A tuple of values contained in value
. If value
represents a single
value, this returns (value,).
experimental_make_numpy_dataset
experimental_make_numpy_dataset(numpy_input)
Makes a tf.data.Dataset
for input provided via a numpy array.
This avoids adding numpy_input
as a large constant in the graph,
and copies the data to the machine or machines that will be processing
the input.
Note that you will likely need to use experimental_distribute_dataset
with the returned dataset to further distribute it with the strategy.
numpy_input = np.ones([10], dtype=np.float32) dataset = strategy.experimental_make_numpy_dataset(numpy_input) dist_dataset = strategy.experimental_distribute_dataset(dataset)
numpy_input
: A nest of NumPy input arrays that will be converted into a
dataset. Note that lists of Numpy arrays are stacked, as that is normal
tf.data.Dataset
behavior.A tf.data.Dataset
representing numpy_input
.
experimental_run_v2
experimental_run_v2( fn, args=(), kwargs=None )
Run fn
on each replica, with the given arguments.
Executes ops specified by fn
on each replica. If args
or kwargs
have
"per-replica" values, such as those produced by a "distributed Dataset
",
when fn
is executed on a particular replica, it will be executed with the
component of those "per-replica" values that correspond to that replica.
fn
may call tf.distribute.get_replica_context()
to access members such
as all_reduce
.
All arguments in args
or kwargs
should either be nest of tensors or
per-replica objects containing tensors or composite tensors.
IMPORTANT: Depending on the implementation of tf.distribute.Strategy
and
whether eager execution is enabled, fn
may be called one or more times (
once for each replica).
fn
: The function to run. The output must be a tf.nest
of Tensor
s.args
: (Optional) Positional arguments to fn
.kwargs
: (Optional) Keyword arguments to fn
.Merged return value of fn
across replicas. The structure of the return
value is the same as the return value from fn
. Each element in the
structure can either be "per-replica" Tensor
objects or Tensor
s
(for example, if running on a single replica).
reduce
reduce( reduce_op, value, axis )
Reduce value
across replicas.
Given a per-replica value returned by experimental_run_v2
, say a
per-example loss, the batch will be divided across all the replicas. This
function allows you to aggregate across replicas and optionally also across
batch elements. For example, if you have a global batch size of 8 and 2
replicas, values for examples [0, 1, 2, 3]
will be on replica 0 and
[4, 5, 6, 7]
will be on replica 1. By default, reduce
will just
aggregate across replicas, returning [0+4, 1+5, 2+6, 3+7]
. This is useful
when each replica is computing a scalar or some other value that doesn't
have a "batch" dimension (like a gradient). More often you will want to
aggregate across the global batch, which you can get by specifying the batch
dimension as the axis
, typically axis=0
. In this case it would return a
scalar 0+1+2+3+4+5+6+7
.
If there is a last partial batch, you will need to specify an axis so
that the resulting shape is consistent across replicas. So if the last
batch has size 6 and it is divided into [0, 1, 2, 3] and [4, 5], you
would get a shape mismatch unless you specify axis=0
. If you specify
tf.distribute.ReduceOp.MEAN
, using axis=0
will use the correct
denominator of 6. Contrast this with computing reduce_mean
to get a
scalar value on each replica and this function to average those means,
which will weigh some values 1/8
and others 1/4
.
reduce_op
: A tf.distribute.ReduceOp
value specifying how values should
be combined.value
: A "per replica" value, e.g. returned by experimental_run_v2
to
be combined into a single tensor.axis
: Specifies the dimension to reduce along within each
replica's tensor. Should typically be set to the batch dimension, or
None
to only reduce across replicas (e.g. if the tensor has no batch
dimension).A Tensor
.
scope
scope()
Returns a context manager selecting this Strategy as current.
Inside a with strategy.scope():
code block, this thread
will use a variable creator set by strategy
, and will
enter its "cross-replica context".
A context manager.


radium-filters demo
Set "hidden: true" filter terms programmatically:
Results
Selected Departments
{{_selectedDepartments}}
Selected Customer
{{_selectedCustomer}}
Selected Affiliates
{{item}}
Selected States
{{item}}
Selected Sales Rep
{{_selectedRep}}
Selected Quarter
{{_selectedQtr}}
Ad-hoc Filter
{{_adhoc}}


The production-find command is used to find Soar productions by matching a given pattern against the production components. Productions may be found that test a particular left-hand side pattern or produce particular right-hand side preferences. For convenience, the production-find command has the predefined alias pf.
The syntax of pattern is exactly the syntax of a sequence of clauses within a Soar production. In addition, the symbol * may be used as a wildcard for an attribute or value. Note that variables names do not have to match the specific names used in productions.
Find productions that test that some object gumby has an attribute alive with value t. In addition, limit the rules to only those that test an operator named foo:
production-find {(<s> ^gumby <gv> ^operator.name foo)(<gv> ^alive t)}
Find productions that propose the operator foo:
production-find -rhs {(<x> ^operator <op> +)(<op> ^name foo)}
Find chunks that test the attribute ^pokey:
production-find -chunks {(<x> ^pokey *)}


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object edu.biu.scapi.tools.Factories.BCFactory
public final class BCFactory
Suppose we wish to wrap a higher-level cryptographic element that uses a primitive interface in its inner implementation. For example, HMAC of BC holds a Digest interface but requires a specific digest to invoke its main functions. However, the users of our tool are not familiar with the classes of BC. Yet if we wish to wrap this class, we will need to instantiate a concrete Digest (specified by the user) to the wrapped BcHMAC. The aim of the BCFactory is to translate from an algorithm name string to an external library instance. For example, in BcHMAC the user passes a hash name that eventually will be translated to a digest. If the user passed the "SHA1" string, the translation tool generates the related SHA1 digest.
| Method Summary | |
|---|---|
org.bouncycastle.crypto.AsymmetricBlockCipher |
getAsymetricBlockCipher(java.lang.String name)
Returns the equivalent BC asymmetric block cipher according to the specified name. |
org.bouncycastle.crypto.BlockCipher |
getBlockCipher(java.lang.String name)
Returns the equivalent BC block cipher according to the specified name. |
org.bouncycastle.crypto.Digest |
getDigest(java.lang.String name)
Returns the equivalent BC digest according to the specified name. |
static BCFactory |
getInstance()
|
org.bouncycastle.crypto.StreamCipher |
getStreamCipher(java.lang.String name)
Returns the equivalent BC stream cipher according to the specified name. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public org.bouncycastle.crypto.BlockCipher getBlockCipher(java.lang.String name) throws FactoriesException
name
- the name of the pseudo random permutation equivalent to the BC block cipher
BlockCipher
object
FactoriesException
public org.bouncycastle.crypto.AsymmetricBlockCipher getAsymetricBlockCipher(java.lang.String name) throws FactoriesException
name
- the name of the trapdoor permutation equivalent to the BC asymmetric block cipher
AsymmetricBlockCipher
object
FactoriesException
public org.bouncycastle.crypto.Digest getDigest(java.lang.String name) throws FactoriesException
name
- the name of the collision resistant hash equivalent to the BC digest cipher
Digest
object
FactoriesException
public org.bouncycastle.crypto.StreamCipher getStreamCipher(java.lang.String name) throws FactoriesException
name
- the name of the pseudo random generator equivalent to the BC stream cipher
StreamCipher
object
FactoriesException
public static BCFactory getInstance()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


The emails input is fully stylable and does not take opinions on how to do so. Semantically, it stays as close to a regular input field as possible and uses default DOM elements to provide free accessbility. Below are a couple of example forms. This first is styled to match a specific brand: Miro. The other is unstyled.
For more information about implementation & configuration options, check out the documentation at GitHub.


|
MSP PMBus Library Users Guide
v<IP_ADDRESS>
|
The MSP430™ PMBus software library is based on PMBus v1.2, but does not support the following features defined in the PMBus v1.2 specification:
The MSP430™ PMBus software library is implemented as a level on top of the MSP430™ SMBus library.
The application consists of the code to initialize the MSP430™ hardware and makes calls to the PMBus functions. The PMBus level process the commands it receives from the application level and makes the required function calls to the SMBus library. The SMBus level interfaces with the I2C peripheral to communicate with the PMBus slave device.
See the examples included with the release package for further details on using the library.
The PMBus level source code is device independent, but the SMBus level interacts with the microcontroller I2C peripheral and is device dependent. The PMBus libraries and examples were developed for the following MSP430™ microcontroller families:
The initialize the PMBus library for use the application must first initialize the I2C peripheral and, if desired GPIO pins for SMBALERT and CONTROL lines. Then the application must call the PMBus_init function before any PMBus commands.
The PMBus library implements PEC as an optional feature. Applications that require PEC must enable this feature by calling the PMBus_enablePEC function before any PMBus commands are sent to the slave device.
Generating the PEC byte involves invoking the CRC-8 algorithm provided in a function. The CRC function performs an XOR operation on the input data stream with the CRC-8 polynomial C(x) = x8 + x2 + x1 + 1. This calculation is done in the order bits are received and also can be considered a brute force polynomial division technique. The algorithm used to calculate the CRC byte is modified from the application report CRC Implementation With the MSP430.[3]
PMBus master devices that implement PEC have either prior knowledge of whether or not the slave supports the feature, or they are expected to determine this by reading information from the slave. The master transmitter generates the PEC byte and inserts it at the end of the transmit data stream. If the PEC byte is not acknowledged by the slave, then the transaction is considered invalid.
If the master is receiving, then it generates the extra clock cycles needed to receive the PEC byte from the slave as the last byte of the transaction. Master receivers can then check the validity of the PEC byte by generating their own PEC and comparing it to the one received from the slave device. PMBus slave devices that implement PEC must be able to respond to master devices with or without PEC support. Slave transmitters must have the capability of generating PEC bytes and inserting them as the final byte of any transaction if requested. Slave receivers must be able to accept the PEC byte, check to see if the byte is valid or not, and respond with an ACK/NACK accordingly.[2]
The PMBus specification defines set of command for interfacing with power management devices. Each command is assigned a one byte command code. Some commands have defined transmit and receive protocols for interfacing with the slave device. There are some command codes whose protocols are left as device specific. The MSP430™ PMBus library supports both types of commands
See the API Guide for detailed documentation of all the PMBus functions.
For all the pre-defined protocol PMBus commands, applications can use the PMBus_cmdRead and PMBus_cmdWrite functions. The PMBus library will translate the passed in command code to the required protocol automatically. Define's for all the standard command codes can be found in the PMBus library header file.
A example usage of the PMBus "VIN_ON" command on a TPS544C20 device might look like:
// Write VIN_ON 4.25 V Command_Buff[0] = 0x11; //LSB Command_Buff[1] = 0xF0; //MSB int8_t ret = PMBus_cmdWrite(0x1B, // TPS544C20 Device Address PMB_VIN_ON, // #define of the VIN_ON 0x35 command code - see pmbus.h Command_Buff, // TX buffer 2, // TX bytes sent 100000); // Software response timeout cycles
The MSP430™ PMBus library provides functions to call the low level SMBus command protocols. These functions enable applications to access the device-specfic PMBus commands. The function names map directly to SMBus protocol names to enable easy mapping from the slave device's PMBus documentation to MSP430™ PMBus function calls.
For example, the PMBus DEVICE_CODE (0xFC) command is manufacturer specific. The TPS544C20 device device defines this command's read transaction to use the SMBus "ReadWord" protocol.
// Verify the ID of the device (0x0153 for TPS544C20 Rev 3) // Note that DEVICE_CODE (0xFC) is manufacturer specific but it's accessed // with Read_Word/Write_Word commands. // So, we call the specific ReadWord function directly uint8_t Resp_Buff[PMB_MAX_PACKET_SIZE + 4]; if ((PMBus_cmdReadWord(TPS544C20_ADDRESS, 0xFC, Resp_Buff, timeout) != PMBUS_RET_OK) || ( Resp_Buff[0] != 0x53) || ( Resp_Buff[1] != 0x01) ) { // Stay in loop if device didn't respond OK while(1) ; }
In the event that a SMBALERT was detected, the PMBus library provides a PMBus_ReceiveByteARA function to enable applications to send the receive byte packet to the alert response address to determine which device triggerd the alert. Support for SMBALERT and ARA is optional, and manufacturer specific. Applications must consult the device documentation for usage details for their PMBus slave device.
An example application showing the usage of SMBALERT and ARA with the TPS544C20 is included in the examples included in the installation package.
Applications may define a CONTROL line to provide on/off control for PMBus devices. An example application showing how to configure a MSP430™ microcontroller GPIO pin as a CONTROL line is included in the examples directory.


Hi, i'm
MELISSA WANGUI
an aspiring software developer
https://github.com/melissa-koi
Reading Novels
Anime/movies
Driving
This is a website used for ordering healthy cooked meals.Omnifood is written using html5 and css3.It is still a working progress but will be ready soon.If you would like to collaborate feel free to contact me.


Semarang Integrated Parking System
Semarang Integrated Parking System
The Best Way to Manage Your Parking System
dashboard
Dashboard V2.0
Login to Semarang Integrated Parking System Dashboard.
dashboard
Dashboard V1.0
Login to Semarang Integrated Parking System Dashboard.
stay_primary_portrait
SIPS App
Login to Semarang Integrated Parking System App.


Here is the logged output when two clients ask to factor two integers near-simultanesouly. The client on the host <IP_ADDRESS> asks to factor the prime number 359. The client on the host <IP_ADDRESS> asks to factor the number 347 (also a prime).
The NDC is placed between parantheses in bold. The NDC information consists of the client's host and the number to factor. Since the two requests have distinct NDCs, their output can be easily separated.
0 INFO [main] () - NumberCruncherServer bound and ready to serve. 276493 INFO [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Beginning to factor. 276495 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 2 is a factor. 276699 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 3 is a factor. 276908 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 4 is a factor. 276983 INFO [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Beginning to factor. 276984 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 2 is a factor. 277115 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 5 is a factor. 277188 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 3 is a factor. 277318 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 6 is a factor. 277398 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 4 is a factor. 277520 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 7 is a factor. 277605 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 5 is a factor. 277728 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 8 is a factor. 277808 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 6 is a factor. 277931 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 9 is a factor. 278019 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 7 is a factor. 278138 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 10 is a factor. 278228 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 8 is a factor. 278348 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 11 is a factor. 278438 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 9 is a factor. 278559 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 12 is a factor. 278648 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 10 is a factor. 278768 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 13 is a factor. 278858 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 11 is a factor. 278970 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 14 is a factor. 279068 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 12 is a factor. 279178 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 15 is a factor. 279270 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 13 is a factor. 279387 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 16 is a factor. 279478 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 14 is a factor. 279598 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 17 is a factor. 279688 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 15 is a factor. 279808 DEBUG [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Trying to see if 18 is a factor. 279898 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 16 is a factor. 280018 INFO [RMI TCP Connection(7)-<IP_ADDRESS>] (<IP_ADDRESS> 359) - Found factor 359 280108 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 17 is a factor. 280318 DEBUG [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Trying to see if 18 is a factor. 280520 INFO [RMI TCP Connection(8)-<IP_ADDRESS>] (<IP_ADDRESS> 347) - Found factor 347


Sonny Dewey is the most richly enigmatic character Robert Duvall has ever played - a Pentecostal preacher from Texas who sees himself as God's messenger, yet he's also a sinner, a man prone to violence. "The Apostle" is Duvall's third directorial effort, and it is an uncompromising effort but it is not as successful a portrait of a torn man as I had expected.
At the start of the film, we see Sonny stopping to see the severe wreckage from a bad car accident. He runs over to a badly wounded driver and tells him that the Lord will save him. Somebody better tell Sonny that the Lord should save him, too. Sonny's wife (Farrah Fawcett) is about to divorce him, although he doesn't want to be separated from his kids. Eventually, Sonny takes out his anger on his wife's lover, a pastor, whom he knocks out with a baseball bat at his kids' baseball game. Knowing that he may face prison, Sonny skips town and decides to rebaptize himself as E.F., the Apostle. In the process, he leaves behind his old mother (country singer June Carter Cash) and his two lovely children in Texas.
Sonny migrates to a chiefly black bayou town called Lafayette in Louisiana where, within minutes, he casts a spell on the entire population. A DJ already knows him as "The Apostle," and lets Sonny advertise on the local radio station about finding some followers, as long as he doesn't speak in tongues. A young mechanic lets Sonny stay at his house and gives him a sports car. Sonny eventually convinces a retired local minister (John Beasley) to rebuild a church, and persuades many black churchgoers to join his congregation by giving away food supplies and by chanting with great energy on the air waves. He's a man impossible to resist and to dislike - a man eager to please God and all who follow Him. A secretary (Miranda Richardson) is also struck by his charisma, and begins dating him.
Sonny's past, however, continues to intrude upon his escape.  But Sonny is not going to down without a fight - he's on God's side and always asks Him for advice.
The one question we're left with in "The Apostle" is just who is Sonny? As Kris Kristofferson once put it, he's a walking contradiction. Sonny loves God and seeks to carry out his Word, but he doesn't necessarily practice what he preaches. For starters, he's a man prone to violence considering he knocks out his wife's lover, and has a fist fight with a redneck racist (Billy Bob Thornton) at his new church. There are obviously demons that Sonny has to grapple with, but what are they? Where does his violent behavior stem from? I have known some ministers to do wild things and go to prison as punishment - they are only human, after all - but what kind of man is Sonny beyond his wild acts of faith and his sermons?
The problem lies not with Duvall's performance, but with the various plot holes in the story. For one, why is he thrown out of his congregation in Texas when everyone seems to love him? Did his wife actually run it? And why does his wife leave him? There is something to suggest that Sonny is a philanderer but writer-director Duvall never dwells into it, or Sonny's past.
"The Apostle" is an accomplished piece of filmmaking; it is well-acted and well-staged. The scenes in the churches where everyone preaches and sings to the Lord are dazzling and enticing to witness. An interesting sideline to the film is that most of the supporting players are actual churchgoers in Lafayette bringing a level of authenticity that Hollywood rarely reaches. Particularly compelling is Robert Duvall who brings a certain dignity and humanity that should not go unrewarded or unnoticed - he's always on the move, and always dancing and praising the Lord with vigor. Also worth mentioning is the ubiquitous Billy Bob Thornton as the redneck who has an incredible scene where he threatens to bulldoze Sonny's church and, right before our eyes, Sonny manages to convert him.
"The Apostle" is a fine film made in the same spirit and atmospheric look as Billy Bob Thornton's own directorial effort "Sling Blade," another tale set in the South. Both films succeed in documenting the people in the South without condescending them or presenting them as stereotypes. "The Apostle," however, is more likely to be remembered for Duvall's tour-de-force performance than anything else. Like "Kundun," another film about a spiritual leader, "The Apostle" leaves you with more questions than answers.
For more reviews, check out JERRY AT THE MOVIES at http://buffs.moviething.com/buffs/faust/
E-mail me with questions, concerns or complaints at<EMAIL_ADDRESS>or at<EMAIL_ADDRESS>The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


| Home | Tasks | Slides | About Bauska | References |
Keyboard commands in Reveal.JS: S - Speaker view; F - Full screen; Esc - Outline; Home - To the 1st slide; End - To the last slide; arrows Left, Right, Up, Down.
Presentations for schools etc.
Searching the Internet: Handout


New components
with corresponding reference properties
and new properties
Two new properties to reference catalogs:
Expected cardinalities for some properties have been put in concrete terms in the Ontology and the component metadata. While this should be regarded largely as a bug fix, i.e. spelling out assumptions that were already implicit in the specification, this may lead to incompatibilities for datasets violating these assumptions.


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.xml.transform.TransformerFactory javax.xml.transform.sax.SAXTransformerFactory org.apache.xalan.processor.TransformerFactoryImpl
public class TransformerFactoryImpl
The TransformerFactoryImpl, which implements the TRaX TransformerFactory interface, processes XSLT stylesheets into a Templates object (a StylesheetRoot).
| Field Summary | |
|---|---|
static java.lang.String |
FEATURE_INCREMENTAL
Static string to be used for incremental feature |
static java.lang.String |
FEATURE_OPTIMIZE
Static string to be used for optimize feature |
static java.lang.String |
FEATURE_SOURCE_LOCATION
Static string to be used for source_location feature |
private java.lang.String |
m_DOMsystemID
The systemID that was specified in processFromNode(Node node, String systemID). |
private javax.xml.transform.ErrorListener |
m_errorListener
The error listener. |
private boolean |
m_incremental
Flag set by FEATURE_INCREMENTAL. |
private boolean |
m_isSecureProcessing
State of secure processing feature. |
private boolean |
m_optimize
Flag set by FEATURE_OPTIMIZE. |
private boolean |
m_source_location
Flag set by FEATURE_SOURCE_LOCATION. |
(package private) javax.xml.transform.URIResolver |
m_uriResolver
The object that implements the URIResolver interface, or null. |
static java.lang.String |
XSLT_PROPERTIES
The path/filename of the property file: XSLTInfo.properties Maintenance note: see also org.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES |
| Fields inherited from class javax.xml.transform.sax.SAXTransformerFactory |
|---|
FEATURE, FEATURE_XMLFILTER |
| Constructor Summary | |
|---|---|
TransformerFactoryImpl()
Constructor TransformerFactoryImpl |
| Method Summary | |
|---|---|
javax.xml.transform.Source |
getAssociatedStylesheet(javax.xml.transform.Source source,
java.lang.String media,
java.lang.String title,
java.lang.String charset)
Get InputSource specification(s) that are associated with the given document specified in the source param, via the xml-stylesheet processing instruction (see http://www.w3.org/TR/xml-stylesheet/), and that matches the given criteria. |
java.lang.Object |
getAttribute(java.lang.String name)
Allows the user to retrieve specific attributes on the underlying implementation. |
(package private) java.lang.String |
getDOMsystemID()
The systemID that was specified in processFromNode(Node node, String systemID). |
javax.xml.transform.ErrorListener |
getErrorListener()
Get the error listener in effect for the TransformerFactory. |
boolean |
getFeature(java.lang.String name)
Look up the value of a feature. |
javax.xml.transform.URIResolver |
getURIResolver()
Get the object that will be used to resolve URIs used in xsl:import, etc. |
boolean |
isSecureProcessing()
Return the state of the secure processing feature. |
javax.xml.transform.Templates |
newTemplates(javax.xml.transform.Source source)
Process the source into a Templates object, which is likely a compiled representation of the source. |
javax.xml.transform.sax.TemplatesHandler |
newTemplatesHandler()
Create a new Transformer object that performs a copy of the source to the result. |
javax.xml.transform.Transformer |
newTransformer()
Create a new Transformer object that performs a copy of the source to the result. |
javax.xml.transform.Transformer |
newTransformer(javax.xml.transform.Source source)
Process the source into a Transformer object. |
javax.xml.transform.sax.TransformerHandler |
newTransformerHandler()
Get a TransformerHandler object that can process SAX ContentHandler events into a Result. |
javax.xml.transform.sax.TransformerHandler |
newTransformerHandler(javax.xml.transform.Source src)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the transformation instructions specified by the argument. |
javax.xml.transform.sax.TransformerHandler |
newTransformerHandler(javax.xml.transform.Templates templates)
Get a TransformerHandler object that can process SAX ContentHandler events into a Result, based on the Templates argument. |
org.xml.sax.XMLFilter |
newXMLFilter(javax.xml.transform.Source src)
Create an XMLFilter that uses the given source as the transformation instructions. |
org.xml.sax.XMLFilter |
newXMLFilter(javax.xml.transform.Templates templates)
Create an XMLFilter that uses the given source as the transformation instructions. |
javax.xml.transform.Templates |
processFromNode(org.w3c.dom.Node node)
|
(package private) javax.xml.transform.Templates |
processFromNode(org.w3c.dom.Node node,
java.lang.String systemID)
Process the stylesheet from a DOM tree, if the processor supports the "http://xml.org/trax/features/dom/input" feature. |
void |
setAttribute(java.lang.String name,
java.lang.Object value)
Allows the user to set specific attributes on the underlying implementation. |
void |
setErrorListener(javax.xml.transform.ErrorListener listener)
Set an error listener for the TransformerFactory. |
void |
setFeature(java.lang.String name,
boolean value)
Set a feature for this TransformerFactory and Transformer s
or Template s created by this factory. |
void |
setURIResolver(javax.xml.transform.URIResolver resolver)
Set an object that will be used to resolve URIs used in xsl:import, etc. |
| Methods inherited from class javax.xml.transform.TransformerFactory |
|---|
newInstance |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String XSLT_PROPERTIES
org.apache.xpath.functions.FuncSystemProperty.XSLT_PROPERTIES
private boolean m_isSecureProcessing
State of secure processing feature.
public static final java.lang.String FEATURE_INCREMENTAL
public static final java.lang.String FEATURE_OPTIMIZE
public static final java.lang.String FEATURE_SOURCE_LOCATION
private java.lang.String m_DOMsystemID
private boolean m_optimize
private boolean m_source_location
private boolean m_incremental
javax.xml.transform.URIResolver m_uriResolver
private javax.xml.transform.ErrorListener m_errorListener
| Constructor Detail |
|---|
public TransformerFactoryImpl()
| Method Detail |
|---|
public javax.xml.transform.Templates processFromNode(org.w3c.dom.Node node) throws javax.xml.transform.TransformerConfigurationException
javax.xml.transform.TransformerConfigurationException
java.lang.String getDOMsystemID()
javax.xml.transform.Templates processFromNode(org.w3c.dom.Node node, java.lang.String systemID) throws javax.xml.transform.TransformerConfigurationException
node
- A DOM tree which must contain
valid transform instructions that this processor understands.systemID
- The systemID from where xsl:includes and xsl:imports
should be resolved from.
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.Source getAssociatedStylesheet(javax.xml.transform.Source source, java.lang.String media, java.lang.String title, java.lang.String charset) throws javax.xml.transform.TransformerConfigurationException
Note that DOM2 has it's own mechanism for discovering stylesheets. Therefore, there isn't a DOM version of this method.
getAssociatedStylesheet
in class javax.xml.transform.TransformerFactory
source
- The XML source that is to be searched.media
- The media attribute to be matched. May be null, in which
case the prefered templates will be used (i.e. alternate = no).title
- The value of the title attribute to match. May be null.charset
- The value of the charset attribute to match. May be null.
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.sax.TemplatesHandler newTemplatesHandler() throws javax.xml.transform.TransformerConfigurationException
newTemplatesHandler
in class javax.xml.transform.sax.SAXTransformerFactory
javax.xml.transform.TransformerConfigurationException
- May throw this during
the parse when it is constructing the
Templates object and fails.public void setFeature(java.lang.String name, boolean value) throws javax.xml.transform.TransformerConfigurationException
Set a feature for this TransformerFactory
and Transformer
s
or Template
s created by this factory.
Feature names are fully qualified URI
s.
Implementations may define their own features.
An TransformerConfigurationException
is thrown if this TransformerFactory
or the
Transformer
s or Template
s it creates cannot support the feature.
It is possible for an TransformerFactory
to expose a feature value but be unable to change its state.
See TransformerFactory
for full documentation of specific features.
setFeature
in class javax.xml.transform.TransformerFactory
name
- Feature name.value
- Is feature state true
or false
.
javax.xml.transform.TransformerConfigurationException
- if this TransformerFactory
or the Transformer
s or Template
s it creates cannot support this feature.
java.lang.NullPointerException
- If the name
parameter is null.public boolean getFeature(java.lang.String name)
The feature name is any fully-qualified URI. It is possible for an TransformerFactory to recognize a feature name but to be unable to return its value; this is especially true in the case of an adapter for a SAX1 Parser, which has no way of knowing whether the underlying parser is validating, for example.
getFeature
in class javax.xml.transform.TransformerFactory
name
- The feature name, which is a fully-qualified URI.
public void setAttribute(java.lang.String name, java.lang.Object value) throws java.lang.IllegalArgumentException
setAttribute
in class javax.xml.transform.TransformerFactory
name
- The name of the attribute.value
- The value of the attribute; Boolean or String="true"|"false"
java.lang.IllegalArgumentException
- thrown if the underlying
implementation doesn't recognize the attribute.public java.lang.Object getAttribute(java.lang.String name) throws java.lang.IllegalArgumentException
getAttribute
in class javax.xml.transform.TransformerFactory
name
- The name of the attribute.
java.lang.IllegalArgumentException
- thrown if the underlying
implementation doesn't recognize the attribute.public org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Source src) throws javax.xml.transform.TransformerConfigurationException
newXMLFilter
in class javax.xml.transform.sax.SAXTransformerFactory
src
- The source of the transformation instructions.
javax.xml.transform.TransformerConfigurationException
public org.xml.sax.XMLFilter newXMLFilter(javax.xml.transform.Templates templates) throws javax.xml.transform.TransformerConfigurationException
newXMLFilter
in class javax.xml.transform.sax.SAXTransformerFactory
templates
- non-null reference to Templates object.
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Source src) throws javax.xml.transform.TransformerConfigurationException
newTransformerHandler
in class javax.xml.transform.sax.SAXTransformerFactory
src
- The source of the transformation instructions.
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.sax.TransformerHandler newTransformerHandler(javax.xml.transform.Templates templates) throws javax.xml.transform.TransformerConfigurationException
newTransformerHandler
in class javax.xml.transform.sax.SAXTransformerFactory
templates
- The source of the transformation instructions.
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.sax.TransformerHandler newTransformerHandler() throws javax.xml.transform.TransformerConfigurationException
newTransformerHandler
in class javax.xml.transform.sax.SAXTransformerFactory
javax.xml.transform.TransformerConfigurationException
public javax.xml.transform.Transformer newTransformer(javax.xml.transform.Source source) throws javax.xml.transform.TransformerConfigurationException
newTransformer
in class javax.xml.transform.TransformerFactory
source
- An object that holds a URL, input stream, etc.
javax.xml.transform.TransformerConfigurationException
- May throw this during the parse when it
is constructing the Templates object and fails.public javax.xml.transform.Transformer newTransformer() throws javax.xml.transform.TransformerConfigurationException
newTransformer
in class javax.xml.transform.TransformerFactory
javax.xml.transform.TransformerConfigurationException
- May throw this during
the parse when it is constructing the
Templates object and it fails.public javax.xml.transform.Templates newTemplates(javax.xml.transform.Source source) throws javax.xml.transform.TransformerConfigurationException
newTemplates
in class javax.xml.transform.TransformerFactory
source
- An object that holds a URL, input stream, etc.
javax.xml.transform.TransformerConfigurationException
- May throw this during the parse when it
is constructing the Templates object and fails.public void setURIResolver(javax.xml.transform.URIResolver resolver)
setURIResolver
in class javax.xml.transform.TransformerFactory
resolver
- An object that implements the URIResolver interface,
or null.public javax.xml.transform.URIResolver getURIResolver()
getURIResolver
in class javax.xml.transform.TransformerFactory
public javax.xml.transform.ErrorListener getErrorListener()
getErrorListener
in class javax.xml.transform.TransformerFactory
public void setErrorListener(javax.xml.transform.ErrorListener listener) throws java.lang.IllegalArgumentException
setErrorListener
in class javax.xml.transform.TransformerFactory
listener
- Must be a non-null reference to an ErrorListener.
java.lang.IllegalArgumentException
- if the listener argument is null.public boolean isSecureProcessing()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


Customers Of Actions Funnel
- Customers Funnels are aggregated count of events per customer according to time periods. They are started to be counted from the user first engagement event such as download or signup.
-
What is the Customer of Action?
After the user creation event, there might be more events which are probably stored in your system which they are called Customer Actions. Example of these kind of actions; Adding Payment Method, Adding Location,first order transaction, etc. Customer Actions are able to be added to ElasticSearch indexes manually while it is connecting the Customers data Source. In the page Sessions & Customers Data Source, columns name of the actions are specified in the Action Column Names in Data Source. -
What are Time Periods of Funnels?
There are daily, weekly, monthly and hourly Funnels. daily, weekly, monthly Funnels are calculated as total transaction count per action per day/week/month. Hourly Funnel is calculated as average of total transaction count per action per hour -
How do I see the Dimensional Funnel?
Each Dimensionally Funnels is created individually for dimension. Dimension columns are also specified in the page Sessions & Customers Data Source. After that, you may select dimension from filters section. -
How do I select Funnels of start - end dates?
Funnels of start date is not able to be selected. However it is possible to select end date from filters section.


|
SideCar
|
Namespace for the XML-RPC utility library. More...
Data Structures | |
| class | XmlRpcClient |
| A class to send XML RPC requests to a server and return the results. More... | |
| class | XmlRpcDispatch |
| An object which monitors file descriptors for events and performs callbacks when interesting events happen. More... | |
| class | XmlRpcErrorHandler |
| An interface allowing custom handling of error message reporting. More... | |
| class | XmlRpcException |
| A class representing an error. More... | |
| class | XmlRpcLogHandler |
| An interface allowing custom handling of informational message reporting. More... | |
| class | XmlRpcServer |
| A class to handle XML RPC requests. More... | |
| class | XmlRpcServerConnection |
| A class to handle XML RPC requests from a particular client. More... | |
| class | XmlRpcServerMethod |
| Abstract class representing a single RPC method. More... | |
| class | XmlRpcSocket |
| A platform-independent socket API. More... | |
| class | XmlRpcSource |
| An RPC source represents a file descriptor to monitor. More... | |
| class | XmlRpcUtil |
| Utilities for XML parsing, encoding, and decoding and message handlers. More... | |
| class | XmlRpcValue |
| RPC method arguments and results are represented by Values. More... | |
Functions | |
| int | getVerbosity () |
| Returns log message verbosity. This is short for XmlRpcLogHandler::getVerbosity() | |
| void | setVerbosity (int level) |
| Sets log message verbosity. This is short for XmlRpcLogHandler::setVerbosity(level) | |
| std::ostream & | operator<< (std::ostream &os, const XmlRpc::XmlRpcValue &v) |
Variables | |
| const char | XMLRPC_VERSION [] |
| Version identifier. | |
Namespace for the XML-RPC utility library.
The XmlRpc++ library is an implementation of the XmlRpc protocol written in C++. It was written by Chris Morley, and is released under the GNU LGPL license.
Copyright (C) 2003 by Chris Morley
See The XmlRpc++ Library for additional information.


Weird, this 10-year-old's Christmas list is exactly the same as mine
by Chloe BryanYou're probably not going to get everything on your Christmas list, you might as well shoot for the stars.
Not sure where to start? Take notes from this 10-year-old, whose Christmas list is the most luxurious list of items ever compiled.
The girl's dad, clearly awestruck by his child's knowledge of luxury goods, tweeted the list on Wednesday. "My 10 year old daughter must be out of her mind with this Christmas list," he wrote.
It is, in a word, inspiring. On the list are new shoes (practical!), a Hydro Flask (trendy!), and an alarm clock (useful!), but she also asks for Gucci slides, a Chanel bag, an iPhone 11, a "real Bunny" as well as clothes for the bunny, and — my personal favorite — four thousand dollars.
Take a look and tag yourself. I am "AirPods" with "laundry detergent" rising. Also, I am printing out this tweet and using it as my own Christmas list this year.


Introduction
This is the tenth part of the Twisted tutorial Twisted from Scratch, or The Evolution of Finger.
In this part, we separate the application code that launches a finger service from the library code which defines a finger service, placing the application in a Twisted Application Configuration (.tac) file. We also move configuration (such as HTML templates) into separate files. Configuration and deployment with .tac and twistd are introduced in Using the Twisted Application Framework.
Organization
Now this code, while quite modular and well-designed, isn't
properly organized. Everything above the application=
belongs in a
module, and the HTML templates all belong in separate files.
We can use the templateFile
and templateDirectory
attributes to indicate what HTML template file to use for each Page, and where
to look for it.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
# organized-finger.tac # eg: twistd -ny organized-finger.tac import finger from twisted.internet import protocol, reactor, defer from twisted.spread import pb from twisted.web import resource, server from twisted.application import internet, service, strports from twisted.python import log application = service.Application('finger', uid=1, gid=1) f = finger.FingerService('/etc/users') serviceCollection = service.IServiceCollection(application) internet.TCPServer(79, finger.IFingerFactory(f) ).setServiceParent(serviceCollection) site = server.Site(resource.IResource(f)) internet.TCPServer(8000, site ).setServiceParent(serviceCollection) internet.SSLServer(443, site, finger.ServerContextFactory() ).setServiceParent(serviceCollection) i = finger.IIRCClientFactory(f) i.nickname = 'fingerbot' internet.TCPClient('irc.freenode.org', 6667, i ).setServiceParent(serviceCollection) internet.TCPServer(8889, pb.PBServerFactory(finger.IPerspectiveFinger(f)) ).setServiceParent(serviceCollection)
Note that our program is now quite separated. We have:
- Code (in the module)
- Configuration (file above)
- Presentation (templates)
- Content (
/etc/users
) - Deployment (twistd)
Easy Configuration
We can also supply easy configuration for common cases with a makeService method that will also help build .tap files later:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
# Easy configuration # makeService from finger module def makeService(config): # finger on port 79 s = service.MultiService() f = FingerService(config['file']) h = internet.TCPServer(79, IFingerFactory(f)) h.setServiceParent(s) # website on port 8000 r = resource.IResource(f) r.templateDirectory = config['templates'] site = server.Site(r) j = internet.TCPServer(8000, site) j.setServiceParent(s) # ssl on port 443 if config.get('ssl'): k = internet.SSLServer(443, site, ServerContextFactory()) k.setServiceParent(s) # irc fingerbot if config.has_key('ircnick'): i = IIRCClientFactory(f) i.nickname = config['ircnick'] ircserver = config['ircserver'] b = internet.TCPClient(ircserver, 6667, i) b.setServiceParent(s) # Pespective Broker on port 8889 if config.has_key('pbport'): m = internet.TCPServer( int(config['pbport']), pb.PBServerFactory(IPerspectiveFinger(f))) m.setServiceParent(s) return s
And we can write simpler files now:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
# simple-finger.tac # eg: twistd -ny simple-finger.tac from twisted.application import service import finger options = { 'file': '/etc/users', 'templates': '/usr/share/finger/templates', 'ircnick': 'fingerbot', 'ircserver': 'irc.freenode.net', 'pbport': 8889, 'ssl': 'ssl=0' } ser = finger.makeService(options) application = service.Application('finger', uid=1, gid=1) ser.setServiceParent(service.IServiceCollection(application))
% twisted -ny simple-finger.tac
Note: the finger user still has ultimate power: he can use
makeService
, or he can use the lower-level interface if he has
specific needs (maybe an IRC server on some other port? Maybe we want the
non-SSL webserver to listen only locally? etc. etc.) This is an important
design principle: never force a layer of abstraction: allow usage of layers of
abstractions.
The pasta theory of design:
- Spaghetti: each piece of code interacts with every other piece of code [can be implemented with GOTO, functions, objects]
- Lasagna: code has carefully designed layers. Each layer is, in theory independent. However low-level layers usually cannot be used easily, and high-level layers depend on low-level layers.
- Ravioli: each part of the code is useful by itself. There is a thin layer of interfaces between various parts [the sauce]. Each part can be usefully be used elsewhere.
- ...but sometimes, the user just wants to order
Ravioli
, so one coarse-grain easily definable layer of abstraction on top of it all can be useful.


|
| class | BufferFacet |
| | Provides a simple std::vector view of an AudioBufferList. More...
|
| |
| class | DelayBuffer |
| | Circular buffer that acts as a delay for samples. More...
|
| |
| class | Engine |
| |
| struct | InputBuffer |
| | Maintains a buffer of PCM samples which is used to save samples from an upstream node. More...
|
| |
| class | Instrument |
| | Representation of an instrument in an SF2 file. More...
|
| |
| class | InstrumentCollection |
| | Collection of all of the Entity::Instrument instances in an SF2 file, each of which is wrapped in a Render::Instrument instance for use during audio rendering. More...
|
| |
| class | InstrumentZone |
| | A specialization of a Zone for an Instrument. More...
|
| |
| class | LFO |
| | Implementation of a low-frequency triangular oscillator. More...
|
| |
| class | Modulator |
| | Render-side modulator that understands how to fetch source values that will be used to modulate voice state. More...
|
| |
| class | Preset |
| | Represents a preset that knows how to emit sounds for MIDI events when it is active. More...
|
| |
| class | PresetZone |
| | A specialization of a Zone for a Preset. More...
|
| |
| class | Range |
| | Representation of a range of values between low and high values inclusive. More...
|
| |
| class | WithZones |
| | Base class for entities that contain a collection of zones. More...
|
| |
| class | Zone |
| | A zone represents a collection of generator and modulator settings that apply to a range of MIDI key and velocity values. More...
|
| |
| class | ZoneCollection |
| | Templated collection of zones. More...
|
| |
Classes that allow for audio sample rendering of SF2 sample data.


Word History
Words searched and displayed through random word display form will be stored. The saved results can be accessed from History option from Dictionary Menu.
Words are stored by date and time of the usage of application. Words stored in history can be deleted from History panel.


SlingOnG
About
The SlingOnG is a transaction manager (an implementation of Spring's PlatformTransactionManager SPI
(Service Provider Interface) for the platform of Slim3 Datastore & Spring on GAE/J.
In order for web app on GAE/J to assure strong data consistency through requests, as the AppEngine's "Structuring Data for Strong Consistency" page states, it must be done by the transaction.
Slim3's Datastore supports global transaction over multiple entity groups (although GAE/J's Datastore
now supports transaction over upto 5 entity groups but historically only one) and supports various
relationships between entities upto many-to-many bidirectional relationship. Such flexibilities what Slim3
Datastore provides onto GAE/J can bring safe feeling to developer's mind even for the case of unplanned
future extension of data model of web app.
Spring's transaction manager can release developer from cumbersome of managing transaction.
Hence, hoping that SlingOnG's Slim3PlatformTransactionManger
bridging Spring's transaction manager and
Slim3 Datastore can ease some degree in your coding web app on GAE/J platform.
Usage guide
Slim3's Datastore.beginTransaction
method and GlobalTransaction.commit
method are
automatically executed at beginning and end of each transaction by SlingOnG's
Slim3PlatformTransactionManger
as Spring Transaction support, thereby what needs to be
basically done in your code is:
- Annotate method with the
@Transactional
annotation of Spring Transaction.
- In the code flow started by the method annotated with the
@Transactional
annotation:
- Get current Slim3's
GlobalTransaction
object via DatastoreDelegate.getCurrentGlobalTransaction
method (or Datastore.getCurrentGlobalTransaction
method.)
- Perform data model operation(s) such as put, delete, and/or query on
the
GlobalTransaction
object.
Note: The next tip at the "Uses For Transactions" page in Slim3 web site is still valid even with SlingOnG:
"Tip: A transaction should happen as quickly as possible to reduce the likelihood that
the entities used by the transaction will change, requiring the transaction be retried. As much as
possible, prepare data outside of the transaction, then execute the transaction to perform datastore
operations that depend on a consistent state. The application should prepare keys for objects used
inside the transaction, then fetch the entities inside the transaction."
Regarding rollback, Slim3's Datastore automatically performs it when it's properly configured as described
at the Slim3 Datastore installation instructions page. And Slim3PlatformTransactionManger
avoids duplicate rollback execution by gracefully discarding it.
Configuration guide
- First Of all, the issue about Spring's proxing on GAE/J.
In order to use Spring's transaction support on GAE/J, Spring Transaction must be configured via
rather AspectJ than Spring AOP because, in simple words, Spring Transaction is basically built
upon around-advise AOP and Spring proxy does not work on GAE/J (For more info about it, please
refer to gaeworkout.appspot.com.) And how to
correctly configure Spring to use AspectJ for instantiating bean with injecting dependency too
requires the solid knowledge of Spring and AspectJ. Because of that, many folks believed that
Spring Transaction had not worked on GAE/J (without hack). (In this page, the only how-to for
configuring Slim3PlatformTransactionManger is provided (briefly, not in depth), and please be
advised that, for your own custom aspect (other than SlingOnG), you may encounter problem even
you configure the same kind way to define bean for your custom aspect due to something like what
in your classpath, AspectJ's aspectpath, whether your aspect needs to have dependency injected,
other factors like configuration for Spring's annotation support for related beans, and of
course Spring version.)
- Add dependency libraries to your AppEngine web app project
Add the library binaries of Slim3, SlingOnG, and Spring as well as AppEngine SDK ones. For list of dependency
library, see Dependencies page.
- To download SlingOnG
- When you use auto-fashion build framework like Maven and others, see Dependency Information page.
For released version, the artifact will be able to be downloaded from Maven central
repository.
For snapshot build, use Sonatype's Nexus snapshots repo:
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
- For manual download, the SlingOnG artifact can be downloaded from Sonatype's Nexus public repo
- To download Slim3
- For Maven, Slim3 artifacts can be downloaded from the Seasar Foundation repo.
<repository>
<name>Seasar Foundation repo</name>
<id>maven.seasar.org</id>
<url>https://www.seasar.org/maven/maven2</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<updatePolicy>never</updatePolicy>
</releases>
</repository>
- For manual download, the Slim3 artifact can be downloaded from Slim3 Google code site.
- To download Spring components
- Refer to the "Obtaining Spring 3 Artifacts with Maven" springsource blog post by Mr. Keith Donald.
- For manual download, you may use the following sites. (For the difference,
please follow the link of the above blog post.):
- Configuration for Slim3's Datastore library
- Follows the Slim3 Datastore installation instructions in the Slim3's web site.
- If the project of your AppEngine's web app is a Maven project, then
org.codehaus.mojo:build-helper-maven-plugin and org.codehaus.mojo:apt-maven-plugin plugins
(and org.slim3:slim3-gen artifact dependency of course) must be configured for annotation
processing for Slim3 Datastore.
You may refer to pom.xml of SlingOnG_test module as an example though the execution phases of those
plugins have been set to the test phase because the SlingOnG_test module is the module just
for testing SlingOnG module.
- Add spring-aspects.jar and slingong.jar to AspectJ's aspectpath.
- Configuration in Spring's application context .xml file
You may take a look of testContext2.xml
as an example (although it is
for JUnit test with Spring's @ContextConfiguration
annotation use.)
- Add
<context:annotation-config />
and <context:component-scan
base-package="package_of_your_component..*" />
.
Replace the package_of_your_component part with actual package name of your
component.
(You may take a look at Spring 2.5's Comprehensive Annotation Support SWiK blog post by Mr. Juergen Hoeller if you
need more information on the context
tag, although it was written at Spring
ver 2.5 time.)
- Define a bean of
AnnotationBeanConfigurerAspect
aspect.
<bean id="annotationBeanConfigurerAspect"
class="org.springframework.beans.factory.aspectj.AnnotationBeanConfigurerAspect"
factory-method="aspectOf" />
- Define a bean of
Slim3PlatformTransactionManager
class.
<bean id="txManager"
class="com.newmainsoftech.spray.slingong.datastore.Slim3PlatformTransactionManager" />
- Define a bean of
AnnotationTransactionAspect
aspect with injecting
Slim3PlatformTransactionManager
bean defined at the previous step.
<bean id="annotationTransactionAspect"
class="org.springframework.transaction.aspectj.AnnotationTransactionAspect"
factory-method="aspectOf">
<property
name="transactionManager"
ref="txManager" />
</bean>
- Define a bean of
AnnotationAwareAspectJAutoProxyCreator
class with
the dependencies of beans defined above steps:
<bean
class="org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator"
depends-on="annotationBeanConfigurerAspect,annotationTransactionAspect,annotationTransactionOnStaticMethodAspect">
<property name="includePatterns">
<list><value>nothing</value></list>
</property>
</bean>
This bean is a dummy bean in order to just force early instantiations of the beans defined
in the previous steps above.
- Compile and test.


End Of Days (2/10)
I have no objection to mindless action movies, but End Of Days is so truly brain-dead, so utterly moronic, that it sets a miserable new benchmark of awfulness for Hollywood blockbusters. Compares to End Of Days, Die Hard was Hamlet and True Lies was Finnegans Wake. The film is not technically incompetent like some zero-budget straight-to-video actioner, but is a big-budget mainstream Hollywood studio production directed by dependable journeyman Peter Hyams all of which makes the direness of this movie much more depressing.
Arnold Schwartzenegger plays security man Jericho Cane (Jericho Religious reference. Geddit?) who is part of the team protecting a mysterious figure whom they suspect is a powerful Wall St. businessman. He is actually the Devil, who has come to earth and taken the human form of Gabriel Byrne. Lucifer is on a mission to impregnate a young woman, chosen from birth to bear his demonic offspring, thus fulfilling a biblical prophecy and bringing about the end of days. For reasons unexplained, the diabolic coupling must take place on the stroke of midnight on 31st December 1999. We know all this, but Cane doesn't, so his departure into action-movie cliche-land makes no sense. But then nothing much makes sense in this movie. The selected Bride of Satan (played by Robin Tunney) is called Christine York. The way in which Cane figures out this name is as staggeringly stupid as the explanation by Father Kovak (played by an suitably embarrassed-looking Rod Steiger) that the number of the beast is not 666, but is actually 1999 because that's what you get when you turn 666 upside-down and stick a 1 in front. Sheesh.
Having mysteriously decided to track down some unknown woman, and amazingly concluded what her name is, Cane turns up just in time to save her from a Vatican hit-squad.  Then all he has to do is protect the virginal Miss York's honour and thereby save the world. Arnie's limitations as an actor are cruelly exposed by the script, which laughably attempts to draw Cane as complex character wrestling with his loss of faith after the deaths of his wife and daughter. Gabriel Byrne is actually rather good, and is the only person involved in this piece of junk who survives with credibility intact.
I do not know how much Andrew H. Marlowe was paid for his original screenplay, but whatever it was, it was too much. This crude amalgam of The Exorcist, The Omen, and Terminator 2 could have been written by any college student with a free weekend and a supply of beer and pizza.
Truly terrible. (2/10)
--
Gary Jones
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Web Extension that obfuscates your browing history by autonomously crawling the web in the background. Congress sold you out to your ISP — now bury your real data.
 Look out for the super-speed at 6 seconds.
Check it outWebpage for designers/coders to test font colors in real time.
Check it out


So I just purchased a gram of this stuff to give it a try, as psychedelics have always been interesting to me. It was a white crystalline powder despite what I've been told that it is a tan/brown-ish color. Regardless I weighed out what was approximately 30 mg (my scale is a bit shitty so I'm guessing it was between 30 and 35 mg but whatever) and popped it into a capsule and sent it down my throat on an empty stomach.
After about a half hour or so I was pretty certain that I felt an alteration of my mental state but I wasn't totally convinced it wasn't placebo. I mean the last psychedelic I used was a double tab of acid so comparatively it felt like nothing much at all. Regardless, I became certain that the stuff was certainly functioning when I definitively felt that rush one feels when coming up on a psychedelic. I normally smoke a bit of weed before tripping to kill any come-up discomfort but I elected against it so as to feel the DALT in its pure form. It was like a tingling warmth rushing through my bones.
I clearly felt a different rush at about the 45 minute mark; a stimulating bolt of energy roughly equivalent in “force” to stimulants like MDMA or methylone etc without being AT ALL similar in its “energy.” In fact the comparison should really just end there. It’s challenging to verbalize, but normally while on shrooms or acid etc I can just lay under a tree for hours and be content. While on DALT staying still or sitting for too long was a bit uncomfortable.
While on the come up, approaching the 60-minute point, the first thing I really noticed (besides the stimulation) was the ability to pinpoint sounds in a different way. I could sense the 360-degree space I was in and absorb every subtle sound in a beautiful way that was very reminiscent of other tripping experiences that I’ve had. The next thing I noticed was, not surprisingly, a change in time perception; time seemed to pass much slower, as with most psychoactives.
Furthermore there were absolutely no OEVs or CEVs. (By this point I was maybe 75-85 minutes in) Pretty boring for a psychedelic you may say huh? Not TOTALLY accurate… I mean I was still clearly “tripping” more or less. You know how when you trip your spatial perception changes in a way that nobody can really explain fully or properly? Everything just FEELS different and LOOKS different, and not in an animated sense; it just IS different. Well while on DALT everything FELT different but didn’t really LOOK all that different. By extension there was a definitive increase in color vibrancy yet it was not terribly extreme.
There was still a greater appreciation of nature and beauty but in a way that was very simple and subtle. While on shrooms or acid I can clearly see a tree or flower etc and say to myself that tree looks so vibrant and clear and just gorgeous yet while on DALT it was hard to pinpoint WHY things looked so beautiful. It felt like a very simplified version of “standard psychedelics.” The places my mind goes on acid etc is just far more complex and deep than while on DALT. I realize that’s not really the fairest comparison as acid is clearly THE psychoactive substance in my opinion.
That said, the DALT was certainly interesting, lasting about 2 hours before I started to come down. If I had to summarize by noting the primary negative of the substance in my opinion it would be that I was actually quite aroused for the majority of the trip. It was actually rather bizarre, as NO psychoactive experience has ever done this to me. As I was wandering campus the number of attractive women I saw was astonishing (usually I see quite few) despite the fact that these girls would clearly not be attractive to me when sober. Obviously I didn’t act on any of this though. This could totally be a one-time thing though and theoretically it may not be an issue at all next time I use it. It’s just something I, and perhaps others, should be aware of.
The come down was very smooth, although I needed 3 mg of lunesta, 1 mg of xanax and 50 mg of benadryl to get to sleep (about 4.5 hours after consumption of the DALT). There were no hangover affects whatsoever.
Overall it was not overwhelmingly exciting and in a lot of ways it failed my expectations but it was certainly not a failure by any means of the word. I will definitely increase my dose next time to around 50 or so mg and see what happens. My biggest disappointment in the substance was its lack of visuals and lack of deep introspective ability that makes acid so brilliant. I actually think it could have excellent potential in combo with other substances. Next time I drop acid I would love to take some DALT mid-trip and see where it takes me. Or even in combo with some euphoric stimulants, who knows! I’m not sure, I just think I need to experiment its combination potential and perhaps write another experience.
Ok last point: I would suggest others to not shy away from this substance (because I realize my report was rather neutral at face value) because it WAS rather interesting and a worthy experience… totally something I would try again. I would particularly recommend it to someone who has never tripped before and is somewhat anxious about the experience because it’s not a long commitment (about 3-ish hours) and it’s not overwhelming yet still makes for a good first stepping stone into the wonderful world of psychedelics.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{{participant.name}}
Deleting this participant will also remove any associated submissions. This process is irreversible. Are you sure you want to remove {{participant.name}}?


World Bank scales back Uighur school project in China
WASHINGTON: The World Bank announced on Monday (Nov 11) it was cutting back a vocational education project in China's Xinjiang province, even though an internal investigation did not back up claims the scheme was linked to the mistreatment of minority Muslim Uighurs.
The World Bank launched a review of the programme in late August after Foreign Policy magazine reported that a school that benefited from a tranche of the US$50 million loan to China bought "barbed wire, gas launchers, and body armour."
The Washington-based development lender said its review "did not substantiate the allegations."
Nonetheless, as a precautionary measure, it said it was cutting funding to the scheme's "partner schools" throughout Xinjiang province that were the target of the allegations.
"In light of the risks associated with the partner schools, which are widely dispersed and difficult to monitor, the scope and footprint of the project is being reduced," the World Bank said in a statement.
"Specifically, the project component that involves the partner schools in Xinjiang is being closed."
World Bank funding to the five schools directly supported by the project will continue, under "enhanced supervision."
China's treatment of the Uighurs - a mostly Muslim, Turkic-speaking minority concentrated in the tightly-controlled northwestern Xinjiang region - has come under growing scrutiny.
Rights groups and experts say more than one million mostly Muslim ethnic minorities have been interned in re-education camps in Xinjiang, where they are being tortured and forced to renounce their religion.
China initially denied the existence of the camps before admitting to running what it called "vocational education centres," which it presented as necessary to combat religious extremism and boost employment.


There is de facto stay on Sabarimala verdict: Minister
Entry for women to Ayyappa temple
by Special CorrespondentThe State government could only abide by the Supreme Court verdict and there was a “de facto” stay on the apex court’s order granting unrestricted entry for women to the Sabarimala Ayyappa temple, Law Minister A.K. Balan has said.
The Law Minister told reporters on Sunday that a government having constitutional responsibility could act only according to the Supreme Court order.
SC stay
The moot question is whether the Supreme Court has stayed its earlier order on September 28.
“De jure there is no stay.... but de facto there is a stay,” he said.
“The 2018 Supreme Court order has been stayed in effect even though it was not officially mentioned,” the Law Minister added.


{% extends 'base.html' %} {% block title %}Suggestions{% endblock %} {% block content %}
Graphs like these were the original inspiration for this site. I produced some hand-crafted graphs with OpenOffice in my grad school days, and I hope to post versions of them later. The database now contains more properties than those graphs did anyway, so I need to regenerate with the new properties.
Please, please report mistakes and omissions via the suggestion form. Thanks!


Talking to: Hannah
Time elapsed: 10:32
Her prompts
Cats
Reading
Hockey
Travelling
Her phrases
Her prompts
Cook dinner = I feel in danger
Order pizza = Call 911
Fix sink = Not in danger
End Call


//
This file is used for Dojo's XMLHttpRequest Iframe Proxy. This is the the file that should go on the server that will actually be doing the XHR request.


GHI Donations
Name:
{{ i.name }}
Email:
{{ i.email }}
Money Raised:
{{ i.data.donation_total }}
Teams:
Description:
{{ i.description }}
Your Donations
Desktop Version
Logout
Donations
Back
Load more
That's all the donations I have!


--- type: formControls title: Radio buttons usage: Custom radio button. stylesheet: '/scss/controls/radios.scss' ---


Woman, 24, died after battling with anorexia for ten years while being treated by the NHS, inquest hears
by Lara Keay For Mailonline- Maria Jakes was one of five anorexia patients who died in East of England
- Their deaths between 2012 and 18 came while they were being treated by NHS
- Ms Jakes's inquest in Huntingdon heard there are no figures for anorexia deaths
A 24-year-old woman died after battling anorexia for 10 years while being treated by the NHS, an inquest heard today.
Maria Jakes, 24, who died last September, was one of five anorexia patients in the east of England to die during NHS treatment between 2012 and 2018.
On the first day of Ms Jakes's inquest, Dr Jaco Serfontein, a consultant psychiatrist in eating disorders at Cambridgeshire and Peterborough Foundation Trust, gave overview evidence on the nature of the condition.
He told Hungtingdon Coroner's Court that there is no exact figure for deaths from anorexia nervosa in the UK each year despite it having the highest mortality rate of all psychiatric disorders.
Dr Serfontein said: 'Anorexia nervosa is an illness that is chronic in nature and it has the highest mortality rate of all eating disorders and all psychiatric illnesses.'
The court heard that suicide is one of the biggest risk factors for people with the condition, with between one fifth and one third of patients taking their own lives.
Chronic low body weight also puts sufferers at risk of immunosuppression disorder - putting them at risk of infections and sepsis, which can often be fatal.
But because anorexia is not the primary cause of death, it is not exactly clear how high the mortality rate is, Dr Serfontein added.
He told the hearing: 'We have no idea how big the issue is. We know it's the highest cause of death of any mental health illness but we can't quantify that.'
He said evidence for the belief anorexia carries the highest risk of all psychiatric illnesses comes from smaller studies and from countries with more comprehensive data.
Dr Serfontein said the biggest indicator of whether a patient would recover was the length of time they had struggled with the disorder, and that early intervention was the best strategy to prevent anorexia becoming entrenched.
He said: 'We could reduce risk of further deaths if we had robust statistical information available (on mortality rates).
'It would give us the evidence to argue for the improvement of services.'
The inquest heard that patients with anorexia nervosa often 'highly valued' their condition, making them reluctant to co-operate with treatment.
'People with eating disorders are often ambivalent about recovering - part of them really wants to get better because they are fed up with the consequence of the illness,' Dr Serfontein said. But part of them is really, really terrified of getting better.'
People with anorexia often suffer from co-existing psychiatric disorders such as unstable personality disorder, as was the case with Ms Jakes.
'When these issues are quite severe, it can make it quite difficult and patients are often resistant to treatment,' Dr Serfontein said.
Dr Serfontein said the disease could also be a way for patients to manage expectations and anxiety, adding: '(Patients say) 'it keeps me safe'.
'Safe from high expectations like having to go off to university and be the best student.
'Or it gives you one thing to worry about instead of worrying about everything.'
The inquest also heard there are only 40 in-patient beds in the east of England region and up to a third of cases have to be treated out of the region.
He said it was also hugely problematic that extremely low body weight was usually used as the main criteria for prioritising admission.
'It's really difficult if you have to say to people with anorexia, 'You are not thin enough to be treated by our service' - it's a really unhealthy message,' Dr Serfontein said.
The inquest into the death of Ms Jakes is due to last for six days.
The other four deaths in the region were: Averil Hart, 19, who died in 2012; 45-year-old Amanda Bowles, who died in September 2017.
Madeline Wallace, 18, died in March 2018, while Emma Brown, 27, died just a few months later in August 2018.
Coroner Sean Horstead is examining each death individually and emphasised at this stage he had made 'no finding, conclusion or determination as to whether there is a definitive link' between the deaths.
At a previous hearing, he said 'common themes' between the cases may emerge over the course of the inquests that are due to conclude next spring.
For help with eating disorders such as anorexia you can contact Anorexia and Bulimia Care (ABC) on anorexiabulimiacare.org.uk or b-eat on 0808 801 0677 for adults and 0808 801 0711 for children and young people