{% extends 'base.html' %} {% block title %}Lending Library -- Review Book{% endblock %} {% block body %}
Submit Review Cancel
No one has reviewed this book yet. Be the first!


It is possible to create a layout by options defined as attributes in pe:layoutPane. This example demonstrates how to do it.
Default tooltips, when a pane gets resized, is open or closed, can be redefined by pe:layout via proper attributes.
Custom tooltips are demonstrated as well.
Note: Layout pane has a limited set of options in comparison to "generic" approach when creating by model (LayoutOptions class).
${showcase:getFileContent('/sections/layout/example-fullPageAttr.xhtml')}


| Home | Libraries | People | FAQ | More |
Boost.MultiArray provides a generic N-dimensional array concept definition and common implementations of that interface.
| Copyright © 2000-2001 |
Ronald Garcia,
Indiana University<EMAIL_ADDRESS>Jeremy Siek, Indiana University<EMAIL_ADDRESS>Andrew Lumsdaine, Indiana University<EMAIL_ADDRESS>|


Perenniality
An eternity spent fighting has rendered you partially insensible to pain.
+${value}% Armor Absorption
2 3 5 6 8 9 10 11 12 13 14 15
+${value}% Armor Protection
4 6 8 10 12 14 15 17 19 21 23 25
MaxLevel
8
UltimateLevel
12


New York Police Department Motor Vehicle Collisions
A Borough-Wise Distribution of Accidents from 2013-2018
Select Another Year
Mouseover Bars for Exact Numbers
Quick Fact: Major streets like Queens Boulevard and Atlantic Avenue make up only 15 percent of our city’s road network, but they are the site of more than half of pedestrian and cyclist fatalities.
Observations from the data:
Bronx has observed almost the same number of accidents every year while the number of accidents in other boroughs has fluctuated quite a lot.
2015 was the year where the maximum number of accidents took place in most boroughs.
Brooklyn sees the maximum number of accidents each year.
The number of accidents is consistent across four of the boroughs (Manhattan, Brooklyn, Queens and Bronx) in 2018.
The number of accidents increased from 2013 to 2015 and then reduced from 2015 to 2017.
Important information about the data: 2018 contains information from January 2018 to March 2018.
Created by Aakanksha Joshi, Adarsh Chavakula, Harsheel Soin and Deepak Maran for the course STATGR5702: Exploratory Data Analysis and Visualization at Columbia University in the City of New York (Spring 2018)


{% extends 'wildlifecompliance/emails/base_email.html' %} {% block content %} A Wildlife Licensing application activity has been approved, with below details.
Application: {{ application.id }}
Activities:
{% for activity in activities %}
{{activity.licence_activity.name}}
Start Date: {{activity.get_start_date}}
Expiry Date: {{activity.get_expiry_date}}
Details: {{activity.reason}}
{% endfor %}
Link: {{url}}
Note: If you haven't logged into the Wildlife Licensing System recently you may need to login first before using the provided link.
{% endblock %}


This post enlists how some of the programs look like in Human.
File a.txt contains three comma separated fields: username, first name and last name. File b.txt also contains three comma seperated fields: email, first name and last name. For each email in b.txt, if corresponding first name and last name are present in a.txt, I want to know its username.
import sys name_2_uids = {} f = open('a.txt') for line in f: uid, first_name, last_name = line.strip().split(',') uid = uid.strip() first_name = first_name.strip() last_name = last_name.strip() name_2_uids.setdefault((first_name, last_name), []).append(uid) f.close() f = open('b.txt') name_2_email = {} for line in f: email, first_name, last_name = line.strip().split(',') email = email.strip() first_name = first_name.strip() last_name = last_name.strip() if (first_name, last_name) in name_2_uids: print first_name.encode('utf-8') + '\t' + last_name.encode('utf-8') + '\t' + ','.join(name_2_uids[(first_name, last_name)]) f.close()
Read an integer from stdin. Output YES if the integer is even but not 2. Output NO otherwise.
import sys line = sys.stdin.read().strip() if int(line) % 2 == 0 and int(line) != 2: print 'YES' else: print 'NO'
Taken from Code Forces 110A
Read an integer from stdin. Count the numbers of digits in the integer which are either 4 or 7. If all the digits of this count are either 4 or 7, output YES, else output NO.
import sys x = sys.stdin.read().strip() count = 0 for c in x: if c in ('4', '7'): count += 1 y = str(count) for c in y: if c not in ('4', '7'): print 'NO' sys.exit() print 'YES'
Taken from Code Forces 110A
Read a sentence from the input. Replce all WUB's by whitespace. Then remove whitespaces from the ends and deduplicate white spaces within the sentence.
import sys sentence = sys.stdin.readline().strip() sentence = sentence.replace('WUB', ' ').strip() sentence = ' '.join(sentence.split()) print sentence
I have a file called user.txt, which contains userId's. From the events table in database 1772e3a9bb92fdc2810a_web of mongodb(hostname: <IP_ADDRESS>, port 27010), find all the rows such that userId is contained in user.txt, eventName is page_viewed and _id is more than ObjectId("595698a80000000000000000")"
def get_user_ids(filename): f = open(filename) field_ids = [] for line in f: field_ids.append(int(line.strip())) f.close() return field_ids if __name__ == '__main__': client = MongoClient("<IP_ADDRESS>:27010") db = client['1772e3a9bb92fdc2810a_web'] collection = db['events'] user_ids = get_user_ids(filename) query = {'eventName': 'page_viewed', '_id': {'$gt': ObjectId("595698a80000000000000000")}, 'userId': {'$in': user_ids}} events = collection.find(query) for event in events: print event


--- title: "How it works" date: 2019-06-15T17:13:19+01:00 draft: false weight: 2 anchor: "how-it-works" --- 3 easy steps, because it should be easy.
Decide which car and options you're interested in.
You can discuss all this with the dealer.
Contact the dealers, from our dealers page.
Select your preferred offer, order directly with the dealer of your choice.
You've saved time by not travelling to and waiting at dealerships. So now it's time to get excited about your new car!
Talk about it now on the community forums.


Headhot / Kill % - Better Battlelog Forums #137281
Sitemap
03. April 2015 00:41
Topicstarter
casper312
Hi. Headhot / Kill % should be Headshot / Kill %.
03. April 2015 06:51
DaniluK4000
Community Manager
Can you provide a screenshot? I not see this line anywhere
03. April 2015 14:37
Topicstarter
casper312
Sorry. Maybe I should have been more specific. It is misspelled in my player stats graph. But maybe that is an issue with BF4Stats.com ? Thank you.
https://i.imgur.com/BWQew1O.jpg
03. April 2015 15:54
DaniluK4000
Community Manager
Not BBLog feature...


Library: Foundation
Package: Crypt
Header: Poco/DigestEngine.h
Description
This class is an abstract base class for all classes implementing a message digest algorithm, like MD5Engine and SHA1Engine. Call update() repeatedly with data to compute the digest from. When done, call digest() to obtain the message digest.
Inheritance
Known Derived Classes: Poco::Crypto::DigestEngine, Poco::Crypto::RSADigestEngine, MD5Engine, PBKDF2Engine, HMACEngine, MD4Engine, SHA1Engine
Member Summary
Member Functions: digest, digestFromHex, digestLength, digestToHex, reset, update, updateImpl
Types
Digest
typedef std::vector < unsigned char > Digest;
Constructors
DigestEngine
DigestEngine();
Destructor
~DigestEngine
virtual ~DigestEngine();
Member Functions
digest
virtual const Digest & digest() = 0;
Finishes the computation of the digest and returns the message digest. Resets the engine and can thus only be called once for every digest. The returned reference is valid until the next time digest() is called, or the engine object is destroyed.
digestFromHex
static Digest digestFromHex(
const std::string & digest
);
Converts a string created by digestToHex back to its Digest presentation
digestLength
virtual std::size_t digestLength() const = 0;
Returns the length of the digest in bytes.
digestToHex
static std::string digestToHex(
const Digest & bytes
);
Converts a message digest into a string of hexadecimal numbers.
reset
virtual void reset() = 0;
Resets the engine so that a new digest can be computed.
update
void update(
const void * data,
std::size_t length
);
update
void update(
char data
);
update
void update(
const std::string & data
);
Updates the digest with the given data.
updateImpl
virtual void updateImpl(
const void * data,
std::size_t length
) = 0;
Updates the digest with the given data. Must be implemented by subclasses.


 Some facts might surprise you…
Start


Class Index
-
_global_
-
calitha
-
calitha.collections
-
calitha.collections.AbstractCollection
-
calitha.collections.AbstractList
-
calitha.collections.AbstractMap
-
calitha.collections.AbstractSet
-
calitha.collections.ArrayList
-
calitha.collections.arrays
-
calitha.collections.Dictionary
-
calitha.collections.HashMap
-
calitha.collections.HashSet
-
calitha.collections.ICollection
The interface for all list and set based collections.
-
calitha.collections.IComparable
This interface imposes a total ordering on the objects of each class that implements it.
-
calitha.collections.IComparator
A comparison function, which imposes a total ordering on some collection of objects.
-
calitha.collections.IIterator
An iterator over a collection.
-
calitha.collections.IList
An ordered collection (also known as a sequence).
-
calitha.collections.IListIterator
An iterator for lists that allows the programmer to traverse the list in either direction, modify the list during iteration, and obtain the iterator's current position in the list.
-
calitha.collections.IMap
An object that maps keys to values.
-
calitha.collections.imap.IEntry
Entry interface
-
calitha.collections.imap.ImmutableEntry
-
calitha.collections.INavigableMap
A SortedMap extended with navigation methods returning the closest matches for given search targets.
-
calitha.collections.INavigableSet
A SortedSet extended with navigation methods reporting closest matches for given search targets.
-
calitha.collections.ISet
A collection that contains no duplicate elements.
-
calitha.collections.ISortedMap
A Map that further provides a total ordering on its keys.
-
calitha.collections.ISortedSet
A Map that further provides a total ordering on its keys.
-
calitha.collections.LinkedList
-
calitha.collections.SubList
-
calitha.collections.TreeMap
-
calitha.collections.TreeSet
-
calitha.collections.util


Before Change
qobj_dicts = [qobj_to_dict(qob) for qob in self.qobjs]
pickle.dump({"qobjs":qobj_dicts, "mappings":self.mappings}, cache_handler, protocol=pickle.HIGHEST_PROTOCOL)
cache_handler.close()
logger.debug("Circuit cache saved to file.")
def try_loading_cache_from_file(self):
if len(self.qobjs) == 0 and self.cache_file is not None and len(self.cache_file) > 0:
cache_handler = open(self.cache_file, "rb")
After Change
op_graph.get(type_and_qubits, []) + [i]
mapping = []
for compiled_gate_index, compiled_gate in enumerate(qobj.experiments[circ_num].instructions):
if not hasattr(compiled_gate, "params"): continue
type_and_qubits = compiled_gate.name + compiled_gate.qubits.__str__()
if len(op_graph[type_and_qubits]) > 0:
uncompiled_gate_index = op_graph[type_and_qubits].pop(0)
uncompiled_gate = raw_gates[uncompiled_gate_index]


---
layout: post
title: My Top 5 Artists (Week Ending 2011-5-1)
date: '2011-05-07T09:45:15+02:00'
tags: []
tumblr_url: http://dotmr.tumblr.com/post/5268484482/my-top-5-artists-week-ending-2011-5-1
---
My Top 5 Artists (Week Ending 2011-5-1)
Imported from Last.fm Tumblr by JoeLaz


