|
|||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
Iterator
interface.
See:
Description
| Class Summary | |
| AbstractIteratorDecorator | Provides basic behaviour for decorating an iterator with extra functionality. |
| AbstractListIteratorDecorator | Provides basic behaviour for decorating a list iterator with extra functionality. |
| AbstractMapIteratorDecorator | Provides basic behaviour for decorating a map iterator with extra functionality. |
| AbstractOrderedMapIteratorDecorator | Provides basic behaviour for decorating an ordered map iterator with extra functionality. |
| ArrayIterator | Implements an Iterator over any array. |
| ArrayListIterator | Implements a ListIterator over an array. |
| CollatingIterator | Provides an ordered iteration over the elements contained in a collection of ordered Iterators. |
| EmptyIterator | Provides an implementation of an empty iterator. |
| EmptyListIterator | Provides an implementation of an empty list iterator. |
| EmptyMapIterator | Provides an implementation of an empty map iterator. |
| EmptyOrderedIterator | Provides an implementation of an empty ordered iterator. |
| EmptyOrderedMapIterator | Provides an implementation of an empty ordered map iterator. |
| EntrySetMapIterator | Implements a MapIterator using a Map entrySet. |
| EnumerationIterator | Adapter to make Enumeration instances appear
to be Iterator instances. |
| FilterIterator | Decorates an iterator such that only elements matching a predicate filter are returned. |
| FilterListIterator | A proxy ListIterator which
takes a Predicate instance to filter
out objects from an underlying ListIterator
instance. |
| IteratorChain | An IteratorChain is an Iterator that wraps a number of Iterators. |
| IteratorEnumeration | Adapter to make an Iterator instance appear to be
an Enumeration instance. |
| ListIteratorWrapper | As the wrapped Iterator is traversed, ListIteratorWrapper builds a LinkedList of its values, permitting all required operations of ListIterator. |
| LoopingIterator | An Iterator that restarts when it reaches the end. |
| ObjectArrayIterator | An Iterator over an array of objects. |
| ObjectArrayListIterator | Implements a ListIterator over an array of objects. |
| ObjectGraphIterator | An Iterator that can traverse multiple iterators down an object graph. |
| ProxyIterator | Deprecated. Use AbstractIteratorDecorator. |
| ProxyListIterator | Deprecated. Use AbstractListIteratorDecorator. |
| SingletonIterator | SingletonIterator is an Iterator over a single
object instance. |
| SingletonListIterator | SingletonIterator is an ListIterator over a single
object instance. |
| TransformIterator | Decorates an iterator such that each element returned is transformed. |
| UniqueFilterIterator | A FilterIterator which only returns "unique" Objects. |
| UnmodifiableIterator | Decorates an iterator such that it cannot be modified. |
| UnmodifiableListIterator | Decorates a list iterator such that it cannot be modified. |
| UnmodifiableMapIterator | Decorates a map iterator such that it cannot be modified. |
| UnmodifiableOrderedMapIterator | Decorates an ordered map iterator such that it cannot be modified. |
This package contains implementations of the
Iterator
interface.
You may also consider using
IteratorUtils
,
which is a single class that uses static methods to construct instances
of the classes in this package.
|
|||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |


