Class Protocol
A Protocol defines a plan for collecting (via Probes), anonymizing (via Anonymizers), and
storing (via LocalDataStores and RemoteDataStores) data from a device. Study organizers use Sensus to configure the
study's Protocol. Study participants use Sensus to load a Protocol and enroll in the study. All of this happens within the Sensus app.
Inheritance
System.Object
Protocol
Assembly: SensusAndroid.dll
Syntax
public class Protocol : Object
Constructors
Protocol(String)
Called by static CreateAsync. Should not be called directly by outside callers.
Declaration
public Protocol(string name)
Parameters
| Type |
Name |
Description |
| System.String |
name |
Name.
|
Fields
GPS_DEFAULT_ACCURACY_METERS
Declaration
public const int GPS_DEFAULT_ACCURACY_METERS = 25
Field Value
| Type |
Description |
| System.Int32 |
|
GPS_DEFAULT_MIN_DISTANCE_DELAY_METERS
Declaration
public const int GPS_DEFAULT_MIN_DISTANCE_DELAY_METERS = 50
Field Value
| Type |
Description |
| System.Int32 |
|
GPS_DEFAULT_MIN_TIME_DELAY_MS
Declaration
public const int GPS_DEFAULT_MIN_TIME_DELAY_MS = 5000
Field Value
| Type |
Description |
| System.Int32 |
|
Properties
AlertExclusionWindows
Declaration
public List<Window> AlertExclusionWindows { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.List<Window> |
|
AlertExclusionWindowString
A comma-separated list of time windows during which alerts from Sensus (e.g., notifications
about new surveys) should not have a sound or vibration associated with them. The format
is the same as described for TriggerWindowsString, except that
exact times (e.g., 11:32am) do not make any sense -- only windows (e.g., 11:32am-1:00pm) do.
Declaration
[EntryStringUiProperty("Alert Exclusion Windows:", true, 36)]
public string AlertExclusionWindowString { get; set; }
Property Value
| Type |
Description |
| System.String |
The alert exclusion window string.
|
AsymmetricEncryption
Declaration
public AsymmetricEncryption AsymmetricEncryption { get; }
Property Value
AsymmetricEncryptionPublicKey
Sensus is able to use asymmetric key encryption to secure data before transmission from the device to a remote endpoint (e.g., AWS S3). This
provides a layer of security on top of SSL encryption and certificate pinning. For example, even if an attacker is able to intercept
and decrypt a service request (e.g., write data) to AWS S3 via a man-in-the-middle attack, the attacker would not be able to decrypt
the Sensus data payload, which is encrypted with an additional public/private key pair that you control. This protects against two
threats. First, it protects against the case where a man-in-the-middle has gained access to your pinned private encryption key and
intercepts data. Second, it protects against unauthorized access to Sensus data payloads after storage within the intended system
(e.g., within AWS S3). In the latter case, the data payloads are transferred to the correct server, but they live unencrypted on
that system. Asymmetric encryption prevents unauthorized access to the data by ensuring that Sensus data payloads can only be decrypted
by those who have the asymmetric private encryption key. To use asymmetric data encryption within Sensus, you must generate a public/private
key pair and enter the public key within AsymmetricEncryptionPublicKey. You can generate a public/private key pair in the
appropriate format using the following steps (on Mac):
- Generate a 2048-bit
RSA PRIVATE KEY
:
openssl genrsa -des3 -out private.pem 2048
- Convert the
RSA PRIVATE KEY
to a PRIVATE KEY
:
openssl pkcs8 -topk8 -nocrypt -in private.pem
- Extract the
PUBLIC KEY
for entering into your Sensus Protocol:
openssl rsa -in private.pem -outform PEM -pubout -out public.pem
Keep all PRIVATE KEY
information safe and secure. Never share it.
Declaration
[EntryStringUiProperty("Asymmetric Encryption Public Key:", true, 37)]
public string AsymmetricEncryptionPublicKey { get; set; }
Property Value
| Type |
Description |
| System.String |
The asymmetric encryption public key.
|
An email address for the individual who is responsible for handling questions
associated with this study.
Declaration
[EntryStringUiProperty("Contact Email:", true, 24)]
public string ContactEmail { get; set; }
Property Value
| Type |
Description |
| System.String |
The contact email.
|
ContinueIndefinitely
Whether or not to execute the Protocol forever after it has started.
Declaration
[OnOffUiProperty("Continue Indefinitely:", true, 19)]
public bool ContinueIndefinitely { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
true to execute forever; otherwise, false .
|
Description
A detailed description of the Protocol (e.g., what it does, who it is intended for, etc.).
Declaration
[EditorUiProperty("Description:", true, 15)]
public string Description { get; set; }
Property Value
| Type |
Description |
| System.String |
The description.
|
EndDate
Declaration
[DateUiProperty("End Date:", true, 20)]
public DateTime EndDate { get; set; }
Property Value
| Type |
Description |
| System.DateTime |
The end date.
|
EndTime
Declaration
[TimeUiProperty("End Time:", true, 21)]
public TimeSpan EndTime { get; set; }
Property Value
| Type |
Description |
| System.TimeSpan |
The end time.
|
ForceProtocolReportsToRemoteDataStore
Declaration
[OnOffUiProperty("Force Reports to Remote:", true, 22)]
public bool ForceProtocolReportsToRemoteDataStore { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
true if force protocol reports to remote data store; otherwise, false .
|
GpsDesiredAccuracyMeters
The desired accuracy in meters of the collected GPS readings. There are no guarantees that this accuracy
will be achieved.
Declaration
[EntryFloatUiProperty("GPS - Desired Accuracy (Meters):", true, 27)]
public float GpsDesiredAccuracyMeters { get; set; }
Property Value
| Type |
Description |
| System.Single |
The GPS desired accuracy, in meters.
|
GpsMinDistanceDelayMeters
The minimum distance in meters to wait between deliveries of GPS readings.
Declaration
[EntryFloatUiProperty("GPS - Minimum Distance Delay (Meters):", true, 29)]
public float GpsMinDistanceDelayMeters { get; set; }
Property Value
| Type |
Description |
| System.Single |
The GPS minimum distance delay, in meters.
|
GpsMinTimeDelayMS
The minimum amount of time in milliseconds to wait between deliveries of GPS readings.
Declaration
[EntryIntegerUiProperty("GPS - Minimum Time Delay (MS):", true, 28)]
public int GpsMinTimeDelayMS { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
The GPS minimum time delay, in milliseconds.
|
Groupable
Whether the user should be allowed to group the Protocol with other Protocols to form a
bundle that participant's are randomized into.
Declaration
[OnOffUiProperty(null, true, 25)]
public bool Groupable { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
true if groupable; otherwise, false .
|
GroupedProtocols
Declaration
public List<Protocol> GroupedProtocols { get; set; }
Property Value
| Type |
Description |
| System.Collections.Generic.List<Protocol> |
|
Id
Declaration
public string Id { get; set; }
Property Value
| Type |
Description |
| System.String |
|
JsonAnonymizer
Declaration
public AnonymizedJsonContractResolver JsonAnonymizer { get; set; }
Property Value
LocalDataStore
Declaration
public LocalDataStore LocalDataStore { get; set; }
Property Value
LockPasswordHash
Declaration
public string LockPasswordHash { get; set; }
Property Value
| Type |
Description |
| System.String |
|
MostRecentReport
Declaration
public ProtocolReportDatum MostRecentReport { get; set; }
Property Value
Name
Declaration
[EntryStringUiProperty("Name:", true, 1)]
public string Name { get; set; }
Property Value
| Type |
Description |
| System.String |
The name.
|
Participation
Declaration
public double Participation { get; }
Property Value
| Type |
Description |
| System.Double |
|
ParticipationHorizon
Declaration
public DateTime ParticipationHorizon { get; }
Property Value
| Type |
Description |
| System.DateTime |
|
ParticipationHorizonDays
The number of days used to calculate the participation percentage. For example, if the participation horizon is
7 days, and the user has been running a ListeningProbe for 1 day, then the participation percentage
would be 1/7 (~14%). On the other hand, if the participation horizon is 1 day, then the same user would have a
participation percentage of 1/1 (100%).
Declaration
[EntryIntegerUiProperty("Participation Horizon (Days):", true, 23)]
public int ParticipationHorizonDays { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
The participation horizon, in days.
|
PointsOfInterest
Declaration
public List<PointOfInterest> PointsOfInterest { get; }
Property Value
Probes
Declaration
public List<Probe> Probes { get; set; }
Property Value
| Type |
Description |
| System.Collections.Generic.List<Probe> |
|
RandomTimeAnchor
Declaration
public DateTimeOffset RandomTimeAnchor { get; set; }
Property Value
| Type |
Description |
| System.DateTimeOffset |
|
RemoteDataStore
Declaration
public RemoteDataStore RemoteDataStore { get; set; }
Property Value
RewardThreshold
The participation percentage required for a user to be considered eligible for rewards.
Declaration
[EntryFloatUiProperty("Reward Threshold:", true, 26)]
public Nullable<float> RewardThreshold { get; set; }
Property Value
| Type |
Description |
| System.Nullable<System.Single> |
The reward threshold.
|
Running
Declaration
public bool Running { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
ScheduledStartCallback
Declaration
public ScheduledCallback ScheduledStartCallback { get; }
Property Value
ScheduledStopCallback
Declaration
public ScheduledCallback ScheduledStopCallback { get; }
Property Value
Shareable
Whether the user should be permitted to share the Protocol with another device.
Declaration
[OnOffUiProperty("Shareable:", true, 10)]
public bool Shareable { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
true if shareable; otherwise, false .
|
StartDate
Declaration
[DateUiProperty("Start Date:", true, 17)]
public DateTime StartDate { get; set; }
Property Value
| Type |
Description |
| System.DateTime |
The start date.
|
Whether or not to start the Protocol immediately after the user has opted into it.
Declaration
[OnOffUiProperty("Start Immediately:", true, 16)]
public bool StartImmediately { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
true to start immediately; otherwise, false .
|
StartTime
Declaration
[TimeUiProperty("Start Time:", true, 18)]
public TimeSpan StartTime { get; set; }
Property Value
| Type |
Description |
| System.TimeSpan |
The start time.
|
StorageDirectory
Declaration
public string StorageDirectory { get; set; }
Property Value
| Type |
Description |
| System.String |
|
VariableValue
Declaration
public Dictionary<string, string> VariableValue { get; set; }
Property Value
| Type |
Description |
| System.Collections.Generic.Dictionary<System.String, System.String> |
|
VariableValueUiProperty
A Protocol may delare variables whose values can be easily reused throughout the
system. For example, if many of the survey inputs share a particular substring (e.g., the study
name), consider defining a variable named study-name
that holds the study name. You can then
reference this variable when defining the survey input label via {study-name}
. The format
of this field is variable-name:variable-value
.
Declaration
[EditableListUiProperty("Variables:", true, 30)]
public List<string> VariableValueUiProperty { get; set; }
Property Value
| Type |
Description |
| System.Collections.Generic.List<System.String> |
The variable value user interface property.
|
Methods
CancelScheduledStart()
Declaration
public void CancelScheduledStart()
CancelScheduledStop()
Declaration
public void CancelScheduledStop()
CopyAsync(Boolean, Boolean, Action<Protocol>)
Declaration
public void CopyAsync(bool resetId, bool register, Action<Protocol> callback = null)
Parameters
| Type |
Name |
Description |
| System.Boolean |
resetId |
|
| System.Boolean |
register |
|
| System.Action<Protocol> |
callback |
|
Create(String)
Declaration
public static void Create(string name)
Parameters
| Type |
Name |
Description |
| System.String |
name |
|
Delete()
Declaration
DeleteAsync(Action)
Declaration
public void DeleteAsync(Action callback = null)
Parameters
| Type |
Name |
Description |
| System.Action |
callback |
|
DeserializeAsync(Byte[], Action<Protocol>)
Declaration
public static void DeserializeAsync(byte[] bytes, Action<Protocol> callback)
Parameters
| Type |
Name |
Description |
| System.Byte[] |
bytes |
|
| System.Action<Protocol> |
callback |
|
DeserializeAsync(String, Action<Protocol>)
Declaration
public static void DeserializeAsync(string json, Action<Protocol> callback)
Parameters
| Type |
Name |
Description |
| System.String |
json |
|
| System.Action<Protocol> |
callback |
|
DeserializeAsync(Uri, Action<Protocol>)
Declaration
public static void DeserializeAsync(Uri webURI, Action<Protocol> callback)
Parameters
| Type |
Name |
Description |
| System.Uri |
webURI |
|
| System.Action<Protocol> |
callback |
|
DisplayAndStartAsync(Protocol)
Declaration
public static void DisplayAndStartAsync(Protocol protocol)
Parameters
Equals(Object)
Declaration
public override bool Equals(object obj)
Parameters
| Type |
Name |
Description |
| System.Object |
obj |
|
Returns
| Type |
Description |
| System.Boolean |
|
GetHashCode()
Declaration
public override int GetHashCode()
Returns
| Type |
Description |
| System.Int32 |
|
RunUiTestingProtocol(Stream)
Declaration
public static void RunUiTestingProtocol(Stream uiTestingProtocolFile)
Parameters
| Type |
Name |
Description |
| System.IO.Stream |
uiTestingProtocolFile |
|
Save(String)
Declaration
public void Save(string path)
Parameters
| Type |
Name |
Description |
| System.String |
path |
|
ScheduleStart()
Declaration
public void ScheduleStart()
ScheduleStop()
Declaration
public void ScheduleStop()
Start()
Declaration
StartAsync(Action)
Declaration
public void StartAsync(Action callback = null)
Parameters
| Type |
Name |
Description |
| System.Action |
callback |
|
StartWithUserAgreementAsync(String, Action)
Declaration
public void StartWithUserAgreementAsync(string startupMessage, Action callback = null)
Parameters
| Type |
Name |
Description |
| System.String |
startupMessage |
|
| System.Action |
callback |
|
Stop()
Declaration
StopAsync(Action)
Declaration
public void StopAsync(Action callback = null)
Parameters
| Type |
Name |
Description |
| System.Action |
callback |
|
TestHealthAsync(Boolean, CancellationToken)
Declaration
public Task TestHealthAsync(bool userInitiated, CancellationToken cancellationToken = null)
Parameters
| Type |
Name |
Description |
| System.Boolean |
userInitiated |
|
| System.Threading.CancellationToken |
cancellationToken |
|
Returns
| Type |
Description |
| System.Threading.Tasks.Task |
|
TimeIsWithinAlertExclusionWindow(String, TimeSpan)
Declaration
public static bool TimeIsWithinAlertExclusionWindow(string protocolId, TimeSpan time)
Parameters
| Type |
Name |
Description |
| System.String |
protocolId |
|
| System.TimeSpan |
time |
|
Returns
| Type |
Description |
| System.Boolean |
|
ToString()
Declaration
public override string ToString()
Returns
| Type |
Description |
| System.String |
|
Events
ProtocolRunningChanged
Declaration
public event EventHandler<bool> ProtocolRunningChanged
Event Type
| Type |
Description |
| System.EventHandler<System.Boolean> |
|


MBMLDateFunctions Class Reference
| Inherits from | NSObject |
|---|---|
| Declared in | MBMLDateFunctions.h |
Overview
This class contains a set of MBML functions and supporting methods that provide date manipulation tools.
These functions are exposed to the Mockingbird environment via
<Function ... />
declarations in the MBDataEnvironmentModule.xml
file.
For more information on MBML functions, see the MBMLFunction
class.
Supporting methods
+ defaultDateParsingFormat
Returns the date parsing format used by default.
+ (NSString *)defaultDateParsingFormat
Return Value
The default date parsing format string.
Discussion
First, the string expression $MBMLDateFunctions:dateParsingFormat
is checked
for a value; if a value is present, it is returned.
Otherwise, the value of the constant kRFC1123DateStringFormat
is returned.
Note: This method is not exposed to the Mockingbird environment as a an MBML function.
Declared In
MBMLDateFunctions.h
+ defaultDateParsingLocale
Returns the date parsing locale used by default.
+ (NSLocale *)defaultDateParsingLocale
Return Value
The default date parsing locale.
Discussion
First, the string expression $MBMLDateFunctions:dateParsingLocale
is checked
for a value; if a value is present, it is used as the locale identifier.
Otherwise, the value of the constant kMBDateParsingLocaleVariableName
is
used to construct the locale.
If all else fails, the device’s current locale is used.
Note: This method is not exposed to the Mockingbird environment as a an MBML function.
Declared In
MBMLDateFunctions.h
+ formatDate:withStyle:usingTimeZone:
Returns a date-formatted string using the specified formatter style.
+ (NSString *)formatDate:(NSDate *)d8 withStyle:(NSDateFormatterStyle)style usingTimeZone:(NSTimeZone *)timeZone
Parameters
d8 |
The |
|---|---|
style |
The |
timeZone |
The |
Return Value
A string containing the formatted date.
Discussion
Note: This method is not exposed to the Mockingbird environment as a an MBML function.
Declared In
MBMLDateFunctions.h
+ formatTime:withStyle:
Returns a time-formatted string using the specified formatter style.
+ (NSString *)formatTime:(NSDate *)d8 withStyle:(NSDateFormatterStyle)style
Parameters
d8 |
The |
|---|---|
style |
The |
Return Value
A string containing the formatted time.
Discussion
Note: This method is not exposed to the Mockingbird environment as a an MBML function.
Declared In
MBMLDateFunctions.h
+ formatDateTime:withStyle:
Returns a date/time-formatted string using the specified formatter style.
+ (NSString *)formatDateTime:(NSDate *)d8 withStyle:(NSDateFormatterStyle)style
Parameters
d8 |
The |
|---|---|
style |
The |
Return Value
A string containing the formatted date/time.
Discussion
Note: This method is not exposed to the Mockingbird environment as a an MBML function.
Declared In
MBMLDateFunctions.h
+ parseDate:fromLocale:usingFormat:
Attempts to parse an NSDate
from a string using the specified date format.
+ (NSDate *)parseDate:(NSString *)str fromLocale:(NSLocale *)locale usingFormat:(NSString *)dateFormat
Parameters
str |
The date string to parse. |
|---|---|
locale |
The locale of the input string |
dateFormat |
A date format string as accepted by |
Return Value
An NSDate
representing the parsed date string, or nil
if there
was an error parsing the string.
Discussion
Note: This method is not exposed to the Mockingbird environment as a
an MBML function. The mbmlParseDate:
method implements the
^parseDate()
MBML function.
Declared In
MBMLDateFunctions.h
+ parseDate:
Attempts to parse an NSDate
from a string in the locale
defaultDateParsingLocale
using the date format returned by the
method defaultDateParsingFormat
.
+ (NSDate *)parseDate:(NSString *)str
Parameters
str |
The date string to parse. |
|---|
Return Value
An NSDate
representing the parsed date string, or nil
if there
was an error parsing the string.
Discussion
Note: This method is not exposed to the Mockingbird environment as a
an MBML function. The mbmlParseDate:
method implements the
^parseDate()
MBML function.
Declared In
MBMLDateFunctions.h
Getting the current time
+ currentTime
Returns an NSDate
representing the current date and time.
+ (NSDate *)currentTime
Return Value
An NSDate
instance representing the present time.
Discussion
This Mockingbird function accepts no input parameters.
Expression usage
The expression:
^currentTime()
returns an NSDate
containing the current date and time.
Declared In
MBMLDateFunctions.h
Calculating time deltas to the present
+ secondsSince:
Returns the number of seconds that have elapsed since the given time in the past.
+ (id)secondsSince:(NSDate *)date
Parameters
date |
The function’s input parameter. |
|---|
Return Value
An NSNumber
instance containing the number of seconds since
the input date; if the input date is in the future, the return
value will be negative.
Discussion
This Mockingbird function accepts a single object expression parameter
yielding an NSDate
instance.
Expression usage
The expression:
^secondsSince($referenceDate)
would return the number of seconds elapsed since $referenceDate
.
See Also
Declared In
MBMLDateFunctions.h
+ secondsUntil:
Returns the number of seconds between the present time and the given time in the future.
+ (id)secondsUntil:(NSDate *)date
Parameters
date |
The function’s input parameter. |
|---|
Return Value
An NSNumber
instance containing the number of seconds until
the input date; if the input date is in the past, the return
value will be negative.
Discussion
This Mockingbird function accepts a single parameter: an object expression
expected to yield an NSDate
instance.
Expression usage
The expression:
^secondsUntil($referenceDate)
would return the number of seconds until $referenceDate
.
See Also
Declared In
MBMLDateFunctions.h
Converting to and from UNIX timestamps
+ unixTimestampToDate:
Converts a UNIX timestamp into an NSDate
.
+ (id)unixTimestampToDate:(id)timestamp
Parameters
timestamp |
The function’s input parameter. |
|---|
Return Value
An NSDate
instance containing the date representation of given
timestamp.
Discussion
This Mockingbird function accepts a single numeric expression as an input parameter: the UNIX timestamp.
Expression usage
The expression:
^unixTimestampToDate(1355283900)
would return an NSDate
representing 10:45PM ET on December 11, 2012.
See Also
Declared In
MBMLDateFunctions.h
+ dateToUnixTimestamp:
Returns the UNIX timestamp representation of a given NSDate
.
+ (id)dateToUnixTimestamp:(NSDate *)date
Parameters
date |
The function’s input parameter. |
|---|
Return Value
An NSNumber
instance containing the UNIX timestamp
representation of the input date.
Discussion
This Mockingbird function accepts a single input parameter: an object
expression yielding an NSDate
instance.
Expression usage
The expression:
^dateToUnixTimestamp(^currentTime())
would return the UNIX timestamp representation of the present time.
See Also
Declared In
MBMLDateFunctions.h
Date/time addition
+ addSecondsToDate:
Returns an NSDate
representing the given date plus the specified number
of seconds.
+ (id)addSecondsToDate:(NSArray *)params
Parameters
params |
The function’s input parameters. |
|---|
Return Value
The adjusted date.
Discussion
This Mockingbird function accepts two expressions as input parameters:
seconds, a numeric expression specifying the number of seconds add to the input date
the input date, an object expression yielding an
NSDate
or date-formattedNSString
containing the date to which seconds will be added
Expression usage
The following expression:
^addSecondsToDate(30|^currentTime())
would result in an NSDate
30 seconds from the present time.
Declared In
MBMLDateFunctions.h
Date/time formatting
+ formatTimeUntil:
Returns a string representation of the time remaining until the given date.
+ (id)formatTimeUntil:(NSDate *)date
Parameters
date |
The function’s input parameter. |
|---|
Return Value
An NSString
instance containing the time until the input date.
Discussion
This Mockingbird function accepts a single parameter: an object expression
expected to yield an NSDate
instance.
Expression usage
The expression:
^formatTimeUntil(^addSecondsToDate(300|^currentTime()))
would return the string “5:00
”, indicating that there are 5 minutes until
the time that’s 300 seconds in the future.
Declared In
MBMLDateFunctions.h
+ formatDate:
Accepts a date and a format string, and returns a string representation of the date in the specified format.
+ (id)formatDate:(NSArray *)params
Parameters
params |
The function’s input parameters. |
|---|
Return Value
A date-formatted string.
Discussion
This Mockingbird function accepts two expressions as input parameters:
the input date, an
NSDate
or date-formattedNSString
the output format specifying the date format used to create the returned date string
Expression usage
The following expression:
^formatDate(^currentTime()|MM/dd/yy)
would result in the string “12/12/13
” if called on December 12th, 2013.
Declared In
MBMLDateFunctions.h
+ formatSortableDate:
Accepts a date and returns a date string formatted using the format
“YYYY-MM-dd HH:mm:ss
”. This format ensures allows dates to be sorted using
simple string sorting.
+ (id)formatSortableDate:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatSortableDate(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “1986-10-26 00:02:00
”.
Note: The time in the returned string will be in 24-hour format.
Declared In
MBMLDateFunctions.h
+ formatShortDate:
Accepts a date and returns a date string formatted using the
NSDateFormatterShortStyle
format.
+ (id)formatShortDate:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date-formatted string.
Discussion
This Mockingbird function accepts one of two expressions as input parameters:
the input date, an
NSDate
orNSString
that contains the date to formatan optional timezone string, specifying the timezone to use when formatting the input date parameter (if this parameter is omitted, the local timezone is used)
Expression usage
The following expression:
^formatShortDate(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “10/26/86
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatMediumDate:
Accepts a date and returns a date string formatted using the
NSDateFormatterMediumStyle
format.
+ (id)formatMediumDate:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date-formatted string.
Discussion
This Mockingbird function accepts one of two expressions as input parameters:
the input date, an
NSDate
orNSString
that contains the date to formatan optional timezone string, specifying the timezone to use when formatting the input date parameter (if this parameter is omitted, the local timezone is used)
Expression usage
The following expression:
^formatMediumDate(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “Oct 26, 1986
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatLongDate:
Accepts a date and returns a date string formatted using the
NSDateFormatterLongStyle
format.
+ (id)formatLongDate:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date-formatted string.
Discussion
This Mockingbird function accepts one of two expressions as input parameters:
the input date, an
NSDate
orNSString
that contains the date to formatan optional timezone string, specifying the timezone to use when formatting the input date parameter (if this parameter is omitted, the local timezone is used)
Expression usage
The following expression:
^formatLongDate(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “October 26, 1986
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatFullDate:
Accepts a date and returns a date string formatted using the
NSDateFormatterFullStyle
format.
+ (id)formatFullDate:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date-formatted string.
Discussion
This Mockingbird function accepts one of two expressions as input parameters:
the input date, an
NSDate
orNSString
that contains the date to formatan optional timezone string, specifying the timezone to use when formatting the input date parameter (if this parameter is omitted, the local timezone is used)
Expression usage
The following expression:
^formatFullDate(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “Sunday, October 26, 1986
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatShortTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterShortStyle
format.
+ (id)formatShortTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatShortTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “12:02 AM
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatMediumTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterMediumStyle
format.
+ (id)formatMediumTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatMediumTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “12:02:00 AM
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatLongTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterLongStyle
format.
+ (id)formatLongTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatLongTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “12:02:00 AM EDT
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatFullTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterFullStyle
format.
+ (id)formatFullTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatFullTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “12:02:00 AM Eastern Daylight Time
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatShortDateTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterShortStyle
format.
+ (id)formatShortDateTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date/time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatShortDateTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “10/26/86, 12:02 AM
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatMediumDateTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterMediumStyle
format.
+ (id)formatMediumDateTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date/time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatMediumDateTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “Oct 26, 1986, 12:02:00 AM
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatLongDateTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterLongStyle
format.
+ (id)formatLongDateTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date/time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatLongDateTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “October 26, 1986 at 12:02:00 AM EDT
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
+ formatFullDateTime:
Accepts a date and returns a date string formatted using the
NSDateFormatterLongStyle
format.
+ (id)formatFullDateTime:(id)input
Parameters
input |
The function’s input parameter. |
|---|
Return Value
The date/time-formatted string.
Discussion
This Mockingbird function accepts a single input parameter, an object
expression yielding either an NSDate
or a date-formatted NSString
containing the date to format.
Expression usage
The following expression:
^formatFullDateTime(^parseDate(Sun, 26 Oct 1986 00:02:00 EDT))
would result in the string “Sunday, October 26, 1986 at 12:02:00 AM Eastern
Daylight Time
”.
Note: The string returned depends on the device’s locale settings and may not match the example above.
Declared In
MBMLDateFunctions.h
Converting from one string format to another
+ reformatDate:
Accepts a date-formatted string and converts it into a date string of another format.
+ (id)reformatDate:(NSArray *)params
Parameters
params |
The function’s input parameters. |
|---|
Return Value
A date-formatted string.
Discussion
This Mockingbird function accepts two or three pipe-separated expressions as input parameters:
the input date, a date-formatted string to be parsed
an optional input format, specifying the date format used by the input date parameter (if this parameter is omitted, the default format used is the one specified by the
defaultDateParsingFormat
method)an output format, specifying the date format to be used for creating the returned date string
Expression usage
The following expression:
^reformatDate(26 Oct 1986|dd MMM yyyy|MM/dd/yy)
would result in the string “10/26/86
”.
See Also
Declared In
MBMLDateFunctions.h
+ reformatDateWithLocale:
Accepts a date-formatted input string—along with a locale specification for that input string—and converts the input into a date string of another format.
+ (id)reformatDateWithLocale:(NSArray *)params
Parameters
params |
The function’s input parameters. |
|---|
Return Value
A date-formatted string.
Discussion
This Mockingbird function accepts three or four pipe-separated expressions as input parameters:
the input date, a date-formatted string to be parsed
the input date locale, a string specifying the locale identifier of the input date’s locale
an optional input format, specifying the date format used by the input date parameter (if this parameter is omitted, the default format used is the one specified by the
defaultDateParsingFormat
method)an output format, specifying the date format to be used for creating the returned date string
Expression usage
The following expression:
^reformatDateWithLocale(26 Oct 1986|en_US|dd MMM yyyy|MM/dd/yy)
would result in the string “10/26/86
”.
See Also
Declared In
MBMLDateFunctions.h
Parsing date strings
+ mbmlParseDate:
Attempts to construct an NSDate
instance by parsing a string.
+ (id)mbmlParseDate:(NSArray *)params
Parameters
params |
The function’s input parameters. |
|---|
Return Value
An NSDate
representing the parsed date.
Discussion
This Mockingbird function accepts two or three pipe-separated expressions as input parameters:
the date, a string to be parsed
an optional format string, a string in the format that would be used by a
NSDateFormatter
. If this parameter is omitted, the value returned by the methoddefaultDateParsingFormat
is used as the format string.
Expression usage
Note: This function is exposed to the Mockingbird environment with a name that differs from that of its implementing method.
Assuming the default date parsing format hasn’t been overridden by the
$MBMLDateFunctions:dateParsingFormat
variable, this expression:
^parseDate(Thu, 26 Jan 2012 15:58:19 UTC)
would return an NSDate
instance representing a date equivalent to
Thursday, January 26th, 2012 at 10:58:19AM in New York City (eastern standard
time, or the America/New_York
timezone).
Declared In
MBMLDateFunctions.h
Time zone information
+ timeZoneOffset
Returns the offset, in minutes, between the current time zone and UTC.
+ (NSNumber *)timeZoneOffset
Return Value
The time zone offset.
Discussion
This Mockingbird function accepts no input.
Expression usage
The expression:
^timeZoneOffset()
would return an NSNumber
instance containing the time zone offset, in
minutes.
Declared In
MBMLDateFunctions.h


HBoV children OpenUrl Human detected samples study (%) bocavirus human Bocavirus South rural (.%) CrossRef AGE positive communities prevalence (/; acute gastroenteritis stool water genotypes patients studies viruses Africa infections (Table Africa. age enteric role used Clinical cases diarrhea reported respiratory using virology. virus DNA Detection Rotavirus infection months, study, viral (%), .%) Adenovirus Norovirus PCR Real-Time available co-infection collected detection tract years Abstract Astrovirus Virology. median min observed samples. total (.%), Acute FREE PCR. Science Text Web aged amplification associated cause clinical confirmed determined district emerging followed latrine medical sanitation sec, sewage symptoms young (AGE) (HBoV) China. Co-infection HBoV. July June Vhembe collection cycles dehydration diarrhea, diarrhea. diversity environmental facility following genetic health hospitalized including indicated infectious investigated min, months. pathogen patients, patients. performed pit poor potential samples, seen suggested transmission worldwide


{% extends "base.html" %} {% load thumbnail staticfiles %} {% block content %}
Did you know the hops museum has a printed newspaper? You can read archived copies here


| DOSE: |
repeated |
|
DXM |
(capsule) |
Ok. I'm writing this to hopefully clear some things up. I am currently on intensive probation. I am regularly tested three to four times a week. I used robotussin long acting cold gels at least twice a week during my first month of being in the program. I used it on Friday nights and then again on Saturday nights, so I don't believe there could've been an accumulative affect. I came up positive three times for opiates and never for PCP. This was only when it was done at dosages around 600 mg and sometimes over and when immediately tested for right after the effects wore off, or in one case when they were fading. I have been tested when only using 300 mg and came up negative, this was about 5 hours after the initial consumption. I was once hospitalized (not for OD'ing, but because juvenile detentions don't have drunk tanks) and barely came up positive for opiates and not for PCP, the dosage at that point was around 1300 mgs.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Street Fighter III, 2nd Impact vs 3rd Strike part 2
I wanted to build on my last post a little bit more and talk about some of the in-battle aesthetic differences between Street Fighter 3: 2nd impact and it’s younger brother Street Fighter 3: 3rd Strike. You can find my comparison of their character select screens here.
The differences between gameplay visuals follow the same theme from the character select screens. 2nd Impact takes a lot of influence from mid-90s Capcom fighters, while 3rd Strike is a little more stylistic. However, while preparing this post, I found I preferred some ideas from 2nd impact over 3rd strike. With the character select screens, there’s no contest, 3rd Strike’s bleeds style out of the screen and into the player’s eyeballs. Once in battle though, I think 3rd Strike’s push towards minimalism actually hurts the visual experience.
| 2nd Impact | 3rd Strike |
|---|---|


lib.utils package¶
Submodules¶
lib.utils.ReplayBuffer module¶
-
class
lib.utils.ReplayBuffer.
SimpleReplayBuffer
(maxDataTuples)[source]¶ Bases:
object
The replay buffer
Save data for the replay buffer
Parameters: maxDataTuples ({int}) – The size of the deque
that is used for storing the data tuples. This assumes that the data tuples are present in the form:(state, action, reward, next_state, done, cumRewards)
. This means that we assume that the data will have some form of cumulative reward pints associated with each tuple.-
append
(result)[source]¶ append a single tuple to the current replay buffer
This function allows someone to add a single tuple to the replay buffer.
Parameters: result ({tuple}) – The tuple that should be added into the memory buffer.
-
appendAllAgentResults
(allResults)[source]¶ append all data from all agents into the same buffer
This is useful when there is only one agent or when all the agents represent the same exact larning characteristics. In this case, multiple agents can be simulated by the same function.
Parameters: {list} -- List of list tuples to be entered into the buffer. (allResults) –
-
appendMany
(results)[source]¶ append multiple tuples to the memory buffer
Most often we will not be insterested in inserting a single data point into the replay buffer, but rather a whole list of these. This function just iterates over this list and inserts each tuple one by one.
Parameters: results ({list}) – List of tuples that are to be inserted into the replay buffer.
-
len
¶ returns the length of the emory buffer
Remember that this is a property and there is no need to call it as a function.
Returns: int – the length of the currrent memory buffer
-
load
(folder, name)[source]¶ load the data from a particular file
Data saved with the previous command can be reloaded into this new buffer.
Parameters: - folder ({str}) – Path to the folder where the data is saved
- name ({str}) – Name of the agent associated whose data is to be extracted.
-
sample
(nSamples)[source]¶ sample from the replay beffer
This function samples form the memory buffer, and returns the number of samples required. This does sampling in an intelligent manner. Since we are saving the cumulative rewards, we selectively select values that provide us greater
Parameters: nSamples ({int}) – The number of memory elements to return Returns: A list of samples that can be used for sampling the data. Return type: list
-
save
(folder, name)[source]¶ save the replay buffer
This function is going to save the data within the replay buffer into a pickle file. This will allow us to reload the buffer to a state where it has already been saved.
Parameters: - folder ({str}) – path to the folder where the data is to be saved
- name ({str}) – Name associated with the buffer. Since this program has two agents acting in tandum, we need to provide a name that will identify which agent’s buffer we are saving.
-
shape
¶ the shape of the buffer
This is the shape of the memory buffers. This returns a tuple that contains the length of the buffer for the first element of the tuple, and the length of each element as the second element of the tuple. If there is nothing within the memory, this is going to return a None
Returns: tuple – the shape of the data within the memory buffer
-


using System; namespace AutobiographicMemory.DTOs { /// <summary> /// Data Type Object Class for the representation of an Event referent to an action execution /// </summary> [Serializable] public class ActionEventDTO : EventDTO { public ActionState ActionState { get; set; } /// <summary> /// The action referent to this event. /// </summary> public string Action { get; set; } /// <summary> /// The target of action to which this event refers. /// </summary> public string Target { get; set; } } public enum ActionState : byte { Start, Finished } }


JSON Files
Spark SQL can automatically infer the schema of a JSON dataset and load it as a Dataset[Row]
.
This conversion can be done using SparkSession.read.json()
on either a Dataset[String]
,
or a JSON file.
Note that the file that is offered as a json file is not a typical JSON file. Each line must contain a separate, self-contained valid JSON object. For more information, please see JSON Lines text format, also called newline-delimited JSON.
For a regular multi-line JSON file, set the multiLine
option to true
.
// Primitive types (Int, String, etc) and Product types (case classes) encoders are
// supported by importing this when creating a Dataset.
import spark.implicits._
// A JSON dataset is pointed to by path.
// The path can be either a single text file or a directory storing text files
val path = "examples/src/main/resources/people.json"
val peopleDF = spark.read.json(path)
// The inferred schema can be visualized using the printSchema() method
peopleDF.printSchema()
// root
// |-- age: long (nullable = true)
// |-- name: string (nullable = true)
// Creates a temporary view using the DataFrame
peopleDF.createOrReplaceTempView("people")
// SQL statements can be run by using the sql methods provided by spark
val teenagerNamesDF = spark.sql("SELECT name FROM people WHERE age BETWEEN 13 AND 19")
teenagerNamesDF.show()
// +------+
// | name|
// +------+
// |Justin|
// +------+
// Alternatively, a DataFrame can be created for a JSON dataset represented by
// a Dataset[String] storing one JSON object per string
val otherPeopleDataset = spark.createDataset(
"""{"name":"Yin","address":{"city":"Columbus","state":"Ohio"}}""" :: Nil)
val otherPeople = spark.read.json(otherPeopleDataset)
otherPeople.show()
// +---------------+----+
// | address|name|
// +---------------+----+
// |[Columbus,Ohio]| Yin|
// +---------------+----+
Spark SQL can automatically infer the schema of a JSON dataset and load it as a Dataset<Row>
.
This conversion can be done using SparkSession.read().json()
on either a Dataset<String>
,
or a JSON file.
Note that the file that is offered as a json file is not a typical JSON file. Each line must contain a separate, self-contained valid JSON object. For more information, please see JSON Lines text format, also called newline-delimited JSON.
For a regular multi-line JSON file, set the multiLine
option to true
.
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
// A JSON dataset is pointed to by path.
// The path can be either a single text file or a directory storing text files
Dataset<Row> people = spark.read().json("examples/src/main/resources/people.json");
// The inferred schema can be visualized using the printSchema() method
people.printSchema();
// root
// |-- age: long (nullable = true)
// |-- name: string (nullable = true)
// Creates a temporary view using the DataFrame
people.createOrReplaceTempView("people");
// SQL statements can be run by using the sql methods provided by spark
Dataset<Row> namesDF = spark.sql("SELECT name FROM people WHERE age BETWEEN 13 AND 19");
namesDF.show();
// +------+
// | name|
// +------+
// |Justin|
// +------+
// Alternatively, a DataFrame can be created for a JSON dataset represented by
// a Dataset<String> storing one JSON object per string.
List<String> jsonData = Arrays.asList(
"{\"name\":\"Yin\",\"address\":{\"city\":\"Columbus\",\"state\":\"Ohio\"}}");
Dataset<String> anotherPeopleDataset = spark.createDataset(jsonData, Encoders.STRING());
Dataset<Row> anotherPeople = spark.read().json(anotherPeopleDataset);
anotherPeople.show();
// +---------------+----+
// | address|name|
// +---------------+----+
// |[Columbus,Ohio]| Yin|
// +---------------+----+
Spark SQL can automatically infer the schema of a JSON dataset and load it as a DataFrame.
This conversion can be done using SparkSession.read.json
on a JSON file.
Note that the file that is offered as a json file is not a typical JSON file. Each line must contain a separate, self-contained valid JSON object. For more information, please see JSON Lines text format, also called newline-delimited JSON.
For a regular multi-line JSON file, set the multiLine
parameter to True
.
# spark is from the previous example.
sc = spark.sparkContext
# A JSON dataset is pointed to by path.
# The path can be either a single text file or a directory storing text files
path = "examples/src/main/resources/people.json"
peopleDF = spark.read.json(path)
# The inferred schema can be visualized using the printSchema() method
peopleDF.printSchema()
# root
# |-- age: long (nullable = true)
# |-- name: string (nullable = true)
# Creates a temporary view using the DataFrame
peopleDF.createOrReplaceTempView("people")
# SQL statements can be run by using the sql methods provided by spark
teenagerNamesDF = spark.sql("SELECT name FROM people WHERE age BETWEEN 13 AND 19")
teenagerNamesDF.show()
# +------+
# | name|
# +------+
# |Justin|
# +------+
# Alternatively, a DataFrame can be created for a JSON dataset represented by
# an RDD[String] storing one JSON object per string
jsonStrings = ['{"name":"Yin","address":{"city":"Columbus","state":"Ohio"}}']
otherPeopleRDD = sc.parallelize(jsonStrings)
otherPeople = spark.read.json(otherPeopleRDD)
otherPeople.show()
# +---------------+----+
# | address|name|
# +---------------+----+
# |[Columbus,Ohio]| Yin|
# +---------------+----+
Spark SQL can automatically infer the schema of a JSON dataset and load it as a DataFrame. using
the read.json()
function, which loads data from a directory of JSON files where each line of the
files is a JSON object.
Note that the file that is offered as a json file is not a typical JSON file. Each line must contain a separate, self-contained valid JSON object. For more information, please see JSON Lines text format, also called newline-delimited JSON.
For a regular multi-line JSON file, set a named parameter multiLine
to TRUE
.
# A JSON dataset is pointed to by path.
# The path can be either a single text file or a directory storing text files.
path <- "examples/src/main/resources/people.json"
# Create a DataFrame from the file(s) pointed to by path
people <- read.json(path)
# The inferred schema can be visualized using the printSchema() method.
printSchema(people)
## root
## |-- age: long (nullable = true)
## |-- name: string (nullable = true)
# Register this DataFrame as a table.
createOrReplaceTempView(people, "people")
# SQL statements can be run by using the sql methods.
teenagers <- sql("SELECT name FROM people WHERE age >= 13 AND age <= 19")
head(teenagers)
## name
## 1 Justin
Data Source Option
Data source options of JSON can be set via:
- the
.option
/.options
methods ofDataFrameReader
DataFrameWriter
DataStreamReader
DataStreamWriter
- the built-in functions below
from_json
to_json
schema_of_json
OPTIONS
clause at CREATE TABLE USING DATA_SOURCE
| Property Name | Default | Meaning | Scope |
|---|---|---|---|
timeZone |
(value of spark.sql.session.timeZone configuration) |
Sets the string that indicates a time zone ID to be used to format timestamps in the JSON datasources or partition values. The following formats of timeZone are supported:
|
read/write |
primitivesAsString |
false |
Infers all primitive values as a string type. | read |
prefersDecimal |
false |
Infers all floating-point values as a decimal type. If the values do not fit in decimal, then it infers them as doubles. | read |
allowComments |
false |
Ignores Java/C++ style comment in JSON records. | read |
allowUnquotedFieldNames |
false |
Allows unquoted JSON field names. | read |
allowSingleQuotes |
true |
Allows single quotes in addition to double quotes. | read |
allowNumericLeadingZero |
false |
Allows leading zeros in numbers (e.g. 00012). | read |
allowBackslashEscapingAnyCharacter |
false |
Allows accepting quoting of all character using backslash quoting mechanism. | read |
mode |
PERMISSIVE |
Allows a mode for dealing with corrupt records during parsing.
|
read |
columnNameOfCorruptRecord |
(value of spark.sql.columnNameOfCorruptRecord configuration) |
Allows renaming the new field having malformed string created by PERMISSIVE mode. This overrides spark.sql.columnNameOfCorruptRecord. |
read |
dateFormat |
yyyy-MM-dd |
Sets the string that indicates a date format. Custom date formats follow the formats at datetime pattern. This applies to date type. | read/write |
timestampFormat |
yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
Sets the string that indicates a timestamp format. Custom date formats follow the formats at datetime pattern. This applies to timestamp type. | read/write |
multiLine |
false |
Parse one record, which may span multiple lines, per file. | read |
allowUnquotedControlChars |
false |
Allows JSON Strings to contain unquoted control characters (ASCII characters with value less than 32, including tab and line feed characters) or not. | read |
encoding |
Detected automatically when multiLine is set to true (for reading), UTF-8 (for writing) |
For reading, allows to forcibly set one of standard basic or extended encoding for the JSON files. For example UTF-16BE, UTF-32LE. For writing, Specifies encoding (charset) of saved json files. | read/write |
lineSep |
\r , \r\n , \n (for reading), \n (for writing) |
Defines the line separator that should be used for parsing. | read/write |
samplingRatio |
1.0 |
Defines fraction of input JSON objects used for schema inferring. | read |
dropFieldIfAllNull |
false |
Whether to ignore column of all null values or empty array/struct during schema inference. | read |
locale |
en-US |
Sets a locale as language tag in IETF BCP 47 format. For instance, locale is used while parsing dates and timestamps. |
read |
allowNonNumericNumbers |
true |
Allows JSON parser to recognize set of “Not-a-Number” (NaN) tokens as legal floating number values.
|
read |
compression |
(none) | Compression codec to use when saving to file. This can be one of the known case-insensitive shorten names (none, bzip2, gzip, lz4, snappy and deflate). | write |
ignoreNullFields |
(value of spark.sql.jsonGenerator.ignoreNullFields configuration) |
Whether to ignore null fields when generating JSON objects. | write |
Other generic options can be found in Generic File Source Options.


Space Shooter is an 2D infinite arcade/action game for mobile users. This game is designed and developed using Unity game engine. The objective is the kill as many enemies and obstacles on the way. Power-ups and points are also available as the game proceeds further which can be collected.


List view
A list style layout is for the seated because users' actions tend to be very singular in purpose. They've come to your site to do one thing: browse or read. Present them with content in a standard way and let them just get lost in it.
WordPress is a great product. It's easy-to-use, quite powerful, and flexible. Creating a website, and maintaining a website, is a science and art that has quickly evolved.
In order to fully appreciate this it is important to be well read on the subject. One major thing to keep in mind is your investment of time.
It is important to make a plan about how you want to use WordPress on your site.
Have you made a list of your site categories to organize your content by groups?
With your installation complete, it's time to set up WordPress so it will work the way you want it to work.
After you've published a few posts, you can experiment with the full edit or quick edit features in the Administration > Posts > Posts panel.
Now that you're a full fledged WordPress user, consider contributing to the WordPress Codex, Support Forum, Development, and other volunteer efforts that keep WordPress going.
Grid view
On the other hand, grid view is for the standing. It's for the restless and curious. Your attention goes from one topic or image to the next and you never want to linger in one spot for too long.
ADD traversing
Create a new jQuery object with elements added to the set of matched elements.
AFTER manipulation
Insert content, specified by the parameter, after each element in the set of matched elements.
AJAXCOMPLETE ajax
Register a handler to be called when Ajax requests complete. This is an AjaxEvent.
APPEND manipulation
Insert content, specified by the parameter, to the end of each element in the set of matched elements.
ATTR attributes
Get the value of an attribute for the first element in the set of matched elements or set one or more attributes for every matched element.
BEFORE manipulation
Insert content, specified by the parameter, before each element in the set of matched elements.


Assign subjects to role
Subjects available
Subjects selected
Add all
Add selected
Search
Remove
Remove all
Search
Name
Description
Name
Description


name: {{ service }} description: {{ service.description }} type: {{ service.type }} address: {{ service.address }} hours: {{ service.hours_open }} - {{ service.hours_close }}


This is where you can find out more information.
The concept of housesitting: Homeowners can go away, usually over long periods and leave their home and pets in the trust of a housesitter.
In exchange for their home being looked after, housesitters are able to live rent free.
Both parties benefit in a number of ways not least financially. Just consider what the housesitter can save in rent (probably over A$200 per week) whilst the homeowner is also saving money as they dont have to pay expenses for pet housing (kennels/catteries).
In some cases a homeowner will ask for a bond to be paid before you stay. This is similar to a rental agreement where a letting agent / owner asks for a bond.
It provides the homeowner with a better feeling of security.
This is entirely up to you and you should discuss it with the home owner.
How much should the bond be?
This will depend on a number of factors and again will need to be discussed individually for each sit. We would recomend that an amount equal to four weeks rent be paid, unless the sit is for less time, in which case it should be equal to the number of weeks present.
A weeks rent can usually be determined by looking at like for like properties being rented in the area. For residents in Western Australia there is a useful website, REIWA that will allow you to obtain this type of information.
An impartial third party such as a solicitor or letting agency.
Unpaid bills, damages and breakages proven to be your fault.
This is very unlikely. Most homeowners are grateful for the service you provide. In the event of a dispute the bond will be held by the third party until an agreement is reached. Independent legal advice may be required.
For rental properties the letting agent will normally write a detailed report on the property and provide photographs.
We would say that a homeowner should be responsible for compiling such a report. They should include photos and condition details that is then viewed and signed by you.
This is a lot of work and we leave it up to the homeowner as to whether they wish to do so.
We believe that a homeowner may not find this necessary as they will only pick housesitters that they feel they can trust in the first place.
It is usually expected that the housesitter should pay for bills that would not otherwise cost the homeowner should the property have been left vacant. This will usually include items such as telephone usage (but not line rental), gas and electricity consumption etc.
If a contract is created then it will clearly outline what you are and are not responsible for.
Firstly the homeowner should attempt to pay all bills before leaving, however utility companies may not handle this correctly and a bill may still be sent whilst you are there.
It is possible that a bill for previous usage is sent whilst you are in the house, for example last months phone bill. If this is the case then it is best to pay the bill and keep a record of it. When the homeowner returns you can resolve all the bills deducting what you have paid on the homeowners behalf.
Yes.
When you arrive and start your sit you should record the date and readings on any meters such as for gas and electricity.
This information will be essential to calculate the amounts owing
It is normally possible to determine the amount outstanding on the phone bill by phoning the telephone provider or checking online. This information should be recorded before the homeowner leaves.
Once the homeowner returns you can determine the new cost of the telephone bill and deduct the original amount, leaving you to pay the difference.


{%- extends "layout.html" -%} {%- block title -%} KingTable people demo {%- endblock -%} {%- block body -%} {% include "partials/themes.html" %}


{% include "flowpatrolcore/includes/intro.html" with intro=self.intro only %}
{% include "flowpatrolcore/includes/body.html" with body=self.body only %}
{% include "flowpatrolcore/includes/contact_form.html" %}
{% include "flowpatrolcore/includes/related_links.html" with related_links=self.related_links.all only %}
{% endblock %}


Preparation time
less than 30 mins
Cooking time
10 to 30 mins
Serves
Serves 4
Delicious crispy squid served alongside a zingy ponzu dressing makes the perfect starter for a dinner party.
For the creamy ponzu dressing, blend all of the dressing ingredients, except the vegetable oil, to a smooth purée in a food processor.
With the motor still running, gradually pour in the vegetable oil in a thin stream, until the mixture has thickened and resembles mayonnaise. Season, to taste, with more yuzu juice, as required. Chill until needed.
For the squid, heat the oil in a deep fat fryer to 190C/374F. Alternatively, heat the oil in a deep heavy-based frying pan until a breadcrumb sizzles and turns brown when dropped into it. (CAUTION: hot oil can be dangerous. Do not leave unattended.)
Sprinkle the flour onto a plate and season, to taste, with salt and freshly ground black pepper.
Dredge the squid rings in the seasoned flour until completely coated, shaking off any excess.
Beat the eggs in a bowl, then sprinkle the Japanese panko breadcrumbs onto a separate plate.
Dip each floured squid ring first in the beaten egg, then dredge it in the panko breadcrumbs until completely coated.
Carefully lower the coated squid rings, in batches, into the hot oil. Fry for 2-3 minutes, or until crisp and golden-brown. Remove from the oil using a slotted spoon and set aside to drain on kitchen paper. Keep warm. Repeat the process with the remaining coated squid rings.
To serve, divide the crispy breadcrumbed squid equally among four serving plates. Drizzle over the creamy ponzu dressing. Serve immediately.


Hi Folks,
So after attending and watching multiple conferences and talks I decided to create my own blog. Expect ramblings of a very passionate developer which go into detail about everyday pains we all feel in IT.
There were multiple contenders to what I can ramble on for my first post, there is the whole “Is TDD Dead” or shall I throw my hat at “Continuous Delivery vs Continuous Deployment” or maybe even give my thoughts on some Agile processes.
After much deliberation I decided it will be fitting to write about the issues I face everyday. Anyone who works in a team that has to collaborate with other teams, especially in a corporate environment will be able to relate.
Before I start my rant I feel like I should give all of you some background, up until a few months ago the process in our team was to write a feature then throw it over the wall to the QAs to test/automate. This means that code builds and deploys from TeamCity to a environment, afterwards the QAs come into play and run regression tests on it.
Everyday I argue over why we need to move the tests from Jenkins to TeamCity and why we need to fail fast! Passing a feature over to QAs only to wait days to have them push it back because it broke something that isn’t related is not ideal.
As a developer I want to quickly know if a change I make works and more importantly if it breaks something else. Failing fast is one of the most important aspects of continuous deployment
After hours and hours of cleaning the tests and putting them through what my colleague called a “super lean diet program” I got the tests down from taking over 2 hours to about 25 mins. I will be doing another post about how I achieve that in the coming weeks
But for me it comes down to this, I want to fail fast and the term fast is integral to the whole point. If a test takes 6 hours to run then is it doing anything it doesn’t need to do? like closing down and opening browsers for no reason, logging out and logging in with the same user and the same permissions
We need to understand what our tests do to understand our domain and vice versa. Any developer worth his salt will know that “Sleeps” are evil! a UI test should act as a user, what kind of user expects something to happen so goes to sleep for a minute or so then refreshes the page?
I am sure there are valid reasons for using sleeps but in my opinion these are few and far between.
If any of you have any QAs in your team who come from a manual background, the idea of automating tests might make them feel threatened and its easy to stick with what you know. However it is your mission - should you choose to accept it - to explain to them that automation is not meant to replace a QA, its to make their job much easier.
QAs can focus on what they do best which is exploratory testing. Humans are great at that! We think of strange and weird ways of using the application that would have never occurred to the original creators.
Basically by removing the repetitive element of manual tests you will make your team both more lean and efficient while also giving you far more confidence in what your shipping.
Remove the manual error prone testing and lets join our fellow evangelists into the wonderful word of autonomous testing!(TM)
Yeah that’s right I just created my very on buzzword there ;)


{% extends "./error.html" %} {% block pageTitle %}Error 404{% endblock %} {% block content %}
Something's wrong!
It looks as though we've broken something on our system.
Don't panic, we are fixing it! Please come back in a while.


NeuroKafe is born from the interaction between 6 groups from BioCruces, BCAM and Achucarro : Neurodegenerative Diseases, Computational Neuroimaging, Psychology, Mathematical, Computational And Experimental Neurosciences, Neurogenesis and Memory Circuits
We meet every 2 thursdays from 4.30 pm to 6pm.
These meetings are open after previous approval to all people who have interest in Neurosciences.
If you wish to attend, feel free to email us.


APEX GRAMMAR
NAME
GRAPH
RULE
NAME
NAME::=
METHOD_IDENTIFIER
( LOOKAHEAD ( "."
METHOD_IDENTIFIER
) "."
METHOD_IDENTIFIER
)*
CALLED BY
ANNOTATION
PRIMARY_PREFIX
ORDER_BY_FIELD
SOQL_FIELD_EXPRESSION
SOQL_SELECT_FUNCTION
SOQL_SELECT_IDENTIFIER
SOSL_DATA_CATEGORY_SPEC
SOSL_OBJECT_TYPE_FIELD_NAME
SOSL_RETURNING_OBJECT_TYPE
TUPLE_PRIMARY_PREFIX
Fundación Jala


19th Century Books
Our Collection
Our catalogue provides a list of 19th Century books we currently hold in stock. However, if there is an item that you cannot find here, please feel free to contact us, as we are often able to secure books on demand.
-
Thomas Hardy
The Trumpet Major
London: WH Smith, 1880. First Edition
Three volumes, housed in red velvet slip case. Velum bound. One of only 100 ever published by the publisher. Some scuffing on spine and on front cover. Also, inner liquid stains on several pages. But generally good condition for its age. This copy is signed, which is very unusual for any Hardy text, and increases the value of the text beyond non-signed copies. Expected annual increase in value of 7.1%.
Price:£7000.00
Investment Rating: *****
-
Charles Dickens
The Complete Works
Signed copy. London: Briggs and Blower, 1874-76., 1874. The Royal Literature Edition
Ten complete volumes. Vintage binding of luxuriant green with gilt titles, and gilt embossing of the spines; superbly marbled end pages and edges. Includes original illustrations Greg, Smyth, Arnold, etc. Dickens signature on first inner page. A well-preserved set, which represents a unique moment in history. Expected annual increase in value of 6.9%.
Price:£2897.00
Investment Rating: ****
-
Charles Dickens
David Copperfield
London: Regents and Blower, 1891. The Regents Literature Edition
One of only 300 ever published by the publisher; thus, very rare indeed. A true collector’s item. Tan calf-skin binding with gilt titles. Some scuffing on spine and on front cover. But generally good condition for its age. Some minor typographical issues, such as missing commas in chapters eleven and 12 titles. The copy is not signed. Expected annual increase in value of 8.1%.
Price:£4897.00
Investment Rating: ****
-
Charlotte Bronte
Jane Eyre
Maudling and Co, London, 1892. Hard Cover. Fourth Impression
Fine condition with immaculate wood engravings by Bob Wallis on front cover, and illustrations by Thomas Dury throughout. Extended introduction by Rebecca Sterns. Slipcase in blue velvet is solid; only very mild scuffing on sides and bottom. This is an unsigned copy.
Price:£3900.00
Investment Rating: ****
-
George Eliot
Mill on the Floss
William Bigwort, Edinburgh, 1860. First Edition
Three octavo volumes; publisher's tan-brown fabric, beautifully embossed in blind and gold lettered on spines;. Cream end pages, with binder's ticket of Eddis & Remartas to the back of volume one. First volume has been expertly restored at corners, otherwise a remarkable, original and well-preserved collection. Early ownership signature ("Reginald Peters") at beginning of each volume.
Price:£2060.00
Investment Rating: **
-
Jane Austen
Northanger Abbey
The Literary Society, London, 1989. Hard Cover. Sixth Impression. Hard Cover
Near Fine condition with some minor scuffing to spine. Cover wood engravings by Bob Wallis. Extended introduction by Robert Monks. Slipcase in silver is solid but display mild scuffing on sides and bottom. Interior has some pencil underlining to text in chapter 2, 5, 9 and 11. This is an unsigned copy.
Price:£1700.00
Investment Rating: ***


This page demonstrates how you can give offline capabilities to pages with the Service Worker API.
Just navigate to the links below after disconnecting.
The first two pages will be available even when offline, the third one will provide fallback content.
Page 1 - Cached
Page 2 - Cached
Page 3 - Fallback when offline
Registration:
Controller:
State:
Transitions:


THAT THING YOU DO! A film review by Michael John Legeros Copyright 1996 Michael John Legeros
(Fox) Directed by Tom Hanks Written by Tom Hanks Cast Tom Everett Scott, Liv Tyler, Jonathon Schaech, Steve Zahn, Ethan Embry, Tom Hanks, Charlize Theron MPAA Rating "PG" Running Time 110 minutes Reviewed at General Cinemas at Pleasant Valley, Raleigh, NC (28SEP96)
==
The writing and directing debut of Tom Hanks is very much like his screen persona: pleasant, witty, and entirely inoffensive. THAT THING YOU DO! is about a fictional '60's pop band (from Erie, PA) who find fame and fortune with their first recorded song. (That song they do, which you'll soon love to hate, is played at least ten times during the movie. Or is it eleven?) Most of the story (about 90 minutes worth) is devoted to the *rise* of the band and, once that's over, what happens afterward is all but ignored. No problem! The obvious intent, here, is a feel-good, everybody's happy period piece with lots of freshly scrubbed faces and plenty of upbeat, uptempo, up up up music. Few frowns are allowed, thank you very much, which I guess means a movie better suited to Beatles people than Elvis people. (Somewhere you have to make a choice.) And, if you winced at the modern-sounding soundtrack of GRACE OF MY HEART, be prepared for more canned music. Damn slick, like every- thing else. Frankly, I didn't like this movie. Despite the honest laughs, an appealing cast, and a couple of very personal cameos, it was just too nice for my tastes.
Grade: B+
--
Mike Legeros - Raleigh, NC
<EMAIL_ADDRESS>(h) -<EMAIL_ADDRESS>(w)
Visit me in MOVIE HELL
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


Full Name:
Mobile Number:
Your
Email Address:
Payment Provider:
Select Provider
Paypal
Venmo
Square Cash
LINK:
Amount $:
Submit


[]. coronavirus virus SARS-CoV- respiratory protein coronaviruses {border-style human px;} #ffffff;} animal disease acute severe host viral novel syndrome Virology cause China [,]. humans isolated receptor reported animals cases pneumonia SARS-CoV px; structural {font-family January Medical SARS Wuhan bovine cell coronaviruses, font-size genome glycoprotein new related replication viruses wild COVID- HCoV Health MERS-CoV SARS-CoV, assembly binding caused culture double; identified intermediate known outbreak proteins spike variety December However, Infectious Microbiology National RNA SARS-CoV-, [,,]. analysis bat bats border-color border-width case contains functions genetic including infect patient solid; spread strains tissue type {font-style {font-weight (Figure ACE CoV Coronavirus Figure Hasoksuz Ministry Research Sciences Spike Turkey bold cats cells cellular cold confirmed courier; detected diseases domestic em; envelope genomic history infected infectious losses markets organ origins pt;} response results role significant similar site species subunit transmission unknown


Coding is an activity spent hours on.
Though this is less of leisure but more of a skill being learnt, it is something she fully enjoys and finds herself doing frequently.
A woman of color and strong cultural roots trecking the world with hopes of making a better world through code.
Kenya is her home and love is a language she speaks.
She is slowly pursuing her dream towards a better.She has a number of projects she has done. Here are some just to list a few.
Joan is a student of the world. She however is a computer sceintist by profession having studied the same in university. Taking a class at Moringa school was a decision arrived at from the dire need to perfect her coding skills.
Musau loves a number of things. Her free time which is almost 'non-existant' is packed with activities. Just to name a few,


Call to Action - March for Science Youth Advocacy Summit!
This blog is still somewhat new, but I thought it would be a good place to put out a call to action to my friends and followers!
I’m working with the March for Science to organize the Youth Advocacy Summit, which will be July 6-8 in Chicago! We’re nailing down session hosts as I type, but we are still looking for people to lead sessions or sit on panels on the following topics, so if you or someone you know is interested in hosting a session or sitting on a panel and lives in the Chicago area, please send me an email at<EMAIL_ADDRESS>The topics are listed below.
The Summit is free for all attending students, so all of our funding is currently going to cover room reservations, equipment rentals, and other on-site costs associated with hosting the summit. Unfortunately, this means that we cannot compensate or reimburse session hosts. Because of this, those not from the Chicago area are welcome to host sessions as well, but should know that we cannot cover their expenses. Sorry!
Technology Policy - This will be a lecture that covers current topics in technology policy that students should be aware of, followed by a panel Q&A where students can ask questions about the topics covered. I am looking to cover artificial intelligence, data sharing, net neutrality, and other related topics.
Health Policy - This will be a lecture that covers current topics in health policy that students should be aware of, followed by a panel Q&A where students can ask questions about the topics covered. Anyone from public health policy-related fields is welcome - the topic for this panel is less defined given how broad the field is - although I’d definitely like to get some Medicare/Medicaid people.
Science in the Media - This session is pretty open-ended. I think it would be cool to have science journalists come in to talk about their experiences in a Q&A, or discuss the different manifestations of science in media, but I’m open to other ideas.
Science and The Federal Budget - This session will give students an overview of how science fits into the federal budget, and how they can advocate for increased spending at different budgetary levels. Ideally, I’d like for this to be an interactive session with some budget allocation exercise for students to do in groups.
Thank you again for reading this and spreading the word!


About the Demo
This website is being served by a very simple server based on SimpleHTTPServer. The demo server can be started from the command line with the following command:
$ python demoserver.py
This website is being served by a very simple server based on SimpleHTTPServer. The demo server can be started from the command line with the following command:


--- layout: archive title: Zulip Chat Archive permalink: /stream/116395-maths/topic/add_comm_subgroup.html ---
Is it me or mathlib is missing:
instance add_comm_subgroup {α : Type*} [add_comm_group α] (s : set α) [is_add_subgroup s] : add_comm_group s := by subtype_instance
I get the add_group s
without any problem but not commutativity
Last updated: Apr 24 2020 at 19:02 UTC


org.flexiblepower.ral.values
BQ
- Quantity of the Billable UnitFQ
- Quantity of the Flow Unitpublic abstract class Commodity<BQ extends javax.measure.quantity.Quantity,FQ extends javax.measure.quantity.Quantity> extends java.lang.Object implements java.io.Serializable
| Modifier and Type | Class and Description |
|---|---|
static class |
Commodity.Electricity
The
Commodity.Electricity commodity. |
static class |
Commodity.Gas
The
Commodity.Gas commodity. |
static class |
Commodity.Heat
The
Commodity.Heat commodity. |
| Modifier and Type | Field and Description |
|---|---|
static Commodity.Electricity |
ELECTRICITY
The singleton object for
Commodity.Electricity . |
static Commodity.Gas |
GAS
The singleton object for
Commodity.Gas . |
static Commodity.Heat |
HEAT
The singleton object for
Commodity.Heat . |
| Modifier and Type | Method and Description |
|---|---|
abstract javax.measure.Measurable<BQ> |
amount(javax.measure.Measurable<FQ> average,
javax.measure.Measurable<javax.measure.quantity.Duration> duration) |
abstract javax.measure.Measurable<FQ> |
average(javax.measure.Measurable<BQ> amount,
javax.measure.Measurable<javax.measure.quantity.Duration> duration) |
javax.measure.unit.Unit<BQ> |
getBillableUnit() |
javax.measure.unit.Unit<FQ> |
getFlowUnit() |
java.lang.String |
toString() |
public static final Commodity.Gas GAS
Commodity.Gas
.public static final Commodity.Electricity ELECTRICITY
Commodity.Electricity
.public static final Commodity.Heat HEAT
Commodity.Heat
.public javax.measure.unit.Unit<BQ> getBillableUnit()
amount(Measurable, Measurable)
and average(Measurable, Measurable)
).public javax.measure.unit.Unit<FQ> getFlowUnit()
public abstract javax.measure.Measurable<FQ> average(javax.measure.Measurable<BQ> amount, javax.measure.Measurable<javax.measure.quantity.Duration> duration)
amount
- The billable amount of this commodityduration
- The duration over which the amount has been measuredpublic abstract javax.measure.Measurable<BQ> amount(javax.measure.Measurable<FQ> average, javax.measure.Measurable<javax.measure.quantity.Duration> duration)
average
- The average flow amount of this commodityduration
- The duration over which the flow has been measuredpublic java.lang.String toString()
toString
in class java.lang.Object


STRUCTURAL AND MOLECULAR ORBITAL STUDIES OF CARBORANES
A thesis presented by Thomas Frederick Koetzle to The Department of Chemistry in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the subject of
Chemistry
Harvard University Cambridge, Massachusetts
November 1969
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.


System Architect Symbol details for "Principal Agent"
AA/origin (Generalization Node)
- Number:
0
- Base Class:
"Authorised Agent"
- Definitions Used:
-
Authorised Agent (Class)
Authorised Agent (Class)
- Description:
"Agent" whose actions are subject to another's authority and control.
- Comment:
-
The type of control would include permissions (may do), obligations (must do) and interdictions
(must not do).
An "Agent" who invests authority in another shares some liability for the actions of those to whom
it gives authority.
An example of an "Authorised Agent " would be Dr. Smithers given the authority by the NHS XYZ Trust
to run the Medical Clinical Directorate.
Derived Agent (Class)
- Description:
"Authorised Agent" derived from another (the origin).
- Comment:
A professional person ("Authorised Agent" through professional licence) becomes an employee of a
hospital, a "Derived Agent".
has role as (Association)
- From Class:
Subject
- To Class:
"Principal Agent"
- From Class:
Subject
- To Class:
"Principal Agent"
Principal Agent (Class)
- Description:
-
"Authorised Agent" derived directly from a "Subject" not from another "Agent".
- Comment:
-
Typically these will be organisations created by others (the authority) with specific powers. For
example, an NHS Trust is not a change/extension in the authority of another organisation.
All "Principal Agents" are the result of decree as agreements cannot be made by Subjects.
Subject (Class)
- Description:
"Percept" consisting of one or more persistent physical objects.
- Comment:
-
The definition above, as for others, has been distilled from what has been suggested in the past,
including:
The "Object" of interest to an "Agent" (CBS v2).
One or a collection of physical objects.
"Percept" which is a physical object and / or a collection of physical objects.
Persistent perceivable object.
Extension of one or more "Concepts" which is perceived or inferred to exist in the universe.


|
Required Formats Attribute
A series of switches are used to determine which Internet Media types ('MIME types') are supported, using the 'requiredFormats' attribute, displaying a 'yes' or 'no' as appropriate. The test is passed if there is text in the second row of each column, and that text is only green (in the top table) or blueviolet (in the bottom table); no red text is displayed.
The SVG Tiny 1.2 specification mandates certain formats, so these must be supported: image/jpeg, image/png, image/svg+xml. It is an error not to support them, therefore 'yes' is green and 'no' is red.
This test also checks for support of Internet Media types which are assumed to not exist and are unlikely to ever be registered: garbage/garbage. Therefore, 'yes' is red and 'no' is green.
Lastly, most media types are optional. For example, image/tiff may be supported but support is not mandated by the SVG Tiny 1.2 specification. The second table examines these optional formats. Both 'yes' and 'no' are displayed in blueviolet. Whether the particular Internet Media type is supported or not does not affect whether the test is passed or failed, but does provide useful information about the optional capabilities of a particular implementation.


Embedding HTML in SVG
This example shows the ramifications of using the attributes requiredExtensions
and requiredFeatures
when embedding HTML in SVG.
This example shows the ramifications of using the attributes requiredExtensions
and requiredFeatures
when embedding HTML in SVG.


Just dont enter anything above 1000, oh and dont expect to see any ones, zeroes, or anything divisible by 3.
Your name is Dave by the way, dont fight it, just accept it.


{% extends "global/Page.html" %} {% load staticfiles otree %} {% block title %} Introduction {% endblock %} {% block content %}
Thank you for taking part in this experiment.
Please read the instructions carefully. They are identical for all participants.
You are not allowed to communicate with other participants during the experiment.
Using the cell phone is also prohibited. Please switch it off.
In case anything is unclear, please raise your hand. We will come to your desk and answer your questions in private.
You will earn money during this experiment and you will receive your earnings in cash immediately after the experiment is finished. How much money you earn depends on the actions you and the other participants take.
The experiment consists of two parts. You will receive specific instructions before each part starts. Before we start with the first Part there will be a trial round.


Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect
Scroll for Effect


Class SpiderGL.Space.ViewportStack
The SpiderGL.Space.ViewportStack is a stack for viewport rectangles.
- Defined in: space.js
- Extends SpiderGL.Core.ObjectBase
| Constructor Attributes | Constructor Name and Description |
|---|---|
|
SpiderGL.Space.ViewportStack(onChange)
Creates a SpiderGL.Space.ViewportStack.
|
| Field Attributes | Field Name and Description |
|---|---|
| <readonly> |
Gets a copy of the matrix at the top of the stack.
|
| <readonly> |
Gets a reference to the rectangle at the top of the stack.
|
| <readonly> |
Gets the stack depth.
|
| <readonly> |
Alias for #rect.
|
| <readonly> |
Alias for #rect$.
|
- Fields borrowed from class SpiderGL.Core.ObjectBase:
- uid
Method Summary
| Method Attributes | Method Name and Description |
|---|---|
|
inner(m)
Replace the rectangle r at the top of the stack with Post-multiplies the matrix at the top with the passed matrix
The matrix a at the top will be replaced by a * m.
|
|
|
load(m)
Replaces the rectangle at the top with a clone of the passed rectangle.
|
|
|
Replaces the rectangle at the top with the identity rectangle, that is, [0, 0, 1, 1].
|
|
|
pop()
Pops the stack.
|
|
|
push()
Pushes into the stack the rectangle at its top.
|
|
|
reset()
Resets the stack.
|
| Event Attributes | Event Name and Description |
|---|---|
|
onChange()
Gets/Sets the callback invoked whenever the top rectangle changes.
|
Class Detail
SpiderGL.Space.ViewportStack(onChange)
Creates a SpiderGL.Space.ViewportStack.
SpiderGL.Space.ViewportStack is a stack for viewport rectangles, specified with lower and left coordinates, width and height.
Initially, the stack depth is one and contains a rectangle with lower-eft coordinates equal to zero and width and height equal to one, that is, the array [0, 0, 1, 1].
Every method or getter to access the top rectangle returns a copy of the internal rectangle.
For performance reasons, variants of the above accessors (having the same identifier with the postfix "$" appended) that return a reference to the internal rectangle are also present.
var s = new SpiderGL.Space.ViewportStack(); var dw = width / nx; var dh = height / ny; s.load(x, y, width, height); for (var x=0; x
- Parameters:
- {function(this)} onChange Optional
- A callback function called whenever the stack is modified.
- See:
- reset
- SpiderGL.Space.TransformationStack
Field Detail
<readonly>
{array}
rect
Gets a copy of the matrix at the top of the stack.
Initially, the stack has depth one and contains the identity rectangle, that is, [0, 0, 1, 1].
- See:
- #rect$
<readonly>
{array}
rect$
Gets a reference to the rectangle at the top of the stack.
The returned array MUST NOT be changed.
Initially, the stack has depth one and contains the identity rectangle, that is, [0, 0, 1, 1].
- See:
- #rect
<readonly>
{number}
size
Gets the stack depth.
Initially, the stack contains the identity rectangle, that is, [0, 0, 1, 1].
<readonly>
{array}
top
Alias for #rect.
- See:
- #top$
- #rect
<readonly>
{array}
top$
Alias for #rect$.
- See:
- #top
- #rect$
Method Detail
-
inner(m)Replace the rectangle r at the top of the stack with Post-multiplies the matrix at the top with the passed matrix The matrix a at the top will be replaced by a * m.
- Parameters:
- {array} m
- The matrix to post-multiply.
- See:
- #load
-
load(m)Replaces the rectangle at the top with a clone of the passed rectangle.
- Parameters:
- {array} m
- The rectangle whose clone will be set as the top of the stack.
- See:
- #loadIdentity
- #inner
-
loadIdentity()Replaces the rectangle at the top with the identity rectangle, that is, [0, 0, 1, 1].
- See:
- #load
- #inner
-
pop()Pops the stack. After a pop operation, the stack depth is decremented by one. Nothing is done if the stack has only one element.
- See:
- #push
-
push()Pushes into the stack the rectangle at its top. After a push operation, the stack depth is incremented by one and the two rectangle at its top are identical. There is no limit on the depth the stack can reach.
- See:
- #pop
-
reset()Resets the stack. The stack is reset to its initial state, that is, a stack with depth one containing the identity rectangle, that is, [0, 0, 1, 1].
- See:
- #loadIdentity
Event Detail
onChange()
Gets/Sets the callback invoked whenever the top rectangle changes.
Initially, no callback is defined.


UTC -10
Voltage: 240 V
Frequency: 50 Hz
Business hours are 08:00‐16:00 Monday to Friday and 08:00‐12:00 Saturday.
Banking hours are 09:00‐15:00 Monday to Friday and 09:00‐12:00 Saturday.
New Zealand dollar (NZ$), with local coinage.
See Pacific List of Radio Nets
Interntional Dialing Code for Cook Islands is +682
Telephone services are avaiable.
Several internet café’s are located on Rarotonga and Aitutaki. WiFi is available at key locations.
DHL Courier services are available in Avarua.
Mobile (cell) phone services are provided by Telecom Cook Islands (TCI) using GSM technology. You can hire a local mobile in Rarotonga from the Telecom office near CITC. Ask your service provider for a roaming arrangement with TCI, or you will need a phone which isn't locked to a provider. Service is currently only available on Rarotonga, Aitutaki, Mangaia, Manihiki, Atiu and Pukapuka, but TCI is planning to roll it out to the remaining inhabited islands by the end of 2012. US users note: You need a phone capable of working on the GSM 900 or 1700 networks which are standard in Europe. Pay as you go phones will NOT work on any network
Emergencies:
Police 999,Fire 996,
Ambulance 998.
IMRAY AND ADLARD COLES PILOT BOOKS are available at a discounted price for Noonsite.com users via World Cruising Club
Charlie's Charts of Polynesia
By Charles & Margo Wood
Published by Charlies Charts (6th Edition 2010)in English and French
www.charliescharts.com
ISBN 9697265-7-0
This updated edition contains a number of full color photographs to give a strong impression of the beauty and interest of the area as well as provides valuable information on the Ports of Entry in the Hawaiian Islands and South Pacific cruising areas.
South Pacific Handbook
By David Stanley
Published by Avalon Travel (8th edn, 2005)
ISBN<PHONE_NUMBER>116
Moon Handbooks South Pacific provides in-depth coverage of outdoor recreation, with specifics on swimming, diving, yachting, kayaking, biking, hiking, camping, climbing, caving, and horseback riding. Complete with helpful maps, photographs and illustrations, as well as useful advice on practicalities such as food, entertainment, shopping, visas, money, health, packing, and inter-island travel, this guidebook offers the tools you need for a uniquely personal experience.
Landfalls of Paradise: Cruising Guide to the Pacific Islands
By Earl R. Hinz and Jim Howard
Published by University of Hawaii Press (5th edn. 2006)
ISBN<PHONE_NUMBER>373
The fifth edition of this sailing standard includes updated charts and text reflecting changes in regulations and facilities for most countries and specific ports of entry. New appendices include procedures for entry to Australia, which are more exacting than most Pacific landfalls, and an extensive list of information sources: cruising guidebooks, important general tourist guides, chart suppliers, and key web sites for the countries covered by "Landfalls of Paradise".
South Pacific Anchorages
By Warwick Clay
Published by Imray Laurie Norie & Wilson Ltd; 2nd edition (January 1, 2001)
ISBN<PHONE_NUMBER>829
This second edition contains numerous revisions to both text and plans. Warwick Clay's cruising guide covers the South Pacific from the Mariana Islands in the northwest across to the Galapagos in the east then down passed Easter Island to New Zealand in the Southwest. The guide covers this vast area in detail and virtually every anchorage is described with supporting plans produced from the author's own information.
The Pacific Crossing Guide
By Michael Pocock, Revised by Ros Hogbin
Publisher: Adlard Coles; 2nd edition (August 2011)
ISBN-13:<PHONE_NUMBER>828
See the detailed review
Cruising Yacht Guide to the Cook Islands
Cook Islands Ports Authority
http://www.ports.co.ck/cruiseguide.html
Cook Islands Official Tourism Website
www.cookislands.org.uk
A non-commercial site with useful information on the Cook Islands.
www.cookislands.southpacific.org
Contains 15 detailed island maps all the Cook Islands.
The Cooks Samoas Compendium (Including Niue)
http://svsoggypaws.com/files/
A Compilation of Guidebook References and Cruising Reports put together by SV Soggy Paws with updates from cruisers who have used it. Lots of good information if planning on cruising these islands and many other notes for other Pacific cruising areas on the site too.


With our ever increasing reliance on technology and the rapid pace at which new technologies, new websites, and applications are created, the amount of data at risk of security breach is only increasing.
A lot of security concerns that the general populous deals with today were developed in the 1990s - most notably denial of service attacks and phishing attacks. Denial of Service (DOS) attacks aim to overload a website with requests, to the point that it breaks down. There are a sleu of reasons someone might try to do this, including expression of anger / criticism, attempting to hurt competition, to make a threat or to punish, etc.. Whatever the reason, these attacks pose a huge threat to the operations of a business. Phishing attacks are when malicious people pose as a trusted source in an attempt to extract valuable information from unknowing victims. The driving reasons here are obvious - access to private information, and monetary gain.
With the rise in popularity of online applications, particularly those that store tons of user information (banks, social media, CRM sites), hacking / attacking / and scamming have only increased in frequency and scope. Perhaps the most daunting fact is that there are a lot of hackers that perform these attacks purely as a hobby, for fun.  Because of this it is crucial to individuals and businesses alike to take measures to protect themselves.
Nowadays, companies have teams dedicated to the protection of their applications and the information they have stored. We've learned to write better code to prevent gaps or holes in the system. We are employing tools such as vulnerability scanners and penetration testing software to notify us of security concerns ahead of time. Input testing and password strength tools are also available. And, the general public is becomming better educated on how to identify phishing scams.
The Open Web Application Security Project is an organization dedicated to web application security. Founded in 2001 as a non-profit, comprised of corporations and individuals, OWASP provides resources to use to ensure that maximum security is acheived and best security practices are being followed.
All in all, I think it is clear that the world is taking necessary steps to curb hacking and malicious attacks. But, it seems that this will be an ongoing battle.  There will always be criminals trying to profit, devising new ways and technologies to do so. I can only hope that the technology and skill level of the 'good' side can keep up.
Copyright: Gary Hammell 2014


Deploying OpenShift on KVM
Introduction
This repo contains Terraform templates to help deployment of OpenShift Container Platform (OCP) 4.x on KVM VMs using libvirt.
This project leverages the following ansible playbook to setup helper node (bastion) for OCP deployment.
Run this code from either Mac or Linux (Intel) system. For automating setup, see OCP-UPI-KVM
This automation is intended for test/development purposes only and there is no formal support. For issues please open a GitHub issue
Pre-requisites
- Git: Please refer to the following link for instructions
on installing
git
for Linux and Mac. - Terraform >= 0.13: Please refer to the following link for instructions on installing
terraform
for Linux and Mac. For validating the version runterraform version
command after install. - Terraform Providers: Please ensure terraform providers are built and installed on Terraform Client Machine. You can follow the Build Terraform Providers guide.
- libvirt: Please ensure
libvirt
is installed and configured on the KVM host. You can follow the Libvirt Host setup guide.
Image and VM requirements
For information on how to configure the images required for the automation see Preparing Images for Power.
Following are the recommended VM configs for OpenShift nodes that will be deployed with RHCOS image. - Bootstrap, Master - 4 vCPUs, 16GB RAM, 120 GB Disk
This config is suitable for majority of the scenarios - Worker - 4 vCPUs, 16GB RAM, 120 GB Disk
Increase worker vCPUs, RAM and Disk based on application requirements
Following is the recommended VM config for the helper node that will be deployed with RHEL 8.0 (or later) image. - Helper node (bastion) - 2vCPUs, 16GB RAM, 200 GB Disk
OCP Install
Follow these quickstart steps to kickstart OCP installation on Power KVM using libvirt.
Contributing
Please see the contributing doc for more details. PRs are most welcome !!


--- layout: default key: programming note: list title: Programming categories: - name: Interview description: Java, Html, Javascript, System Design type: interview - name: Java description: Data Type, Collection, Multithreading type: java ---
" | remove: ""}}