{% extends "layout.html" %} {% block head %} {% endblock %} {% block content %}
Our goal is to teach 10,000 students how to code by the year 2020. There are 100,000 young people that currently don't have access to computer science courses in the Bay Area. That's 100,000 reasons we need your support. Every little bit counts.
Mission Bit courses are project-based semester-long coding courses, taught by college computer science majors and supported by volunteers who are professional software engineers. Mission Bit education experiences are all-inclusive and ethnically and gender diverse. Mission Bit’s complementary programs create pathways for "limited access" students to form connections with technology professionals and learn the skills, processes, and technologies used by professional programmers.
Check out missionbit.com for more about us!
Make checks payable to Mission Bit. To receive a receipt electronically, write your email address in the memo of your check.
Mission Bit


Joshua Tanner, B.S. and Justin Shedd, M.S.
Raster surfaces were created with each cell representing an agreed upon score.
Transitional area between unoccupied land and human development.
Euclidean distance to developed areas.
Areas where there are potential or known threatened and endangered species presence.
Areas that have a presence of regionally unique threatened and endangered species.
How hard it is to respond to a fire based on several agreed upon variables (slope, aspect, vegetation, distance to road)
Number of fuel breaks that are present that limit the ability of a fire to spread. Trails, roads, and streams were used to represent these breaks.
Areas that have a presence of any cultural significant values of interest.
A python script was written and published as a GP Service to accept an Esri JSON feature polygon and use it as a mask to extract information from the rasters.
Input loaded from Esri Geoservices JSON
Mask raster analysis layers with input geometry.
Output stats in JSON
A web application was built using JavaScript to provide the input polygon to the geoprocessing service and interpret the results. It uses Esri’s JavaScript API and the Dojo framework to build modular components.
The application layout is very simple and built to be intuitive.
Users can select 'Draw Treatment Poly' to manually draw a polygon that represents a proposed treatment area.
Users can also choose to upload a shapefile of a proposed treatment area to the application for analysis
Results are provided to the user after analyzing the input polygon.
Score is also displayed in a more descriptive table.


public interface VariantReader extends ColumnReader
At read time, the set of possible types is fixed. A request to obtain a reader for an unused type returns a null pointer.
This reader is essentially a map of types: it allows access to type-specific readers for the set of types supported in the current vector. A client checks the type of each value, then uses the proper type-specific reader to access that value.
VariantWriter}
| Modifier and Type | Method and Description |
|---|---|
ArrayReader |
array() |
TypeProtos.MinorType |
dataType()
Return the data type of the current value.
|
boolean |
hasType(TypeProtos.MinorType type)
Determine if a given type is supported by the union vector
for some value in the result set.
|
ObjectReader |
member()
Return the reader for the member type of the current row.
|
ObjectReader |
member(TypeProtos.MinorType type)
Return the member reader for the given type.
|
ScalarReader |
scalar()
Return the appropriate scalar reader for the current value.
|
ScalarReader |
scalar(TypeProtos.MinorType type)
Return the scalar reader for the given type member.
|
int |
size() |
TupleReader |
tuple() |
VariantMetadata |
variantSchema() |
getAsString, getObject, isNull, schema, type
VariantMetadata variantSchema()
int size()
boolean hasType(TypeProtos.MinorType type)
type
- the Drill minor type to queryObjectReader member(TypeProtos.MinorType type)
type
- member typeScalarReader scalar(TypeProtos.MinorType type)
type
- member typeTypeProtos.MinorType dataType()
ObjectReader member()
ScalarReader scalar()
ColumnReader.isNull()
returns true,
else the equivalent of scalar
(
dataType()
)IllegalStateException
- if called for a variant that
holds a tuple or an arrayTupleReader tuple()
ArrayReader array()
Copyright © 2021 The Apache Software Foundation. All rights reserved.


| Lagos - Abuja | ||
|---|---|---|
| Airline | Abacus | |
| Cabin Class | Economy | |
| Trip Type | One Way | |
| Price From | NGN25,999 |
Subject to availability.
2 September-30 November 2018
N/A.
If you selected the “Time to Think” option, connect to the “Manage your reservations” area to confirm and pay for your reservation. CHANGE YOUR PERSONAL INFORMATION For all ticket types, you can change or add: your Flying Blue or BlueBiz number your contact information (e-mail address, telephone numbers), regulatory information required by the authorities in your destination country (passport number, visa number, address at your destination, etc.), your meal choice and seat preference.
You can change the date, time, or itinerary of your flight, as well as your travel class, if your fare rules allow for changes with or without a fee. Please note: if the price of your new flight is higher, you must pay a supplement. If the price is lower, you will be partially reimbursed. A SUCCESSFUL TRIP: PRACTICAL INFORMATION AND ADDITIONAL SERVICES Getting to the airport, reserving a parking space, bagage tips, airport and connection guides… Obtain all the practical information you need for your trip.
Whether you want to explore the beauty of western Nigeria either in Standard fare or stylish business class.The western pass is affordable and convenient way to do it
Fly to Akwa Ibom for a long weekend and get to know the city before jetting off to Port-Harcourt. Arrive in just 25minutes to vist world famous attractions of the garden city, shop and indulge in local cuisine.
Lagos Island is the principal and central local government area in Lagos, Lagos State. It is part of the Lagos Division. As of the preliminary 2006 Nigeria Census, the LGA had a population of 209,437 in an area of 8.7km².
Whether you want to explore the beauty of western Nigeria either in Standard fare or stylish business class.The western pass is affordable and convenient way to do it
Abuja is the capital city of Nigeria and the centre of Nigeria government. Most of the headquarters of the government agencies are situated in Abuja, and it is from here that the government of Nigeria is run down the grassroots. But this is not all Abuja is known for, as the state is obviously the most beautiful city in NIgeria
Enugu, the coal city is renowned for its undulating plateaus, rich cultural diversity and scenic views. Are you planning to visit for leisure, a family getaway or looking to see the top attractions after your business trip to town?.Enugu State is a tourist delight, with ancient historical relics, several recreational spots and beautiful arts and craft.


Iodine, an essential element for thyroid function, is necessary for normal growth, development, and functioning of the brain and body. Iodine-deficiency disorder (IDD) is a well-documented global health problem, affecting more than a billion people worldwide.  Progress toward eliminating IDDs has been substantial; an estimated 70% of the world’s edible salt currently is iodized. Most excess iodine is excreted, and most people can tolerate fairly large amounts without experiencing problems. People with a tendency toward autoimmune thyroid disease are less tolerant of excess iodine. If a person has previously been iodine-deficient, that person may be at risk for iodine-induced hyperthyroidism. Excessive iodine intake by a mother can pose a reproductive risk. Since urinary iodine values directly reflect dietary iodine intake, urinary iodine analysis is the recommended and most common method for biochemically assessing the iodine status of a population. This method achieves rapid and accurate quantification of iodine content in urine.
All examined participants aged 3 to 5 years were eligible and participants aged 6 years and older from a one-third subsample were eligible.
This method directly measures the iodine and mercury content of urine specimens using ICP-DRC-MS (Inductively Coupled Plasma Dynamic Reaction Cell Mass Spectroscopy) after a dilution sample preparation step. Liquid samples are introduced into the mass spectrometer through the ICP ionization source, reduced to small droplets in an argon aerosol via a nebulizer, and then the droplets enter the ICP. The ions first pass through a focusing region, then the dynamic reaction cell (DRC), the quadrupole mass filter, and finally are selectively counted in rapid sequence at the detector, allowing individual isotopes of an element to be determined.
Refer to the Laboratory Method Files section for a detailed description of the laboratory methods used.
There were no changes to lab method, lab equipment, or lab site for this component in the NHANES 2015-2016 cycle.
Iodine and Mercury, Urine Lab Procedure Manual (June 2018)
Urine samples are processed, stored, and shipped to the Division of
Laboratory Sciences, National Center for Environmental Health, Centers for
Disease Control and Prevention, Atlanta, GA for analysis.
Detailed instructions on specimen collection and processing are discussed in the NHANES Laboratory Procedures Manual (LPM). Vials are stored under appropriate frozen (–30°C) conditions until they are shipped to the National Center for Environmental Health for testing.
The NHANES quality assurance and quality control (QA/QC) protocols meet the 1988 Clinical Laboratory Improvement Act mandates. Detailed QA/QC instructions are discussed in the NHANES LPM.
Mobile Examination Centers (MECs)
Laboratory team performance is monitored using several techniques. NCHS and contract consultants use a structured competency assessment evaluation during visits to evaluate both the quality of the laboratory work and the quality-control procedures. Each laboratory staff member is observed for equipment operation, specimen collection and preparation; testing procedures and constructive feedback are given to each staff member. Formal retraining sessions are conducted annually to ensure that required skill levels were maintained.
Analytical Laboratories
NHANES uses several methods to monitor the quality of the analyses performed
by the contract laboratories. In the MEC, these methods include performing blind
split samples collected on “dry run” sessions. In addition, contract
laboratories randomly perform repeat testing on 2% of all specimens.
NCHS developed and distributed a quality control protocol for all CDC and
contract laboratories, which outlined the use of Westgard rules (Westgard et
al., 1981) used when running NHANES specimens. Progress reports containing any
problems encountered during shipping or receipt of specimens, summary statistics
for each control pool, QC graphs, instrument calibration, reagents, and any
special considerations are submitted to NCHS quarterly. The reports are reviewed
for trends or shifts in the data. The laboratories are required to explain any
identified areas of concern.
All QC procedures recommended by the manufacturers were followed. Reported results for all assays meet the Division of Laboratory Sciences’ quality control and quality assurance performance criteria for accuracy and precision, similar to the Westgard rules (Caudill et al., 2008).
The data were reviewed. Incomplete data or improbably values were sent to the performing laboratory for confirmation.
Refer to the 2015-2016 Laboratory Data Overview for general information on NHANES laboratory data.
Subsample Weights
Urinary iodine was measured in a full
sample of participants ages 3-5 and a one-third subsample of persons 6 years and
older. Special sample weights are required to analyze these data properly.
Specific sample weights for this subsample are included in this data file and
should be used when analyzing these data.
Demographic and Other Related
Variables
The analysis of NHANES laboratory data must be
conducted using the appropriate survey design and demographic variables. The
NHANES 2015-2016
Demographic Data File contains demographic and sample design variables. The
recommended procedure for variance estimation requires use of stratum and PSU
variables (SDMVSTRA and SDMVPSU, respectively) in the demographic data file.
Starting in the 2015-2016 NHANES cycle, the variable URXUCR (urine creatinine) will not be reported in this file. URXUCR can be found in the data file titled Albumin & Creatinine - Urine.
This laboratory data file can be linked to the other NHANES data files using the unique survey participant identifier SEQN.
Detection Limits
The detection limits were constant for this analyte in the data set. Two variables are provided for each of these analytes. The variable name ending in LC (ex., URDUIOLC) indicates whether the result was below the limit of detection: the value “0” means that the result was at or above the limit of detection, “1” indicates that the result was below the limit of detection. For analytes with analytic results below the lower limit of detection (ex., URDUIOLC=1), an imputed fill value was placed in the analyte results field. This value is the lower limit of detection divided by the square root of 2 (LLOD/sqrt [2]). The other variable prefixed URX (ex., URXUIO) provides the analytic result for that analyte.
The lower limit of detection (LLOD, in µg/L) for the urinary metals in the data set is:
| Variable Name | SAS Label | LLOD |
|---|---|---|
| URXUIO | Urinary iodine (ug/L) | 2.4 |
Please refer to the NHANES Analytic Guidelines and the on-line NHANES Tutorial for further details on the use of sample weights and other analytic issues.
| Code or Value | Value Description | Count | Cumulative | Skip to Item |
|---|---|---|---|---|
| 6552.119284 to<PHONE_NUMBER>8 | Range of Values | 3231 | 3231 | |
| 0 | Participants 6+ years with no lab specimen | 48 | 3279 | |
| . | Missing | 0 | 3279 |
| Code or Value | Value Description | Count | Cumulative | Skip to Item |
|---|---|---|---|---|
| 8.9 to 72155.3 | Range of Values | 3079 | 3079 | |
| . | Missing | 200 | 3279 |
| Code or Value | Value Description | Count | Cumulative | Skip to Item |
|---|---|---|---|---|
| 0 | At or above detection limit | 3079 | 3079 | |
| 1 | Below lower detection limit | 0 | 3079 | |
| . | Missing | 200 | 3279 |