new simpleDDP (options, plugins)simpleDDP
| Name | Type | Description | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
|
||||||||||||||||||||||||||||||||
plugins |
Array |
optional
Array of plugins. |
- Version:
- 2.2.4
Returns:
| Type | Description |
|---|---|
| simpleDDP |
|
Example
var opts = {
endpoint: "ws://someserver.com/websocket",
SocketConstructor: WebSocket,
reconnectInterval: 5000
};
var server = new simpleDDP(opts);
Members
-
All collections data recieved from server.
-
Whether the client is connected to server.
Methods
-
Calls a remote method with arguments passed in array.
Name Type Default Description method
string Name of the server publication.
arguments
Array optional Array of parameters to pass to the remote method. Pass an empty array or don't pass anything if you do not wish to pass any parameters.
atBeginning
boolean false optional If true puts method call at the beginning of the requests queue.
Returns:
Type Description Promise - Promise object, which resolves when receives a result send by server and rejects when receives an error send by server.
Example
server.apply("method1").then(function(result) { console.log(result); //show result message in console if (result.someId) { //server sends us someId, lets call next method using this id return server.apply("method2",[result.someId]); } else { //we didn't recieve an id, lets throw an error throw "no id sent"; } }).then(function(result) { console.log(result); //show result message from second method }).catch(function(error) { console.log(result); //show error message in console });
-
Calls a remote method with arguments passed after the first argument. Syntactic sugar for @see apply.
Name Type Description method
string Name of the server publication.
args
any optional repeatable List of parameters to pass to the remote method. Parameters are passed as function arguments.
Returns:
Type Description Promise - Promise object, which resolves when receives a result send by server and rejects when receives an error send by server.
-
Removes all documents like if it was removed by the server publication.
Returns:
Type Description Promise - Resolves when data is successfully removed.
-
collection (name)ddpCollection
-
Use this for fetching the subscribed data and for reactivity inside the collection.
Name Type Description name
string Collection name.
Returns:
Type Description ddpCollection -
Connects to the ddp server. The method is called automatically by the class constructor if the autoConnect option is set to true (default behavior).
Returns:
Type Description Promise - Promise which resolves when connection is established.
-
Disconnects from the ddp server by closing the WebSocket connection. You can listen on the disconnected event to be notified of the disconnection.
Returns:
Type Description Promise - Promise which resolves when connection is closed.
-
Exports the data
Name Type Default Description format
string 'string' optional Possible values are 'string' (EJSON string) and 'raw' (EJSON).
Returns:
Type Description Object | string - EJSON string or EJSON.
-
Imports the data like if it was published by the server.
Name Type Description data
Object | string ESJON string or EJSON.
Returns:
Type Description Promise - Resolves when data is successfully imported.
-
Marks every passed @see ddpSubscription object as ready like if it was done by the server publication.
Name Type Description subs
Array Array of @see ddpSubscription objects.
Returns:
Type Description Promise - Resolves when all passed subscriptions are marked as ready.
-
on (event, f)ddpEventListener
-
Starts listening server for basic DDP event running f each time the message arrives.
Name Type Description event
string Any event name from DDP specification. Default suppoted events:
connected
,disconnected
,added
,changed
,removed
,ready
,nosub
,error
,ping
,pong
.f
function Function which receives a message from a DDP server as a first argument each time server is invoking event.
Returns:
Type Description ddpEventListener Example
server.on('connected', () => { // you can show a success message here }); server.on('disconnected', () => { // you can show a reconnection message here });
-
Stops all reactivity.
-
sub (pubname, arguments)ddpSubscription
-
Tries to subscribe to a specific publication on server.
Name Type Description pubname
string Name of the publication on server.
arguments
Array optional Array of parameters to pass to the remote method. Pass an empty array or don't pass anything if you do not wish to pass any parameters.
Returns:
Type Description ddpSubscription - Subscription.
-
subscribe (pubname, args)ddpSubscription
-
Tries to subscribe to a specific publication on server. Syntactic sugar for @see sub.
Name Type Description pubname
string Name of the publication on server.
args
any optional repeatable List of parameters to pass to the remote method. Parameters are passed as function arguments.
Returns:
Type Description ddpSubscription - Subscription.


A frontend for multiple backends¶
A small historical note might help to make this section clearer. So bear with
with me for a couple of lines. Originally PyVISA was a Python wrapper to the
VISA library. More specifically, it was ctypes
wrapper around the
NI-VISA. This approach worked fine but made it difficult to develop other ways
to communicate with instruments in platforms where NI-VISA was not available.
Users had to change their programs to use other packages with different API.
Since 1.6, PyVISA is a frontend to VISA. It provides a nice, Pythonic API and can connect to multiple backends. Each backend exposes a class derived from VisaLibraryBase that implements the low-level communication. The ctypes wrapper around NI-VISA is the default backend (called ni) and is bundled with PyVISA for simplicity.
You can specify the backend to use when you instantiate the resource manager
using the @
symbol. Remembering that ni is the default, this:
>>> import pyvisa
>>> rm = pyvisa.ResourceManager()
is the same as this:
>>> import pyvisa
>>> rm = pyvisa.ResourceManager('@ni')
You can still provide the path to the library if needed:
>>> import pyvisa
>>> rm = pyvisa.ResourceManager('/path/to/lib@ni')
Under the hood, the ResourceManager
looks for the requested backend and
instantiate the VISA library that it provides.
PyVISA locates backends by name. If you do:
>>> import pyvisa
>>> rm = pyvisa.ResourceManager('@somename')
PyVISA will try to import a package/module named pyvisa-somename
which
should be installed in your system. This is a loosely coupled configuration
free method. PyVISA does not need to know about any backend out there until you
actually try to use it.
You can list the installed backends by running the following code in the command line:
pyvisa-info
Developing a new Backend¶
What does a minimum backend looks like? Quite simple:
from pyvisa.highlevel import VisaLibraryBase
class MyLibrary(VisaLibraryBase):
pass
WRAPPER_CLASS = MyLibrary
Additionally you can provide a staticmethod named get_debug_info that should
return a dictionary of debug information which is printed when you call
pyvisa-info
Note
Your backend name should not end by -script
or it will be discarded.
This is because any script generated by setuptools containing the name
pyvisa will be named pyvisa-*-script
and they are obviously not
backends. Examples are the pyvisa-shell
and pyvisa-info
scripts.
An important aspect of developing a backend is knowing which VisaLibraryBase method to implement and what API to expose.
A complete implementation of a VISA Library requires a lot of functions (basically almost all level 2 functions as described in Architecture (there is also a complete list at the bottom of this page). But a working implementation does not require all of them.
As a very minimum set you need:
- open_default_resource_manager: returns a session to the Default Resource Manager resource.
- open: Opens a session to the specified resource.
- close: Closes the specified session, event, or find list.
- list_resources: Returns a tuple of all connected devices matching query.
(you can get the signature below or here Visa Library)
But of course you cannot do anything interesting with just this. In general you will also need:
- get_attribute: Retrieves the state of an attribute.
- set_atribute: Sets the state of an attribute.
If you need to start sending bytes to MessageBased instruments you will require:
- read: Reads data from device or interface synchronously.
- write: Writes data to device or interface synchronously.
For other usages or devices, you might need to implement other functions. Is really up to you and your needs.
These functions should raise a pyvisa.errors.VisaIOError
or emit a
pyvisa.errors.VisaIOWarning
if necessary.


This course provides an in-depth examination of advanced topics in cartographic representation, or the graphics, sounds, haptics, etc., constituting a map that are employed to encode geographic information. It is a direct extension of 370, but with a focus on cartographic design for the web rather than print, and draws upon research and practice on graphic design, web design, and art. Specifically, it integrates theory on both mapmaking and map use (compared to 170 or 370, which focus upon one or the other) and emphasizes design of web-delivered static maps, rather than the design of interfaces for manipulating these maps (compared to 575). The course is divided into two components: lectures and labs.
Check out past syllabi and finals projects below!
Instructor: Robert Roth
TA: Chelsea Nestel
Joseph App
Monica Clouiter
Atlas Guo
Jackson Lodermeier
Ellie Milligan
Pete Nielsen
Catherine Palm
Emily Pettit
Megan Roessler
Nick Underwood
Genevieve Vahl


fun getEmailText(emlFile: File): String
(source)
Construct MimeMessage and then get the content of the text/plain part of this message. So if you already have MimeMessage object it is better to call getEmailText(MimePart) function in order to avoid additional costs.
ParseException
- if message does not contain text/plain part
Return
plain text content of the message as a string
fun getEmailText(part: MimePart): String
(source)
Get the content of the text/plain part of the message.
part
- MimePart to get plain text from.
ParseException
- if message does not contain text/plain part
Return
plain text content of the message as a string


Presented by Justin Carmony / @JustinCarmony
Slides split up into multiple sections.
Slides both vertical and horizontal.
Problem: It's Easy!
Problem: Lack of Ops Experience
Problem: Lack of Money
We've been putting more dev into ops, but we need to put more ops into dev. Ops is a state of mind. Theo Schlossnagle
CEO, OmniTI
SaltStack takes a new approach to infrastructure management by developing software that is easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds. SaltStack delivers a dynamic infrastructure communication bus used for orchestration, remote execution, configuration management and much more. About SaltStack, SaltStack.org
Salt is a simple system that focuses on two things:
file_roots:
base:
- /srv/salt
pillar_roots:
base:
- /srv/pillar
master: master.saltdemo.com
pillar_roots:
base:
- /srv/pillar
On the salt master, list the current keys
user@salt-master:~$ sudo salt-key -L
Accepted Keys:
Unaccepted Keys:
web1.salt-demo.com
Rejected Keys:
Accept the key (view it before hand to make sure it's legit)
user@salt-master:~$ sudo salt-key -a web1.salt-demo.com
Accepted Keys:
web1.salt-demo.com
Unaccepted Keys:
Rejected Keys:
Use "salt" command on master to communicate to minions
Example: Test Ping to All Minions
user@salt-master:~$ sudo salt '*' test.ping
web1.saltdemo.com:
True
salt 'db*' test.ping
salt -L web1.saltdemo.com,db2.saltdemo.com test.ping
salt -G 'os:Ubuntu' test.ping
salt -C 'G@os:Debian and web*' test.ping
Example: Restart Apache
user@master:~$ sudo salt 'web*' cmd.run "/etc/init.d/apache2 restart"
Example: Restart Apache
user@salt-master:~$ sudo salt 'web*' apache.signal restart
Here are just some of them:
apache, apt, cron, disk, file, mount, mysql, network, puppet, service, solr, state, test, useradd, win_disk, win_service, win_useradd
Example using English:
Defines which servers have which parts of the state tree applied to them.
Example top.sls file:
base:
'*':
- core.tools
- core.users
'web1.saltdemo.com':
- apache2
- php5
base:
'*':
# Stuff for all servers
dev:
'*':
# stuff for dev stage
stage:
'*':
# stuff for stable stage
prod:
'*':
# stuff for prod stage
Base is your file_roots
Example of a user definition
justin: ## ID
user: ## Type
- present ## Function
- shell: /bin/bash
- home: /home/justin
- password: $1$MG4PbsH9$.w68M3yd/kUmESwq3cRM91
apache2:
pkg:
- installed
service:
- running
/etc/apache2/apache2.conf:
file:
- managed
- source: salt://files/etc/apache2/apache2.conf
- watch_in:
- service: apache2
apache:
pkg.installed:
{% if grains['os'] == 'RedHat' %}
- name: httpd
{% elif grains['os'] == 'Ubuntu' %}
- name: apache2
{% endif %}
You just call the state.highstate function
salt '*' state.highstate
Run things in the foreground:
# Run master in foreground
/etc/init.d/salt-master stop
salt-master -L
# Run minion in foreground
/etc/init.d/salt-minion stop
salt-minion -L
Run things manualy from the minion
salt-call -l debug state.highstate
python -c 'import socket;print(socket.getfqdn());'
https://github.com/JustinCarmonyDotCom/salt-demo
Uses Vagrant & AWS to setup a test 5 server environment.
Salt has some very good docs (and getting better all the time).
irc.freenode.net #salt
Blog/tweet/discuss your experience
Very Pull Request friendly
(They even have accepted PR's from me!)


Here I summarise learnings from lesson 1 of the fast.ai course on deep learning. fast.ai is a deep learning online course for coders, taught by Jeremy Howard. Its tag line is to “make neural nets uncool again”. I started the class a couple of days ago and have been impressed with how fast it got me to apply the methods, an approach described by them as top-down learning. I am writing this blog post to document and reflect on the things that I learned and to help other people that may be interested getting started with the class.
The fast.ai library is a high-level library based on PyTorch, which tries to take a selection of best-practice approaches from cutting edge deep learning research and make them into a collection of intelligent default settings.
Lesson 2 outlined the fundamentals of computer vision and building image classification models. My homework: get my hands on my own image dataset and use it to train a classifier myself. I chose to attempt a classifier that can distinguish between sharks and dolphins, using images from google image search. Read along for a detailed walk through below.
Getting an Image Dataset
This handy tool allows us to get images directly from google image search.
$ pip install google_images_download
For more than 100 images we also need to install chromedriver and dependencies:
$ apt-get install python-selenium python3-selenium libxi6 libgconf-2-4 chromium-chromedriver
Note that I had some problems with accessing the chrome driver from jupyter
notebooks. Changing ownership of the file with
chmod 777 /usr/local/bin/chromedriver
solved this for me.
Now we can run a query for images. Results are named as the number of the result
plus the original file name, downloaded, and saved locally. Note that you
should make sure to utilise the usage_rights
flag in order to get images
that are cleared for this type of use.
from google_images_download import google_images_download
os.chdir('/home/paperspace/data/sharksdolphins/')
response = google_images_download.googleimagesdownload()
arguments = {
"keywords": '"shark","dolphin"',
"print_urls": False,
"limit": "10000",
"output_directory": "sharksdolphins/train/",
"format": "jpg",
"usage_rights": "labeled-for-nocommercial-reuse",
"chromedriver": "/usr/local/bin/chromedriver"
}
response.download(arguments)
# func for renaming an image file
def image_rename(file):
file_index = re.match(r'\A\d*', file).group(0)
file_index = file_index.zfill(3)
return file_index+'.jpg'
# func for renaming all files in a folder
def image_rename_all(folder):
files = os.listdir(folder)
[os.rename(folder+file, folder+image_rename(file)) for file in files]
# rename files
folders = ['data/sharksdolphins/train/shark/',
'data/sharksdolphins/train/dolphin/']
[image_rename_all(folder) for folder in folders]
The above query returned about 800 images each. I ended up speeding through these images manually and removing unsuitable images manually.
We need a training and a validation set. Making this work with fast.ai is easily
done by adapting the recommended folder structure of a data
folder with two
sub-folders (train
and valid
), each of which have a subfolder with images
for each class.
The code chunk below takes the images downloaded earlier and randomly splits them into 80% training data and 20% validation data. Don’t forget to set a random seed so that your results stay reproducible.
# split files into test and training set# split
PATH = 'data/sharksdolphins/'
files_sharks = os.listdir(f'{PATH}train/shark')
files_dolphins = os.listdir(f'{PATH}train/dolphin')
# sample from each class to create a validation set
np.random.seed(1234)
files_sharks_val = np.random.choice(
files_sharks,
size=round(len(files_sharks) / 5),
replace=False,
p=None)
files_dolphins_val = np.random.choice(
files_dolphins,
size=round(len(files_dolphins) / 5),
replace=False,
p=None)
# move validation set images into validation folder
[os.rename(PATH+'train/shark/'+file, PATH+'valid/shark/'+file)
for file in files_sharks_val]
[os.rename(PATH+'train/dolphin/'+file, PATH+'valid/dolphin/'+file)
for file in files_dolphins_val]
As you will see, collecting the data was the hardest part and everyting from here onward is quite straight-forward thanks to the high level abstractions provided by fast.ai
Training a Model
Now we can finally start to train our image classifier. I am using a paperspace instance with the setup recommended and provided by fast.ai.
Train a First Model
os.chdir('/home/paperspace/')
# append fast.ai local folder to system path so modules can be imported
sys.path.append('/home/paperspace/fastai/')
# automatically reload updated sub-modules
%reload_ext autoreload
%autoreload 2
# in-line plots
%matplotlib inline
from fastai.imports import *
from fastai.transforms import *
from fastai.conv_learner import *
from fastai.model import *
from fastai.dataset import *
from fastai.sgdr import *
from fastai.plots import *
# set path of data folder
PATH = "data/sharksdolphins/"
# set size images should be resized to
sz = 224
# First model
arch = resnet34
data = ImageClassifierData.from_paths(PATH, tfms=tfms_from_model(arch, sz), bs=16)
learn = ConvLearner.pretrained(arch, data, precompute=True)
Jeremy explained the learning rate finder that uses the approach of cyclical
learning rates as outlined by Leslie Smith (https://arxiv.org/abs/1506.01186).
Using the lr_find
method and then plotting the learning rate against loss.
We now want to visually choose the “The highest learning rate we can find where
the loss is still clearly improving”. Note here that the learning rate finder
did initially not work so well for my small-ish dataset. I had to adjust the
batch size to make it work correctly
(see bs=16
argument in the ImageClassifierData
call above)
learn.lr_find()
learn.sched.plot_lr()
learn.fit(0.01, 5)
| epoch | trn_loss | val_loss | accuracy |
|---|---|---|---|
| 0 | 0.435999 | 0.267501 | 0.925 |
| 1 | 0.3081 | 0.29459 | 0.9 |
| 2 | 0.2548 | 0.235716 | 0.925 |
| 3 | 0.214654 | 0.229093 | 0.93125 |
| 4 | 0.237024 | 0.162347 | 0.9375 |
Over 93% accuracy! Really nice results already!
Let’s see if we can improve things even further.
Train a Second Model
Now let’s start training some of the lower layers and retraining these with differential learning rate. Jeremy talks about unfreezing here, but a friend that I talked to about this called it thawing instead, and I like that terminology, as it implies the differential learning rates with fast-changing weights at the last layer but slower updates in the lower layers.
# unfreeze pretrained layers
learn.unfreeze()
# set differential learning rate
lr = np.array([1e-4,1e-3,1e-2])
# train new model
learn.fit(lr, 3, cycle_len=1, cycle_mult=2)
| epoch | trn_loss | val_loss | accuracy |
|---|---|---|---|
| 0 | 0.475365 | 0.365881 | 0.89375 |
| 1 | 0.278049 | 0.177107 | 0.94375 |
| 2 | 0.174708 | 0.178467 | 0.95 |
| 3 | 0.120919 | 0.230777 | 0.95625 |
| 4 | 0.093978 | 0.148054 | 0.95625 |
| 5 | 0.081571 | 0.200582 | 0.95 |
| 6 | 0.055903 | 0.198029 | 0.95 |
A little bit better yet. Let’s look at the confusion matrix and some of the misclassified images:
# get predictions and transform to class probability values
log_preds = learn.predict()
preds = np.argmax(log_preds, axis=1)
probs = np.exp(log_preds[:,1])
# plot confusion matrix
from sklearn.metrics import confusion_matrix
cm = confusion_matrix(data.val_y, preds)
plot_confusion_matrix(cm, data.classes)
We should also plot some of the images to develop an intuition about where our classifier does well and where it doesn’t. Here is the one misclassified dolphin and the top 4 misclassified sharks:
Discussion
You can see that we got some pretty strong results in a very short amount of time and using a very limited dataset! There is obviously many more things that could be done to improve this model further.
Weighting the Classes
In our example of sharks and dolphins, we are currently treating all misclassifications equally. This may not be the right approach! If the model was used to monitor a beach for sharks, for example, failing to recognize a dolphin would not be a problem, while failing to recognize a shark could potentially result in human fatalities. In this case, it might be advisable to retrain the model with a biased weighting function to make sure our recall on shark images is higher.
Data Leakage
Looking at images that were misclassified or low-confidence predictions, I realised that my training set introduced a number of hidden biases to the model. For example, a number of dolphin pictures have people in them that are touching the dolphin. This is less prevalent with the shark pictures, for obvious reasons. As a result, the few shark pictures with human arms and hands in them and near the shark seem to end up with lower confidence for the shark class. For the only misclassified dolphin in the dataset, on the other hand, I think that the shark-like pose (frontal, widely opened mouth) may have played a role in the model mistaking this image for a shark image.
This kind of data leakage is increasingly discussed and criticised in deep learning applications, so it is good to be aware and keep an eye out for them. Since my model is not going into production for Baywatch any time soon, I am just glad I found it nicely illustrated in this relatively small dataset.


To load a binary or a file to the module you can use the following methods:
The script provided uses Powershell to communicate to the modules over the MODEM port. The process is automated so the developer doesnt need to manually send the AT Commands.
The script provided uses the Kermit protocol to send files to the module over the DEBUG port.
| Command Name | SingleFin Interface | Module Interface | Script | Description |
|---|---|---|---|---|
make load |
MODEM | USB AT Port | push-app.ps1 | Push a binary file and .ini file to the module using AT File commands |
make push |
DEBUG | UART 2 | push-file.ps1 | Push a binary file using Kermit protocol |


Google Earth Enterprise Documentation Home | GEE Server configuration and security
PostgreSQL authentication
Client authentication determines which users are allowed to view published databases. By default, the GEE Server does not require authentication for user access. However, you can configure authentication for your server.
If you use a load-balanced grid of GEE servers, a single common authentication source (such as PostgreSQL or LDAP) makes user administration easier. When you add users, you can add them to a single database instead of to each virtual server.
Authentication encrypts passwords before transmitting and storing them. Besides the security benefits, there are performance benefits to encrypting passwords instead of storing them in plaintext. As a plaintext password file grows to more than 200 users, there will likely be a noticeable slowdown. This is because the entire password file is read into memory each time the virtual server is accessed to search for a password.
If you have a PostgreSQL database, you can use standard Apache authentication methods such as Digest authentication to control user access. This is useful if you already store user passwords in a PostgreSQL table, or if you want to use a unified authentication mechanism other than LDAP for your GEE Server and other systems.
Before you begin
- Don't use the PostgreSQL database that ships with GEE. Instead, install PostgreSQL on a separate port or a different host.
- You must set up client authentication for each virtual server you want to use authentication with.
Apache modules
The Apache configuration below uses these modules:
- The
mod_authn_dbd
module provides the authentication back-end with a PostgreSQL server. For more information about the module, see the mod_authn_dbd section in the Apache documentation. - The
mod_auth_digest
module is used for Digest authentication. For more information aboutmod_auth_digest
, see the mod_auth_digest section in the Apache documentation.
Terms
In the steps below, you can replace these names with the names you want to use. For example, you can replace geeauthdb with the name of your database.
geeauthdb
. The database to connect to.geepasswd
. The table that stores user information.geeuser
. The user login to connect to the database.postgres
. The default PostgreSQL adminstrator user on Ubuntu.
To configure client authentication for PostgreSQL:
-
Connect to the PostgreSQL server:
sudo su - postgres
psql --port=5433 -
Create the database and user:
CREATE USER geeuser WITH PASSWORD 'geeuserpasswd';
CREATE DATABASE geeauthdb;
GRANT ALL PRIVILEGES ON DATABASE geeauthdb to mypguser;
\q - Create a table to store the passwords:
psql --port=5433 --username=geeuser geauthdb
CREATE TABLE geepasswd (username varchar(32) NOT NULL, realm varchar(255)
NOT NULL, passwd varchar(255) NOT NULL,
realname varchar(255), PRIMARY KEY (username, realm));
\q-
The table includes these fields:
username
.realm
.password
.realname
. Optional. The realname field doesn't require a value, but is included in case you want to use it. You can also add other optional fields if needed.
-
Create the encrypted password by inserting encyption functions into the database with the
pgcrypto
contributed module:
psql --port=5433 --username=geeuser geauthdb < /usr/share/postgresql/8.4/contrib/pgcrypto.sql
Note: You can substitute a different method for this step. The Password Formats section in the Apache documentation gives examples in multiple programming languages for encrypting the password so that it is readable by Apache.
-
Make sure the database works by inserting a test user:
psql --port=5433 --username=geeuser geauthdb
INSERT INTO geepasswd VALUES ('jsmith', 'realm', encode(digest( 'jsmith' || ':' || 'realm' || ':' ||'password', 'md5'), 'hex'), 'Jane Smith');
\qReplace "jsmith", "realm", "password" and "Jane Smith" with the values you want to use.
Note: The password is hashed with MD5 because the Apache
mod_authn_dbd
module requires it. This also prevents the password from appearing in plaintext. -
Create a file named
pgsql-auth.conf
at/opt/google/gehttpd/conf/extra/pgsql-auth.conf
. -
Add these lines to the
pgsql-auth.conf
file:
DBDriver pgsql
DBDParams "hostaddr=yourpgserver port=yourport user=geuser password=yourpassword dbname=gee_auth"
DBDMin 4
DBDKeep 8
DBDMax 20
DBDExptime 300Replace
yourpgserver
andyourport
with the address or hostname of your PostgreSQL database. Replacegeuser
andyourpassword
with the username and password of your test user. -
Open the
/opt/google/gehttpd/conf/gehttpd.conf
file and insert the line:
Include /opt/google/gehttpd/conf/extra/pgsql-auth.conf
above the line:
Include conf.d/*.conf
The result is:
# Include Google Earth Server-specific files
Include /opt/google/gehttpd/conf/extra/pgsql-auth.conf
Include conf.d/*.conf -
Add the following lines at the beginning of the
<Location>
directive of your virtual server:
AuthType Digest
AuthName "realm"
AuthDigestDomain '/default_map/'
AuthDigestProvider dbd
AuthDBDUserRealmQuery "SELECT passwd FROM geeauth WHERE username = %s and realm = %s"
BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
If this is a
_ge_ virtual
server, add:
BrowserMatch "GoogleEarth" AuthDigestEnableQueryStringHack=On
If this is a
_map_ virtual
server, add:
BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
For more information about
AuthDigestEnableQueryStringHack
, see the mod_auth_digest section in the Apache documentation.The final
<Location>
directive looks like:
<Location "/default_map/*">
AuthType Digest
AuthName "realm"
AuthDigestDomain '/default_map/'
AuthDigestProvider dbd
AuthDBDUserRealmQuery "SELECT passwd FROM geeauth WHERE username = %s and realm = %s"
BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
Require valid-user
SetHandler gedb-handler
Include
conf.d/virtual_servers/runtime/default_map_runtime
</Location> -
Save and close the virtual server configuration file.
-
Restart the server:
/etc/init.d/geserver restart
After you verify the configuration with your test user, you can add your users to the database.


--- title: EinsteinSum sidebar: function_reference_sidebar permalink: tensor.EinsteinSum.html folder: function_reference toc: false ---
tensor multiplication according to Einstein summation convention
This function computes a tensor product according to Einstein summation convention
| T1,T2 | tensor |
| dimT1 | vector of indices giving the summation order in tensor 1 |
| dimT2 | vector of indices giving the summation order in tensor 2 |
| T | tensor |


The best movies on Disney Plus in November 2019
Wondering what films to watch on Disney Plus? Take a look at our top picks to help you decide - whatever mood you're in
by Hannah CowtonCrack out your Mickey Mouse ears, because Disney Plus has finally launched. Though many will be flocking straight to The Mandalorian, there’s also a towering library of hundreds of movies to watch on a rainy day (or any day, we're not judging). Of course, with this much content to choose from, it can be hard to know where to start.
Fortunately, we here at Tech Advisor have perused through the library - learning in the process that we’re apparently big suckers for Disney films - and cherry picked a list of some of our favourites. From superhero blockbusters to cheesy musicals, there’s something here to suit everyone.
Based in the UK but still want to watch these films? Check out how to watch Disney+ in the UK, as well as the best VPNs for streaming Disney+.
Lion King
- RRP:
This is Disney at its best.  The 2019 remake isn’t on the service just yet, but the original blows it out the water anyway.
Saving Mr Banks
- RRP:
Tom Hanks and Emma Thompson shine in this dramatic adaptation of the creation of Mary Poppins. The film follows writer Pamela Travers as she works with Walt Disney to develop her musical for the silver screen, but the two disagree vastly on some of the elements.
Avengers: Endgame
- RRP:
We couldn’t write this list and not include the new best-selling movie of all time. What makes Endgame is so special is that it’s the culmination of over ten years worth of Marvel movies, and is a true spectacle to behold. Of course - you’ll need to have watched at least some of the MCU films to know what’s going on.
Big Hero 6
- RRP:
This collaboration between Disney animation and Marvel results in a geek’s dream. Big Hero 6 features six (go figure) slap-hazard supes, including the big, lovable, inflatable robot, Baymax.  WE DARE YOU.
Mary Poppins
- RRP:
Some of the most iconic musical numbers stem from Mary Poppins - so it's easy to see why this film is treasured so dearly. Julie Andrews and Dick Van Dyke are the perfect leading pair, with dance numbers that’ll make you tired just watching them. Plus it’s hilarious watching the old special effects (they were good for the time).
Zootopia
- RRP:
Listen - don’t discount this film because its characters are a talking bunny and fox. This heartfelt tale actually has a lot of underlying social and political messages. We were pleasantly surprised and would put this one up with the likes of Inside Out.
The Muppets Christmas Carol
- RRP:
If it’s Christmas, then this is perfect. If it’s not, then this’ll make you feel like it’s Christmas. This retelling of the Dickens classic is so iconic that you’ll find the original a bit of a drag after watching this. And if The Muppets weren't enough for you, this film has Michael Caine has Ebenezer Scrooge. Genius.
Captain America: The Winter Soldier
- RRP:
Of all the MCU films, this is arguably the one with the best action sequences, with some serious hand-to-hand combat that will make your jaw drop. The sequel to Captain America: The First Avenger, we see Steve Rogers dealing with 21st century life, as well as the emergence of the modern day Hydra.
Star Wars: The Force Awakens
- RRP:
The first Star Wars in the new saga, this JJ Abrams classic kicks off the last third of the Skywalker saga in style. With faces old and new, any sci-fi fan is guaranteed to love this. And BB-8 is pretty much the most adorable droid to ever exist.
Who Framed Roger Rabbit
- RRP:
Roger Rabbit was a first of its kind: bringing together real actors with some of the most iconic cartoons, including Jessica Rabbit and Bugs Bunny. It also features Christopher Lloyd as the villain of the film, Judge Doom. As a warning, you’ll never see him just as Doc from Back to the Future after this. He's terrifying.
101 Dalmatians
- RRP:
The original cartoon is pretty good, but the live-action remake is just a scream - especially because it features Glenn Close as the evil fashionista, Cruella De Ville.
Flubber
- RRP:
Any Robin Williams film is a joy, and Flubber is no exception. Professor Philip Brainard discovers a new rubber-like substance that has a chaotic energy of its own, and ends up taking the scientist on a mad series of events, causing him to miss his own wedding.
Guardians of the Galaxy
- RRP:
Looking for a change of pace from Iron Man and Thor? Guardians of the Galaxy really pioneered the MCU into letting loose and having fun with their stories. This space flick is hilarious, action-packed and emotional all in one. Plus, you'll fall in love with Groot.
Pirates of the Caribbean: The Curse of the Black Pearl
- RRP:
Alright, POTC is a series that may have gone a little too long, and has now fallen victim to becoming yet another reboot. However, this noughties classic is the pinnacle of pirate films, with the most nautical theme from Hans Zimmer, and just the right amount of ridiculousness.
Bambi
- RRP:
Call us masochists for including this one, but if you’re looking for an emotional cleansing then Bambi is a must. Young fawn Bambie adventures around the forest with his friends Thumper and Flower, but learns that there are more dangers than he expected invading his home.
Freaky Friday
- RRP:
No Disney list would be complete without a Lindsey Lohan classic, and this body-swap film is the perfect company for a night in with a takeaway. A mother and daughter with a strained relationship wake up one day to discover that they’re in each other’s bodies - and the results are hilarious.
Rogue One: A Star Wars Story
- RRP:
Keeping up with all the Star Wars films can be quite a chore, which is why Rogue One is a nice change of pace as it could arguably be a standalone film and a prequel to A New Hope at the same time. Despite having almost an entirely new cast, there are a few familiar faces that will get you excited.
The Lizzie McGuire Movie
- RRP:
You may be wondering why this is in here, and honestly, so are we. But as cheesy comedies go, this is one not to be missed. Especially when you get terrible Italian accents and the iconic collaboration with Hilary Duff singing with… Hilary Duff. Yeah, that happened.
Monsters, Inc.
- RRP:
Despite being billed as a kids film, this will still leave you laughing and crying at various points, and includes some of the most memorable quotes of any Pixar film. Follow monsters Mike and Sully as they accidentally become in charge of the adorable (but terrifying to them) toddler, Boo.
Star Wars: The Empire Strikes Back
- RRP:
The Star Wars to end all Star Wars. The rebellion struggle to hold their ground against the might of the Empire, whilst Luke Skywalker continues his Jedi training with Master Yoda. If somehow you’re new to Star Wars, then we recommend watching A New Hope first for full context - and to get the full impact of one of the biggest movie twists in history.


Create New Quote
Qoute:
Quote is required
Author:
Author is required
Submitted by:
Your name is required
Add Quote


swagger: '2.0'
info:
version: 1.0.0
title: Swagger Petstore
description: >
A sample API that uses a petstore as an example
to demonstrate features in the swagger-2.0 specification
consumes:
- application/json
produces:
- application/json
paths:
/pets:
get:
description: Returns all pets from the petstore
responses:
'200':
description: pet response
schema:
type: array
items:
$ref: '#/definitions/pet'
default:
description: unexpected error
schema:
$ref: '#/definitions/errorModel'
post:
description: Creates a new pet in the store
parameters:
- name: pet
in: body
description: Pet to add to the store
required: true
schema:
$ref: '#/definitions/pet'
responses:
'200':
description: pet response
schema:
$ref: '#/definitions/pet'
default:
description: unexpected error
schema:
$ref: '#/definitions/errorModel'
'/pets/{name}':
get:
description: Returns a single pet by name
parameters:
- name: name
in: path
description: Name of the pet to fetch
required: true
type: string
responses:
'200':
description: pet response
schema:
$ref: '#/definitions/pet'
default:
description: unexpected error
schema:
$ref: '#/definitions/errorModel'
definitions:
pet:
$ref: pet.yaml
pet-owner:
$ref: pet-owner.yaml
errorModel:
$ref: error.json


[1]
Nice Small Size; Terrible Battery
[2]
Built-in clip, common connection, price; Non Replaceable battery, expansion
[3]
sturdy clip; long charging time


Scale(2)
Flipping an image with scaleX(-1)
Original photograph(left) flipped using CSS3 scale transform(right)


--- layout: page title: Perkhidmatan namespace: app permalink: /produk/jomparking.html permalink_en: /product/jomparking.html ---


Business Name:
Address:
Business:
Insurance Company
Doctor
Employer
Check if you are you a charity or a non-profit.
Type of Data:

Insurance Data
Medical Data
Job Details
Phone Number:
Email:
« Previous
Next »


{{ title }}
{% for circuit in circuits %}
{{ circuit }}
Some quick example text to build on the card title and make up the bulk of the card's content.
{% endfor %}


SUNDAY (director: Jonathan Nossiter; cast: David Suchet (Oliver/Matthew Delacorta), Lisa Harrow (Madeleine Vesey), Jared Harris (Ray), Larry Pine (Ben Vesey), 1997)
One blistery cold winter morning in Queens, New York, a middle-aged man, Oliver (David), dressed in a rumpled brown suit, who was cut by IBM as they downsized, leaves a homeless shelter to spend the day walking around that part of town, knowing that he has to return before 7 p.m. or he gets locked out of the shelter. Suddenly, a woman, probably in her early fifties, Madeleine (Lisa), with a British accent, shouts out at him, as he is staring at her, "Aren't you Matthew Delacorta, the director? I tried out for a part in your film in London." Oliver goes along with the mistaken identity and goes with this has-been actress, who can't get respectable parts in films anymore because of her age, to a Greek diner. They spend the day together, becoming lovers out of a sheer desire to overcome their loneliness and the dissatisfaction and fear that life has brought them. This is a one- day fling, where after the deception becomes unravelled by Madeleine and her anger subsides, these two lonely souls, at least, find one day of gentleness with each other, before their life goes on, to who knows what.
This could have been a great picture, it had everything in place to be great, a great idea for a story, two of the finest acting performances you can ever want, and a very compassionate story line that is without any need for contrivances, and could touch the heart of any mature audience.
So what went wrong and what went right with the film ?
What is right about this film, is that the story of the lovers, if we can really call them that, is meaningful, therefore it stays with you, its power goes beyond the time you spend watching it unfold on screen. I thought about them for days afterwards, wondering how easy it is to lose track of things and find out that all your desires and dreams fell through and that you are left in a hopeless state, unable to relate to anyone what is wrong with you. And getting older in a society that is youth oriented, finding yourself tossed aside as unwanted scrap heap, is a very difficult psychological thing for one to reconcile, and obviously, some do it better than others. Oliver had no outside support, which might be the reason he hit the bottom financially, winding up in a spot he will have a great deal of trouble adjusting to, as he tries to find himself, hoping for a way out... And Madeleine is also stuck, separated from a husband (Larry Pine) she does not love, who is always snooping around, trying to win her back with his obsessively manic behavior, leaving a bad taste in her mouth. Her self-esteem is at a very low level, as she can't find a way to support her need to be truly wanted, to find love and happiness, and to be an actress with viable parts. The problem of getting older and not being appealing anymore gnaws at her, as she blames everything around her for her troubles, hating being stuck in a God forsaken place like Queens, living in this culturally desolate vacuum, where she can't escape from, not satisfied that she lives with her sweet adopted Korean daughter in a private house and seems to be materially provided for. This part of the film is very emotionally moving and well presented.
What starts to go wrong with the film, is that the direction of the film tries to do too many things, and even though, those things it attempts might work on their own terms, they don't fit into the theme of this film, ruining its rhythm. For instance, it offers us a vibrant look at a homeless shelter, those who are in it, their routines, their psychological make-up, and it even brings one of the homeless men to life, Ray (Jared), giving his character a certain appeal that an entire film could be based on, but to make the homelessness subplot so much a part to this film, does not do justice to the more essential story line. Its pace of story is different than David's odyssey, and therefore fills the screen with too many useless images that do not enhance this beautifully shot short film with the impact it needs. Instead, what could have been done, was to keep the main focus on Oliver and Madeleine's relationship, this would have added more insight into the reasons for their demise, and give us more of a hint of how they will act as the picture concludes. It would have served the film better if it didn't become so arty and give us so many unimportant shots of lobsters and Queens. This is a very human and emotional story, a story that is very well conceived, and almost completely overshadowed by the director's bad instincts that almost surplant so much of the good unstincts he incorporated in the film. But, surprisingly enough, even if the film had an air of phoniness about it, the two character's exquisite performance stuck with me long after seeing the film. I thought their relationship was genuine, that the film offers contrasting perceptions of what is real and what is illusionary, as it bolsters the sense of misfortune that ultimately prevails for both of them. Ah ! If only... what a film this could have been.
REVIEWED ON 3/12/99 GRADE: B-
http:www.sover.net/~ozus
Dennis Schwartz: "Movie Reviews"<EMAIL_ADDRESS>© ALL RIGHTS RESERVED DENNIS SCHWARTZ
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


dacs7
Data access S7 is a library to connect to S7 plcs for reading and writing data.
NuGet
PM> Install-Package Dacs7
Description
Dacs7 is used to connect to a SIEMENS Plc by using the RFC1006 protocol to perform operations.
Compatibility
| 300 | 400 | WinAC | 1200 | 1500 | |
|---|---|---|---|---|---|
| DB Read/Write | X | X | X | X | X |
| EB Read/Write | X | X | X | X | X |
| AB Read/Write | X | X | X | X | X |
| MB Read/Write | X | X | X | X | X |
| TM Read/Write | X | X | X | ||
| CT Read/Write | X | X | X |
Additional TIA Settings (1200 and 1500 CPUs)
DB Properties
Select the DB in the left pane under 'Program blocks' and click 'Properties' in the context menu.
FullAccess
Select the CPU in the left pane and click 'Properties' in the context menu and go to 'Protection & Security'.
Connection mechanisms
Select the CPU in the left pane and click 'Properties' in the context menu and go to 'Protection & Security/Connection mechanisms'.


Endurance is a webapp that functions as an online fitness journal. With Endurance you can upload and store your customized workout routines for later access. If you do not wish to create your own routine you may use one of the routines Endurance provides.
In addition to storing routines, exercises suggested by Endurance link directly to short YouTube videos and playlists that will demonstrate how to perform exercises. After completing your workout routine, you can input the type of exercise you have done along with the quantity and Endurance will record this amount.
Once you have completed a routine, Endurance will award you a gif to keep you motivated.
Lauren Lindsey, Josh Mariz, and Sage Strieker


INtERSPECT TRAINING SERVICES believes in human greatness and potential, thus, it aims to help people achieve life goals through effective and high-impact training, coaching, counseling and prevent maladjustment through proper mental health care programs.
INtERSPECT TRAINING SERVICES envisions to develop an empowered and caring community members regardless of their demographic background; and decrease, if not eliminate, the mental health related disorders leading to an emotionally, psychologically, spiritually and physically balanced individuals and community.
Love for Service
Genuine Concern and Acceptance
Empathy
Integrity
Value on Profession
Sincerity
CHERRIE L. RAGUNTON, MP, RPm


Such overloads introduce ambiguity and require callers to cast lambdas to a specific type or specify lambda parameter types explicitly. It is preferable to give the overloaded methods different names to eliminate ambiguity.
Example:
interface MyExecutor {
void execute(Supplier<?> supplier);
void execute(Callable<?> callable);
}
Here, Supplier
and Callable
are functional interfaces
whose single abstract methods do not take any parameters and return a non-void value.
As a result, the type of the lambda cannot be inferred at the call site unless an explicit cast is used.


{% extends 'indexbase.html' %} {% block content %} {% load static %}
| Incharge | |
|---|---|
| Ajaykumar Kewat | Physical Education Instructor In Charge SAC & Sports |
SAC
is open for faculty and students from:
Monday to Friday: 6:00am to 9:00am & 4:00pm to 9:00pm
Saturday: 6:00am to 9:00am & 4:30pm to 9:30pm
Sunday and Selected Institute Holidays: 9:30am to 1:00pm & 4:00pm to 8:00pm
Institute Holidays : OFF
INDOOR SPORTS FACILITIES
| Sports | Details |
|---|---|
| Gymnasium – Modern | All weight Training and Cardio Machines |
| Badminton Wooden courts | Four (4 ) Courts |
| Squash Court | One (1) Court |
| Table Tennis Hall | Five Tables |
| Carrom Room & Chess Room | Five Carrom Boards & 10 Chess Boards |
| Taekwondo Martial Art Room | One (1) Room |
| Prayer Room | One (1) Room |
| Dance Room | One (1) Room |
| Pool Table | One (1) Room |
OUTDOOR SPORTS FACILITIES
| Sports | Details |
|---|---|
| Basketball Court | Two (2) Courts |
| Cricket Ground | One (1) Ground |
| Cricket Nets – Practice Facilities | Four (4) Practice Pitches |
| Football Ground | One (1) Ground |
| Futsal | One (1) court |
| Volleyball Courts | Two (2) Courts |
| Tennis Courts | Two (2) Courts |


001// *************************************************************************************************************************** 002// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file * 003// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file * 004// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance * 005// * with the License. You may obtain a copy of the License at * 006// * * 007// * http://www.apache.org/licenses/LICENSE-2.0 * 008// * * 009// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an * 010// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * 011// * specific language governing permissions and limitations under the License. * 012// *************************************************************************************************************************** 013package org.apache.juneau.http; 014 015import org.apache.juneau.http.annotation.*; 016 017/** 018 * Represents a parsed <l>Warning</l> HTTP request/response header. 019 * 020 *
 021 * A general warning about possible problems with the entity body. 022 * 023 *
Example
 024 *
 025 * Warning: 199 Miscellaneous warning 026 *
 027 * 028 *
RFC2616 Specification
 029 * 030 * The Warning general-header field is used to carry additional information about the status or transformation of a 031 * message which might not be reflected in the message. 032 * This information is typically used to warn about a possible lack of semantic transparency from caching operations 033 * or transformations applied to the entity body of the message. 034 * 035 *
 036 * Warning headers are sent with responses using: 037 *
 038 * Warning = "Warning" ":" 1#warning-value 039 * warning-value = warn-code SP warn-agent SP warn-text 040 * [SP warn-date] 041 * warn-code = 3DIGIT 042 * warn-agent = ( host [ ":" port ] ) | pseudonym 043 * ; the name or pseudonym of the server adding 044 * ; the Warning header, for use in debugging 045 * warn-text = quoted-string 046 * warn-date = <"> HTTP-date <"> 047 *
 048 * 049 *
 050 * A response MAY carry more than one Warning header. 051 * 052 *
 053 * The warn-text SHOULD be in a natural language and character set that is most likely to be intelligible to the human 054 * user receiving the response. 055 * This decision MAY be based on any available knowledge, such as the location of the cache or user, the 056 * Accept-Language field in a request, the Content-Language field in a response, etc. 057 * The default language is English and the default character set is ISO-8859-1. 058 * 059 *
 060 * If a character set other than ISO-8859-1 is used, it MUST be encoded in the warn-text using the method described in 061 * RFC 2047. 062 * 063 *
 064 * Warning headers can in general be applied to any message, however some specific warn-codes are specific to caches 065 * and can only be applied to response messages. 066 * New Warning headers SHOULD be added after any existing Warning headers. 067 * A cache MUST NOT delete any Warning header that it received with a message. 068 * However, if a cache successfully validates a cache entry, it SHOULD remove any Warning headers previously attached 069 * to that entry except as specified for specific Warning codes. 070 * It MUST then add any Warning headers received in the validating response. 071 * In other words, Warning headers are those that would be attached to the most recent relevant response. 072 * 073 *
 074 * When multiple Warning headers are attached to a response, the user agent ought to inform the user of as many of them 075 * as possible, in the order that they appear in the response. 076 * If it is not possible to inform the user of all of the warnings, the user agent SHOULD follow these heuristics: 077 *
 078 *
Warnings that appear early in the response take priority over those appearing later in the response. 079 *
Warnings in the user's preferred character set take priority over warnings in other character sets but with 080 * identical warn-codes and warn-agents. 081 *
 082 * 083 *
 084 * Systems that generate multiple Warning headers SHOULD order them with this user agent behavior in mind. 085 * 086 *
 087 * Requirements for the behavior of caches with respect to Warnings are stated in section 13.1.2. 088 * 089 *
 090 * This is a list of the currently-defined warn-codes, each with a recommended warn-text in English, and a description 091 * of its meaning. 092 *
 093 *
110 Response is stale MUST be included whenever the returned response is stale. 094 *
111 Revalidation failed MUST be included if a cache returns a stale response because an attempt to revalidate 095 * the response failed, due to an inability to reach the server. 096 *
112 Disconnected operation SHOULD be included if the cache is intentionally disconnected from the rest of the 097 * network for a period of time. 098 *
113 Heuristic expiration MUST be included if the cache heuristically chose a freshness lifetime greater than 099 * 24 hours and the response's age is greater than 24 hours. 100 *
199 Miscellaneous warning The warning text MAY include arbitrary information to be presented to a human user, 101 * or logged. A system receiving this warning MUST NOT take any automated action, besides presenting the warning 102 * to the user. 103 *
214 Transformation applied MUST be added by an intermediate cache or proxy if it applies any transformation 104 * changing the content-coding (as specified in the Content-Encoding header) or media-type (as specified in the 105 * Content-Type header) of the response, or the entity-body of the response, unless this Warning code already 106 * appears in the response. 107 *
299 Miscellaneous persistent warning The warning text MAY include arbitrary information to be presented to a 108 * human user, or logged. A system receiving this warning MUST NOT take any automated action. 109 *
 110 * 111 *
 112 * If an implementation sends a message with one or more Warning headers whose version is HTTP/1.0 or lower, then the 113 * sender MUST include in each warning-value a warn-date that matches the date in the response. 114 * 115 *
 116 * If an implementation receives a message with a warning-value that includes a warn-date, and that warn-date is 117 * different from the Date value in the response, then that warning-value MUST be deleted from the message before 118 * storing, forwarding, or using it. 119 * (This prevents bad consequences of naive caching of Warning header fields.) 120 * If all of the warning-values are deleted for this reason, the Warning header MUST be deleted as well. 121 * 122 *
 123 *
{@doc RFC2616} 124 *
 125 */ 126@Header("Warning") 127public final class Warning extends HeaderString { 128 129 /** 130 * Returns a parsed <c>Warning</c> header. 131 * 132 * @param value The <c>Warning</c> header string. 133 * @return The parsed <c>Warning</c> header, or <jk>null</jk> if the string was null. 134 */ 135 public static Warning forString(String value) { 136 if (value == null) 137 return null; 138 return new Warning(value); 139 } 140 141 private Warning(String value) { 142 super(value); 143 } 144}


This is plugin for Acorn - a tiny, fast JavaScript parser, written completely in JavaScript.
It was created as an experimental alternative, faster React.js JSX parser.
According to benchmarks, Acorn-JSX is 2x faster than official Esprima-based parser when location tracking is turned on in both (call it "source maps enabled mode"). At the same time, it consumes all the ES6+JSX syntax that can be consumed by Esprima-FB (this is proved by official tests).
UPDATE [14-Apr-2015]: Facebook implementation started deprecation process in favor of Acorn + Acorn-JSX + Babel for parsing and transpiling JSX syntax.
Please note that this tool only parses source code to JSX AST, which is useful for various language tools and services. If you want to transpile your code to regular ES5-compliant JavaScript with source map, check out the babel transpiler which uses acorn-jsx
under the hood.
You can use module directly in order to get Acorn instance with plugin installed:
var acorn = require('acorn-jsx');
Or you can use inject.js
for injecting plugin into your own version of Acorn like following:
var acorn = require('acorn-jsx/inject')(require('./custom-acorn'));
Then, use plugins
option whenever you need to support JSX while parsing:
var ast = acorn.parse(code, {
plugins: { jsx: true }
});
Note that official spec doesn't support mix of XML namespaces and object-style access in tag names (#27) like in <namespace:Object.Property />
, so it was deprecated in<EMAIL_ADDRESS>. If you still want to opt-in to support of such constructions, you can pass the following option:
var ast = acorn.parse(code, {
plugins: {
jsx: { allowNamespacedObjects: true }
}
});
Also, since most apps use pure React transformer, a new option was introduced that allows to prohibit namespaces completely:
var ast = acorn.parse(code, {
plugins: {
jsx: { allowNamespaces: false }
}
});
Note that by default allowNamespaces
is enabled for spec compliancy.
This plugin is issued under the MIT license.


This WebView listens to postMessages
Send hello to all views listening (also this one)
I should receive two postMessages right after push that would appear below here:


England’s Marcus Rashford feels back to his best after ‘tough period’
England scored 11 goals in their last two qualifiers, and 37 in eight qualification matches and Rashford said it was important to utilise all their attacking weapons.
by ReutersWith nine goals in his last 10 games for Manchester United and England, forward Marcus Rashford says he has put a tough start to the season behind him and is feeling confident in front of goal once more.
The 22-year-old added that his return to form had been helped by a consistent run of games.
“It has been a tough period and now I’m getting consistent games and playing week in, week out,” said Rashford, who scored in both of England’s recent Euro 2020 qualifiers against Montenegro and Kosovo.
As a forward, that has huge importance.
 But when you’re having a run in the team it’s important to come up with the goods and once you start doing that it becomes second nature.”
England scored 11 goals in their last two qualifiers, and 37 in eight qualification matches and Rashford said it was important to utilize all their attacking weapons.
“I have been in two tournaments now and the squad is so important,” he added. “With the qualities that every individual has in this team, it is something we have to use to our advantage.
“People are going to be playing at different moments but when you are on the pitch you have to do your best, and try to come up with the goods. It is a good competition.”


--- layout: default link-title: Home title: Home - Java Design Patterns description: This site showcases Java Design Patterns. The solutions have been developed by experienced programmers and architects from the open source community. The patterns can be browsed by their high level descriptions or by looking at their source code. The source code examples are well commented and can be thought as programming tutorials how to implement a specific pattern. We use the most popular battle-proven open source Java technologies. permalink: / icon: fa-book page-index: 0 ---
Design patterns are best practices a programmer can use to solve common problems when designing an application or system.
Software development has some universal principles that can guide and help during design, implementation and review.
30-seconds-of-java is a collection of reusable, tested, Java 11 compatible code snippets that we guarantee you can understand in 30 seconds or less.
Find our latest blog content related to design patterns, architecture and open source.


|
Central Processing Unit Information from an input device or from the computerí»s memory is communicated via the bus to the central processing unit (CPU), which is the part of the computer that translates commands and runs programs. The CPU is a microprocessor chipí¬that is, a single piece of silicon containing millions of tiny, microscopically wired electrical components. Information is stored in a CPU memory location called a register. Registers can be thought of as the CPUí»s tiny scratchpad, temporarily storing instructions or data. When a program is running, one special register called the program counter keeps track of which program instruction comes next by maintaining the memory location of the next program instruction to be executed. The CPUí»s control unit coordinates and times the CPUí»s functions, and it uses the program counter to locate and retrieve the next instruction from memory. In a typical sequence, the CPU locates
the next instruction in the appropriate memory device. The instruction
then travels along the bus from the computerí»s memory to the CPU, where
it is stored in a special instruction register. Meanwhile, the program
counter changesí¬usually increasing a small amountí¬so that it contains
the location of the instruction that will be executed next. The current
instruction is analyzed by a decoder, which determines what the instruction
will do. Any data the instruction needs are retrieved via the bus and
placed in the CPUí»s registers. The CPU executes the instruction, and the
results are stored in another register or copied to specific memory locations
via a bus. This entire sequence of steps is called an instruction cycle.
Frequently, several instructions may be in process simultaneously, each
at a different stage in its instruction cycle. This is called pipeline
processing. |


Aggregate species data to given taxonomic rank
tax_agg(x, rank, db = "ncbi", verbose = FALSE, ...) # S3 method for tax_agg print(x, ...)
tax_name
. Note that each taxonomic data source has
their own identifiers, so that if you provide the wrong db
value
for the identifier you could get a result, but it will likely be wrong (not
what you were expecting).get_tsn
or get_uid
.A list of class tax_agg
with the following items:
tax_agg
aggregates (sum) taxa to a specific taxonomic level.
If a taxon is not found in the database (ITIS or NCBI) or the supplied taxon
is on higher taxonomic level this taxon is not aggregated.
## Not run: ------------------------------------ # if (requireNamespace("vegan", quietly = TRUE)) { # # use dune dataset # library("vegan") # data(dune, package='vegan') # species <- c("Bellis perennis", "Empetrum nigrum", "Juncus bufonius", # "Juncus articulatus", # "Aira praecox", "Eleocharis parvula", "Rumex acetosa", "Vicia lathyroides", # "Brachythecium rutabulum", "Ranunculus flammula", "Cirsium arvense", # "Hypochaeris radicata", "Leontodon autumnalis", "Potentilla palustris", # "Poa pratensis", "Calliergonella cuspidata", "Trifolium pratense", # "Trifolium repens", "Anthoxanthum odoratum", "Salix repens", "Achillea # millefolium", # "Poa trivialis", "Chenopodium album", "Elymus repens", "Sagina procumbens", # "Plantago lanceolata", "Agrostis stolonifera", "Lolium perenne", "Alopecurus # geniculatus", "Bromus hordeaceus") # colnames(dune) <- species # # # aggregate sample to families # (agg <- tax_agg(dune, rank = 'family', db = 'ncbi')) # # # extract aggregated community data matrix for further usage # agg$x # # check which taxa have been aggregated # agg$by # } # # # A use case where there are different taxonomic levels in the same dataset # spnames <- c('Puma','Ursus americanus','Ursidae') # df <- data.frame(c(1,2,3), c(11,12,13), c(1,4,50)) # names(df) <- spnames # out <- tax_agg(df, rank = 'family', db='itis') # out$x # # # You can input a matrix too # mat <- matrix(c(1,2,3, 11,12,13), nrow = 2, ncol = 3, # dimnames=list(NULL, c('Puma concolor','Ursus americanus','Ailuropoda melanoleuca'))) # tax_agg(mat, rank = 'family', db='itis') ## ---------------------------------------------


A collaborative installation with Campus Novel, symposia, and workshop. Omonia AB5-6, Athens Biennale 2015-2017.
During the 19th and 20th century the concept of happiness was linked to the collective request ‘to change the world’. In the postmodern context both the notions of world and happiness shifted towards a series of dispersed significations that introduce a reflective approach, i.e. Erotic joy, aesthetic pleasure, political enthusiasm, scientific bliss.
The project ‘Strolling Happiness’ weaves personal happy narratives into the urban fabric of Athens through the act of strolling. A group of explorers collect happy places through aleatory street encounters over a time span of three days.
Through different means of representation and documentation, the participants gather and process traces of happy sites.


Module Fundamentals
Puppet Modules
Modules are self-contained bundles of code and data. You can write your own modules or you can download pre-built modules from Puppet Labs’ online collection, the Puppet Forge.
Nearly all Puppet manifests belong in modules. The sole exception is the main site.pp
manifest, which contains site-wide and node-specific code.
Every Puppet user should expect to write at least some of their own modules.
- Continue reading to learn how to write and use Puppet modules.
- See “Installing Modules” for how to install pre-built modules from the Puppet Forge.
- See “Publishing Modules” for how to publish your modules to the Puppet Forge.
- See “Using Plugins” for how to arrange plugins (like custom facts and custom resource types) in modules and sync them to agent nodes.
- See “Documenting Modules” for a README template and information on providing directions for your module.
Using Modules
Modules are how Puppet finds the classes and types it can use — it automatically loads any class or defined type stored in its modules. Within a manifest or from an external node classifier (ENC), any of these classes or types can be declared by name:
# /etc/puppetlabs/puppet/site.pp
node default {
include apache
class {'ntp':
enable => false;
}
apache::vhost {'personal_site':
port => 80,
docroot => '/var/www/personal',
options => 'Indexes MultiViews',
}
}
Likewise, Puppet can automatically load plugins (like custom native resource types or custom facts) from modules; see “Using Plugins” for more details.
To make a module available to Puppet, place it in one of the directories in Puppet’s modulepath.
The Modulepath
Note: The
modulepath
is a list of directories separated by the system path-separator character. On ‘nix systems, this is the colon (:), while Windows uses the semi-colon (;). The most common default modulepaths are:
/etc/puppetlabs/puppet/modules:/opt/puppet/share/puppet/modules
(for Puppet Enterprise)/etc/puppet/modules:/usr/share/puppet/modules
(for open source Puppet)Use
puppet config print modulepath
to see your currently configured modulepath.If you want both puppet master and puppet apply to have access to the modules, set the modulepath in puppet.conf to go to the
[main]
block. Modulepath is also one of the settings that can be different per environment.
You can easily install modules written by other users with the puppet module
subcommand. See “Installing Modules” for details.
Module Layout
On disk, a module is simply a directory tree with a specific, predictable structure:
- MODULE NAME
- manifests
- files
- templates
- lib
- tests
- spec
Example
This example module, named “my_module
,” shows the standard module layout in more detail:
my_module
— This outermost directory’s name matches the name of the module.manifests/
— Contains all of the manifests in the module.init.pp
— Contains a class definition. This class’s name must match the module’s name.other_class.pp
— Contains a class namedmy_module::other_class
.my_defined_type.pp
— Contains a defined type namedmy_module::my_defined_type
.implementation/
— This directory’s name affects the class names beneath it.foo.pp
— Contains a class namedmy_module::implementation::foo
.bar.pp
— Contains a class namedmy_module::implementation::bar
.
files/
— Contains static files, which managed nodes can download.service.conf
— This file’s URL would bepuppet:///modules/my_module/service.conf
.
lib/
— Contains plugins, like custom facts and custom resource types. See “Using Plugins” for more details.templates/
— Contains templates, which the module’s manifests can use. See “Templates” for more details.component.erb
— A manifest can render this template withtemplate('my_module/component.erb')
.
tests/
— Contains examples showing how to declare the module’s classes and defined types.init.pp
other_class.pp
— Each class or type should have an example in the tests directory.
spec/
— Contains spec tests for any plugins in the lib directory.
Each of the module’s subdirectories has a specific function, as follows.
Manifests
Each manifest in a module’s manifests
folder should contain one class or defined type. The file names of manifests map predictably to the names of the classes and defined types they contain.
init.pp
is special and always contains a class with the same name as the module.
Every other manifest contains a class or defined type named as follows:
| Name of module | :: | Other directories:: (if any) | Name of file (no extension) |
|---|---|---|---|
my_module |
:: |
other_class |
|
my_module |
:: |
implementation:: |
foo |
Thus:
my_module::other_class
would be in the filemy_module/manifests/other_class.pp
my_module::implementation::foo
would be in the filemy_module/manifests/implementation/foo.pp
The double colon that divides the sections of a class’s name is called the namespace separator.
Allowed Module Names
Module names should only contain lowercase letters, numbers, and underscores, and should begin with a lowercase letter; that is, they should match the expression [a-z][a-z0-9_]*
. Note that these are the same restrictions that apply to class names, but with the added restriction that module names cannot contain the namespace separator (::
) as modules cannot be nested.
Although some names that violate these restrictions currently work, using them is not recommended.
Certain module names are disallowed:
- main
- settings
Files
Files in a module’s files
directory are automatically served to agent nodes. They can be downloaded by using puppet:/// URLs in the source
attribute of a file
resource.
Puppet URLs work transparently in both agent/master mode and standalone mode; in either case, they will retrieve the correct file from a module.
Puppet URLs are formatted as follows:
| Protocol | 3 slashes | “Modules”/ | Name of module/ | Name of file |
|---|---|---|---|---|
puppet: |
/// |
modules/ |
my_module/ |
service.conf |
So puppet:///modules/my_module/service.conf
would map to my_module/files/service.conf
.
Templates
Any ERB template (see “Templates” for more details) can be rendered in a manifest with the template
function. The output of the template is a simple string, which can be used as the content attribute of a file
resource or as the value of a variable.
The template function can look up templates identified by shorthand:
| Template function | (‘ | Name of module/ | Name of template | ’) |
|---|---|---|---|---|
template |
(' |
my_module/ |
component.erb |
') |
So template('my_module/component.erb')
would render the template my_module/templates/component.erb
.
Writing Modules
To write a module, simply write classes and defined types and place them in properly named manifest files as described above.
Best Practices
The classes, defined types, and plugins in a module should all be related, and the module should aim to be as self-contained as possible.
Manifests in one module should never reference files or templates stored in another module.
Be wary of having classes declare classes from other modules, as this makes modules harder to redistribute. When possible, it’s best to isolate “super-classes” that declare many other classes in a local “site” module.


This SQL will attempt to INSERT a student that is outside the range of the table. This will result in an error message since the table has not been defined to hold this much data. Note that you cannot alter the table to accept more records. You must re-create the table at this point in time if you run out of "slots".
You control the behavior of a range-clustered table (RCT) that allows overflow records by using the CREATE TABLE statement and the ALLOW OVERFLOW option. In this way, you ensure that all of the pages required by the table within the defined range are allocated immediately.
Once created, any records with keys that fall into the defined range work the same way, regardless of whether the table is created with the overflow option allowed or disallowed. The difference occurs when there is a record with a key that falls outside of the defined range. In this case, when the table allows overflow records, the record is placed in the overflow area, which is dynamically allocated. As more records are added from outside the defined range, they are placed into the growing overflow area. Actions against the table that involve this overflow area will require longer processing time because the overflow area must be accessed as part of the action. The larger the overflow area, the longer it will take to access the overflow area. After prolonged use of the overflow area, consider reducing its size by exporting the data from the table to a new range-clustered table that you have defined using new, extended ranges.
There might be times when you do not want records placed into a range-clustered table to have record key values falling outside of an allowed or defined range. For this type of RCT to exist, you must use the DISALLOW OVERFLOW option on the CREATE TABLE statement. Once you have created this type of RCT, you might have to accept error messages if a record key value falls outside of the allowed or defined range.


 Behind the wheel of a car, I was driving down a straight road in the middle of a desert. No scenery except the horizon line and the converging parallel lines of the highway. No matter what I did, the view didn't change: travelling but not getting anywhere. Each time I awoke in a sweat, terrified.
You don't have to be Carl Jung to understand that dream. Powerless to make changes, trapped in a boring situation with no hope of rescue, this is the stuff of nightmares whether we are asleep or awake.
This is exactly how you will feel 15 minutes after "Battlefield Earth" begins. For all of its flash and style, L. Ron Hubbard's science fiction epic is the earliest and best entry for the dullest summer film of 2000.
In the year 3000, the Psychlo aliens have ruled our planet for 1,000 years. Humans either work as slave labor in mining operations or live as barbarians. There's no hope. The future is bleak.
Then the Psychlo make a mistake and capture feisty Jonnie Goodboy Tyler (Barry Pepper) who organizes a revolution against Chief Of Security Terl (John Travolta) and the alien race.
It's an archetypal post-apocalyptic plot full of promise. Considering some of the talent involved and all the millions thrown at the screen, it's difficult to see how it could have failed so miserably. But it does.
The story is so full of holes that it falls apart within minutes of the opening credits. Are we really supposed to believe that after a millennium of looking for gold, the Psychlo never discovered Fort Knox? Or that fighter planes are still in pristine condition after all that time -- and gassed up? Or that the cavemen become such expert pilots in seven days that they can easily down the advanced alien ships? Or that the Psychlo spy cameras somehow don't notice that their slaves are missing for days?
Travolta prances across the screen hamming it up for all he's worth and is almost entertaining. Almost. The rest of the actors are wooden mannequins trying not to laugh while delivering lines that no person -- "man-animal" or not -- would ever utter.
Some of the film _looks_ good, but it also looks so familiar. A race of large hulking ape-like creatures has taken over the world while our cities lie in ruin. Sound like something Charlton Heston might be in? The Psychlo look like overweight Klingons in gear from "Dune". The final air battle between the Air Force fighters and the Psychlo ships in their high-tech city is something George Lucas might have been associated with.
It's too loud. It's too oppressive. It's too slow. It's too long...far too long. And on it goes. The list of the problems with "Battlefield Earth" is endless. It's difficult to find anything in the film that does work.
Oh yeah. The color scheme is nice.
The real question is how this movie ever got made. Could it have something to do with the fact that L. Ron Hubbard was the founder of Scientology? And that John Travolta is a member of the church.
That might explain why Travolta bought the rights to the novel years ago. But it doesn't give us a clue as to why first-time screenwriter Corey Mandell's atrocious script was used. Or why the high-profile project was entrusted with Roger Christian who had never before directed a major film.
Or why no one looked at this thing before it was released and realized there might be problems.
The one bright spot is that no longer will Kevin Costner's "The Postman" (which I begrudgingly admit as a guilty pleasure) be "the" big budget science fiction failure. "Battlefield Earth" has the honor sewed up.
Often reviewers will recommend that you skip mediocre films and wait for the video. That's not the case here. You can act now and make the decision to not see it on the big screen or on the small one. Don't hesitate. Strike now while the iron is cold.
(Michael Redman has written this column since before this novel was published and he's still not a Scientologist. Send tales of religious science fiction experiences to<EMAIL_ADDRESS>[This appeared in the 5/15/2000 "Bloomington Independent", Bloomington, Indiana. Michael Redman can be contacted at<EMAIL_ADDRESS>--<EMAIL_ADDRESS>Film reviews archive: http://us.imdb.com/M/reviews_by?Michael%20Redman
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


Toggle navigation
Assignment 1
Home
(current)
Chart
About Us
Participate
Search
Collage Ranking
1. Addis Ababa University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
2. Adama University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
3. Mekele University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
4. Haromaya University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
5. Axum University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
6. Medewelabu University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare
7. Wachemo University
Select department to compare
Natural Science
IT
Engineering
Medicine
Social Science
Accounting
Economics
Managment
--Compare with--
Addis Ababa University
Jimma University
Adama University
Compare


{% extends 'base/base.html' %} {% block content %} {% include 'master/attendence_rules.html' %} {% include 'master/performance.html' %} {% include 'master/company.html' %} {% include 'master/location.html' %} {% include 'master/benefit.html' %} {% include 'master/city.html' %}


This, the largest of the islands in the Dodecanese, is a popular tourist destination. It is also a large charter base, so visiting mid-week provides a better chance of finding a berth. The main harbour for yachts is Mandraki on the north east tip of the island.
Rhodes town is very congested with crowds from cruise ships, ferries, holiday package groups, etc. and has thousands of shops and restaurants. Many cruisers prefer to moor in Lindos and take the bus up to Rhodes for the day.
Position 36° 27.1'N, 28° 13.4'E. (Mandraki yacht harbour)
For full details on clearing into our out of Greece see Greek Formalities.
Yachts coming from other ports in Greece must complete formalities with the port police. If coming from outside Greece, Immigration and Customs must also be visited, both located at Mandraki Marina.
Port Police here have been reported as very officious, checking everything possible including the ship's logbook! They also insist on separate check in/check out even when planned stay is less than 12 hrs.
Customs and Immigration are at the root of the Ε mole in Mandrâki and the port police are on the W side.
Mandraki, Rhodes' yacht harbour, is usually full of local or charter yachts with little room for visitors. Finding a berth between Friday and Monday is almost impossible once the season has begun as this is when the charter fleet are in port.
Some agents can help with securing berthing here in advance or you can try contacting the marina a week or so before you arrive to reserve. If possible, it's best to reserve a spot in advance and stick to your schedule as the harbour is very busy.
There is a chain that runs the length of the quay about 30m off the sea wall. Therefore you will need to drop the anchor fairly far out. It is recommended to use a tripping line as fouled anchors here are common.
If no room can be found, or if you prefer a little more peace and quiet (and no problems with crossed anchors), you can anchor behind the windmills by the harbour wall, keeping clear of the channel into the commercial port.
The town quay is reserved for local ferries and hydrofoils.
The moorings on the E side are private. All berths are allocated to charter boats and vsitors are discouraged from berthing here. The pontoon on the W side of the harbour has now been removed.
There is an anchorage about 1nm SE of the harbour, close to the old city and a small boatyard. Take a line to one of the big blocks lying along the east side. Fouled anchors are a common occurrence simply because there are so many yachts. Divers are at the skippers' expense.
The new marina (see photo taken August 2015) is now open with berths available - see latest updates in comments at bottom of page. It is still under construction however and services are limited. It is 1 mile away from the town in a quiet area with no bus service available. Across the road from the marina is a chandlery, a bakery and a restaurant. There is a small supermarket about a 5 minute walk away and a larger Lidl supermarket about 3km away.
Weather information (in English) is on VHF channel 63 at 0600/1000/1600/2200hrs UTC.
Coastguard, Tel: +30 (0) 241 22200, VHF channel 12
Last updated May 2016.


Alexander Ciaravino
Content
"Help me Obi-wan Kenobi, You're my only Hope."
The goal of this project was to create a message you want to send out to space, in hopes that another intelligent life will find and interpret it. Putting a sci-fi twist on the project, I decided to use Aurebesh in my graphic because it is a widely used language in the Star Wars universe, so perhaps aliens will recognize it- we can hope! I embedded graphics that hint towards our planet dying, as QR codes in which our alien "penpals" will have to decode. The largest QR code contains a quote by Princess Leia Organa, sending an SOS. If the Aurebesh language can't be translated by these aliens, lets hope that they can understand the pictograms.


--- title: '#tidytuesdy: Best Rap Artists' author: ~ date: '2020-04-26' slug: tidytuesdy-best-rap-artists categories: [] tags: [] ---
Another #tidytuesday. This time on the best rap songs per a BBC music poll. Most of the critics were from the USA (n = 73), and I wondered if their favorite songs differed from those of critics from the rest of the world (n = 34).
The data provided only provided the top 5 songs for each critic and the global ranking, so I had to recalculate the rankings based on the critics country of origin.
A segment plot seemed to be the best way to visualise this. I really wanted to use images as the points - a US flag and a globe. However, I failed to get a working solution despite tesing ggflags
, ggimage
and various emoji packages - perhaps something to return to.
## Joining, by = c("title", "artist", "year")


--- layout: post status: publish published: true title: Dealing with Legacy Code author: display_name: Tomas Restrepo login: tomasr email<EMAIL_ADDRESS>url: http://winterdom.com/ author_login: tomasr author_email<EMAIL_ADDRESS>author_url: http://winterdom.com/ wordpress_id: 102 wordpress_url: http://winterdom.com/2006/05/dealingwithlegacycode date: '2006-05-04 11:28:37 +0000' date_gmt: '2006-05-04 11:28:37 +0000' categories: - Development - Architecture tags: [] comments: [] ---
Jeremy Miller has
posted an excellent
article with tips about working with Legacy Code. I've had similar
experiences with some code that definitely meets the definition Jeremy proposes:
"Legacy Code is code you're afraid of". I particularly agree with the
tip that improving error handling in legacy code (which is usually a mess, in my
experience) is a critical step to prevent the code from making your life
miserable.


We're sorry but joes doesn't work properly without JavaScript enabled. Please enable it to continue.


Ballot Access
How Does Group Identity Shape Access?
Read a PDF version of the paper here.
Results of an audit study conducted during the 2016 election cycle demonstrate that the bias toward Latinos observed during the 2012 election has persisted. In addition to replicating previous results, we show that Arabs face an even greater barrier to communicating with local election officials. Our study did not produce evidence of discrimination against blacks, a finding that echoes the results of other recent studies. We examine one explanation for the high level of discrimination against Arabs, that bureaucrats are politically responsive. Our findings support this explanation. In geographies that cast more votes for the Republican candidate, discrimination against Arab names was stronger.
Discrimination Against Latino Voters
Experimental evidence gathered in the 2012 General Election found that when a Latino asked a question of his Local Election Official he was less likely to receive a response than if a white man asked the exact same question. We examine whether this pattern of discriminatory behavior was limited to the 2012 election.
We find clear evidence that Latinos continue to pay a penalty. Name alone is adequate to reduce the chances of receiving information about how to vote by more than 3 percentage points.
Discrimination Against Arab Voters
Not only do Latino voters receive answers to their queries at lower rates: so too do voters who have Arab names. Indeed, an Arab name alone is sufficient to decrease the probability of having an election related question answered by more than 11 percentage points.
The magnitude of this result is arresting. Stated another way, if simply because this question was asked by an Arab rather than a White man, the request will be responded to only 3/4 as frequently.
Political Pattern of Discrimination
The surprising size of the discrimination against Arab names led us to investigate what mechanisms might be leading to such a large discrepancy in treatment. As we show below, we found that discrimination was considerably stronger in discrits that voted for the Republican candidate. This suggests supports the theory that street-level bureaucrats have considerable discretion in how they execute the laws on the books.


Sign in to your Shopify account
You are logged in as -
Open Chrome DevTools and select the Shopify tab


Turns assertThat(condition).isEqualTo(true/false) into assertThat(condition).isTrue()/isFalse().
Also works with constant expressions and Boolean.TRUE/FALSE.


Hi I'm Chris, a graduate students of Johns Hopkins. With a passion for quantitative trading and knowledge of computer science and math, I conducted many interesting researches and apps.
Alumnus of Nanjing Univ. Also alumnus of Ivory Capital and Heaven-Sent Capital. I pick up knowledge wherever I live and work.
Seeking to be inspired, to envision the unlikely, and to be surrounded by those who bring out the best in me.
Feel free to shoot me an email.


scaRabee is a port of the Scarabee toolkit originally written as a Matlab-based application. It provides a framework for simulation and optimization of pharmacokinetic-pharmacodynamic models at the individual and population level. It is built on top of the neldermead package, which provides the direct search algorithm proposed by Nelder and Mead for model optimization.
| Version: | 1.1-3 |
| Depends: | neldermead (≥ 1.0-8), lattice, grid, deSolve, utils |
| Published: | 2014-08-22 |
| Author: | Sebastien Bihorel |
| Maintainer: | Sebastien Bihorel <sb.pmlab at gmail.com> |
| License: | GPL-3 |
| NeedsCompilation: | no |
| Materials: | ChangeLog |
| In views: | DifferentialEquations, Pharmacokinetics |
| CRAN checks: | scaRabee results |
| Reference manual: | scaRabee.pdf |
| Vignettes: |
Introduction to scaRabee |
| Package source: | scaRabee_1.1-3.tar.gz |
| Windows binaries: | r-devel: scaRabee_1.1-3.zip, r-release: scaRabee_1.1-3.zip, r-oldrel: scaRabee_1.1-3.zip |
| OS X binaries: | r-release: scaRabee_1.1-3.tgz, r-oldrel: scaRabee_1.1-3.tgz |
| Old sources: | scaRabee archive |
Please use the canonical form https://CRAN.R-project.org/package=scaRabee to link to this page.


It's important to backup your wallet so that you can recover it in case of disaster
Download File View BackupIf all funds have been removed from your wallet and you do not wish to have the wallet data stored on your computer anymore, you can delete your wallet.
DeleteYour master private key contains the information to sign any transaction on this wallet. Handle with care.
Show HideThis will scan the blockchain looking for addresses derived from your wallet, in case you have funds in addresses not yet generated (e.g.: you restored an old backup). This will also trigger a synchronization of addresses to other connected peers.
ScanPending Transactions Proposals will be discarded. This needs to be done on ALL peers of a wallet, to prevent the old proposals to be resynced again.
PurgeALL Transactions Proposals will be discarded. This needs to be done on ALL peers of a wallet, to prevent the old proposals to be resynced again.
Purge AllThis is the initial secret join string. Since your wallet it is already complete, this is only useful to rejoin peers that lost their backup BUT have the extended private key stored (they will be rejected on other case). They need to enter their extended private key during the join process (in advanced options).
Show Hide


doctl kubernetes cluster
Manage Kubernetes clusters and view configuration options relating to clusters.
More information: home page
- Create a Kubernetes cluster:
doctl kubernetes cluster create --count 3 --region nyc1 --size s-1vcpu-2gb --version latest cluster_name
- List all Kubernetes clusters:
doctl kubernetes cluster list
- Fetch and save the kubeconfig:
doctl kubernetes cluster kubeconfig save cluster_name
- Check for available upgrades:
doctl kubernetes cluster get-upgrades cluster_name
- Upgrade a cluster to a new Kubernetes version:
doctl kubernetes cluster upgrade cluster_name
- Delete a cluster:
doctl kubernetes cluster delete cluster_name


|
||||
| Coverage | ||||||||||||
| Lines | Functions / Methods | Classes | ||||||||||
| Total |
|
90.64% | 155 / 171 |
|
76.19% | 16 / 21 |
|
60.00% | 6 / 10 | |||
| Exception |
|
100.00% | 1 / 1 |
|
|
100.00% | 1 / 1 | |||||
| Filter |
|
100.00% | 16 / 16 |
|
100.00% | 1 / 1 |
|
100.00% | 1 / 1 | |||
| Form |
|
100.00% | 62 / 62 |
|
100.00% | 5 / 5 |
|
100.00% | 1 / 1 | |||
| Model |
|
90.00% | 36 / 40 |
|
66.67% | 6 / 9 |
|
33.33% | 1 / 3 | |||
| Plugin |
|
90.00% | 18 / 20 |
|
66.67% | 2 / 3 |
|
0.00% | 0 / 1 | |||
| Validate |
|
100.00% | 7 / 7 |
|
100.00% | 1 / 1 |
|
100.00% | 1 / 1 | |||
| View |
|
58.33% | 14 / 24 |
|
50.00% | 1 / 2 |
|
0.00% | 0 / 1 | |||
| Exception.php |
|
100.00% | 1 / 1 |
|
|
100.00% | 1 / 1 |
| Generated by PHP_CodeCoverage 1.0.3 using PHP 5.3.3-1ubuntu9.5 and PHPUnit 3.5.10 at Wed May 18 18:07:11 CEST 2011. |


A JXTA {@link net.jxta.endpoint.MessageTransport} implementation which
which provides secure, private message transmission using TLS sockets. A
virtual transport, the messages are transfered between peers using some
other message transport.
@see JXTA Protocols Specification : Standard JXTA Transport Bindings
@see IETF RFC 2246: The TLS Protocol-Version 1.0