# Single Shot MultiBox Detector (SSD) Object Detection
## Introduction
Single Shot MultiBox Detector (SSD) is one of the new and enhanced detection algorithms detecting objects in images [ 1 ]. SSD algorithm is characterized by rapid detection and high detection accuracy. PaddlePaddle has an integrated SSD algorithm! This example demonstrates how to use the SSD model in PaddlePaddle for object detection. We first provide a brief introduction to the SSD principle. Then we describe how to train, evaluate and test on the PASCAL VOC data set, and finally on how to use SSD on custom data set.
## SSD Architecture
SSD uses a convolutional neural network to achieve end-to-end detection. The term "End-to-end" is used because it uses the input as the original image and the output for the test results, without the use of external tools or processes for feature extraction. One popular model of SSD is VGG16 [ 2 ]. SSD differs from VGG16 network model as in following.
1. The final fc6, fc7 full connection layer into a convolution layer, convolution layer parameters through the original fc6, fc7 parameters obtained.
2. Change the parameters of the pool5 layer from 2x2-s2 (kernel size 2x2, stride size to 2) to 3x3-s1-p1 (kernel size is 3x3, stride size is 1, padding size is 1).
3. The initial layers are composed of conv4\_3、conv7、conv8\_2、conv9\_2、conv10\_2, and pool11 layers. The main purpose of the priorbox layer is to generate a series of rectangular candidates based on the input feature map. A more detailed introduction to SSD can be found in the paper\[[1](#References)\]。
Below is the overall structure of the model (300x300)
图1. SSD网络结构
Each box in the figure represents a convolution layer, and the last two rectangles represent the summary of each convolution layer output and the post-processing phase. Specifically, the network will output a set of candidate rectangles in the prediction phase. Each rectangle contains two types of information: the position and the category score. The network produces thousands of predictions at various scales and aspect ratios before performing non-maximum suppression, resulting in a handful of final tags.
## Example Overview
This example contains the following files:
Table 1. Directory structure
| File | Description |
| train.py | Training script |
| eval.py | Evaluation |
| infer.py | Prediction using the trained model |
| visual.py | Visualization of the test results |
| image_util.py | Image preprocessing required common function |
| data_provider.py | Data processing scripts, generate training, evaluate or detect the required data |
| config/pascal_voc_conf.py | Neural network hyperparameter configuration file |
| data/label_list | Label list |
| data/prepare_voc_data.py | Prepare training PASCAL VOC data list |
The training phase requires pre-processing of the data, including clipping, sampling, etc. This is done in ```image_util.py``` and ```data_provider.py```.```config/vgg_config.py```. ```data/prepare_voc_data.py``` is used to generate a list of files, including the training set and test set, the need to use the user to download and extract data, the default use of VOC2007 and VOC2012.
## PASCAL VOC Data set
### Data Preparation
First download the data set. VOC2007\[[3](#References)\] contains both training and test data set, and VOC2012\[[4](#References)\] contains only training set. Downloaded data are stored in ```data/VOCdevkit/VOC2007``` and ```data/VOCdevkit/VOC2012```. Next, run ```data/prepare_voc_data.py``` to generate ```trainval.txt``` and ```test.txt```. The relevant function is as following:
```python
def prepare_filelist(devkit_dir, years, output_dir):
trainval_list = []
test_list = []
for year in years:
trainval, test = walk_dir(devkit_dir, year)
trainval_list.extend(trainval)
test_list.extend(test)
random.shuffle(trainval_list)
with open(osp.join(output_dir, 'trainval.txt'), 'w') as ftrainval:
for item in trainval_list:
ftrainval.write(item[0] + ' ' + item[1] + '\n')
with open(osp.join(output_dir, 'test.txt'), 'w') as ftest:
for item in test_list:
ftest.write(item[0] + ' ' + item[1] + '\n')
```
The data in ```trainval.txt``` will look like:
```
VOCdevkit/VOC2007/JPEGImages/000005.jpg VOCdevkit/VOC2007/Annotations/000005.xml
VOCdevkit/VOC2007/JPEGImages/000007.jpg VOCdevkit/VOC2007/Annotations/000007.xml
VOCdevkit/VOC2007/JPEGImages/000009.jpg VOCdevkit/VOC2007/Annotations/000009.xml
```
The first field is the relative path of the image file, and the second field is the relative path of the corresponding label file.
### To Use Pre-trained Model
We also provide a pre-trained model using VGG-16 with good performance. To use the model, download the file http://paddlepaddle.bj.bcebos.com/model_zoo/detection/ssd_model/vgg_model.tar.gz, and place it as ```vgg/vgg_model.tar.gz```。
### Training
Next, run ```python train.py``` to train the model. Note that this example only supports the CUDA GPU environment, and can not be trained using only CPU. This is mainly because the training is very slow using CPU only.
```python
paddle.init(use_gpu=True, trainer_count=4)
data_args = data_provider.Settings(
data_dir='./data',
label_file='label_list',
resize_h=cfg.IMG_HEIGHT,
resize_w=cfg.IMG_WIDTH,
mean_value=[104,117,124])
train(train_file_list='./data/trainval.txt',
dev_file_list='./data/test.txt',
data_args=data_args,
init_model_path='./vgg/vgg_model.tar.gz')
```
Below is a description about this script:
1. Call ```paddle.init``` with 4 GPUs.
2. ```data_provider.Settings()``` is to pass configuration parameters. For ```config/vgg_config.py``` setting，300x300 is a typical configuration for both the accuracy and efficiency. It can be extended to 512x512 by modifying the configuration file.
3. In ```train()```执 function, ```train_file_list``` specifies the training data list, and ```dev_file_list``` specifies the evaluation data list, and ```init_model_path``` specifies the pre-training model location.
4. During the training process will print some log information, each training a batch will output the current number of rounds, the current batch cost and mAP (mean Average Precision. Each training pass will be saved a model to the default saved directory ```checkpoints``` (Need to be created in advance).
The following shows the SDD300x300 in the VOC data set.
图2. SSD300x300 mAP收敛曲线
### Model Assessment
Next, run ```python eval.py``` to evaluate the model.
```python
paddle.init(use_gpu=True, trainer_count=4) # use 4 gpus
data_args = data_provider.Settings(
data_dir='./data',
label_file='label_list',
resize_h=cfg.IMG_HEIGHT,
resize_w=cfg.IMG_WIDTH,
mean_value=[104, 117, 124])
eval(
eval_file_list='./data/test.txt',
batch_size=4,
data_args=data_args,
model_path='models/pass-00000.tar.gz')
```
### Obejct Detection
Run ```python infer.py``` to perform the object detection using the trained model.
```python
infer(
eval_file_list='./data/infer.txt',
save_path='infer.res',
data_args=data_args,
batch_size=4,
model_path='models/pass-00000.tar.gz',
threshold=0.3)
```
Here ```eval_file_list``` specified image path list, ```save_path``` specifies directory to save the prediction result.
```
VOCdevkit/VOC2007/JPEGImages/006936.jpg 12 0.997844<PHONE_NUMBER>77<PHONE_NUMBER>42<PHONE_NUMBER>94 334.0
VOCdevkit/VOC2007/JPEGImages/006936.jpg 14 0.998557<PHONE_NUMBER>32 49.5991278887<PHONE_NUMBER>87<PHONE_NUMBER>76
VOCdevkit/VOC2007/JPEGImages/006936.jpg 14 0.372522<PHONE_NUMBER>99<PHONE_NUMBER>28<PHONE_NUMBER>39<PHONE_NUMBER>89
...
```
一共包含4个字段，以tab分割，第一个字段是检测图像路径，第二字段为检测矩形框内类别，第三个字段是置信度，第四个字段是4个坐标值（以空格分割）。
Below is the example after running ```python visual.py``` to visualize the model result. The default visualization of the image saved in the ```./visual_res```.
Figure 3. SSD300x300 Visualization Example
## To Use Custo Data set
In PaddlePaddle, using the custom data set to train SSD model is also easy! Just input the format that ```train.txt``` can understand. Below is a recommended structure to input for ```train.txt```.
```
image00000_file_path image00000_annotation_file_path
image00001_file_path image00001_annotation_file_path
image00002_file_path image00002_annotation_file_path
...
```
The first column is for the image file path, and the second column for the corresponding marked data file path. In the case of using xml file format, ```data_provider.py``` can be used to process the data as follows.
```python
bbox_labels = []
root = xml.etree.ElementTree.parse(label_path).getroot()
for object in root.findall('object'):
bbox_sample = []
# start from 1
bbox_sample.append(float(settings.label_list.index(
object.find('name').text)))
bbox = object.find('bndbox')
difficult = float(object.find('difficult').text)
bbox_sample.append(float(bbox.find('xmin').text)/img_width)
bbox_sample.append(float(bbox.find('ymin').text)/img_height)
bbox_sample.append(float(bbox.find('xmax').text)/img_width)
bbox_sample.append(float(bbox.find('ymax').text)/img_height)
bbox_sample.append(difficult)
bbox_labels.append(bbox_sample)
```
Now the marked data（e.g. image00000\_annotation\_file\_path）is as follows:
```
label1 xmin1 ymin1 xmax1 ymax1
label2 xmin2 ymin2 xmax2 ymax2
...
```
Here each row corresponds to an object for 5 fields. The first is for the label (note the background 0, need to be numbered from 1), and the remaining four are for the coordinates.
```
bbox_labels = []
with open(label_path) as flabel:
for line in flabel:
bbox_sample = []
bbox = [float(i) for i in line.strip().split()]
label = bbox[0]
bbox_sample.append(label)
bbox_sample.append(bbox[1]/float(img_width))
bbox_sample.append(bbox[2]/float(img_height))
bbox_sample.append(bbox[3]/float(img_width))
bbox_sample.append(bbox[4]/float(img_height))
bbox_sample.append(0.0)
bbox_labels.append(bbox_sample)
```
Another important thing is to change the size of the image and the size of the object to change the configuration of the network structure. Use ```config/vgg_config.py``` to create the custom configuration file. For more details, please refer to \[[1](#References)\]。
## References
1. Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng-Yang Fu, Alexander C. Berg. [SSD: Single shot multibox detector](https://arxiv.org/abs/1512.02325). European conference on computer vision. Springer, Cham, 2016.
2. Simonyan, Karen, and Andrew Zisserman. [Very deep convolutional networks for large-scale image recognition](https://arxiv.org/abs/1409.1556). arXiv preprint arXiv:1409.1556 (2014).
3. [The PASCAL Visual Object Classes Challenge 2007](http://host.robots.ox.ac.uk/pascal/VOC/voc2007/index.html)
4. [Visual Object Classes Challenge 2012 (VOC2012)](http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html)


public class Charge
The Charge
object contains details about a charge made to a class PaymentIntent
Use of this SDK is subject to the Stripe Terminal Terms: https://stripe.com/terminal/legal
class PaymentIntent
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
component1()
Unique identifier for the
|
java.lang.String |
component10()
Three-letter ISO currency code,
|
java.lang.String |
component11()
ID of the customer this
|
java.lang.String |
component12()
An arbitrary string attached to the
|
java.lang.String |
component13()
Details about the dispute if the
|
java.lang.String |
component14()
Error code explaining reason for charge failure if available.
|
java.lang.String |
component15()
Message to user further explaining reason for charge failure if available.
|
java.lang.String |
component16()
ID of the invoice this charge is for if one exists.
|
boolean |
component17()
Has the value
|
java.util.Map<java.lang.String,java.lang.String> |
component18()
Set of key-value pairs that you can attach to an object.
|
java.lang.String |
component19()
The account
|
int |
component2()
The amount of the charge
|
java.lang.String |
component20()
ID of the order this
|
boolean |
component21()
true |
java.lang.String |
component22()
ID of the PaymentIntent associated with this
|
java.lang.String |
component23()
ID of the
|
PaymentMethodDetails |
component24()
A
|
java.lang.String |
component25()
This is the email address that the receipt for this
|
java.lang.String |
component26()
This is the transaction number that appears on email receipts sent for this
|
java.lang.String |
component27()
This is the URL to view the receipt for this
|
boolean |
component28()
Whether the
|
java.lang.String |
component29()
ID of the review associated with this
|
int |
component3()
Amount in cents refunded
|
java.lang.String |
component30()
Extra information about a
|
java.lang.String |
component31()
The status of the payment is either
|
java.lang.String |
component32()
ID of the transfer to the
|
java.lang.String |
component33()
A string that identifies this transaction as part of a group.
|
java.lang.String |
component4()
ID of the Connect application that created the
|
java.lang.String |
component5()
The application fee
|
int |
component6()
The amount of the application fee
|
java.lang.String |
component7()
ID of the balance transaction that describes the impact of this
|
boolean |
component8()
If the
|
long |
component9()
Time at which the
|
Charge |
copy(java.lang.String id,
int amount,
int amountRefunded,
java.lang.String application,
java.lang.String applicationFee,
int applicationFeeAmount,
java.lang.String balanceTransaction,
boolean captured,
long created,
java.lang.String currency,
java.lang.String customer,
java.lang.String description,
java.lang.String dispute,
java.lang.String failureCode,
java.lang.String failureMessage,
java.lang.String invoice,
boolean livemode,
java.util.Map<java.lang.String,java.lang.String> metadata,
java.lang.String onBehalfOf,
java.lang.String order,
boolean paid,
java.lang.String paymentIntentId,
java.lang.String paymentMethodId,
PaymentMethodDetails paymentMethodDetails,
java.lang.String receiptEmail,
java.lang.String receiptNumber,
java.lang.String receiptUrl,
boolean refunded,
java.lang.String review,
java.lang.String statementDescriptor,
java.lang.String status,
java.lang.String transfer,
java.lang.String transferGroup)
The
Charge object contains details about a charge made to a class PaymentIntent |
boolean |
equals(java.lang.Object p) |
int |
getAmount()
The amount of the charge
|
int |
getAmountRefunded()
Amount in cents refunded
|
java.lang.String |
getApplication()
ID of the Connect application that created the
|
java.lang.String |
getApplicationFee()
The application fee
|
int |
getApplicationFeeAmount()
The amount of the application fee
|
java.lang.String |
getBalanceTransaction()
ID of the balance transaction that describes the impact of this
|
boolean |
getCaptured()
If the
|
long |
getCreated()
Time at which the
|
java.lang.String |
getCurrency()
Three-letter ISO currency code,
|
java.lang.String |
getCustomer()
ID of the customer this
|
java.lang.String |
getDescription()
An arbitrary string attached to the
|
java.lang.String |
getDispute()
Details about the dispute if the
|
java.lang.String |
getFailureCode()
Error code explaining reason for charge failure if available.
|
java.lang.String |
getFailureMessage()
Message to user further explaining reason for charge failure if available.
|
java.lang.String |
getId()
Unique identifier for the
|
java.lang.String |
getInvoice()
ID of the invoice this charge is for if one exists.
|
boolean |
getLivemode()
Has the value
|
java.util.Map<java.lang.String,java.lang.String> |
getMetadata()
Set of key-value pairs that you can attach to an object.
|
java.lang.String |
getOnBehalfOf()
The account
|
java.lang.String |
getOrder()
ID of the order this
|
boolean |
getPaid()
true |
java.lang.String |
getPaymentIntentId()
ID of the PaymentIntent associated with this
|
PaymentMethodDetails |
getPaymentMethodDetails()
A
|
java.lang.String |
getPaymentMethodId()
ID of the
|
java.lang.String |
getReceiptEmail()
This is the email address that the receipt for this
|
java.lang.String |
getReceiptNumber()
This is the transaction number that appears on email receipts sent for this
|
java.lang.String |
getReceiptUrl()
This is the URL to view the receipt for this
|
boolean |
getRefunded()
Whether the
|
java.lang.String |
getReview()
ID of the review associated with this
|
java.lang.String |
getStatementDescriptor()
Extra information about a
|
java.lang.String |
getStatus()
The status of the payment is either
|
java.lang.String |
getTransfer()
ID of the transfer to the
|
java.lang.String |
getTransferGroup()
A string that identifies this transaction as part of a group.
|
int |
hashCode() |
java.lang.String |
toString() |
@NotNull public java.lang.String getId()
Unique identifier for the
Charge
public int getAmount()
The amount of the charge
public int getAmountRefunded()
Amount in cents refunded
(can be less than the amount attribute on the charge if a partialrefund was issued).
@Nullable public java.lang.String getApplication()
ID of the Connect application that created the
Charge
.
@Nullable public java.lang.String getApplicationFee()
The application fee
(if any) for the Charge
.
public int getApplicationFeeAmount()
The amount of the application fee
(if any) for the Charge
.
@Nullable public java.lang.String getBalanceTransaction()
ID of the balance transaction that describes the impact of this
Charge
on your accountbalance (not including refunds or disputes).
public boolean getCaptured()
If the
Charge
was created without capturing, this Boolean represents whether it is stilluncaptured or has since been captured.
public long getCreated()
Time at which the
Charge
was created. Measured in seconds since the Unix epoch.
@Nullable public java.lang.String getCurrency()
Three-letter ISO currency code,
in lowercase. Must be a supported currency.
@Nullable public java.lang.String getCustomer()
ID of the customer this
Charge
is for if one exists.
@Nullable public java.lang.String getDescription()
An arbitrary string attached to the
Charge
. Often useful for displaying to users.
@Nullable public java.lang.String getDispute()
Details about the dispute if the
Charge
has been disputed.
@Nullable public java.lang.String getFailureCode()
Error code explaining reason for charge failure if available.
@Nullable public java.lang.String getFailureMessage()
Message to user further explaining reason for charge failure if available.
@Nullable public java.lang.String getInvoice()
ID of the invoice this charge is for if one exists.
public boolean getLivemode()
Has the value
true
if the Charge
exists in live mode or the value false
if the Charge
exists in test mode.
@Nullable public java.util.Map<java.lang.String,java.lang.String> getMetadata()
Set of key-value pairs that you can attach to an object.
This can be useful for storingadditional information about the Charge
in a structured format.
@Nullable public java.lang.String getOnBehalfOf()
The account
(if any) the Charge
was made on behalf of without triggering an automatictransfer.
@Nullable public java.lang.String getOrder()
ID of the order this
Charge
is for if one exists.
public boolean getPaid()
true
if the Charge
succeeded, or was successfully authorized for later capture.
@Nullable public java.lang.String getPaymentIntentId()
ID of the PaymentIntent associated with this
Charge
, if one exists.
@Nullable public java.lang.String getPaymentMethodId()
ID of the
class PaymentMethod
associated with this Charge
, if one exists.
class PaymentMethod
@Nullable public PaymentMethodDetails getPaymentMethodDetails()
A
class PaymentMethodDetails
object containing more details about the charge
class PaymentMethodDetails
@Nullable public java.lang.String getReceiptEmail()
This is the email address that the receipt for this
Charge
was sent to.
@Nullable public java.lang.String getReceiptNumber()
This is the transaction number that appears on email receipts sent for this
Charge
. Thisattribute will be null
until a receipt has been sent.
@Nullable public java.lang.String getReceiptUrl()
This is the URL to view the receipt for this
Charge
. The receipt is kept up-to-date to thelatest state of the Charge
, including any refunds. If the Charge
is for an Invoice, thereceipt will be stylized as an Invoice receipt.
public boolean getRefunded()
Whether the
Charge
has been fully refunded. If the Charge
is only partially refunded,this attribute will still be false.
@Nullable public java.lang.String getReview()
ID of the review associated with this
Charge
if one exists.
@Nullable public java.lang.String getStatementDescriptor()
Extra information about a
Charge
. This will appear on your customer's credit cardstatement. It must contain at least one letter.
@Nullable public java.lang.String getStatus()
The status of the payment is either
succeeded
, pending
, or failed
.
@Nullable public java.lang.String getTransfer()
ID of the transfer to the
destination
account (only applicable if the Charge
was createdusing the destination
parameter).
@Nullable public java.lang.String getTransferGroup()
A string that identifies this transaction as part of a group.
@NotNull public java.lang.String component1()
Unique identifier for the
Charge
public int component2()
The amount of the charge
public int component3()
Amount in cents refunded
(can be less than the amount attribute on the charge if a partialrefund was issued).
@Nullable public java.lang.String component4()
ID of the Connect application that created the
Charge
.
@Nullable public java.lang.String component5()
The application fee
(if any) for the Charge
.
public int component6()
The amount of the application fee
(if any) for the Charge
.
@Nullable public java.lang.String component7()
ID of the balance transaction that describes the impact of this
Charge
on your accountbalance (not including refunds or disputes).
public boolean component8()
If the
Charge
was created without capturing, this Boolean represents whether it is stilluncaptured or has since been captured.
public long component9()
Time at which the
Charge
was created. Measured in seconds since the Unix epoch.
@Nullable public java.lang.String component10()
Three-letter ISO currency code,
in lowercase. Must be a supported currency.
@Nullable public java.lang.String component11()
ID of the customer this
Charge
is for if one exists.
@Nullable public java.lang.String component12()
An arbitrary string attached to the
Charge
. Often useful for displaying to users.
@Nullable public java.lang.String component13()
Details about the dispute if the
Charge
has been disputed.
@Nullable public java.lang.String component14()
Error code explaining reason for charge failure if available.
@Nullable public java.lang.String component15()
Message to user further explaining reason for charge failure if available.
@Nullable public java.lang.String component16()
ID of the invoice this charge is for if one exists.
public boolean component17()
Has the value
true
if the Charge
exists in live mode or the value false
if the Charge
exists in test mode.
@Nullable public java.util.Map<java.lang.String,java.lang.String> component18()
Set of key-value pairs that you can attach to an object.
This can be useful for storingadditional information about the Charge
in a structured format.
@Nullable public java.lang.String component19()
The account
(if any) the Charge
was made on behalf of without triggering an automatictransfer.
@Nullable public java.lang.String component20()
ID of the order this
Charge
is for if one exists.
public boolean component21()
true
if the Charge
succeeded, or was successfully authorized for later capture.
@Nullable public java.lang.String component22()
ID of the PaymentIntent associated with this
Charge
, if one exists.
@Nullable public java.lang.String component23()
ID of the
class PaymentMethod
associated with this Charge
, if one exists.
class PaymentMethod
@Nullable public PaymentMethodDetails component24()
A
class PaymentMethodDetails
object containing more details about the charge
class PaymentMethodDetails
@Nullable public java.lang.String component25()
This is the email address that the receipt for this
Charge
was sent to.
@Nullable public java.lang.String component26()
This is the transaction number that appears on email receipts sent for this
Charge
. Thisattribute will be null
until a receipt has been sent.
@Nullable public java.lang.String component27()
This is the URL to view the receipt for this
Charge
. The receipt is kept up-to-date to thelatest state of the Charge
, including any refunds. If the Charge
is for an Invoice, thereceipt will be stylized as an Invoice receipt.
public boolean component28()
Whether the
Charge
has been fully refunded. If the Charge
is only partially refunded,this attribute will still be false.
@Nullable public java.lang.String component29()
ID of the review associated with this
Charge
if one exists.
@Nullable public java.lang.String component30()
Extra information about a
Charge
. This will appear on your customer's credit cardstatement. It must contain at least one letter.
@Nullable public java.lang.String component31()
The status of the payment is either
succeeded
, pending
, or failed
.
@Nullable public java.lang.String component32()
ID of the transfer to the
destination
account (only applicable if the Charge
was createdusing the destination
parameter).
@Nullable public java.lang.String component33()
A string that identifies this transaction as part of a group.
@NotNull public Charge copy(@NotNull java.lang.String id, int amount, int amountRefunded, @Nullable java.lang.String application, @Nullable java.lang.String applicationFee, int applicationFeeAmount, @Nullable java.lang.String balanceTransaction, boolean captured, long created, @Nullable java.lang.String currency, @Nullable java.lang.String customer, @Nullable java.lang.String description, @Nullable java.lang.String dispute, @Nullable java.lang.String failureCode, @Nullable java.lang.String failureMessage, @Nullable java.lang.String invoice, boolean livemode, @Nullable java.util.Map<java.lang.String,java.lang.String> metadata, @Nullable java.lang.String onBehalfOf, @Nullable java.lang.String order, boolean paid, @Nullable java.lang.String paymentIntentId, @Nullable java.lang.String paymentMethodId, @Nullable PaymentMethodDetails paymentMethodDetails, @Nullable java.lang.String receiptEmail, @Nullable java.lang.String receiptNumber, @Nullable java.lang.String receiptUrl, boolean refunded, @Nullable java.lang.String review, @Nullable java.lang.String statementDescriptor, @Nullable java.lang.String status, @Nullable java.lang.String transfer, @Nullable java.lang.String transferGroup)
The Charge
object contains details about a charge made to a class PaymentIntent
Use of this SDK is subject to the Stripe Terminal Terms: https://stripe.com/terminal/legal
class PaymentIntent
@NotNull public java.lang.String toString()
public int hashCode()
public boolean equals(@Nullable java.lang.Object p)


The Mandelbrot Set, named after Benoit Mandelbrot, is a set of points in the complex plane that exhibits fractal behaviour.
To launch a rendering of the Mandelbrot Set, click the launch button. Be warned, it can take several seconds to render the image. Click to move around and use the mousewheel to zoom. Alternatively, the buttons in the top-left can be used to zoom.


Geostore Statistics
Budget Year:
ALL
Total Projects
Total KML
Total Geotag Images
PRDP
0
0
0
BUB
0
0
0
GAA
0
0
0
TRIP
0
0
0
Projects with one or more geotags
PRDP
0
/
0
BUB
0
/
0
GAA
0
/
0
TRIP
0
/
0
Histogram
Projects Geoprocessed
PRDP
0
/
0
BUB
0
/
0
GAA
0
/
0
TRIP
0
/
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0


---
sort_order: 97
tei_id: rdx_b5j2m.p.idm8331664
annotation_count: 0
images:
small-thumbnail: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p76nd/mini-thumbnail/
json: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p76nd/info/
full: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p76nd/fs/
page: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p76nd/single-page/
thumbnail: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p76nd/thumbnail/
title: Page 97
number: 97
---
{% raw %}JOURNEY TO CANADA.{% endraw %}
{% raw %}93{% endraw %}
{% raw %}release had come. On she came, and in ten minutes{% endraw %}
{% raw %}she rode up handsomely on to the beach.{% endraw %}
{% raw %}My black friend and two sailors jumped out, and{% endraw %}
{% raw %}we started off at once for my wife and children. To{% endraw %}
{% raw %}my horror, they were gone from the place where I{% endraw %}
{% raw %}left them.  There was no time to{% endraw %}
{% raw %}lose, and the men told me I would have to go alone.{% endraw %}
{% raw %}Just at the point of despair, however, I stumbled{% endraw %}
{% raw %}on one of the children. My wife, it seemed, alarmed{% endraw %}
{% raw %}at my long absence, had given up all for lost, and{% endraw %}
{% raw %}supposed I had fallen into the hands of the enemy.{% endraw %}
{% raw %}When she heard my voice, mingled with those of{% endraw %}
{% raw %}the others, she thought my captors were leading me{% endraw %}
{% raw %}back to make me discover my family, and in the{% endraw %}
{% raw %}extremity of her terror she had tried to hide herself.{% endraw %}
{% raw %}I had hard work to satisfy her. Our long habits of{% endraw %}
{% raw %}concealment and anxiety had rendered her suspicious{% endraw %}
{% raw %}of every one; and her agitation was so great that{% endraw %}
{% raw %}for a time she was incapable of understanding what{% endraw %}
{% raw %}I said, and went on in a sort of paroxysm of distress{% endraw %}
{% raw %}and fear. This, however, was soon over, and the{% endraw %}
{% raw %}kindness of my companions did much to facilitate{% endraw %}
{% raw %}the matter.{% endraw %}
{% raw %}And now we were off for the boat. It required{% endraw %}
{% raw %}little time to embark our baggage—one convenience,{% endraw %}
{% raw %}at least, of having nothing. The men bent their{% endraw %}
{% raw %}backs with a will, and headed steadily for a light{% endraw %}
{% raw %}hung from the vessel's mast. I was praising God in{% endraw %}
{% raw %}my soul. Three hearty cheers welcomed us as we{% endraw %}
{% raw %}reached the schooner, and never till my dying day{% endraw %}
{% raw %}shall I forget the shout of the captain—he was a{% endraw %}
{% raw %}G{% endraw %}


Spirit
Show menu
General
Categories
Flags
Dashboard
Software
Installed: ??
Latest: ??
Statistics
Members
208
Topics
1005
Comments
3655
Likes
9008
Flags
1
Categories
14


| I l@ve RuBoard |
In the last chapter we built a number of Python classes that let us do some useful work in the financial domain, assuming we were happy to work at a command prompt and write our own scripts. Now we'll embed this in a traditional GUI by exposing the Python classes as COM servers that provide an engine.
You can imagine a whole family of applications based on our classes, each specialized for a specific task such as viewing and editing data, comparing BookSets, generating forecasts and laying out reports. What you need first is a browser for your sets of accounts that can show the same types of views as the command-line version: lists of accounts, details of any account, and a date-ordered "journal." It should also allow you to edit existing transactions and add new ones.
Our example browser is written in Visual Basic (VB) 6. We cover only a small selection of the features and code, but the full application is available with the code examples at http://starship.python.net/crew/mhammond/ppw32/. We have also built a cut-down version of the browser in Delphi; a small section at the end of the chapter explains the differences when using Delphi as a client language. Most mainstream development environments support COM, so you should be able to easily adapt what follows to your favorite development environment.
| I l@ve RuBoard |


Create a live video stream tied to your bitcoin address for free.
Start live streaming and charge your viewers on a per minute basis.
Share and distribute the link to your stream with anyone.
Cash out your earned funds, without any service fees.
Language, music instruments, tutoring.
Competitions, showcasing, challenges.
Web series, reality shows, independent films.
Private education, college courses.
One-on-one mentoring, troubleshooting, therapy.
Live podcasting, music, audiobooks.


Facet Search
Home
Facet Search
Repository
KML
Jobs
Facet Search
faceted search interface for GeoRegionQuery


| Package | Description |
|---|---|
| org.apache.taverna.activities.dataflow | |
| org.apache.taverna.activities.stringconstant |
Contains the activity classes required in the execution of Beanshell scripts.
|
| org.apache.taverna.platform.execution.impl.local | |
| org.apache.taverna.workflowmodel.impl |
Implementation package for workflow entities
|
| org.apache.taverna.workflowmodel.processor.activity |
Provides definitions for a single Activity to be contained within a
Processor.
|
| org.apache.taverna.workflowmodel.utils |
| Modifier and Type | Method and Description |
|---|---|
void |
DataflowActivityFactory.setEdits(Edits edits) |
| Modifier and Type | Method and Description |
|---|---|
void |
StringConstantActivityFactory.setEdits(Edits edits) |
| Modifier and Type | Method and Description |
|---|---|
void |
LocalExecutionService.setEdits(Edits edits)
Sets the Edits Service for creating Taverna Dataflows.
|
| Constructor and Description |
|---|
LocalExecution(WorkflowBundle workflowBundle,
Workflow workflow,
Profile profile,
Bundle dataBundle,
ReferenceService referenceService,
Edits edits,
ActivityService activityService,
DispatchLayerService dispatchLayerService)
Constructs an Execution for executing Taverna workflows on a local
Taverna Dataflow Engine.
|
WorkflowToDataflowMapper(WorkflowBundle workflowBundle,
Profile profile,
Edits edits,
ActivityService activityService,
DispatchLayerService dispatchLayerService) |
| Modifier and Type | Class and Description |
|---|---|
class |
EditsImpl
Implementation of
Edits |
| Modifier and Type | Method and Description |
|---|---|
Edits |
AbstractActivity.getEdits() |
| Modifier and Type | Method and Description |
|---|---|
void |
Activity.setEdits(Edits edits) |
void |
AbstractActivity.setEdits(Edits edits) |
| Modifier and Type | Method and Description |
|---|---|
static Edit<?> |
AnnotationTools.addAnnotation(Annotated<?> annotated,
AnnotationBeanSPI a,
Edits edits) |
static boolean |
Tools.addDataflowIdentification(Dataflow dataflow,
String internalId,
Edits edits)
Add the identification of a Dataflow into its identification annotation
chain (if necessary)
|
protected static EventHandlingInputPort |
Tools.findEventHandlingInputPort(List<Edit<?>> editList,
Dataflow dataflow,
InputPort inputPort,
Edits edits)
Find (and possibly create) an EventHandlingInputPort.
|
protected static EventForwardingOutputPort |
Tools.findEventHandlingOutputPort(List<Edit<?>> editList,
Dataflow dataflow,
OutputPort outputPort,
Edits edits)
Find (and possibly create) an EventForwardingOutputPort.
|
static Edit<?> |
Tools.getCreateAndConnectDatalinkEdit(Dataflow dataflow,
EventForwardingOutputPort source,
EventHandlingInputPort sink,
Edits edits)
Creates an Edit that creates a Datalink between a source and sink port
and connects the Datalink.
|
static Edit<?> |
Tools.getCreateAndConnectDatalinkEdit(Dataflow dataflow,
OutputPort outputPort,
InputPort inputPort,
Edits edits)
Get an
Edit that will link the given output port to the given
input port. |
static Edit<?> |
Tools.getDisconnectDatalinkAndRemovePortsEdit(Datalink datalink,
Edits edits) |
static Edit<?> |
Tools.getEnableDisabledActivityEdit(Processor processor,
DisabledActivity disabledActivity,
Edits edits) |
static Edit<?> |
Tools.getMoveDatalinkSinkEdit(Dataflow dataflow,
Datalink datalink,
EventHandlingInputPort sink,
Edits edits) |
static Edit<?> |
Tools.getRemoveProcessorInputPortEdit(ProcessorInputPort port,
Edits edits) |
static Edit<?> |
Tools.getRemoveProcessorOutputPortEdit(ProcessorOutputPort port,
Edits edits) |
static void |
AnnotationTools.pruneAnnotations(Annotated<?> annotated,
Edits edits)
Remove out of date annotations unless many of that class are allowed, or
it is explicitly not pruned
|
static Edit<?> |
AnnotationTools.setAnnotationString(Annotated<?> annotated,
Class<?> c,
String value,
Edits edits) |
Copyright © 2015–2016 The Apache Software Foundation. All rights reserved.


Detailsx
Name: Alex Tusinean
Age: 20
Gender: Male
Occupation: Student
Location: Earth
Skills
HTML
CSS
JavaScript
jQuery
C#
C++
Java
Powerpoint
Word
Excel
Python
Passions
Programming
Game development
Web Art
Stories (SF / Horror)
Badminton
Tennis
Reading


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import config.ApplicationConfig @this(templateRenderer: uk.gov.hmrc.renderer.TemplateRenderer) @(pageTitle: String, heading: String, message: String)(implicit messages: Messages) @import uk.gov.hmrc.play.views.html.layouts @contentHeader = {
@message
} @{ templateRenderer.renderDefaultTemplate(ApplicationConfig.appConfig.frontendTemplatePath, layouts.article(mainContent), Map[String, Any]( "pageTitle" -> pageTitle, "linkElems" -> None, "scriptElems" -> None, "googleAnalytics" -> Map( "trackingId" -> ApplicationConfig.appConfig.analyticsToken, "cookieDomain" -> ApplicationConfig.appConfig.analyticsHost ), "includeHMRCBranding" -> true, "mainContentHeader" -> contentHeader, "betaBanner" -> true, "feedbackIdentifier" -> ApplicationConfig.appConfig.contactFormServiceIdentifier )) }


My name is Kayla Lei and I have recently finished the Web Development Immersive Program at General Assembly. I am a developer who hopes to bring my passion in the arts into the world of development. I am eager to continue learning and growing as a web developer.


Controls:
Movement
w - forward | a - left | s - back | d - right
Or use the arrow keys
Use the mouse to look
Use the spacebar to fire


Welcome to my page
That's me
I am Stefan Klinkusch, a student at the
Digital
Career Institute.
My CV
1989-1995Elementary school in Berlin, Germany
1995-2002Grammar school in Berlin, Germany
2002-2008Studies of chemistry at University of Potsdam,
Germany
2008-2011PhD thesis in the field of Theoretical Chemistry
at University of Potsdam, Germany
2014-2016Scientific coworker at the Free University of Berlin,
Germany


Teaching attention, part 4 / N: Soft Attention
There is more to memory than compression. A reduction of information can have structure – for example, in a gaussian mixture model, the sufficient statistics have are the means within each cluster. Depending on which cluster you might be visiting, you might focus on a different one of the means. A good compression should induce an effortless way of searching through different parts of a summary. In essence,
Good models let us navigate information.
In deep learning, this process of navigating information is called “attending to” different inputs. We’ll illustrate a canonical attention mechanism in the context of sentence translation, but it’s worth noting that the principle applies to many settings with structured outputs (like graphs), where the influences from input to output are somehow localized.
In the abstract, sentence translation is a prediction problem where the inputs are sequences and the outputs are also sequences. The input and output are the same sentence in a source and a target language, respectively. Each element of the sequence is a word in the sentence. Words can be represented either by one-hot encodings from some vocabulary (usually, the words in a corpus above some minimum frequency), or by embeddings derived from some previously trained model on another corpus. This is illustrated in the figure below.
Once you make the leap into representing words as numerical vectors, it’s natural to think of sentences as curves in some high-dimensional space. The two sentences are just two curves in two spaces, and you need to learn to predict the second from the first. The reason this problem is doable is because, after seeing enough training examples, you might associated certain subsequences (mini curve shapes) in the source space with subsequences in the target space.
Sequence-to-Sequence Architecture
I’m tempted to call the first approach to this problem the “naive approach,” except that it doesn’t feel right to call something naive that was state-of-the-art only a couple of years ago [1].
The idea is to build a link between the two sequence shapes, using an appropriate learned representation. You can think of it as a two step process,
(1) Build a memory of the first sequence, which you’ll be able to refer to later on. (2) Learn to associate the memory of the first sequence with a reasonable shape for the second.
Step (1) is done with an RNN encoder, just like what we’ve been exploring in the previous posts. The final state (the final green bar) gives a succint representation of the entire sequence (the red dots). More than being an unsupervised representation, it’s one that’s been tailored exactly for the problem of decoding into the target language.
The second step is also accomplished by an RNN, but with a a couple twists. As in usual RNNs, you build up a summary, let’s call it , based on the previous timepoints summary, and also a new input, the previous target word . The idea is that the summary is giving a sense of what the sequence means so far, which is useful for figuring out how it will evolve (certain shapes are much more common than others). The first twist is that you also are allowed to look at the summary the source sequence, the original (practically, this is just another linear input to the RNN unit).
The second twist is that the inputs are not properly specified, because they aren’t actually available at test time. If you knew , you wouldn’t need to bother with prediction in the first place! Instead, you should build a separate prediction model from to and use the predictions for the actual inputs (an alternative, called “teacher-forcing,” uses the real during training time, can have advantages, but comes with it’s own issues). This process is illustrated below. The dashed line are the predictions that you have access to, and the length of the yellow curves gives a sense of the loss.
Attention
The decoding process above puts a lot of burden on the final encoded from the first sequence. This seems easily avoidable – it’s not like we need to throw away all the previous summaries because of computational constraints. Moreover, you would expect that the summaries and might be closely related in timepoints that are close together. The beginning of the source and target sentences should mean essentially the same thing, even though they are in different languages.
Soft attention is the name of a type of learning module designed directly around this observation [2]. The idea is to use a different summary at each step of decoding. Instead of only ever using , we’re allowed to use some combination of the encoder summaries, where the weights depend on the timepoint of the decoder. These weights are illustrated by the pink distributions in the figure below.
At the next timepoint, the attetion distribution is free to change, according to the new position of the decoder. This extra degree of flexibility – the fact that the RNN decoder has access to different encoder summaries at different timepoints, not just the unchanging – is the property that distinguishes a decoder with an attetion mechanism from a ordinary decoder. A updated attetion distribution, associated with the next decoder timepoint, is show in the figure below.
Exercise: Write out pseudocode for the forwards pass of a sequece-to-sequece model with an attetion mechanism in the decoder.
How does the model know what distributions are most appropriate for the different sentences? After all, it must be learned from the data, somehow. There is no single consensus on how to define these weights, and many papers have been written specifically around novel proposals for guiding attention effectively. That said, two approaches are representative of a wide class of mechanisms [3],
- Local attention: At step in decoding, define . Or, in pseudocode,
the vector can be computed as
a = softmax(l(h_t))
wherel = nn.linear(dim(h_t), T)
. - Content-based attention: At step in decoding, define . In
pseudocode, this is
a = softmax(H_enc @ h_t)
whereH_enc
is formed by stacking the summaries as rows.
The main difference is that local attention does not refer to the encoder summaries . It puts high mass on some parts of the source sentence depending solely on the state of the decoder . The decoder summaries tend to reflect, in some of their coordinates, how far along into the target sentence they are. So, these attention distributions tend to just place high mass on timepoints in the encoder close to the current timepoint in the decoder.
The content-based attention mechanism, on the other hand, allots weight according to how similar the source and target encodings are (a large inner product corresponds to a small angle). This means that if there is are words in the source sentence that have similar meaning to the current decoder summary, , then those words will be upweighted, no matter their position in the sentence. This is qualitatively illustrated in the figure below. The content-based approach places high mass near the end of the encoder sentence, because it is close (in the embedding space), to the meaning at the decoder timepoint. This is in spite of the fact that those words occur at a timepoint very different than the current decoder timepoint.
Discussion
No matter how we define the ’s, the fact that we learn them has a nice consequence: for free, we’ve learned a soft-alignment between the source and target sentence. At any timepoint in decoding, the encodings with high are said to “softly-align” to that timepoint. In this way, you might notice “inversions,” where the decoder doesn’t just proceed linearly down the encoder, placing all mass on when decoding . This is common in translation between languages that put adjectives before / after nouns, for example.
A final observation – including this mechanism is especially beneficial when working with long sentences. This is phenomenon documented in the literature [2], and it makes sense in retrospect: long sentences are more suceptible to the vanishing gradient problem, and even with gating, the final tends to mostly reflect cotributions from the end of the source sentence. A approach with an attetion mechaism, in contrast, can always draw on summaries taken near the start of the sentence, by putting most of the mass of the there.
Finally, while we’ve focused on attention in a sequence to sequence context, it’s worth noting that these principles extend much more generally. Whenever you have a structured output or collection of tasks, it’s possible to refer to summaries selectively, attending to only those that are most relevant for the current element in the more complex structure / collection. For example, in a graph problem, only the nearby nodes might be worth attending to. The general takeaway is that, whenever you might be able to exploit specific structure in the relationship between summaries $h_t$, you can design an attention mechanism that makes learning from them simpler.
Exercise Solution:
// Encode
all_h = []
for t in range(T):
h = rnn_encoder(x[t], h[t - 1])
all_h.append(h)
// Decode with attention
h_tilde, y_hat = all_h[-1], []
for t in range(T_prime):
y_hat.append(pred(h_tilde))
alpha = attn_weights(y_hat[-1], h_tilde, all_h)
h_tilde = rnn_decoder(y_hat[-1], h_tilde, alpha * all_h)
[1] Sutskever, I., Vinyals, O., & Le, Q. V. (2014). Sequence to sequence learning with neural networks. In Advances in neural information processing systems (pp. 3104-3112).
[2] Bahdanau, D., Cho, K., & Bengio, Y. (2014). Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473.
[3] Luong, M. T., Pham, H., & Manning, C. D. (2015). Effective approaches to attention-based neural machine translation. arXiv preprint arXiv:1508.04025.
Kris at 09:04


Across: 5. Experienced RU team (6) 8. Boatman has a right go about tuna! (8) 9. Wagons carry the Spanish groups (7) 10. Despised violent death! (5) 11. Stalin led out to be put in place! (9) 13. Drink at convenience station (8) 14. Doesn't hit wife, we hear (6) 17. Go back east two seconds later (3) 19. Edward Short returns home (3) 20. Dear father leads procession (6) 23. In Eire, teas may be served here (8) 26. Companion joins painters and reformers (9) 28. Vertical Scottish chimney encased in lead (5) 29. Support for wood in addition to metal (7) 30. Salon rep may become rather intimate (8) 31. Respect shown in Celeste embracing father (6) Down: 1. Old penny sweet contains one southern nut (6) 2. Upset one soldier in front of gallery (7) 3. Plain rude, and no mistake! (9) 4. A French coin is tossed outside by official (6) 5. Is this period The Age Of Scrooge? (8) 6. Whole lot returned outside, thanks! (5) 7. Feeling better when I've left in a rush (8) 12. Sign of approval for Don to return (3) 15. Order one priest to push in! (9) 16. A lot of punishments! (8) 18. I follow Mr Gunn to bedroom in holiday resort (8) 21. Get hard group (3) 22. Holy Mary Sharp (7) 24. In the land of 12 when John returns (6) 25. Bluest exchanges are not this! (6) 27. Bring up new reading of Aries (5)


randomize after round
Distance:
Width:
Data Sets: (click to make active)
The plots below show different evaluations of the test data. These plots update automatically after an inactivity of 2 seconds. Figure 2 shows a scatter plot of time over effective ID. The effective Index of Difficulty (IDe) is computed as follows:
Figure 3 shows a histogram of the throughput for each dataset. Throughput is computed as IDe/movement time and therefore has the unit bits/second. Throughput and its distribution can be one of the indicators of a device's performance. To make an encompassing assessment further metrics have to be used (e.g. error rate, and overall user comfort and user satisfaction).
These two figures illustrate the mouse's movement path and speed during the test. In Figure 4 All data is anchored in the start position of each trial. The positional movement data is projected onto the target vector, to make comparisons over all approach directions easy.
Figure 5 finally shows the movement speed in pixel per ms over the movement time. Analysing the user's movements beyond Fitts's law can yield additional insights into different qualities of various input devices. For the sake of completeness and contrast we would like to refer to [Bootsma et al. 2004].
Fitts, P. M. (1954). The information capacity of the human motor system in controlling the amplitude of movement. Journal of Experimental Psychology, 47(6), 381-391. doi:10.1037/h0055392
MacKenzie, I. S., & Buxton, W. (1992). Extending Fitts's law to two-dimensional tasks. Proceedings of the SIGCHI conference on Human factors in computing systems CHI 92, p, 219-226. ACM Press. doi:10.1145/142750.142794
ISO. (2000). Ergonomic requirements for office work with visual display terminals (VDTs) - Requirements for non-keyboard input devices. ISO 92419. International Organization of Standardization.
Soukoreff, R., & Mackenzie, I. (2004). Towards a standard for pointing device evaluation, perspectives on 27 years of Fitts's law research in HCI. International Journal of Human-Computer Studies, 61(6), 751-789. Elsevier. doi:10.1016/j.ijhcs.2004.09.001
Bootsma, R. J., Fernandez, L., & Mottet, D. (2004). Behind Fitts's law: kinematic patterns in goal-directed movements. International Journal of Human-Computer Studies, 61(6), 811-821. doi:10.1016/j.ijhcs.2004.09.004
There is quite some room for improvement and we'd love to hear your feedback and comments. You can address them to Simon via email.
This interactive experiment was created as part of an assignment for the User Interface Technologies course at the University of Copenhagen in spring 2012. Group Members: Simon Wallner, Otilia Danet, Trine Eilersen, and Jesper Tved.
This project is licensed under the permissive MIT license, The full source is available on GitHub


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use Agent | |
|---|---|
| data.agents | |
| model.agent.agents | |
| model.agent.agents.index | |
| model.agent.collection | |
| model.agent.execution | |
| util.clientconnection |
| Uses of Agent in data.agents |
|---|
| Methods in data.agents with parameters of type Agent | |
|---|---|
void |
AgentCollectionStorageMySQL.putAgent(Agent agent)
|
abstract void |
AgentCollectionStorage.putAgent(Agent agent)
Adds an Agent to the collection. |
| Uses of Agent in model.agent.agents |
|---|
| Subclasses of Agent in model.agent.agents | |
|---|---|
class |
EmptyAgent
This is a useless agent, without any behaviour. |
class |
IndexAgent
This abstract agent must be extended by agents which generate an index page. |
class |
MenuAgent
Agent for generating the menu. |
class |
NotifyAgent
|
class |
SearchAgent
Agent for searching and generating search data. |
class |
StatsAgent
Agent for generating stats. |
| Uses of Agent in model.agent.agents.index |
|---|
| Subclasses of Agent in model.agent.agents.index | |
|---|---|
class |
MobileIndexAgent
This agent provides methods for generating an index page for mobile devices. |
class |
NormalIndexAgent
This agent provides methods for generating an index page for normal (desktop) devices. |
| Uses of Agent in model.agent.collection |
|---|
| Methods in model.agent.collection that return Agent | |
|---|---|
Agent |
AgentFactory.createAgent(java.lang.String agentID)
Creates a new agent based on its unique identifier. |
Agent |
AgentFactory.fromXML(java.lang.String xml)
Converts the xml representation of an Agent to an Agent instance, without recording its history. |
Agent |
AgentFactory.fromXML(java.lang.String xml,
boolean recordHistory)
Converts the xml representation of an Agent to an Agent instance. |
| Methods in model.agent.collection with parameters of type Agent | |
|---|---|
boolean |
AgentCollectionMutable.delete(Agent agent)
Deletes an agent from the collection. |
boolean |
AgentCollection.delete(Agent agent)
|
void |
AgentCollectionMutable.put(Agent agent)
Adds an agent to the collection. |
void |
AgentCollection.put(Agent agent)
|
| Uses of Agent in model.agent.execution |
|---|
| Methods in model.agent.execution with parameters of type Agent | |
|---|---|
void |
AgentExecutor.setAgent(Agent agent)
Sets the agent to be executed. |
| Uses of Agent in util.clientconnection |
|---|
| Methods in util.clientconnection with parameters of type Agent | |
|---|---|
boolean |
RemoteAgentCollection.delete(Agent agent)
|
void |
RemoteAgentCollection.put(Agent agent)
Sends an Agent to the server. |
| Method parameters in util.clientconnection with type arguments of type Agent | |
|---|---|
void |
RemoteAgentCollection.put(java.util.Collection<Agent> agents)
Sends a collection of Agents to the server. |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Fancytree Drag & Drop - Advanced Example
Source List (realized as tree)
- Bugatti Atlantic
- Porsche 911 (w/girl)
- Lamborghini Miura
- Item 4
- Item 5
Photo Gallery List - <ul> list as standard jQuery Draggable (but not Sortable)
Todos for Left Fancytree
- Native cross-tree copyTo
- Native cross-tree moveTo
- (Non-)contiguous multi-select using modifier key (Ctrl/Opt)
- Drag & Drop reorder of nodes from the same tree (multi selected)
- Drag & Drop single or multiple selected nodes from left tree
(including lazy-loading)
- Native support for multi-node DnD (currently implemented using the std. callbacks):
- includes multi-node helper image
- Also sometimes the order is reverted.
- Native support for multi select with Click + SHIFT and CTRL (currently implemented using the std. callbacks)
SHIFT: Only inside the same parent.
Also, Click + Shift could allow to extendb> a current range.
- Prevent dropping from left list to the active node
- Update a counter and send an ajax request on drop
- Currently we also implement a 'pill' or 'badge' on the line item that
shows how many sub-items are in the folder, they are similar to these
Badges - http://twitter.github.io/bootstrap/components.html#labels-badges.
Todos for Right Fancytree
- Images inside nodes are scaled to 16x16
- Drop target marker should consider the real node height
- (Non-)contiguous multi-select using modifier key (Ctrl/Opt)
- Drag & Drop reorder of nodes from the same tree (multi selected)
- Add Fancytree-like D&D target icons to Sortable list sorts
so they look the same as Fancytree sorts & drops
- Optimize CSS for better disambiguation of 'Selcted' vs. 'Active' nodes
Suggestions welcome!
- 'Nothing is droppable on the right side (though the right is multi-selectable and sortable within itself)'
QUESTION: shouldn't it be possible to drop from the gallery here?
Todos for Photo Gallery Draggable List
- Click one Sortable list item to highlight it, then Shift Click another
item to select multiple contiguous items in Sortable list [like your OS does]
- Dragging a Draggable over the right tree does not revert, although invalid
- Make Sortable --> no working solution yet, so the should not be a MUST HAVE


Connector Pane
Execute Function
Executes a global Lua function with the provided name.
Parameter(s)
-----------------
- MLua in: Reference to the MLua instance.
- Function Name: Name of the function to call.
- Argument Data: LabVIEW variant to be used as argument data for the Lua function.
- ms timeout (-1): The time to wait for the MLua reference to become available. A value of '-1' specifies an infinite timeout.
- error in: Describes error conditions that occur before this node runs. This input provides standard error in functionality.
- MLua out: Reference to the MLua instance.
- Data out: Return data from the Lua script in the form of a LabVIEW variant
- error out: Contains error information. This output provides standard error out functionality.


[Erowid Note: Driving while intoxicated or tripping is dangerous and irresponsible because it endangers other people. Don't do it!]
To best describe this trip I am going to use half of what I remember and half of what my friends told me happened.
I recall the warm march day very well, It was during my spring break senior year in high school. We had set out to trade of the Datura leaves with the rainbow people in buck lake. Usually around this time of year I am able to bring them pots, pans, perishable food (milk, eggs etc..) and they would trade with either some of the finest marijuana or lsd. Seeing as how there was an extreme shortage of lsd we set out with the goal of trading the Datura and some food for some lsd. We arrive and nobody has anything. So we have all of this datura and camping supplies and we are in the middle of the forest, so naturally we camp.
We drink a few beers and fired up a blunt. Then my friend tells me that we should take the datura and some dramamine and trip all night. I thought what the heck. So instead of picking the white flowers he picked the green leaves. He said it would work and I believed him. So I took about 10 dramamine and 3 green leaves about the size of my hand.
What happens next is probably the hardest thing to ever recall. I have used lsd mushrooms and other drugs but nothing, I mean nothing could compare to the sheer power of the trip I was about to experience.
The trip began with no onset. As a matter of fact I donít recall the feeling of ever 'tripping' there was no visuals such as color changes and moving objects as with lsd or shrooms. This was purely hallucinations. Nothing was real. Nothing was fake. There was no distinguishing reality from the 'fantasy world'
I completely forgot that I had even taken a drug.
This next paragraph is told through the eyes of my friends.
The first experience was we all set out our separate ways (3 of us). When they found me they said I was in a lake with weeds matted down around me in a perfect circle and was shouting at them that I was in target playing playstation. Then I told them that I was in B's pool. B does not have a pool. I sure as hell though he did that night I will be damned if I was not swimming in it. Neither me or friends recall much until I said that I was ready to go back to pat's 20-30 miles away from the woods. They said that I demanded to let me drive and we should go back. They did not think so. So I left them.
The next paragraph or two is now my own recollection of what happened after I left my friends in the woods.
I do not remember leaving them or driving anywhere. I start my memory recall with me standing on the edge of the woods off of a country road where a local spring was. I remember seeing my car on a dirt embankment and a lake county sheriffs SUV behind my car. I remember having no feeling of being afraid or scared of getting arrested. I still do not remember taking any drug and do not realize that I am tripping balls.
The officer approached me and asked for my ID. In the report it stated that I reached down to the ground and handed him a pile of dirt. The reason I know this is because the lady at the dispatcher's office was the mother of one of the friends that I was tripping with.  I remember him searching my car, and then for some reason says 'donít worry you are not in trouble, you are not being arrested I am just baker acting you' I had no idea what he meant but I was to calm and relaxed to do anything. so I was placed in cuffs and put in the back of the cop's SUV.
During the ride there somehow another officer appeared in the front seat and they began to smoke pot.   The officer asked me to step out of the vehicle. I looked down and realized that I was shackled to the vehicle. (not really).
Suddenly the image of the shackles disappears right before my eyes. I realize now that I am on something and I am beginning to come down. I was escorted into the hospital and placed on a bed and they began to draw blood. Now images of people and things began to appear and disappear. While the images where there they seemed so realistic, so real that I could touch smell and hear them. It seemed like they were really there, there was complete interaction with the hallucinations. The doctors cound nothing in there standerd drug testes. I was now becoming sober enough to remember bits and pieces and I recall taking the drugs. I told the doctors what I had taken. The said the only thing for me to do is to go into detox until the drug completely wears off.
I remember sitting in the chair at the detox and random people would sit in the chair beside me. All of them would disappear within a minute. The only person that was actually beside me was my mother and she kept asking me who I was talking to. So my mother got me signed in and they said that I would have to be in there at least 24 hours, and that the doctor would evaluate me and tell me whether or not I was ok to go.
The next day I woke up completely sober and feeling refreshed. I had tripped for a solid 24 hours. The doctor evaluated me and said that I was good to go.
Through all of the different drugs I have done I usually do them more than once. This drug I did once and will NEVER touch again.
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.


Joe's Test Site
Home
About
Contact
CONTACT INFO
First Name:
Last Name:
Address:
City:
State:
Zip Code:
Phone:
Email:


MEET THE OFFICERS
President |
Yuxuan Chen |
Yuxuan Chen is a sophomore at U of M majoring in Computer Science. She started cubing in the summer of 2010 and began going to competitions at the end of 2011. Her favorite events are One-Handed, Skewb, and 3x3x3. Outside of cubing, she enjoys playing random retro video games on her computer, making occasional YouTube videos, and coaching Academic Games. Average Solve Time: about 13 seconds Main 3x3x3 Cube: Moyu Hualong |
Vice President |
Jeremy Kruman |
Jeremy Kruman is a junior at the University of Michigan studying computer science. He first got into cubing in 2007, but didn't begin competing until 2013. Aside from cubing, his favorite things to do are play card games and video games, and spend time with friends. Average Solve Time: about 19 seconds Main 3x3x3 Cube: GuoGuan YueXiao |
Copyright © 2015 University of Michigan, Cubing Club


Click here to Analyze
Search Term:{{results.term}}
Orignal Number of Tweets: {{results.onum}}
Number after cleaning : {{results.fnum}}


JAMES BONGANI ST. EDDE, EGLISE, RUE 11, AVE 27 VRIDI, ABIDJAN COTE D’IVOIRE, WEST AFRICA.     BEFORE THE DEATH OF MY FATHER IN PRIVATE HOSPITAL HERE IN ABIDJAN.    2) TO SERVE AS THE GUARDIAN OF THIS SINCE I AM A BOY OF 20 YEARS. 3) TO MAKE ARRANGEMENT FOR ME TO COME OVER TO YOUR COUNTRY TO FURTHER MY EDUCATION AND TO SECURE A RESIDENT PERMIT IN YOUR COUNRY FOR ME.  THANKS AND GOD BLESS. BEST REGARDS, JAMES BONGANI. La temporada de huracanes y el terremoto de Peru, a un click http://wwwstarmedia.com/noticias/especiales/desastresnaturales.html


Moving on
My life has been a like a movie scenario, in the past 12 months or so. As with all things in life, some things in the movie were bad, some things amazing, few of them totally crazy. Most of them somewhere in-between.
All this time, as part of this movie, I am driving tectonic changes in my life. One of the side effects of those changes, is that this blog shall be retired.
“It’s the nature of time that the old ways must give in” as my favorite Sabaton say, in their song, Shiroyama.
You can still find my newer blog posts in periklisgkolias.com/blog or hackernoon.com/u/periklisgkolias.
Thank you for your time and company for the past 5 years, and i hope we can interact again in the future.
Sincerely, Peri


LET ME
THAT FOR YOU

Enable JavaScript to use this Website.

Step 1
Type a search term in the search box below.
Step 1
Go to Wikipedia.org
Step 2
Click the arrow button.
Step 2
Enter a search term
Step 3
Send the generated link to a friend ...or enemy.
Step 3
Learn something
for yourself
!
Create your own LMWTFY!
|
Created by Joe Glombek
|
Cookies
|
Inspired by LMGTFY
|
Wikipedia is a registered trademark of the Wikimedia Foundation


Accessibility of Web Components
Resources
WebComponents.org
Web Components Spec
Shadow DOM Spec
HTML5 Rocks Shadow DOM Series
Accessibility and the Shadow DOM
Using ARIA in HTML
Presentation slides


---
layout: post
title: HTTP based read-only files system
date: '2010-10-21T12:16:00.002-04:00'
author: Hunter Freyer
tags:
modified_time: '2010-10-22T16:42:38.064-04:00'
blogger_id: tag:blogger.com,1999:blog-203463942347409368.post-4109129818788645978
blogger_orig_url: http://blog.hjfreyer.com/2010/10/http-based-read-only-files-system.html
---
I've become thoroughly fed up with the lack of progress in the space of web-based IDEs and text editors.
While
there are several editors which can run in the browser, all of the ones I've seen lack a
pretty basic feature: save. I've seen one project which can save files by
uploading them to your own server via (S)FTP, which would merely be horridly slow if it worked, but it doesn't. So much
for
that.
So I've decided to write as dumb an editor as possible on AppEngine. The editing part I'll just rip off from one of the above editors (probably CodeMirror), the saving is trivial - POST data and shove it in data store, but the reading is a little tricky. How do I expose the saved files in a meaningful, but simple way
I've looked at the following protocols:
Know what I see when I read that? "Blah, blah, blah, blah, blah." It's too complicated! Give me something stupid!
So I'm making my own protocol. Let's call it... the Hypertext File Interface, or HFI for now.
- File System Root (denoted $ROOT) is any valid URI.
- File Name ($FILENAME):
- Any string of URL-safe characters.
- A server receiving a file name from a client MUST canonicalize it according to the
following procedure:
- Strip off all leading and trailing "/"s.
- Replace any subsequence of "/"s of length greater than one with a single "/".
- Note that this means that potentially "unclean" File Names like "." or ".." are allowed, though
nonsensical ones like the empty string or "/" are not.
- Servers MAY ignore case in File Names, but clients SHOULD NOT assume two Canonicalized File Names
which differ only in terms of case refer to the same file.
- A File or a Directory are what you expect. Both are denoted by File Names.
- Info method (for housekeeping):
- When an HTTP GET is called on "$ROOT/info", the server MUST reply with status 200, and a body
exactly equal to the string "{'version' : 1}".
- Read method: an HTTP GET to "$ROOT/read/$FILENAME" calls the Read method.
- If $FILENAME Exists and is a File according to the server, MUST return status 200 and the
exact contents of the File as the body.
- If $FILENAME does not Exist or refers to a Directory, the server MUST return a 404 code.
- List method: an HTTP GET to "$ROOT/list/$FILENAME" calls the List method.
- If $FILENAME does not Exist, the server MUST return 404.
- If $FILENAME refers to a File, the server MUST return with status 200, with the body consisting of a
single line: the canonicalized version of $FILENAME (no $ROOT or "/list/").
- If $FILENAME refers to a Directory object, the server MUST reply with status 200, with body listing
the Directory's contents.
- Each line of the response consists of a single File Name denoting a file existing in that
directory.
- Each File Name in the body MUST be canonicalized, and start with the canonicalized version of
$FILENAME followed by a "/".
- File Names corresponding to Directories are denoted by the addition of a single trailing "/".
- A Listing of a Directory MUST NOT include the Directory's $FILENAME itself (a consequence of
(2)).
- An empty response indicates an Existing but empty Directory, which the server MAY allow if it
chooses.
- The appearance of a File Name ($FILE2) in a Listing indicates that if a List or Read call (whichever
is appropriate) was made at the same time this List call was made, $FILE2 MUST have Existed. Of
course, if the underlying File System is mutable, all bets are off when it comes to subsequent calls
any amount of time in the future.
- Furthermore, every Existing File Name SHOULD appear in EXACTLY one directory listing, except for "",
which corresponds to the Root Directory. Hidden File and Directories are allowed, but may be
annoying/confusing.
- Security/authentication:
- HTTPS
- A server MAY provide an HFI service over HTTPS. Besides the fact that $ROOT will begin with
"https://", the protocol remains the same.
- Given two valid file system roots, $ROOT and $ROOTS, such that the only difference is that
$ROOTS has "https://" instead of "http://", they MUST refer to the same underlying file
structure.
- A client can ascertain whether HTTP and/or HTTPS is supported by calling the Info method on both
the "http" and "https" versions of the file system root.
- Authentication
- The server MAY decide whether a user has access to a given filesystem based on Cookies (or other
HTTP headers), but not based on query parameters (query parameters are treated as part of the
file name).
- If a server decides the user does not have access to the file system, all HTTP GETs on any URL
beginning with $ROOT MUST return 403.
- If a server decides the user does have access to the file system, all HTTP GETs on
any URL beginning with $ROOT MUST NOT return 403.
- I.E., Authentication is all or nothing for a given $ROOT.
One thing that I really like about this is the fact that you don't even need a real servlet to
implement it - a little Bash script could easily be written to copy/symlink files into a "read/"
directory, and print the output of "ls" into index.html files in a "list/" directory.
This is also quite extensible (e.g. I could easy add a Stat method), and could very easily be given a FUSE front-end.
Any comments? Worries? A list of solutions I'm reinventing?


Last selected day:
Last hovered day:
Year changed
0
times.
Day width:
Show day name on each month
Week start day
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Locale
English US
Portuguese
French


Food production in all countries is limited by weather and climate. Many developing countries are particularly vulnerable because their climates are marginal for food production or are highly variable in space, which requires highly pluralistic cropping practices to achieve maximum total production. In many cases, these developing countries could take advantage of refined agronomic strategies (e.g., shelterbelts, strip cropping, intercropping, response farming) if more refined spatial and temporal details were known about their climates. Many of these countries currently have climatologies developed from records that are too short, contain unacceptably large gaps, do not include data on all critical variables, or that are derived from a limited set of stations that doesn't represent the spatial variability of the country.
Mesoscale meteorological models are fluid-flow models based on fundamental conservation laws of physics. They can allow resolution of basic weather variables down to scales of a few kilometers or less. If such a model has its boundary conditions supplied by larger-scale (synoptic-scale) values of meteorological variables at regular space and time intervals and with detailed surface orographic, land use, and soil characteristics, it can simulate the complete set of meteorological variables at each point of a 3-D grid. By the processes of four-dimensional data assimilation, the resulting meteorological fields produced by the model are forced to agree with available observations and create physically consistent values at intermediate points and times. If this procedure is carried out over the period of record for the domain (country or region), a very large 4-D dataset is created with arbitrarily high spatial resolution. Such a dataset can then be the basis for optimizing the selection of crops and agronomic practices for specific subregions for enhancing production under sustainable practices. These meteorological models can be used for weather forecasting, air pollution studies, monitoring insect migration, and many other applications
We are planning a pilot study to demonstrate this method and are seeking names of physical scientists from developing countries that would be interested in becoming research partners in this venture.
Eugene S. Takle
Atmospheric Science
3010 Agronomy Hall
Iowa State University
Ames, IA 50011 USA
tel:<PHONE_NUMBER>
fax:<PHONE_NUMBER>
e-mail: a1.est@isumvs.iastate.edu


This is what Blake is seeing:
May 30, 2023 10:22:00 PM net.schmizz.sshj.transport.random.JCERandom <init>
INFO: Creating new SecureRandom.
May 30, 2023 10:22:01 PM net.schmizz.sshj.transport.TransportImpl sendClientIdent
INFO: Client identity string: SSH-2.0-SSHJ_0.30.0
May 30, 2023 10:22:01 PM net.schmizz.sshj.transport.TransportImpl init
INFO: Server identity string: SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.7
W, [2023-05-30T22:22:01.988346 #754] WARN -- : Thread-9746: marcao: Upload to SFTP failed:
W, [2023-05-30T22:22:02.000021 #754] WARN -- : Thread-9746: marcao: Will retry 9 more times
May 30, 2023 10:22:32 PM net.schmizz.sshj.transport.random.JCERandom <init>
INFO: Creating new SecureRandom.
May 30, 2023 10:22:32 PM net.schmizz.sshj.transport.TransportImpl sendClientIdent
INFO: Client identity string: SSH-2.0-SSHJ_0.30.0
May 30, 2023 10:22:32 PM net.schmizz.sshj.transport.TransportImpl init
INFO: Server identity string: SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.7
W, [2023-05-30T22:22:32.502190 #754] WARN -- : Thread-9746: marcao: Upload to SFTP failed:
W, [2023-05-30T22:22:32.502488 #754] WARN -- : Thread-9746: marcao: Will retry 8 more times
May 30, 2023 10:23:02 PM net.schmizz.sshj.transport.random.JCERandom <init>
INFO: Creating new SecureRandom.
May 30, 2023 10:23:02 PM net.schmizz.sshj.transport.TransportImpl sendClientIdent
INFO: Client identity string: SSH-2.0-SSHJ_0.30.0
May 30, 2023 10:23:02 PM net.schmizz.sshj.transport.TransportImpl init
INFO: Server identity string: SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.7
W, [2023-05-30T22:23:03.017115 #754] WARN -- : Thread-9746: marcao: Upload to SFTP failed:
W, [2023-05-30T22:23:03.017412 #754] WARN -- : Thread-9746: marcao: Will retry 7 more times
May 30, 2023 10:23:33 PM net.schmizz.sshj.transport.random.JCERandom <init>
INFO: Creating new SecureRandom.
May 30, 2023 10:23:33 PM net.schmizz.sshj.transport.TransportImpl sendClientIdent
INFO: Client identity string: SSH-2.0-SSHJ_0.30.0
May 30, 2023 10:23:33 PM net.schmizz.sshj.transport.TransportImpl init
INFO: Server identity string: SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.7
This is what Francis is seeing:
May 31 12:11:03 sftp-staging1 sshd[333415]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=<IP_ADDRESS><EMAIL_ADDRESS>May 31 12:11:03 sftp-staging1 sshd[333415]: pam_sss(sshd:auth): authentication success; logname= uid=0 euid=0 tty=ssh ruser= rhost=<IP_ADDRESS><EMAIL_ADDRESS>May 31 12:11:28 sftp-staging1 sshd[333468]: Accepted publickey for pulsys from <IP_ADDRESS> port 59947 ssh2: RSA SHA256:VLdeVDZKd+1kcbfm5HMGD23vwdXoKzC16s6ifn9Kv/I
May 31 12:11:28 sftp-staging1 sshd[333468]: pam_unix(sshd:session): session opened for user pulsys by (uid=0)
May 31 12:11:28 sftp-staging1 systemd-logind[1071]: New session 306 of user pulsys.
May 31 12:11:41 sftp-staging1 sudo: pulsys : TTY=pts/1 ; PWD=/home/pulsys ; USER=root ; COMMAND=/usr/bin/bash
May 31 12:11:41 sftp-staging1 sudo: pam_unix(sudo:session): session opened for user root by pulsys(uid=0)
May 31 12:12:18 sftp-staging1 sshd[333415]: Accepted password for<EMAIL_ADDRESS>from <IP_ADDRESS> port 41114 ssh2
May 31 12:12:18 sftp-staging1 sshd[333415]: pam_unix(sshd:session): session opened for user<EMAIL_ADDRESS>by (uid=0)
May 31 12:12:18 sftp-staging1 systemd-logind[1071]: New session 307 of user<EMAIL_ADDRESS>May 31 12:12:18 sftp-staging1 systemd: pam_unix(systemd-user:session): session opened for user<EMAIL_ADDRESS>by
So it seems that the authentication succeeds but the file upload does not. I'm also still seeing the missing reports page in the UI.
Blake still thinks it's a timeout issue, based on his logs. Asked him to check that we're on v.05 and the marcaosftptimeout parameter is set to 60.
deployed to prod 5/31.
closed
by Kevin Reiss at 2023-05-31 23:28:34.Creating a new ticket for remaining tasks with OIT, closing this one.
closed
by Kate Lynch at 2023-05-31 16:04:28.assigned
by James R. Griffin III at 2023-05-31 16:09:10.labeled
by Trey Pendragon at 2023-05-31 17:11:24.labeled
by Trey Pendragon at 2023-05-31 17:11:24.renamed
by None at 2023-05-31 17:11:49.labeled
by None at 2023-05-31 17:14:55.labeled
by None at 2023-05-31 17:14:55.labeled
by Trey Pendragon at 2023-05-31 17:43:57.labeled
by Trey Pendragon at 2023-05-31 17:43:57.renamed
by None at 2023-05-31 17:44:13.referenced
by None at 2023-05-31 17:58:50.merged
by None at 2023-05-31 17:58:50.closed
by None at 2023-05-31 17:58:51.head_ref_deleted
by None at 2023-05-31 17:58:52.assigned
by Trey Pendragon at 2023-05-31 17:10:14.referenced
by Trey Pendragon at 2023-05-31 17:18:43.closed
by None at 2023-05-31 17:58:52.renamed
by Robert-Anthony Lee-Faison at 2023-05-31 18:35:17.We learned key information: parent_id in subguides csv correlates to sortid in guides csv, or in other subguide rows. Path field is the folder in which the card images reside.
assigned
by None at 2023-05-31 15:20:01.Started a github repo for JMeter tests
Coverage: 95.366% (-0.02%) from 95.384% when pulling 2e193f1f9d3b09b57e9875c8a0f3745147e37a43 on 3572-rate-limit-sitemap into 22c41d07eb90c69d3c7f2b41c3bab90605de283a on main.
labeled
by Max Kadel at 2023-05-31 20:03:16.@sandbergja can you provide another example? https://catalog.princeton.edu/requests/9973529363506421?aeon=true&mfhd=22667098990006421 (box 41 in production) also takes you to the request form to select an item before going to the Aeon form.
@sandbergja can you provide another example? https://catalog.princeton.edu/requests/9973529363506421?aeon=true&mfhd=22667098990006421 (box 41 in production) also takes you to the request form to select an item before going to the Aeon form.
@christinach - but if you go from https://catalog.princeton.edu/catalog/9973529363506421 and press the "Reading Room Request" button, it does not take you to the request form, it goes straight to Aeon, and if you inspect the html for that button on the page on production, it links directly to Aeon, not the requests page.
Yup, the change is to the show page, rather than the requests form. Here are some more examples:
mentioned
by Jane Sandberg at 2023-05-31 12:53:28.subscribed
by Jane Sandberg at 2023-05-31 12:53:28.mentioned
by Jane Sandberg at 2023-05-31 13:56:38.subscribed
by Jane Sandberg at 2023-05-31 13:56:38.mentioned
by Christina Chortaria at 2023-05-31 13:56:38.subscribed
by Christina Chortaria at 2023-05-31 13:56:39.referenced
by Jane Sandberg at 2023-05-31 21:13:38.merged
by Jane Sandberg at 2023-05-31 21:13:39.closed
by Jane Sandberg at 2023-05-31 21:13:39.head_ref_deleted
by Jane Sandberg at 2023-05-31 21:13:40.closed
by Jane Sandberg at 2023-05-31 21:13:40.Request made 5/31.
labeled
by Hannah H at 2023-05-31 14:01:58.labeled
by Hannah H at 2023-05-31 14:02:07.Closing in favor of #1215
closed
by Kate Lynch at 2023-05-31 15:43:23.unassigned
by Chun Ly at 2023-05-31 15:46:11.This ticket is being reworked with new decisions. See RDOS_Publishing 25 and 26 for the working drafts of the new tickets. These will be transferred to Describe when finalized.
This is now being worked as #1228
Using estimate from #1031
renamed
by Hannah H at 2023-05-31 13:54:44.transferred
by Hannah H at 2023-05-31 14:15:51.assigned
by Hector Correa at 2023-05-31 14:18:19.Parts of this completed, documented in https://github.com/pulibrary/rdss-handbook/blob/main/monitoring.md.
Closing this and will regroup with Operations on remaining tasks, to be separately ticketed.
closed
by Kate Lynch at 2023-05-31 15:57:27.As we will not be behind the VPN in production, close this ticket.
closed
by Kate Lynch at 2023-05-31 16:02:13.transferred
by Hannah H at 2023-05-31 14:15:17.assigned
by Hector Correa at 2023-05-31 16:12:37.Completed by @bess
mentioned
by Bess Sadler at 2023-05-31 16:14:32.subscribed
by Bess Sadler at 2023-05-31 16:14:32.closed
by None at 2023-05-31 16:14:32.May be closed by #1144
closed
by None at 2023-05-31 16:27:17.labeled
by None at 2023-05-31 16:27:38.closed
by None at 2023-05-31 16:28:44.closed
by None at 2023-05-31 16:29:06.referenced
by Hector Correa at 2023-05-31 17:53:56.merged
by Hector Correa at 2023-05-31 17:53:57.closed
by Hector Correa at 2023-05-31 17:53:57.head_ref_deleted
by Hector Correa at 2023-05-31 17:53:58.assigned
by Kate Lynch at 2023-05-31 20:44:18.referenced
by None at 2023-05-31 22:42:20.merged
by None at 2023-05-31 22:42:20.closed
by None at 2023-05-31 22:42:20.head_ref_deleted
by None at 2023-05-31 22:42:21.head_ref_force_pushed
by None at 2023-05-31 22:43:08.labeled
by Kate Lynch at 2023-05-31 15:47:45.closed
by None at 2023-05-31 16:28:32.This was just a test, great job @claudiawulee
closed
by Hector Correa at 2023-05-31 19:20:45.mentioned
by None at 2023-05-31 19:20:45.subscribed
by None at 2023-05-31 19:20:45.head_ref_deleted
by Hector Correa at 2023-05-31 19:20:56.The CI failures on this PR are related to Molecule itself, not to the change made to the pulmap
role. The Python stacktrace led us to two possible issues:
https://github.com/ansible-community/molecule/issues/2540
and
https://github.com/ansible-community/molecule/issues/3903
It seems 3903 was the issue here, though I'm not sure why we didn't see this failure on other tests. We should keep this in mind as we do our upgrades to everything - the problem with ansible-compat
has been fixed in the latest versions of molecule.
Related to #3722 and #3782.
referenced
by Alicia Cozine at 2023-05-31 16:40:29.merged
by Alicia Cozine at 2023-05-31 16:40:29.closed
by Alicia Cozine at 2023-05-31 16:40:29.head_ref_deleted
by Alicia Cozine at 2023-05-31 16:40:30.run successfully on both loadbalancers
head_ref_force_pushed
by Francis Kayiwa at 2023-05-31 16:27:26.referenced
by Kate Lynch at 2023-05-31 20:35:56.merged
by Kate Lynch at 2023-05-31 20:35:56.closed
by Kate Lynch at 2023-05-31 20:35:56.head_ref_deleted
by Kate Lynch at 2023-05-31 20:35:57.@christinach if you rebase this branch on main, so it includes #3950, the tests should pass.
mentioned
by Christina Chortaria at 2023-05-31 16:46:43.subscribed
by Christina Chortaria at 2023-05-31 16:46:43.referenced
by Francis Kayiwa at 2023-05-31 01:38:44.merged
by Francis Kayiwa at 2023-05-31 01:38:44.closed
by Francis Kayiwa at 2023-05-31 01:38:44.head_ref_deleted
by Francis Kayiwa at 2023-05-31 01:38:45.The spreadsheet in the first comment is the source data for the records. I don't actually know offhand on how to pull them all together as a set in Alma.
Work mendel staff for an update 5/31.
ready_for_review
by Jane Sandberg at 2023-05-31 17:24:25.referenced
by None at 2023-05-31 17:26:56.merged
by None at 2023-05-31 17:26:56.closed
by None at 2023-05-31 17:26:56.head_ref_deleted
by None at 2023-05-31 17:26:57.closed
by Alicia Cozine at 2023-05-31 16:40:31.renamed
by Kate Lynch at 2023-05-31 20:43:08.referenced
by Bess Sadler at 2023-05-31 13:03:15.merged
by Bess Sadler at 2023-05-31 13:03:15.closed
by Bess Sadler at 2023-05-31 13:03:15.head_ref_deleted
by Bess Sadler at 2023-05-31 13:03:16.closed
by Bess Sadler at 2023-05-31 13:03:16.referenced
by Jane Sandberg at 2023-05-31 21:11:10.merged
by Jane Sandberg at 2023-05-31 21:11:10.closed
by Jane Sandberg at 2023-05-31 21:11:10.head_ref_deleted
by Jane Sandberg at 2023-05-31 21:11:15.


We apologize, but the Ripple Client needs JavaScript and WebSockets in order to function. Please refer to this page and download a browser that supports WebSockets. Thank you! http://caniuse.com/websockets


{% extends "base.html" %} {% block content %}
This example demonstrates creating a DocuSign Room using a predefined template.
If you've created a template
for your organization in either Rooms for Mortgage
or Rooms for Real Estate, you can create rooms based on this template using the Rooms API.
Documentation about this example.
{% endif %}API methods used: Rooms::CreateRoom, RoomTemplates::GetRoomTemplates and Roles::GetRoles
{% endblock %}


Workflow & Role Guides |
Top Previous Next |
|
This chapter provides concise Revizto user road-maps with regards to their license roles. If reading the web version, click on each step, to expand detailed guidelines. To get function-based guidelines, navigate to the following chapters (see the TOC). Revizto Project vs. Traditional Project The charts below illustrate how Revizto ensures/facilitates collaboration at critical stages of a BIM project. If correctly implemented, Revizto allows streamlining project coordination, accelerates it and reduces the number of errors caused by misunderstanding, loss of contact, misinforming, etc.
|


[gecode-users] Floating point example?
Clifford Yapp
cliffyapp at gmail.com
Wed Mar 27 01:51:45 CET 2013
Excellent. Impressive to see an open source project have such up-to-date
documentation with a release. Thanks too for the CMake build system -
that's much appreciated!
CY
On Tue, Mar 26, 2013 at 7:25 PM, Guido Tack <tack at gecode.org> wrote:
> There's a whole chapter on floating point constraints in the tutorial
> documentation "Modelling and Programming with Gecode" (see chapter 6 and
> 7.1.4) as well as several examples. The system you describe can be solved
> with Gecode given suitable initial bounds for A,B,C.
>
> Cheers,
> Guido
>
> On 27/03/2013, at 8:40 AM, Clifford Yapp <cliffyapp at gmail.com> wrote:
>
> > I noted with considerable interest that Gecode 4.0 lists support for
> floats in its Changelog.
> >
> > Does there exist a tutorial demonstrating this ability? In particular,
> is it possible to add
> > constraints along the lines of "A * B = 12.2", "B + C < 4.1", "A * C =
> 4" and have Gecode solve the system for A, B and C? (Or is that a
> different type of constraint system than Gecode is intended for?)
> >
> > Thanks,
> > CY
> > _______________________________________________
> > Gecode users mailing list
> > users at gecode.org
> > https://www.gecode.org/mailman/listinfo/gecode-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20130326/9ab38b7f/attachment.html>
More information about the users
mailing list


SAY IT ISN'T SO A film review by Christopher Null Copyright 2001 filmcritic.com filmcritic.com
Another year, another Farrelly brothers production.
This time out, we get American Pie alum Chris Klein and the saucy Heather Graham in what is undoubtedly the crudest film we will ever see. That is, at least until Tom Green takes center stage in Freddy Got Fingered later this year.
The brain-dead premise of Say It Isn't So has Klein falling in love with the local beauty (Graham), only later to be told they're brother and sister. She runs off to marry another guy, and when Klein discovers they are not really related, he makes like The Graduate to stop the nuptials.
Even some promising supporting players like Orlando Jones and Sally Field do little but embarrass themselves on camera for an hour and a half. Field, who I had hoped would eventually save the movie, is even reduced to wiping a sandwich on her armpits "for salt."
If that's your idea of funny, you'll be happy to know things degenerate even further from there. The movie gets worse and worse until finally we find Klein up to his elbow in a cow's rear end. I suppose that will have to pass for comedy in director James B. Rogers' directorial debut. Sadly, he's also on tap to direct American Pie II. So much for that promising franchise.
If you're determined to see this movie, I don't figure this review is going to stop you. So when you go, you deserve what you get: Sitting for a few hours among your steaming, seething, loud-mouthed brethren, all honking their butts off and talking back to the screen as a paraplegic Jones being beaten with his own fake leg. Say it isn't so, y'all.

Visit filmcritic.com on the Web at http://www.filmcritic.com
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


I am a full stack developer with experience in logistics, managing, and driving trucks. I recently graduated from General Assembly's Software Immersive Program, where I built web apps using combinations of React, Node.js, Ruby on Rails, MongoDB, JavaScript, HTML, CSS, SASS, Express, and Mongoose .
I'm looking to join a company with a strong software development team and a mission to enrich the lives of its customers through transformative software.
I care about writing applications that are easy to use and code that is easy to maintain.
Successfully completed an immersive 12-week, 500+ hour full-stack web development career accelerator with a focus on building a strong foundation in programming fundamentals and industry best practices.
Developed the front-end and back-end of web applications using JavaScript, React, jQuery, AJAX, Ruby, Ruby on Rails, REST, Express, MongoDB, Mongoose, HTML, CSS, Sass, Handlebars, and Bootstrap. Git and Github were used for version control.
If you'd like to take a look at my code, visit my Github page.


The screenwriter, film and television director, that brought us the joys of Buffy the Vampire Slayer, Cabin in the Woods, and best of all ... Firefly!
Find out more here
Films
- 1992 - Buffy the Vampire Slayer
- 1994 - The Getaway
- 1994 - Speed
- 1995 - The Quick and the Dead
- 1995 - Waterworld
- 1995 - Toy Story
- 1996 - Twister
- 1997 - Alien: Resurrection
- 2000 - Titan AE
- 2000 - X-Men
- 2001 - Atlantis: Lost World Empire
- 2005 - Serenity
- 2011 - Thor
- 2011 - Captain America: The First Avenger
- 2012 - The Cabin in the Woods
- 2012 - The Avengers
- 2012 - Much Ado About Nothing
- 2013 - Thor: The Dark World
- 2014 - In Your Eyes
- 2014 - Catain America: The Winter Soldier
- 2015 - Avengers: Age of Ultron
Television
- 1989 - Roseanne
- 1990 - Parenthood
- 1997 - Buffy the Vampire Slayer
- 1999 - Angel
- 2002 - Firefly
- 2007 - The Office
- 2009 - Dollhouse
- 2010 - Glee
- 2013 - Agents of S.H.I.E.L.D.


Author Carpentry
What's it all about?
Types of Carpentry
- Software Carpentry
- Data Carpentry
- Library Carpentry
- Author Carpentry
- Data Science Training for Librarians
and more...
Goal is to make scientists more productive, and their work more reliable, by teaching them basic computing skills.
Focusses on programming.
Skills taught:
- Unix Shell
- Git
- Python / R / MATLAB
- SQL
Aimed at:
- Scientific Researchers
- Disciplines that would benefit from automation
A sibling to Software Carpentry, but focuses on data analysis skills rather than programming skills.
It teaches people who are wrangling data manually how to automate make their work and make it more reproducible.
Skills taught:
- Spreadsheets
- OpenRefine
- SQL
- Analysis and Visualisation (Python / R)
Aimed at:
- Data intensive disciplines
- streams for biologists, genomics, ecologists, geographers, social science
Library Carpentry
Software skills training aimed at the needs and requirements of library professionals.
Skills taught:
- Unix Shell
- Git
- OpenRefine
- SQL
Data Science Training for Librarians #dst4l
Aims to make "data savvy" librarians through training in a number of tools and systems.
Skills taught:
- Open Refine
- Git and Github
- Repositories
- Visualisation tools
- Data analysis and wrangling
Author Carpentry
Author Carpentry aims to advance production and curation of the Research Paper of the Future, crafted as a fully open, executable, reproducible,
Research outputs belong to all and are of greatest use and impact when crafted as freely open, interoperable, and reusable knowledge resources for humans and machines.
Author Carpentry lessons are agnostic to the mode of ‘publication’, recognizing that the term connotes a range of dissemination choices in the Internet Age (self-archiving in a pre-print server, sharing via a reputable on-line repository, micro publication on a blog, tweet, or other web service, or by peer-reviewed journal or refereed book.)
Skills taught:
- Scholarly Identity DOIs, ORCID
- LaTeX, BiBTeX
- Licensing
- Open Access Publishing
Aimed at:
Researchers who publish (i.e. everyone)


Falcons rule out RB Freeman (foot), TE Hooper (knee)
FLOWERY BRANCH, Ga. (AP) - The Atlanta Falcons will be without running back Devonta Freeman, tight end Austin Hooper and safety Kemal Ishmael for Sunday’s game at Carolina.
All three were ruled out Friday. Freeman sustained a sprained foot in last weekend’s upset victory over New Orleans, while Hooper went down with a sprained knee. Ishmael won’t play against the Panthers because of a concussion.
The Falcons (2-7) will have starting cornerback Desmond Trufant, who is set to play for the first time since Week 5. He’s been out with a toe injury.
TOP STORIES
Evangelist Franklin Graham calls impeachment hearing 'a day of shame for America'
Focus groups show undecided voters think impeachment is going to 'backfire' on Dems
Procedural clash kicks off Republican questions of Marie Yovanovitch
Quarterback Matt Ryan was limited in practice throughout the week while dealing with an ankle injury. But he will make his second straight start at Carolina.
More AP NFL: https://apnews.com/NFL and https://twitter.com/AP_NFL
Sign up for Daily Newsletters
Copyright © 2019 The Washington Times, LLC.
Please read our comment policy before commenting.


- Click on the tagbar and start typing tags.
- To confirm a tag press SPACE, ENTER or click anywhere in the window (outside of the tagbar).
- Click an already existing tag to select it, then press DELETE or BACKSPACE to remove it.
- This demo has an autosuggestion list of the most common animals. Try to enter the letter 's' and then use UP / DOWN keys to select a suggestion. Hit ENTER to confirm.


CAF Awards: Ighalo, Ndidi, Osimhen shortlisted in 30-man list for African best player
- CAF awards 2019 is set to be staged next year and three Nigerians have been shortlisted in a 30-man list for African player of the year
- Odion Ighalo, Wilfred Ndidi, and Victor Osimhen will battle 27 other players for the award
- Man City's Riyad Mahrez and Liverpool duo Mohammed Salah and Sadio Mane top the list
Nigeria's Odion Ighalo, Wilfred Ndidi, and Victor Osimhen have been shortlisted in a 30-man list for African player of the year.
In a list released by CAF, the three players were nominated alongside 27 other African stars with Man City's Riyad Mahrez and Liverpool duo Mohammed Salah and Sadio Mane topping the list.
The CAF African Player of the Year category recognizes the best player from Africa in the year under review, in this case, 2019.
Besides finishing third in the AFCON 2019, the trio also enjoyed decent seasons with their respective club sides.
PAY ATTENTION: Install Pitch Football App for FREE to get the latest football News & Scores
Before retiring, Ighalo won the golden shoe award at the AFCON in Egypt while Osimhen and Ndidi have been in top form for their clubs Lille and Leicester City this season.
Osimhen has found the back of the net eight times already this season in the French Ligue 1 and has scored two Champions League goals.
While Wilfred Ndidi has scored two league goals this season from 13 games as Leicester City maintain the second position in the Premier League.
Earlier, Legit.ng reported that Amaju Pinnick, president of the Nigeria Football Federation (NFF), has met with Nigeria-eligible star Ebere Eze over the possibility of the QPR midfielder pledging his allegiance to Nigeria.
According to a Twitter thread on NFF's official handle, Pinnick met with Eze in London and talks is ongoing to convince the youngster to choose Super Eagles of Nigeria over the Three Lions of England.
Abu Azeez: Meet the only Nigerian rated among top 50 beach soccer players worldwide | Legit tv


--- layout: base email<EMAIL_ADDRESS>title: Download HSTracker for macOS fallbackurl: https://github.com/HearthSim/HSTracker/releases/latest fetch_download: repository: HearthSim/HSTracker binary: HSTracker.app.zip target: url prereleases: true ---
The latest version of HSTracker (macOS) should download automatically.
If it does not, you can click here to download it.
Support: {{ page.email }} - Back to the office.