A complete AngularJS localization service with core service and accompanying filters, directives etc. Site localization example using the ngLocalize module.
ngLocalize


RFSM means RFT Find Search Mode. RFSM is a name of the search algorithm. It uses RFT API to find AUT's objects.
Just add :RFSM:
prefix at beginning of the recognition string.
Example: :RFSM:.domain=Java;.class=com.sas.test
Using above, user can run any search mode simultaneously with FPSM or/and MCSM.
Or
Turn on exclusively RFMS mode by adding RFSMOnly=true
flag into the tidtest.ini file of the automation project. Once you turn on the flag then the recognition string doesn't require :RFSM:
prefix.
Example: .domain=Java;.class=com.sas.test
Using above, Only RFSM runs exclusively.
Yes, Add :RFSM:
prefix to the recognition string. SAFS engine will process prefix tag appropriately.
User also can keep Main window string FPSM or MCSM mode and child recognition string FSMS mode. Any combination works.
Example: User can define appmap following way
[SASHelp]
SASHelp="Type=Window;Caption={^T.SASHelp.Caption}"
ButtonPrint=":RFSM:.class=javax.swing.JButton;.text=Print"
Yes, RFSM supports regular expression and follow java's regular expression rules. Regular Expression syntax will specify into / regular expression / block.
Examples: if regular expression is ^SAS Management Console or Server$ or gv\d+
a. :RFSM:.domain=Java;class=com.sas.comsole.managment;title=/^SAS
Management Console/
b. :RFSM:.domain=Java;class=com.sas.comsole.managment;title={^T.ServerName}
, where T.ServerName= /Server$/
c. :RFSM:.domain=Java;class=com.sas.comsole.managment;.id=/gv\d+/
Yes, ";" ";\;" and "=" are reserves for recognition strings. Don't use them as part of regular expression or object property value. If it required as object property value, then make regular expression to substitute.
Example:
Wrong recognition string example
Correct recognition string example
Use RFT's Test Object Inspector (Run -> Test Object Inspector...) utility to find AUT object's property. There are many property starts with "." prefix, keep them as they are display.
Yes, there is a way the RFSM gives the object back as user pass selection through by recognition string.
Example:
:RFSM:.domain=Html;class=Html.IMG;.id=/gv\d+/;Index=1
Above case, Index is not an object recognition property. But if above regular expression finds more than one HTML Images by id=gvxxxx, Index helps user to select/get first object among all.
User can do following steps to improve performance quickly
Example:
It is recommended to add ".domain=Flex or Java or Html" for each new window into the appmap, so new window find narrow down to the specific domain.
Example:
[WRSWindow]
WRSWindow=":RFSM:.domain=Html;.class=Html.HtmlBrowser"
FileButton=":RFSM:.class=Html.BUTTON;.id=citationFileButton"
[FlexWindow]
FlexWindow=":RFSM:.domain=Flex;className=RunTimeLoaderFlex30.class=FlexApplication;automationClassName=FlexApplication"
MenuBar=":RFSM:.class=FlexMenuBar;className=mx.controls.MenuBar;id=menuBar;automationClassName=FlexMenuBar"
Example:
[WRSWindow]
WRSWindow=":RFSM:.domain=Html;.class=Html.HtmlBrowser"
DeepButton=":RFSM:.class=Html.HtmlDocument;.title=topDoc;\;.class=Html.HtmlFrame;.id=contentPane;\;.class=Html.HtmlDocument;.title=buttonPane;\;.class=Html.HtmlButton;.id=myButton"
No, there is not any timeout value for the RFSM, if object doesn't find then RFSM will return null object. However, SAFS have some setting about window and their component, and they are in tidtest.ini file. User can set "SECSWaitForComponent=5" and "SECSWaitForWindow=5" value to retry RFSM finding object until reach the value those values.
Check your regular expression string or object's property. Make sure about property start with "." Prefix. If regular expression finds more object then RFSM select first one. User can record a script and see the object property match or contact SAFS dev team.
You can capture RFSM recognition string by two way, they are following
Start RFT, Run -> Test Object Inspector or see for spy glasses with red arrow. It will bring Test Object Inspector GUI, move your mouse to the AUT objects/component (Button etc...), object property will be display into Test Object Inspector.
The HTML Tab recognition string would be ":RFSM:.id=tablink2;.text=By Industry". Normally, two unique properties are enough.
Open RFT, create a project and an empty script. Insert recording by Script -> Insert Recording, the recording will start and click on object to record. Once you record the object then click hit for stop. The new object will insert into RFT object map and it will display on RFT right side Script Explorer view.
Double click on link_tablink2 for the property info.
The recognition string would be ":RFSM:.id=tablink2;.text=By Industry"
User can use any one above method to capture recognition RFSM string; there is no difference, but different ways


Frequently Asked Questions (FAQ)
Frequently, the following questions are asked about the Stages of Development and the Development Task Groups in the context of the Real Estate Development Matrix. These questions are sometimes difficult to answer, but they need to be discussed.
Questions Regarding the Stages of Development
Who is a Land Banker?
Is every farmer or forester really a Land Banker? The determination of the highest and best use of the site is critical to answer this question. If the highest and best use of the site is clearly not farming or forestry, then these activities are interim uses that the developer employs to minimize the holding costs of the property. A gray area occurs when the existing use is the highest and best use, but changing market conditions may alter this determination in the “investible future.”
Doesn’t Land Banking occur in other stages of development?
For example, the Land Packager may acquire a large tract of land from the Land Banker, but decides to only rezone part of the tract. In this case, the developer would be both a Land Packager and a Land Banker.  Similarly, Building Developers may buy several building-ready pads and decide to develop them sequentially over time. In both cases, these developers are not Land Bankers in the Matrix sense, but rather they are developers who have difficult and tricky financing tasks to hold the additional parcels until they are ready for development.
Is Land Packaging really a stage of development?
Land Packaging probably creates more value compared to the cost than any other stage. It is also the stage of development with the highest risk because of the uncertainty regarding the outcome and timing of the Land Packaging process. There are special skills and talents that are required to gain public and political approvals, as well as to determine which issues need to be researched and defined in order to create value for the Land Developer. It is true that every stage of development requires approvals and permits of some kind. However, the Land Packager is changing the legal use of the site, as well as the Land Developers’ and public’s perceptions of the appropriate use of the site in the future.
Why is Building Operation considered a stage of development?
Building Operations is a labor intensive activity that can add value or lose value. The Building Operator adds value by leasing the property to credible tenants with valid leases, as well as by keeping accurate records of the building operations and expenses. By reducing the perceived market risks and reducing the uncertainty about the operating expenses, the Building Operator increases the value the property. Also, the Building Operator can increase value by decreasing the cost of capital. This is usually done by refinancing the property at lower interest rates. Sometimes, the Building Operator may add additional debt to the capital structure and then distribute some of the loan proceeds to the equity capital investors. This would increase the equity capital returns if the interest rate on the borrowed capital is below the required returns of the equity investors. This is referred to as positive financial leverage, but the increased returns to the equity capital must justify the increased financial risks involved.
When does a Building Operator become a Building Renovator?
The Building Operator becomes a Building Renovator when the size of the tenant improvement project requires building permits because the size of the project exceeds certain thresholds. This an imprecise or “fuzzy definition” because if a building remodeling project is big enough, it becomes a renovation. Whether an improvement to the property is defined as a large remodeling job or a building renovation is not a critical, as long as the Building Operator or the Building Renovator is adding value to the property. A building improvement project that requires specific financing is probably a real estate renovation, and a building improvement project aimed at re-positioning the property in the market place is also probably a real estate renovaton.
How often can the renovated property be sold back to a Building Operator?
The renovated property can be sold back to Building Operator as long as the Building Renovator can find a willing and ready Building Operator. This circular process may last for decades. However, at some point, no Building Operators can be found to buy the renovated property, so the Building Renovators will continue to operate the property until the entire property is ready for redevelopment. It should be noted that sometimes in large real estate organizations, the renovated property is not actually “sold” to the Building Operator, but rather it is transferred back to the Building Operations Department for management.
What is the difference between the Building Renovation Stage and the Property Redevelopment Stage?
There are two major differences between these two stages. First, Building Renovators are very active in constructing the new renovations while Property Redevelopers are passively holding the property with interim uses until it is ready to be rezoned for an alternative use. Second, Building Renovators keep the property in its current use, i.e. residential stays residential, retail stays retail, etc. However, Property Redevelopers anticipate and plan for a change of use to the property, i.e. a warehouse becomes loft apartments or a shopping mall becomes a mixed-use project. This is why Property Redevelopers need a Land Packager to take over control of the site and initiate the necessary zoning changes.
Why are so many Property Redevelopers public agencies?
Many times, old, worn-out properties are abandoned so local municipalities acquire the properties because of unpaid back taxes. These municipalities transfer the control of these properties to redevelopment agencies. In a similar manner, state or federal governments may acquire properties for nonpayment of taxes. While each redevelopment authority or agency has its own mission statement, their goals are to transfer the control and ownership of these properties to private sector Land Packagers for development, which usually requires zoning changes of some kind.
How is the Property Redevelopment Stage different from the Land Banking Stage?
Land Banking usually involves “green fields” (previously undeveloped land) while Property Renovation usually involves “brown fields” (previously developed land). That is, redevelopment properties have a history of non-agricultural land uses, which can cause special problems (and opportunities) for future development.
What is a Master Developer?
“Master Developers” usually are defined by government agencies who want a private developer to be the Land Packager, Land Developer, Building Developer, and Building Operator. While these are convenient propositions for the government agencies to make, they are very unrealistic expectations. Very few properties are held by the same private sector owners throughout all of the stages of development. However, many public agencies do not want to deal with the complications involved with a series of owners, so they prefer to ignore them by using the term “Master Developer.” However, mixed-use developments require Master Developers to direct, control, balance, and referee the development of multiple users and sub-developers on a site, each with special needs and concerns. Product-specific developers (such as apartment developers) are important to mixed-use developers, but the success of the entire development must be considered when the needs of each product type are considered in the context of the overall development. In reality, the master developer in in mixed-use development must resolve and minimize the “parking wars” that inevitable occur in mixed-use developments.
Can you move between stages without a sale of the property?
Developers can move forward from one phase to another by deciding not to sell the property and to take on the critical tasks of the next stage of development. Each stage of development has specific tasks that must be achieved to increase the value in that stage. These specific tasks require special skills and additional capital. Thus, by moving into the next stage of development, the developer must understand what needs to be done and bring together a new team with special talents along with additional capital. Too often, developers casually move on the next stage of development as Land Packagers become Land Developers who morph into Building Developers who take on the role of Building Operators. The riskiness of this consolidation strategy becomes obvious when improving market conditions suddenly take a down turn, and the development no longer is profitable as property values decline, mortgage loans are in default, and capital investments are lost. On the other hand, developers can move backwards in the stages of development, but usually there is an acquisition of a new property for development. For example, Building Developers can become Land Developers only if they acquire a piece of land to develop. Likewise, a Land Developer can become a Land Packager only if they acquire additional land to “package.”
Questions Regarding the Development Task Groups
Aren’t the Acquisition Tasks and Disposition Tasks just two sides of the same coin?
Absolutely, the Acquisition and Disposition Tasks are two sides of the same coin, except that the perspective of the acquirer (buyer) is usually focused on a different stage of development from the perspective of the disposer (seller). Perspective is everything
Does the nature and importance of the Task Group depend on the stage of development?
Absolutely. The nature and importance of the Task Group are defined by the stage of development as well as the product type. Although all the Task Groups must be addressed in one way or another.
Are there real-life examples of these Tasks for each Stage of Development?
Examples for each stage/task cell in the Development Matrix are inserted as hyperlinks into the appropriate stage/task cell. These authors are asking interested readers to submit examples that they feel may be appropriate. Our goal is to eventually have examples for every product-type in every cell.
Why are there eight Tasks Groups, rather than seven or nine?
Each set of Tasks requires very different skill sets. However, there is nothing absolute about the number eight. While every Group of Tasks requires certain permits and/ approvals, we made the Approvals and Permits a separate Task Group because the critical nature of these Approval and Permits. If developers can’t get the required Permits and Approvals, they are out of business. It’s that simple, and each stage of development needs different permits and approvals. The Transportation and Accessibility Task Group may appear unusual except that the critical tasks required for on-site and off-site improvement analysis and construction require different designers, engineers, contractors, and permits than the those typically used for the Physical Improvements Task Group. Also, the integration of new infrastructure improvements with existing (and usually old) infrastructure improvements is a unique skill. The creation, construction and financing of transportation and accessibility improvements may require public-private partnerships. These private-public partnerships may be formally defined and documented or casual and informal working relationships. However, they are necessary for success.


Grace Millane's mum cries in court as she hears of injuries on daughter's body
A forensic pathologist told the jury at Grace Millane's murder trial in New Zealand that her bruises suggested she had been pinned down with force before her death
by Matthew Dresch, https://www.mirror.co.uk/authors/matthew-dresch/The mum of murdered British backpacker Grace Millane burst into tears as she heard evidence about her daughter's injuries in court today.
Gillian Millane cried as a forensic pathologist described how Grace's bruises suggested she had been pinned down with force.
Dr Simon Stables said he was sure the backpacker died from strangulation after he found a deep internal bruise in her neck.
Watched by Grace’s tearful mother and father in the public gallery, Dr Stables showed Auckland High Court a series of photographs from a post-mortem he carried out in December last year.
He added that Grace's death was the first case he had seen in New Zealand of manual strangulation during sex.
“From my point of view it is incredibly rare. I have never heard of another case... in New Zealand,” said the doctor.
He told the court that a pattern of bruises on Grace's chest and arms indicated she had been held down.
Her alleged killer, 27, says Grace died accidentally during consensual sex after she asked him to choke her during a Tinder date at his apartment last December.
Describing the cause of death as “pressure to the neck”, Dr Stables said it would need to have been sustained for four or five minutes.
“It’s not going to happen with a gentle touch,” he told the jury. “It’s got to be with some force. It takes quite a bit of effort.”
The bruise was deep inside the neck, he said, and invisible on the surface, suggesting it happened at the time of death.
Other, blue bruises on her torso, he said, were “consistent with some level of restraint.”
Dr Stables rejected a suggestion from defence barrister Ian Brookie that one or more of the bruises could have been a “love bite”.
“It doesn’t resemble one I’ve seen in my experience,” he said.
But he did agree that some of the bruising on the 21-year-old’s arms could be the result of “consensual but physical sex”.
Despite the effects of a week of decomposition before her body was found by tracking the accused’s cellphone, Dr Stables he had no doubt about the bruise, about six centimetres by three below the lefty side of Grace’s jaw, being caused before death.
“I think it is not a post mortem change, it is a real injury,” he said.
Dr Stables said that obstructing the bloodflow or the airways in the neck to cause death by cutting oxygen to the brain would require between two and five kilograms of pressure.
And he added: “A 22-year-old woman with no medical history, I wouldn't expect to bruise easily.”
Mr Brookie told Dr Stables the defence would not challenge the finding of death by manual strangulation but would suggest alcohol had played a part after Grace and the accused had spent the evening drinking cocktails and tequila shots in a number of bars.
Dr Stables had told prosecutor Brian Dickey that alcohol can “sensitise the heart”, but he said results of a toxicology test showing levels in Grace’s blood of twice the legal driving limit were meaningless because of the effects of decomposition.
The defendant denies murder.
The trial continues.


GBP
1.2%
1.000
EUR
0.20%
1.000
USD
0.30%
1.668
INR
0.19%
102.0
AUD
-0.33%
1.842
CAD
-0.24%
1.843
Home Currency
Host Currency
Convert
K
to
K
Next predicted low point:
17/03/2014
Set threshold
Target Value
Email Alert
Go
Facebook Connect
Currency use in the world
Use of selected currencies in the world
×


{% extends "layout.html" %} {% block body %}
Get your energy forecast today!
The EnergApp predicts the energy consumption of your buildings for the coming week! Don't get surprised anymore and start your adventure by registering or logging in. Then add your buildings and enjoy your predictions.
|
Adrian |
Dario |
||
|
Erjona |
Tobias |


SweetFreeStuff.com
///////////////////////////////////////////
FREE LeapFrog Imagicard 10 Card Bonus Pack
Posted: 21 Oct 2015 11:24 AM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Choose from Teenage Mutant Ninja Turtles, Paw Patrol or Letter
Factory. FREE LeapFrog Imagicard 10 Card Bonus Pack
The post FREE LeapFrog Imagicard 10 Card Bonus Pack appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
Free Post Force Chocolate Protein Sample
Posted: 21 Oct 2015 10:39 AM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Request a Post Force Chocolate Protein single serving sample packet by
emailing an address to<EMAIL_ADDRESS>or Like us on Facebook
and send a message with an address! Free Post Force Chocolate Protein Sample
The post Free Post Force Chocolate Protein Sample appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
Free Sample of Rachael Ray Nutrish Zero Grain Dog Food
Posted: 21 Oct 2015 03:00 AM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
*Sample is available again! Select the sample and complete the form. Free
Sample of Rachael Ray Nutrish Zero Grain Dog Food
The post Free Sample of Rachael Ray Nutrish Zero Grain Dog Food appeared
first on SweetFreeStuff.com.
///////////////////////////////////////////
Free 2016 Roadside in Bloom Calendar
Posted: 21 Oct 2015 02:31 AM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
The post Free 2016 Roadside in Bloom Calendar appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
25 Free Pampers Gifts to Grow Points
Posted: 21 Oct 2015 12:00 AM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
To login please click here and enter the code: VC9AVLL312KNF15 for 25 more
points. (If you need to register, click here to sign up and receive 100
points!) The Pampers Gifts to Grow Rewards Program rewards you for choosing
Pampers diapers, training pants and wipes for your growing baby. To start,
simply collect the codes from Continue reading 25 Free Pampers Gifts to
Grow Points
The post 25 Free Pampers Gifts to Grow Points appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
Free Sample BioTrue Multi Purpose Solution
Posted: 20 Oct 2015 11:00 PM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Select OPTI-FREE for what contact lens solution are you currently using.
The post Free Sample BioTrue Multi Purpose Solution appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
Free Depend Sample Kit
Posted: 20 Oct 2015 10:05 PM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Sign up to get a free sample of Depend underwear for men or women. Will
arrive in a discreet package.
The post Free Depend Sample Kit appeared first on SweetFreeStuff.com.
///////////////////////////////////////////
Free Sample of Emergen-C
Posted: 20 Oct 2015 10:03 PM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Sign up to receive free samples of Emergen-C Vitamin Drink Mix. Sample Link
The post Free Sample of Emergen-C appeared first on SweetFreeStuff.com.
///////////////////////////////////////////
Free JustGoGirl Pad Sample Pack
Posted: 20 Oct 2015 10:00 PM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
Free JustGoGirl Pad Sample Pack
The post Free JustGoGirl Pad Sample Pack appeared first on
SweetFreeStuff.com.
///////////////////////////////////////////
Free Poise Pad Sample Kit
Posted: 20 Oct 2015 08:05 PM PDT
http://feedproxy.google.com/&edburner&utm_medium=email
The post Free Poise Pad Sample Kit appeared first on SweetFreeStuff.com.


Your average project
Same in small
Large with 200 workunits left and an completion estimate
Large with 200 workunits left but NO completion estimate
You don't want to be in this one


OWASP ZAP memungkinkan anda untuk mendekripsi koneksi SSL secara transparan. Untuk bisa melakukannya, ZAP harus mengenkripsi setiap permintaan sebelum mengirim ke server dan mendekripsi setiap tanggapan yang kembali hadir. Namun, ini sudah dilakukan oleh peramban. That's why, the only way to decrypt or intercept the transmission, is to do a 'manipulator in the middle' approach.
Singkat kata, setiap data yang dikirim dan diterima dari server yang dienkripsi/didekripsi dengan menggunakan sertifikat server asli di dalam ZAP. Cara ini, ZAP mengatahui teks polosnya.
Untuk membuat sesi yang perlindungan SSL dari anda (peramban anda), ZAP akan menggunakan sertifikat itu sendiri. Inilah yang bisa anda buat.
Setiap sertifikat yang dibuat oleh ZAP akan ditandatangani untuk nama server yang sama. In the example above, ZAP will create a certificate
for the server's name www.example.com
. Dengan cara ini, peramban anda akan melakukan enkripsi SSL secara reguler.
Bayangkan anda sedang mengunjungi beberapa SSL situs yang dilindungi. Setiap kali peramban anda menghubungkan situs seperti itu, maka diciptakan sebuah sertifikat SSL baru. Tetapi, sertifikat ini tidak dipercaya oleh siapapun (karena dibuat sendiri oleh ZAP). Dengan kata lain, peramban anda tidak akan menerima sertifikat tersebut di lokasi pertama. Mungkin anda terbiasa dengan situasi seperti itu, ketika peramban anda mengadu kesalahan sertifikat, namun secara manual anda bisa membuat aturan pengecualian untuk server tersebut.
Setiap sertifikat yang diciptakan oleh ZAP di rantai kepercayaan dari "ZAP Root CA" sertifikat. (Untuk rincian lebih lanjut tentang rantai kepercayaan, gunakan mesin pencari favorit Anda ;-) ) Artinya, Anda (browser Anda) hanya harus mempercayai ZAP Root CA sekali, dan sertifikat lebih lanjut secara otomatis dipercaya. Dengan kata lain, setelah Anda menambahkan sertifikat CA Root ZAP ke daftar terpercaya Anda Root CAs, browser Anda tidak mengenal pria di tengah.
Note:
On iOS 10.3 and onwards, you also need to enable full trust for the root certificate: Go to Settings > General > About > Certificate Trust Settings. Under “Enable full trust for root certificates”, turn on trust for the certificate.
When you are running ZAP for the first time then it will generate a Root CA certificate just for you. If you do not use the 'browser launch' feature then you have to install it within your browser or HTTP client application. See section installation for more details.
Every generated Root CA certificate is valid for one year. After that period you have
to create a new one.
Every generated Root CA certificate is 2048 bit strong (RSA with SHA1).
Every generated Root CA certificate starts with serial number "1".
Every generated Root CA certificate consists of the following identifiers:
CN = OWASP Zed Attack Proxy Root CA
L = 87b77fe834b0a301
O = OWASP Root CA
OU = OWASP ZAP Root CA
C = XX
As you can see, there's a Location identifier (L) which is only a hexadecimal number. This number is constructed out of two 32bit hash codes: user's name and user's home directory. This way you can identify your own certificate when using multiple installations. But there's no way, that anyone can figure out your name from this hash code.
When you're using multiple ZAP installation and you want to use the same
Root CA certificate, so you can import it. Simply use one installation of OWASP ZAP
to generate one Root CA certificate.
Copy the file 'OWASP ZAP/config.xml' from your users home directory to
the PC, where you want to use the same certificate and press 'import' to import it.
Alternatively you can use the command line options:
You can also import certificates stored in pem files as long as they include both
the certificate and the unencrypted private key in the following format:
-----BEGIN CERTIFICATE-----
MIIC9TCCAl6gAwIBAgIJANL8E4epRNznMA0GCSqGSIb3DQEBBQUAMFsxGDAWBgNV
BAoTD1N1cGVyZmlzaCwgSW5jLjELMAkGA1UEBxMCU0YxCzAJBgNVBAgTAkNBMQsw
CQYDVQQGEwJVUzEYMBYGA1UEAxMPU3VwZXJmaXNoLCBJbmMuMB4XDTE0MDUxMjE2
MjUyNloXDTM0MDUwNzE2MjUyNlowWzEYMBYGA1UEChMPU3VwZXJmaXNoLCBJbmMu
MQswCQYDVQQHEwJTRjELMAkGA1UECBMCQ0ExCzAJBgNVBAYTAlVTMRgwFgYDVQQD
Ew9TdXBlcmZpc2gsIEluYy4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAOjz
Shh2Xxk/sc9Y6X9DBwmVgDXFD/5xMSeBmRImIKXfj2r8QlU57gk4idngNsSsAYJb
1Tnm+Y8HiN/+7vahFM6pdEXY/fAXVyqC4XouEpNarIrXFWPRt5tVgA9YvBxJ7SBi
3bZMpTrrHD2g/3pxptMQeDOuS8Ic/ZJKocPnQaQtAgMBAAGjgcAwgb0wDAYDVR0T
BAUwAwEB/zAdBgNVHQ4EFgQU+5izU38URC7o7tUJml4OVoaoNYgwgY0GA1UdIwSB
hTCBgoAU+5izU38URC7o7tUJml4OVoaoNYihX6RdMFsxGDAWBgNVBAoTD1N1cGVy
ZmlzaCwgSW5jLjELMAkGA1UEBxMCU0YxCzAJBgNVBAgTAkNBMQswCQYDVQQGEwJV
UzEYMBYGA1UEAxMPU3VwZXJmaXNoLCBJbmMuggkA0vwTh6lE3OcwDQYJKoZIhvcN
AQEFBQADgYEApHyg7ApKx3DEcWjzOyLi3JyN0JL+c35yK1VEmxu0Qusfr76645Oj
1IsYwpTws6a9ZTRMzST4GQvFFQra81eLqYbPbMPuhC+FCxkUF5i0DNSWi+kczJXJ
TtCqSwGl9t9JEoFqvtW+znZ9TqyLiOMw7TGEUI+88VAqW0qmXnwPcfo=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIICXgIBAAKBgQDo80oYdl8ZP7HPWOl/QwcJlYA1xQ/+cTEngZkSJiCl349q/EJV
Oe4JOInZ4DbErAGCW9U55vmPB4jf/u72oRTOqXRF2P3wF1cqguF6LhKTWqyK1xVj
0bebVYAPWLwcSe0gYt22TKU66xw9oP96cabTEHgzrkvCHP2SSqHD50GkLQIDAQAB
AoGBAKepW14J7F5e0ppa8wvOcUU7neCVafKHA4rcoxBF8t+P7UhiMVfn7uQiFk2D
K8gXyKpLcEdRb7K7CI+3i8RkoXTRDEZU5XPMJnZsE5LWgNQ+pi3HwMEdR0vD2Iyv
vIH3tq6mNKgDu+vozm8DWsEP96jrhVbo1U1rzyEtX46afo79AkEA/VXanGaqj4ua
EsqfY6n/7+MTm4iPOM7qfoyI4EppJXZklc/FbcV2lAjY2Jl9U6X7WnqCPn+/zg44
6lKWTnhAawJBAOtmi6nw8WjY6uyXZosE/0r4SkSSo20EJbBCJcgdofKT+VCGB4hp
h6XwGdls0ca+qa5ZE1a196dpwwVre0hm88cCQQDrUm3QbHmw/39uRzOJs6dfYPKc
vlwz69jdFpQqrFRBjVlf4/FDx3IfjpxHj0RgiEUUxcnoXmh/8qwh1fdzCrbjAkB4
afg/chTLQUrKw5ecvW2p9+Blu20Fsv1kcDHLb/0LjU4XNrhbuz+8TlmqstOMCrPZ
j48o5+RLKvqrpxNlMeS5AkEA6qIdW/yp5N8b1j2OxYZ9u5O//BvspwRITGM60Cps
yemZE/ua8wm34SKvDHf5uxcmofShW17PLICrsLJ7P35y/A==
-----END PRIVATE KEY-----
And yes, that example will work - its the Superfish certificate!
In the options dialog of ZAP you're seeing the raw bytes (hexa-decimal encoded) of the certificate. The option "view" tries to use your system's default viewing tool for ".CER" files. On Windows, this is typically the same, when exporting the certificate and double clicking on it.
In the options dialog of ZAP you're seeing the raw bytes (hexa-decimal encoded) of the certificate. Many programs are using this simple format for import/export functions. When clicking 'export', these bytes are saved to disk. This is equal to selecting all and doing CTRL+C (copy to clipboard) and save it into a new .CER file (which is simple text as you see in the dialog).
Each ZAP instance is using it's own root certificate. Of course, you can import root certificates, to use them on multiple machines. When running, there will be sub-certificated created, each time a HTTPS resource is requested. That means, the Root CA certificate is used as an issuer.
Every dynamically generated certificate is valid for 1000 days.
Every dynamically generated certificate is 2048 bit strong (RSA with SHA1).
Every dynamically generated certificate has a random serial number.
Every dynamically generated certificate consists of the following identifiers:
CN = www.example.com
E =<EMAIL_ADDRESS>C = XX
O = OWASP
OU = Zed Attack Proxy Project
Side note:
Each time you start ZAP, internally a random serial number offset is generated.
Every dynamically generated certificate will use this offset plus an
increasing counter. For example, first dynamically certificate has
serial number 2314, the second one 2315, the third one 2316 and so on.
The reason for this is simple: browsers are also caching certificates.
When you restart ZAP but don't restart your browser, it could happen,
that the browser sees the same certificate but with different serial number.
In the end, the browser would complain about and reject the certificate.
By using the random offset (internally 48bit random number), the chances
are 1 to 281.474.976.710.656 that when restarting ZAP, the serial number
offset is a different one.
So in the rare case, you are discovering that you browser complains about
a broken serial number within the certificate, just restart your browser ;-)
.
Any HTTPS client you want to use, has to know the OWASP Root CA certificate as 'trusted root certificate'. Typically you have to install manually the ZAP certificate into your browser's list of trusted root certificates.
The easiest way is to click on view and choose 'Install certificate'. Alternatively, you can save/export your generated certificate (copy it to you target computer) and double click the .CER file. When doing so, the regular Windows wizard for certificate installation assistance is poping up. In this wizard manually choose the certificate store. Do NOT let Windows choose automatically the certificate store. Choose 'trusted root certificates' as store and finalize the wizard.
After successfully installation, you can check the certificate.
Firefox is using it's own certificate store. Thats why you have to import it twice, when you're using both browser on windows. Installation and late on validation is done in the same preferences dialog:
Attention, there are risks!
When adding self generated Root CA certificates to your list of trusted
root certificates, everyone with the root certificate can smuggle data
into your system (browser).
In other words when you're not testing in a safe environment, but on
productive machines, be aware that you're opening an additional attack
vector to your system.
| Sertifikat | untuk sertifikat klien SSL |


This is a quick version of everything listed below, if you want more clear or specific instructions then please skip this section.
In the Console
tab of RStudio in (None)
project:
install.packages("workflowr")
library("workflowr")
wflow_git_config(user.name = "First Last", user.email =<EMAIL_ADDRESS>In the Console
tab,
wflow_start("PROJECT_NAME")
wflow_build()
wflow_publish(c("analysis/*.Rmd"), "Publish the initial files for PROJECT_NAME")
In the Console
tab,
wflow_use_gitlab(username = "first.last", repository = "PROJECT_NAME", domain = "ceres.agios.com")
Go to GitLab and do the following:
Terminal
tab in RStudio
In the Console
tab,
wflow_open("analysis/NEW_FILE.Rmd")
wflow_build()
wflow_publish(c("analysis/*.Rmd"), "Publish the file NEW_FILE")
In the Terminal
tab,
git push
wflow_build()
wflow_build("file.rmd")
wflow_git_commit("file.rmd", "This is your commit message")
git push()
We are assuming that you already have RStuido and GitLab, for this implementation we are using the RStudio on the new server (hpc.agios.local) which is version 1.2.1335.1.
If you don’t have GitLab you need to have an account set up through Agios. If you don’t have the updated RStudio you need to get access to the new server and then use the following link : hpc.agios.local
(None)
New Folder
, it is labeled Home
with a small house.Console
tab located in the bottom left hand corner :install.packages("workflowr")
Console
tab:library("workflowr")
*This only needs to be done once per laptop
In the Console
tab:
wflow_git_config(user.name = "First Last", user.email =<EMAIL_ADDRESS>In the Console
tab:
wflow_start("PROJECT_NAME")
wflow_start
do?
analysis
folder for?
index.rmd
index.html
which eventually runs the entire project_site.yml
docs
folder for?
In the Console
tab:
wflow_build()
wflow_build()
do?
Your website should like similar to the image of mine shown below (except with a Publish tab instead of a Dates tab)
At any time you can view the current site on your local machine by typing in the Console
tab:
wflow_view()
Currently, our project is simply an HTML file stored on our laptop, publishing the website will make it available online.
In the Console
tab:
wflow_status()
This allows you to view which files are published or unpublished currently.
Now we want to publish our page the command to do so takes three parts
Overall, wflow_publish
is a quick and error-free way for us to commit and push all of our Rmd files to GitLab at once.
In the Console
tab:
wflow_publish(c("analysis/index.Rmd", "analysis/about.Rmd", "analysis/license.Rmd"), "Publish the initial files for PROJECT_NAME")
New Project
In order for you to successfully connect to GitLab you need to have an ssh key linked to your GitLab.
There is a simple guide to doing this on GitLab here so you can simply follow along below and click the link if you get lost.
# macOS:
pbcopy < ~/.ssh/id_ed25519.pub
# WSL / GNU/Linux (requires the xclip package):
xclip -sel clip < ~/.ssh/id_ed25519.pub
#Git Bash on Windows:
cat ~/.ssh/id_ed25519.pub | clip
Settings
then SSH Keys
and simply paste and name your key there.** Only need to do this once per laptop or GitLab account
Console
tab: wflow_use_gitlab(username = "first.last", repository = "PROJECT_NAME", domain = "ceres.agios.com")
push an existing Git repository
option
cd
into the repo for the user, there is an example below of what this should look like.git remote rename origin old-origin
git remote add origin git@ceres.agios.com:Caitlin.Guccione/test-.git
git push -u origin --all
git push -u origin --tags
Terminal
tab
Make sure you are inside the PROJECT_NAME project inside RStudio
In Console
tab type:
wflow_open("analysis/NEW_FILE.Rmd")
If we now want to see the HTML version of our file then we have two options:
Console
tab type:wflow_build()
These steps will simply change the HTML file local bu tin order to make this public and add it to GitLab we need to update our changes.
Console
tab,wflow_status()
This can also be done by looking at the red checks on the workflowr section of your live page as shown below:
Console
tab,wflow_publish(c("analysis/index.Rmd", "analysis/NEW_FILE.Rmd"), "Add my first file")
Publish Website
tab of this page and so you can customize it in the same wayThere is one exception to this and it’s when you want to make updates to the _site.yml
file found in the analysis
folder. This file controls the style on the top of every page of your website. In this case, you want to update all HTML files even though their Rmd files aren’t changed.
In that case, use this,
wflow_publish("analysis/_site.yml", "Change the theme", republish = TRUE)
As we did previously in the Publish Website
, in the Terminal
tab,
git push
If you want the normal workflowr setup which is found on all the other pages, then replace the — part of the file with the following code:
---
title: "Home"
site: workflowr::wflow_site
output:
workflowr::wflow_html:
toc: false
editor_options:
chunk_output_type: console
---
If you already have an idea of what you would like to change, below are a few very helpful resources filled with information:
Changing the theme modifies the overall appearance of the webpage is a quick and easy way to spice up the page.
analysis/_site.yml
fileouput
add theme = cerulean
as shown below:
output:
theme: cerulean
wflow_build()
wflow_publish("analysis/_site.yml", "Change the theme", republish = TRUE)
The following website will also walk you through changing the theme: Themes Overview
Although this may seem like a simple task, it is a bit challenging since we are using Workflowr
photos
folder inside the docs
folder and add your photo there:dir.create("docs/photos")
wflow_build()
wflow_git_commit
and then we can use wflow_publish
to automatically push the rest of the files to GitLabwflow_git_commit("docs/assets/external.png", "Add external image of ...")
wflow_publish()


Xilinx Processor IP Library
Software Drivers
Main Page
Files
File List
File Members
All
Functions
Here is a list of all documented file members with links to the documentation:
XIo_EndianSwap16() :
xio.c
XIo_EndianSwap32() :
xio.c
XIo_InSwap16() :
xio.c
XIo_InSwap32() :
xio.c
XIo_OutSwap16() :
xio.c
XIo_OutSwap32() :
xio.c
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved.


{% extends "templates/partials/base.html" %} {% block head_extra %} {% endblock %} {% block title %}{% parent %} - Homepage{% endblock %} {% block content %}
This is your homepage, located at /pages/index.html.
{# If you have at least content page type, we show a list. #} {% if cms_types|size !== 0 %}


| version: | @version@ |
| released: | @builddate@ |
Thank you for downloading the Openfire connection manager module!
Connection managers improve the scalability of the Openfire server by allowing multiple servers to handle the load of client connections. Each connection manager aggregates XMPP client connections and forwards their traffic to a central XMPP server. For more information and installation instructions, view the documentation that can be found in the "documentation" directory included with this distribution.
Further information can be found on the Openfire website.
Changelog
Connection manager module releases are synchronized with Openfire server releases. View the Openfire changelog for details on what's changed since the last release.
Support
Free support is provided by the Openfire community in the online forums. Commercial support is available from Jive Software.
License Agreements
The Connection Manager source code is governed by the Apache 2.0 license, which can be found in the LICENSE.html file in this distribution. The module also contains Open Source software from third-parties. Licensing terms for those components is specifically noted in the relevant source files.


My name is Keith O'Hara. I obtained my Ph.D. in Economics from NYU in 2018.
My academic research interests include:
My computational interests include:
Most of my computational work involves R and C++. Below you can find links to some of my projects.


A tour of probabilistic programming language APIs
What does it look like to do MCMC in different frameworks?
Introduction
I wanted an easy reference for myself and others to see how different developers think about defining
probabilistic models, and this is an attempt at that. I have a number of biases
I am a contributor to PyMC3
, and have been working on
PyMC4
(which uses TensorFlow probability). I write far more Python than R, and far more
R than julia or C++. , but the code
shown here is open-source, and contributions/suggestions are gratefully accepted.
I am also including an opinionated - but I hope fair - summary of the projects as of the time of
writing.
On my TODO
list are greta in R;
Turing and Gen in
Julia; and Figaro and Rainier in Scala.
Different libraries are written for different reasons, and I care strongly about easily writing and
sharing models, and then sampling from them.
The Task
I have generated a dataset as follows:
import numpy as np np.random.seed(0) ndims = 5 ndata = 100 X = np.random.randn(ndata, ndims) w_ = np.random.randn(ndims) # hidden noise_ = 0.1 * np.random.randn(ndata) # hidden y_obs = X.dot(w_) + noise_
For each probabilistic programming language (PPL), I will:
- Write down the following model: $$ \begin{align} p(\mathbf{w}) &\sim \mathcal{N}(\mathbf{0}, I_5)\\ p(\mathbf{y} | X, \mathbf{w}) &\sim \mathcal{N}(X\mathbf{w}, 0.1I_{100}), \end{align} $$ where \(I_n\) is the \(n \times n\) identity matrix.
- Draw 1,000 samples from the posterior distribution
$$
p(\mathbf{w} | X, \mathbf{y}) \propto p(\mathbf{y} | X, \mathbf{w}) p(\mathbf{w})
$$
where I pass
y_obs
to the code at some point. - Do a sanity check that the samples for
w
are reasonable near to the true values forw
, given the model.For those keeping track at home, the posterior of the model given the data is also a Gaussian, $$p(\mathbf{w} | X, \mathbf{y}) = \mathcal{N}((X^TX + I_5)^{-1}X^T\mathbf{y}, (X^TX + I_5)^{-1})$$
PyStan
version <IP_ADDRESS>Documentation for PyStan, and for Stan itself.
Hand-rolled automatic differentiation in C++. Many (most?) good ideas in PyMC3
came from
here. Updates to the code sometimes accompany papers describing the new algorithms. The
authors/contributors care deeply about correctness and practicality, and it shows. A very good, fast
choice if you care about MCMC. The models are in their own programming language, which can be a little
funny to use in Python (where I would prefer Python objects to strings). Uses the dynamic NUTS
algorithmThe Stan team actually keeps
changing/improving the sampling algorithm they use, and calling it NUTS is at least a little
misleading, since these improvements are substantive compared to the algorithm described in
the paper. If you want to be proper, call it something like "dynamic Hamiltonian Monte Carlo method
with multinomial sampling of dynamic length trajectories, generalized termination criterion, and
improved adaptation of the Euclidean metric." by default, which is currently the best default
to use, though only two libraries here have a good version.
import pystan linear_regression = """ data { intN; // number of data items int K; // number of predictors matrix[N, K] X; // predictor matrix vector[N] y; // outcome vector } parameters { vector[K] w; // coefficients for predictors } model { y ~ normal(X * w, 0.1); // likelihood } """ linear_data = {'N': ndata, 'K': ndims, 'y': y_obs, 'X': X} sm = pystan.StanModel(model_code=linear_regression) fit = sm.sampling(data=linear_data, iter=1000, chains=4)
PyMC3
version 3.7Uses theano
for automatic differentiation. The contributors are strong, all the diagnostics
are good looking, and all the estimates are above average See my biases above.. More seriously, it is
quite fast, flexible if you are willing to write Theano, and has robust tuning and diagnostics, so you
can get some samples from a model with a minimum of fuss. Interoperates quite smoothly with Python
projects. Also uses the NUTS algorithm.
import pymc3 as pm import theano.tensor as tt with pm.Model(): w = pm.Normal('w', 0, 1, shape=ndims) y = pm.Normal('y', tt.dot(X, w), 0.1, observed=y_obs) trace = pm.sample(1000)
emcee
version 2.2.1This library is a "pure-Python implementation of Goodman & Weare’s Affine Invariant Markov chain Monte Carlo (MCMC) Ensemble sampler", and does not use gradients. This means it does not scale as well to over, say 10 dimensions, but installation is very easy. Also somewhat unique in writing custom likelihood and prior density functions. Lots of examples and users in the astrophysics community.
import scipy.stats as st import emcee # log likelihood def lnlike(w, X, y): model = X.dot(w) inv_sigma2 = 0.1 ** -2 return -0.5*(np.sum((y-model)**2)*inv_sigma2 - np.log(inv_sigma2)) # Define a prior for w w_rv = st.multivariate_normal(np.zeros(ndims), np.eye(ndims)) # Log probability for w lnprior = w_rv.logpdf # logp(w | X, y) = logp(y | X, w) + logp(w) def lnprob(w, X, y): return lnprior(w) + lnlike(w, X, y) nwalkers = 100 pos = w_rv.rvs(size=nwalkers) sampler = emcee.EnsembleSampler(nwalkers, ndims, lnprob, args=(X, y_obs)) pos, lprob, rstate = sampler.run_mcmc(pos, 1000)
Pyro
version 0.3.4Uses pytorch
for automatic differentiation. I get the impression the library traditionally
cared more about variational inference, but running HMCAs is the case with TensorFlow Probability, this
implementation is parametrized by number of steps rather than path length, which has some
performance implications I still do not entirely grasp. For example, taking smaller steps with a
fixed path length means each sample takes longer, while keeping a fixed number of steps means the
sample will take the same amount of time but be more correlated. was quite smooth.
There is no NUTS, which means you may have to manually set the number of stepsThis was clearly documented, I just missed it. Updated the code
example to use it, too.. Pyro implements NUTS as well as HMC.
import pyro import torch from pyro.infer.mcmc import NUTS, MCMC import pyro.distributions as dist def model(X): w = pyro.sample('w', dist.Normal(torch.zeros(ndims), torch.ones(ndims))) y = pyro.sample('y', dist.Normal(torch.matmul(X, w), 0.1 * torch.ones(ndata)), obs=torch.as_tensor(y_obs, dtype=torch.float32)) return y nuts_kernel = NUTS(model, adapt_step_size=True) py_mcmc = MCMC(nuts_kernel, num_samples=1_000, warmup_steps=500) py_mcmc = py_mcmc.run(torch.as_tensor(X, dtype=torch.float32))
TensorFlow Probability
version 0.8.0-dev20190721Uses tensorflow
for automatic differentiation. This is also using raw HMC parametrized by
number of steps (see Pyro
for commentary). This is the most verbose of the libraries
reviewed here, which can be good (more control) and bad (this was four lines in
PyMC3
)I actually had a bug for a while where I had
w_dist = tfd.Normal(loc=tf.zeros(ndims), scale=1.0, name="w")
. This defines a valid
model, because tfp
is so flexible, but the wrong model.. The
computations are also all vectorized: I can sample 1,000 chains in about the same time I sample 4
chains,
which seems pretty unique.Blog post coming on
that. These are some reasons why one might write a high level, user friendly API on top of
this library and name it PyMC4
.
import tensorflow as tf import tensorflow_probability as tfp tfd = tfp.distributions X_tensor = tf.convert_to_tensor(X, dtype='float32') @tf.function def target_log_prob_fn(w): w_dist = tfd.Normal(loc=tf.zeros((ndims, 1)), scale=1.0, name="w") w_prob = tf.reduce_sum(w_dist.log_prob(w)) y_dist = tfd.Normal(loc=tf.matmul(X_tensor, w), scale=0.1, name="y") y_prob = tf.reduce_sum(y_dist.log_prob(y_obs.reshape(-1, 1))) return w_prob + y_prob # Initialize the HMC transition kernel. num_results = 1000 num_burnin_steps = 500 adaptive_hmc = tfp.mcmc.SimpleStepSizeAdaptation( tfp.mcmc.HamiltonianMonteCarlo( target_log_prob_fn=target_log_prob_fn, num_leapfrog_steps=4, step_size=0.01), num_adaptation_steps=int(num_burnin_steps * 0.8)) samples, is_accepted = tfp.mcmc.sample_chain( num_results=num_results, num_burnin_steps=num_burnin_steps, current_state=tf.zeros((ndims, 1)), kernel=adaptive_hmc, trace_fn=lambda _, pkr: pkr.inner_results.is_accepted)
Edward 2
version 0.8.0-dev20190721Uses tensorflow
for automatic differentiation. This is a submodule of TensorFlow Probability
that provides a flexible API based on the ideas from the popular Edward libraryThe same developer, so the similarity is not
surprising.. Note the biggest change from the tfp
code above is that defining
the joint
probability is a bit cleaner, but we still use the same code to actually get the samples.
from tensorflow_probability import edward2 as ed import tensorflow as tf X_tensor = tf.convert_to_tensor(X, dtype='float32') def linear_regression(X): w = ed.Normal(loc=tf.zeros((ndims, 1)), scale=1.0, name="w") y = ed.Normal(loc=tf.matmul(X, w), scale=0.1, name='y') return y log_joint = ed.make_log_joint_fn(linear_regression) def target_log_prob_fn(w): return log_joint(X_tensor, w=w, y=y_obs.reshape(-1, 1)) # Below here is from TFP section num_results = 1000 num_burnin_steps = 500 adaptive_hmc = tfp.mcmc.SimpleStepSizeAdaptation( tfp.mcmc.HamiltonianMonteCarlo( target_log_prob_fn=target_log_prob_fn, num_leapfrog_steps=4, step_size=0.01), num_adaptation_steps=int(num_burnin_steps * 0.8)) ed_samples, is_accepted = tfp.mcmc.sample_chain( num_results=num_results, num_burnin_steps=num_burnin_steps, current_state=tf.zeros((ndims, 1)), kernel=adaptive_hmc, trace_fn=lambda _, pkr: pkr.inner_results.is_accepted)
Numpyro
version 0.1.0Uses jax
for automatic differentiation. Built by the same people who work on Pyro, and
includes a very cool iterative implemenation of the NUTS algorithmI have not looked closely enough to see if this is
"NUTS as in the 2013 paper", or "NUTS as in the algorithm implemented by Stan/PyMC3.". Note
the import section looks a little overwhelming, but jax
is a wonderful library that wraps
numpy functionality. A more typical usage would be to import jax.numpy as np
, so that no
one was any wiser that you are using autodiff. This looks very similar to the Pyro implementation, but
notice I am jumping through fewer hoops to convert my numpy arrays into torch tensors.
import jax.numpy as jnp from jax import random import numpyro.distributions as dist from numpyro.handlers import sample from numpyro.hmc_util import initialize_model from numpyro.mcmc import mcmc def model(X): w = sample('w', dist.Normal(jnp.zeros(ndims), jnp.ones(ndims))) y = sample('y', dist.Normal(jnp.matmul(X, w), 0.1 * jnp.ones(ndata)), obs=y_obs) rng = random.PRNGKey(0) init_params, potential_fn, constrain_fn = initialize_model(rng, model, X=X) num_warmup, num_samples = 1000, 2000 # Run NUTS. npyro_samples = mcmc(num_warmup, num_samples, init_params, potential_fn=potential_fn, trajectory_length=10, constrain_fn=constrain_fn)
Brancher
version 0.3.4NOTE: Very new library. As far as I can tell, this does not implement MCMC (yet?), nor can I calculate log probabilities to verify my implementation. It looks nice, though!
Uses pytorch
for automatic differentiation. This came out this week, and I gave it a test
drive, but could not do much damage with it yet.
from brancher.variables import ProbabilisticModel from brancher.standard_variables import NormalVariable from brancher import inference import brancher.functions as BF import torch X_tensor = torch.as_tensor(X, dtype=torch.float32) # Model w = NormalVariable(loc=torch.zeros(ndims), scale=1., name="w") y = NormalVariable(loc=BF.matmul(X_tensor, w), scale=0.1, name="y") y.observe(y_obs) model = ProbabilisticModel([w, y])
PyMC4
version 0.0.1NOTE: Still working on the API. Don't use this yet.
Uses tensorflow probability (and hence TensorFlow) for automatic differentiation. I am including this for what the model definition syntax is looking like right now, though some work needs to happen to wire the model through to the proper TensorFlow Probability functions.
import pymc4 import tensorflow as tf @pymc4.model() def linear_model(): w = yield pymc4.distributions.Normal('w', mu=np.zeros((5, 1)), sigma=1.) y = yield pymc4.distributions.Normal('y', mu=tf.matmul(X, w), sigma=0.1)
PyProb
version 0.13.0Joins emcee
in not using a gradient based sampler -- here we use importance sampling. I also
had to cheat a little bit and take 50,000 samples instead of 1,000 to get the estimates to be
reasonable.
The samples are pretty fast, but I suspect this does not scale to higher
dimensionsNow I have a paper to read about how importance sampling can
scale. (but I also suspect
that this does allow for defining a more broad class of models than most of the other languages).
Defining this model was pretty nice, and I am surprised more languages do not subclass a
Model
object.
import torch import pyprob from pyprob import Model from pyprob.distributions import Normal class LinearModel(Model): def forward(self): X_tensor = torch.as_tensor(X, dtype=torch.float32) w = pyprob.sample(Normal(torch.zeros(ndims), torch.ones(ndims))) y = Normal(torch.matmul(X_tensor, w), 0.1 * torch.ones(ndata)) pyprob.observe(y, name='y_obs') return w model = LinearModel() posterior = model.posterior_distribution( num_traces=50_000, inference_engine=pyprob.InferenceEngine.IMPORTANCE_SAMPLING, observe={'y_obs': torch.as_tensor(y_obs, dtype=torch.float32)})
Accuracy
I have confidence that all the libraries implement their algorithm of choice correctly, and I tried to write a simple model that would provide some reasonable samples from the correct posterior. This section only tries to verify that my implementations are reasonable.
To say again with a stronger font, any errors shown here are (probably) MCMC error, and should not be interpreted as an implementation being "good" or "bad". It is a bigger, more careful job to benchmark performance, which is definitely not what this chart does.


Text level elements include the following:
a for links,
em for stressed emphasis,
strong for importance,
small for side comments,
s for inaccurate text,
cite for citations,
q
for inline quotes,
dfn for definitions,
abbr for abbreviations,
for machine-readable date or time,
code
for code examples,
var for variables,
samp for computer output,
kbd for user input,
sub for subscript,
sup for superscript,
i for alternative voice (italicized),
b for emboldened keywords,
u for annotations,
mark for marked or highlighted text,
ins for visibly inserted content
del for visibly deleted content.


Test::Search::Test Class Reference
Inherits Test::Base.Inherited by Test::Search::Best< Model, Engine >, Test::Search::DFS< Model >, and Test::Search::LDS< Model >.
Detailed Description
Base class for search tests.Definition at line 354 of file search.cc.
Public Member Functions | |
| Test (const std::string &s, HowToBranch _htb1, HowToBranch _htb2, HowToBranch _htb3, HowToConstrain _htc=HTC_NONE) | |
| Initialize test. | |
Static Public Member Functions | |
| static std::string | str (unsigned int i) |
| Map unsigned integer to string. | |
| static std::string | str (HowToBranch htb) |
| Map branching to string. | |
| static std::string | str (HowToConstrain htc) |
| Map constrain to string. | |
Public Attributes | |
| HowToBranch | htb1 |
| How to branch. | |
| HowToBranch | htb2 |
| HowToBranch | htb3 |
| HowToConstrain | htc |
| How to constrain. |
Constructor & Destructor Documentation
| Test::Search::Test::Test | ( | const std::string & | s, | |
| HowToBranch | _htb1, | |||
| HowToBranch | _htb2, | |||
| HowToBranch | _htb3, | |||
| HowToConstrain | _htc = HTC_NONE | |||
| ) | [inline] |
Member Function Documentation
| static std::string Test::Search::Test::str | ( | unsigned int | i | ) | [inline, static] |
| static std::string Test::Search::Test::str | ( | HowToBranch | htb | ) | [inline, static] |
| static std::string Test::Search::Test::str | ( | HowToConstrain | htc | ) | [inline, static] |
Member Data Documentation
The documentation for this class was generated from the following file:


Cambridge analytica planned to launch it's own cryptocurrency.
The company behind Facebook’s massive data leak scandal, Cambridge Analytica, attempted to develop its own cryptocurrency this past year and intended to raise funds through an initial coin offering, Reuters and The New York Times reported today. The digital coin would have helped people store online personal data and even sell it, former Cambridge Analytica employee Brittany Kaiser told the Times.
This maybe the new free spotify.
There have been reports about upcoming changes to Spotify’s free tier of service over the past couple of weeks, and it appears the music service is now serving the updated UI to select users. While The Verge cannot confirm if this is officially the new form of the free version for mobile expected to roll out next week, these UI changes, which include the option to play songs on demand in select playlists, would make the free tier act more like a Premium account. Spotify declined to comment.
IRS to extend tax deadline for customers affected by e-filing outage.
The Internal Revenue Service isn’t the most technologically sophisticated government agency in the US. As evidence, check out its online payment system, called Direct Pay, that still remains out of service on the tax filing deadline for the entire country, as noted by Engadget. The Direct Pay system went down sometime early this morning as part of a widespread failure of the IRS’s electronic filing system, due most likely to a technical glitch possibly related to the huge influx of people trying to file returns. The IRS says it is “working to resolve the issue.”
Facebook, Microsoft and other tech companies pledge to never help governments launch cyberattacks.
Thirty-four major technology companies — including Facebook, Microsoft, HP, ARM, Cisco, and Oracle — have signed a new Cybersecurity Tech Accord. The pledge spans helping to protect against cyberattacks as well as to not helping governments — including the United States — “launch cyberattacks against innocent citizens and enterprises,” as first reported by The New York Times.
About Me
We give you information about latest technology, events and the gadgets. Follow us for latest updates.
Trending
Flicker acquired by professional photo hosting service SmugMug
Huawei may bring the P20 series to canada next month
Department of justice reportedly investigating AT&T and Verizon over collusion against eSIM tech
This week in tech, 20 years ago


I'm a self-taught full-stack web developer who also happens to know finance (because I studied that in college). I have a serious passion for improving financial systems to efficiently manage assets and grow economies. I strive to deliver easy and pleasant solutions to end users when working on the front-end, back-end, or both ends of an application.
Check out my resume and some of my projects below.
View ResumeOpen-source project that aims to gamify task management and improve team efficiency. in-Q is currently under development at the BYU Physics and Astronomy Department. The system allows professors and office administrators to manage projects efficiently, keep track of progress, and communicate with team members.
Created a Custom Content Management System for the Honors Program website at BYU. Honors students are able to schedule appointments with advisors, see events, and read articles and student spotlights through the website.


Optimize Unicorn for your Ruby on Rails application - Arch Linux, Ruby, Rails, Optimization
Difficulty: 3
Time: 1.5 hours
Rails is a nice web framework, but over past few years, it has grown into a complex system. Particularly when using Unicorn, Rails apps tend to consume a lot of memory. Understanding its operational details and optimizing its performance can be a critical factor for success of any Rails developer.
This article will assist you with few simple things that can be done to enhance the performance of Unicorn for your Rails applications on Arch Linux platform.
This article requires that Ruby on Rails be installed. If it is not installed, refer to the article: Install Ruby on Rails using RVM - Arch Linux.
This article assumes that user is logged in with sudo user privileges.
By default, Rails uses the Webrick server to run applications. It is fast, but unfortunately, it can not handle concurrent connection requests. For optimized performance, Unicorn must be set as the default server for Rails. Unicorn is a multi-threaded web server, capable of handling multiple requests simultaneously, thus optimizing the performance considerably.
For details about setting up Rails app with Unicorn and Nginx, refer to the article: Deploy a Rails App with Unicorn and Nginx - Arch Linux.
If you are using Ruby 1.9 or earlier, it is recommended to upgrade to Ruby 2.x. Ruby 1.x and earlier versions do not support automated garbage collection, and thus are unable to take benefits of Copy-on-Write (CoW) feature.
To boost the performance of Unicorn, some configuration settings can be checked. These are available in the Unicorn's basic configuration file config/unicorn.rb
.
unicorn.rb
in your favorite editor.
app_path = File.expand_path(File.dirname(__FILE__) + '/..') worker_processes 2 preload_app true timeout 30
:wq
, and then press the Enter key. Below is the explanation of the setting variables:
app_path
Defines the current app's path for later reference. Rails.root
isn't available at this point, so point up a directory.
worker_process
Defines the total number of concurrent worker to be launched. This number ideally depends upon the memory available to the processes to execute. So depending upon your application and the availability of memory, you can set the number of concurrent worker process to run. For example, to allow five concurrent connections, you can set the value to five workers.
preload_app
Defines the ability to preload the Rails application using CoW, before forking the worker processes. This setting affects startup time when running Unicorn worker processes. This should be set to true. Although, when using this option, special care is to be taken when opening and closing any sockets. When workers are forked, any associated connection (like database connections or others, which require sockets) must be closed and reopened.
timeout
Defines the time duration to wait before the worker times out. It is usually preferred to keep a lower base value for the timeout, to avoid holding back a long queue. So ideally, 15 to 30 is considered as a rational value, but depending upon the nature of applications, this can be changed accordingly.
When using Unicorn, all the forked or child processes of Ruby application consume memory. Therefore, if there were a memory leak in the Ruby application, use of Unicorn would increase the problem multi-fold times. Over a period of time, situations may arise when all the memory is used and no additional memory is left. This ultimately can cause the system to halt or crash.
Although Unicorn may not be cause this problem, it can be resolved using unicorn-worker-killer
.
unicorn-worker-killer is a gem that helps perform self-checks of memory consumed by unicorn workers. In case the memory consumption of the unicorn workers exceeds the pre-defined maximum requests due to any memory leakage, unicorn-worker-killer provides an automatic restart of workers without affecting any requests.
Here are the steps for using unicorn-worker-killer:
config.rb
file located in the default project directory.
# --- Starting Unicorn-worker-killer code --- require 'unicorn/worker_killer' max_request_min = 500 max_request_max = 600 # Maximum requests per worker use Unicorn::WorkerKiller::MaxRequests, max_request_min, max_request_max oom_min = (240) * (1024**2) oom_max = (260) * (1024**2) # Maximum memory size (RSS) per worker use Unicorn::WorkerKiller::Oom, oom_min, oom_max, ,versbose=true # --- End of unicorn worker killer code --- require ::File.expand_path('../config/environment', __FILE__) run YourApp::Application
:wq
, and then press the Enter key. Unicorn is a painless way to achieve concurrency and performance in your Rails apps, whether used with thread-safe or not. It provide essential stability to Rails Apps. Unicorn worker killer gracefully restarts your application and resolves memory leaks.


The stories we were told, the first books we read and the images we grew to love as children are part of who we are today; many themes appear generation after generation.
{% import 'components/_slideshow.html' as slide %}
{{ slide.info("10814711","cls-item grid-sizer",'“N.C. Wyeth (1882-1945), “The Storybook” (c.1921), oil on canvas', "one" ) }}
{{ slide.info("10728698","",'Arthur Rackham (1867-1939), “Badger\'s Winter Stories” ink & watercolor on card', "two" ) }}
{{ slide.info("10728705", "", 'E.H Shepard (1879-1976), “Christopher Robin Gives Extract of Malt All Around” (c.1928), pen ink and watercolor with pencil', "three", 'large' ) }}
{{ slide.info("10814726","",'Beatrix Potter (1866-1943), “Aunt Pettitoes & Three Piglets” (c.1912), pencil, ink & watercolor', "four" ) }}
{{ slide.info("10814733"," ",'Helen Mary Jacobs (1888-1970), “Woodland Elves” pen, ink & watercolor on paper', "five" ) }}
{{ slide.info("10817035","",'Frank Adams (1871-1944), “Story of Hansel & Gretel” (c.1925), pen, ink & watercolor', "six" ) }}
{{ slide.info("10728681","",'Harold Gaze (1885-1962), “Up to Mischief” (c.1958), watercolor & gouache on paper', "seven" ) }}
{{ slide.info("10728729","",'Jessie Willcox Smith (1863-1935), “Mowgli” (c.1923), oil & charcoal on paper', "eight" ) }}
{{ slide.info("10728660"," ",'Edmund Dulac (1882-1953), “The Little Mermaid” (c.1911), watercolor', "nine" ) }}
{{ slide.info("10728702","",'Maxfield Parrish (1870-1966), “Air Castles” (c.1904), oil on canvas', "ten" ) }}
{{ slide.info("10817047","",'Frank Frazetta (1928-), “Mothman” (c.1980), oil on canvasboard', "eleven" ) }}


WE'RE YOUNG, WILD AND FREE
We're a small team, to start off with. The average age of the work force here is 23.
WE'RE ADVENTUROUS SOULS
When we're not wired in, you'll find people lounging on the sofa, listening to music.
WE'RE LIKE KING JULIEN ON AN ADRENALINE RUSH
Our kitchen and hospitality staff is always on their toes. Sure it's Hell's Kitchen on some days, but we make it through smooth.
WE'RE A FAMILY. NO, REALLY.
Over the past year, our little team has grown together, and overcome various milestones. This journey has brought us all together. We're friends too, apart from being a team that constantly aims at and works collectively towards dynamic growth.
AND LIKE ALL THE START-UP'S
We've spent endless nights at work, working towards fixing any feedback that isn't positive. And we're all in it together. We're very persistent. Yes, we know what it's like to get fried at work. But you can step out, get some space, breathe, and come back just in time for you to give it your best shot again. We try our best to form a conducive work environment, and keep it professional at the same time. We like to take our work seriously, and manage to pinch in some fun in the midst of it all.
FILL THIS OUT AND WE WILL GET BACK WITH'YA!


Please load a question ...
Show hint
Show solution
Write your solution code here:
Write your test code here:
Visualize execution
Use
left
and
right
arrow keys to step through this code:
Edit code
Submit answer
<< First
< Back
Step ? of ?
Forward >
Last >>
Program output:
Input
Result
Status


http://zpool.ca/
Hi,
We've added RedFOX (RFOX) to http://zpool.ca/ equihash. See below for connection details.
Fee only: 1.15% or less
BTC payouts are processed once a day for balances above 0.0025
Payouts for all other currencies are made automatically every 4 hours for balances above 0.05 and balances more than 0.0125 are included in one of the payouts each day.
- Sample configurations -
To mine and get paid in RFOX:
-a equihash -o stratum+tcp://equihash.mine.zpool.ca:2142 -u RFOX_ADDRESS -p c=RFOX,zap=RFOX
Exchange to BTC:
-a equihash -o stratum+tcp://equihash.mine.zpool.ca:2142 -u BTC_ADDRESS -p c=BTC
Exchange to BTC but mine only RFOX:
-a equihash -o stratum+tcp://equihash.mine.zpool.ca:2142 -u BTC_ADDRESS -p c=BTC,zap=RFOX
All of our ports are NiceHash friendly, no need to specify any extra details
We also provide stratum servers in:
Europe: equihash.eu.mine.zpool.ca:2142
South East Asia: equihash.sea.mine.zpool.ca:2142
Japan: equihash.jp.mine.zpool.ca:2142
Need hashpower? zpool’s sister provides hash rental services: http://hashtap.ca/
==============================
Support: https://discord.gg/n45n6Jj
Twitter: https://twitter.com/_zpool_


Configure a region’s eviction-attributes
settings to keep your region within a specified limit.
Configure data eviction as follows. You do not need to perform these steps in the sequence shown.
Decide whether to evict based on:
- Entry count (useful if your entry sizes are relatively uniform).
- Total bytes used. In partitioned regions, this is set using
local-max-memory
. In non-partitioned regions, it is set ineviction-attributes
. - Percentage of application heap used. This uses the Geode resource manager. When the manager determines that eviction is required, the manager orders the eviction controller to start evicting from all regions where the eviction algorithm is set to
lru-heap-percentage
. Eviction continues until the manager calls a halt. Geode evicts the least recently used entry hosted by the member for the region. See Managing Heap and Off-heap Memory.
Decide what action to take when the limit is reached:
- Locally destroy the entry.
- Overflow the entry data to disk. See Persistence and Overflow.
Decide the maximum amount of data to allow in the member for the eviction measurement indicated. This is the maximum for all storage for the region in the member. For partitioned regions, this is the total for all buckets stored in the member for the region, including any secondary buckets used for redundancy.
Decide whether to program a custom sizer for your region. If you are able to provide such a class, it might be faster than the standard sizing done by Geode. Your custom class must follow the guidelines for defining custom classes and, additionally, must implement
org.apache.geode.cache.util.ObjectSizer
. See Requirements for Using Custom Classes in Data Caching.
Examples:
Set an LRU memory eviction threshold of 1000 MB. Use a custom class for measuring the size of each object in the region:
gfsh>create region --name=myRegion --type=REPLICATE --eviction-max-memory=1000 \
--eviction-action=overflow-to-disk --eviction-object-sizer=com.myLib.MySizer
Create an eviction threshold on a partitioned region with a maximum entry count of 512:
gfsh>create region --name=myRegion --type=PARTITION --eviction-entry-count=512 \
--eviction-action=overflow-to-disk
To configure a partitioned region for heap LRU eviction, first configure the resource manager on server startup, then create a region with eviction enabled:
gfsh>start server --name=Server1 --eviction-heap-percentage=80
...
gfsh>create region --name=myRegion --type=PARTITION --eviction-action=overflow-to-disk