◆ hasContentPermission()
| static hasContentPermission |
( |
array |
$contentPermissions, |
|
|
|
$permission |
|
) |
| |
|
static |
Gets the value (true, false, or int) of the specified content permission, if it exists. This differs from hasPermission() in that there is no group specified. The first dimension has the permissions.
If the specified permission exists but is an array, an exception will be thrown.
- Parameters
-
| array | $contentPermissions | Format: [permission] => value |
| string | $permission | Permission ID |
- Returns
- true|false|int False if the permission isn't found; the value of the permission otherwise
◆ hasPermission()
| static hasPermission |
( |
array |
$permissions, |
|
|
|
$group, |
|
|
|
$permission |
|
) |
| |
|
static |
Gets the value (true, false, or int) of the specified permission if it exists. Used for global permissions which have a group and an individual permission.
- Parameters
-
| array | $permissions | Grouped permissions ([group][permission] => value) |
| string | $group | Permission group |
| string | $permission | Permission ID |
- Returns
- true|false|int False if the permission isn't found; the value of the permission otherwise
◆ unserializePermissions()
| static unserializePermissions |
( |
|
$permissionString | ) |
|
|
static |
Unserialize permissions from their format in the database to the array format that the other helper functions expect.
- Parameters
-
- Returns
- array
The documentation for this class was generated from the following file:
- C:/Users/Michel/Desktop/test/xf/library/XenForo/Permission.php


UTC +2
Voltage: 220 V
Frequency: 50 Hz
Metical (meticais) of 100 centavos. The import and export of local currency is forbidden. Foreign currency must be declared on arrival. These currency regulations are strictly enforced.
The new Metical(MZN) replaced the old Metical (MZM) on 1 July 2006.
US Dollars or South African Rand are useful. Credit cards can only be used in some places in the capital. Travellers cheques are difficult and expensive to change.
There are ATMs in the towns.
International dialing code for Mozambique is +258
Mobile phone services are available.Low-cost Mozambique cell phone service. rangeRoamer provides short-term cell phone service for international travelers. Buy, Rent, or use your own cell phone.
There are Internet cafes in Maputo and other cities.
The Madagascar relay station for the Peri-Peri net has now closed (which covered the Mozambique channel). Although no longer resident in Madagascar, Ex-Net Controllers Des and Nell Cason of SY Gambit are happy to offer advice to cruisers visiting the area. They have sailed this area extensively and welcome the opportunity to stay involved in the well being of fellow sailors. Contact them by E-mail at<EMAIL_ADDRESS>Police - Dial 119
Ambulance - Dial 117
IMRAY AND ADLARD COLES PILOT BOOKS are available at a discounted price for Noonsite.com users via World Cruising Club
Indian Ocean Cruising Guide
By Rod Heikell
Publisher: Imray Laurie Norie & Wilson Ltd (2nd edn 2007)
ISBN-13:<PHONE_NUMBER>725
General cruising guide covering the routes from Europe to Australia and points in between, Indian Ocean Cruising Guide covers all the usual points of interest for cruising yachtsmen, from history to climate, weather patterns, formalities, route planning and so on. The general sections are followed by a country-by-country round up in which key ports are described in detail with the aid of harbour plans and photographs. Contains a lot of additional information on Malaysia and Thailand, the Seychelles and Chagos archipelago.
East Africa Pilot
By Delwyn McPhun
Publisher: Imray,Laurie,Norie & Wilson Ltd (December 1998)
ISBN-13:<PHONE_NUMBER>511
A complete handbook on the coast of East Africa between Kenya and Durban for both yachtsmen and diving enthusiasts.
Cruising the Islands and Atolls in the Mozambique Channel
By Tony Herrick
Contact<EMAIL_ADDRESS>An essential guide for exploring this channel.
SY Two Oceans
www.catamarantwooceans.wordpress.com
Visited Mozambique in September 2013 and have some good details on their blog.
Noonsite welcomes information and updates especially regarding clearance,
customs and immigration procedures from cruisers visiting this country.
Please E-mail noonsite with any new
information, updates or corrections. Even just a short email confirming
that the current data is accurate would be most helpful.


§604-13 [Arrest under warrant.] Whenever any warrant of arrest has been issued by any court of competent jurisdiction, and the accused is beyond the jurisdiction of the court, it shall be lawful for the officer to whom the warrant is directed, to pursue and arrest the accused in any part of the State. [L 1868, p 21; am L 1923, c 67, §1; RL 1925, §2280; RL 1935, §3770; RL 1945, §9680; RL 1955, §216-11; HRS §604-13; am L 1970, c 188, §21; am L 1973, c 167, §1]
Rules of Court
See HRPP rule 9(c).


Lode Runner
问题描述 :
Lode Runner is a famous game, I think you played in your childhood.
Ok, now, I simple the problem. In the game, it has N horizontal roads, the ladders always stay at right side vertically, and the ladders are extending towards up and down with unlimited length. If ladder near or cross a road, little WisKey will walk on the road by climbed the ladder. Two roads were covered by each other in the X-axis; it will be considered can be passing through. Each road has an integer W means the dangerous level.
Little WisKey must start at No.1 road, and he can’t go back, he always go ahead. WisKey want to go some roads, so he needs to know how minimum sum of dangerous will happen. You can finish the game, yes?
输入:
The first integer C represents the number of cases, And C cases followed.
Each test case contains a single integer N roads (1<=N<= 2000) and M destinations (1<=M<=500). The next N line contains three integers Si, Ei, Wi, meaning the road build from Si to Ei, and the Wi dangerous level (0 <= Si <= Ei <= 1000, 1 <= Wi <= 1000). And the roads sorted by Ei increasing yet. The last M line contains integers mean little WisKey’s destinations.
Each test case contains a single integer N roads (1<=N<= 2000) and M destinations (1<=M<=500). The next N line contains three integers Si, Ei, Wi, meaning the road build from Si to Ei, and the Wi dangerous level (0 <= Si <= Ei <= 1000, 1 <= Wi <= 1000). And the roads sorted by Ei increasing yet. The last M line contains integers mean little WisKey’s destinations.
输出:
The first integer C represents the number of cases, And C cases followed.
Each test case contains a single integer N roads (1<=N<= 2000) and M destinations (1<=M<=500). The next N line contains three integers Si, Ei, Wi, meaning the road build from Si to Ei, and the Wi dangerous level (0 <= Si <= Ei <= 1000, 1 <= Wi <= 1000). And the roads sorted by Ei increasing yet. The last M line contains integers mean little WisKey’s destinations.
Each test case contains a single integer N roads (1<=N<= 2000) and M destinations (1<=M<=500). The next N line contains three integers Si, Ei, Wi, meaning the road build from Si to Ei, and the Wi dangerous level (0 <= Si <= Ei <= 1000, 1 <= Wi <= 1000). And the roads sorted by Ei increasing yet. The last M line contains integers mean little WisKey’s destinations.
样例输入:
3 10 4 1 4 7 5 6 3 3 7 5 2 9 8 10 13 8 12 14 11 11 15 13 16 18 5 17 19 6 8 20 9 1 2 3 10 5 5 1 4 5 3 6 10 5 8 20 2 9 1 7 10 2 1 2 3 4 5 4 4 1 5 1 2 7 20 2 7 3 7 9 4 1 2 3 4
样例输出:
7 -1 12 24 5 15 35 6 8 1 21 4 8
#include <iostream> #include <cstdio> #include <vector> #include <list> #include <set> #include <map> #include <stack> #include <bitset> #include <algorithm> #include <functional> #include <numeric> #include <utility> #include <sstream> #include <iomanip> #include <cmath> #include <cstdlib> #include <ctime> #include <queue> #include <cstring> #include <string> using namespace std; #define inf 0x3f3f3f3f #define MOD<PHONE_NUMBER> #define ll long long #define eps 1e-9 #define N 2100 ll dis[N]; struct Node { int l,r,d; }node[N]; int main() { int t,n,m,a; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%d%d%d",&node[i].l,&node[i].r,&node[i].d); memset(dis,-1,sizeof(dis)); dis[1] = node[1].d; for(int i=1;i<=n;i++) { if(dis[i]==-1) continue; for(int j=i+1;j<=n;j++) if(node[j].l<=node[i].r) if(dis[j]==-1||dis[j]>dis[i]+node[j].d) dis[j] = dis[i]+node[j].d; } for(int i=0;i<m;i++) { scanf("%d",&a); printf("%I64d\n",dis[a]); } } }
(adsbygoogle = window.adsbygoogle || []).push({});
学习了。找到这题
88行是多余的，可以删除
感觉这里的评分标准没啥作用阿，反而显得显得赘余，还不如直接去掉好了。
“可以发现,树将是满二叉树,”这句话不对吧，构造的树应该是“完全二叉树”，而非“满二叉树”。
从数学角度确实是C(n,r)，能给个递推关系式吗，从分治的角度不好理解
目测会火
第二个程序编译都通不过， int L[m+1][n+1];这样定义出错，应该换成具体的数字ac
为什么暴力求解方法循环到sqrt(n) 就可以了呢
换句话说，A[k/2-1]不可能大于两数组合并之后的第k小值，所以我们可以将其抛弃。
应该是，不可能小于合并后的第K小值吧
不错
学算法中的数据结构学到一定程度会乐此不疲的，比如其中的2－3树，类似的红黑树，我甚至可以自己写个逻辑文件系统结构来。


Badges are a way to display a small amount of text or an image within a nicely formatted box.
| Class | Description |
|---|---|
| badgeStandard | This is a basic badge |
| badgePrimary | This is a badge with the trulia orange used on CTAs |
| badgeSecondary | This is a badge with the alternate CTA color (Trulia green) |
| badgeTertiary | This is a badge for a warning or something negative |
Sold
For Sale
For Rent
A frame is a simple border around some content, usually an image but other content can be used as well. The different skin classes generally change the intensity and padding size of the frame.
A small frame using the .polaroid
class to include some text along with the image. Note the use of the inline style to set the width.
This is one of the only places where that is acceptable...
Here's a little text below the image

Here's a little text below the image


Keeps Going and Going and …
问题描述 :
letrec
count n = cons n (count (n+1))
in
count 0The function cons constructs lists, so the above declaration creates the following structure:
cons 0 (count 1)
= cons 0 (cons 1 (count 2))
= cons 0 (cons 1 (cons 2 …))
= [0,1,2,...]
Lazy languages can do this because they only evaluate expressions that are actually used. If a program creates an infinite list and only looks at items 2 and 3 in it, the values in positions 0 and 1 are never evaluated and the list structure is only evaluated so far as the fourth node.
It is also possible to use more than one function to build an infinite list. Here is a declaration that creates the list ["even","odd","even",...]:
letrec
even = cons “even” odd
odd = cons “odd” even
in
even
There are also functions that manipulate infinite lists. The functions take and drop can be used to remove elements from the start of the list, returning the (removed) front elements or the remainder of the list, respectively. Another useful function is zip, which combines two lists like the slider on a zipper combines the teeth. For example,
zip (count 0) (count 10) = [0,10,1,11,2,12,...]
Your task is to implement a subset of this functionality.
This problem contains multiple test cases!
The first line of a multiple input is an integer N, then a blank line followed by N input blocks. Each input block is in the format indicated in the problem description. There is a blank line between input blocks.
The output format consists of N output blocks. There is a blank line between output blocks.
输入:
The test cases take the form name s e, where s and e are non-negative integers, s <= e and e – s < 250.
No line of input will be longer than 80 characters. Names consist of a single capital letter.
输出:
样例输入:
5 3 S = 4 3 2 1 A O = 1 O E = 0 E A = zip E O Z = zip Z S A 43455436 43455438 S 2 5 Z 1 10
样例输出:
0 1 0 2 1 0 1 4 4 3 4 2 3 1 4 0 2
注意是火焰鹤
注意是火焰鹤
注意是火焰鹤
注意是火焰鹤
注意是火焰鹤
注意是火焰鹤
注意是火焰鹤
第15行代码，/n/n，应该改为nn
约瑟夫也用说这么长……很成熟的一个问题了，分治的方法解起来o(n)就可以了，有兴趣可以看看具体数学的第一章，关于约瑟夫问题推导出了一系列的结论，很漂亮
very good solutions.
嗯，是写错了，文中以更改。MAX ( L(X[0..m-2], Y[0..n-1]), L(X[0..m-1], Y[0..n-2])
#include <cstdio>
#include <algorithm>
struct LWPair{
int l,w;
};
int main() {
//freopen("input.txt","r",stdin);
const int MAXSIZE=5000, MAXVAL=10000;
LWPair sticks[MAXSIZE];
int store[MAXSIZE];
int ncase, nstick, length,width, tmp, time, i,j;
if(scanf("%d",&ncase)!=1) return -1;
while(ncase– && scanf("%d",&nstick)==1) {
for(i=0;i<nstick;++i) scanf("%d%d",&sticks .l,&sticks .w);
std::sort(sticks,sticks+nstick,[](const LWPair &lhs, const LWPair &rhs) { return lhs.l>rhs.l || lhs.l==rhs.l && lhs.w>rhs.w; });
for(time=-1,i=0;i<nstick;++i) {
tmp=sticks .w;
for(j=time;j>=0 && store >=tmp;–j) ; // search from right to left
if(j==time) { store[++time]=tmp; }
else { store[j+1]=tmp; }
}
printf("%dn",time+1);
}
return 0;
}
输出规范写错了哦~
很好，找的就是这一题
Thanks i enjoy your write-up about Why We Keep track of | J Squared Consulting
很给力啊，学习了
.net中char类型不是两个字节么
我没看懂题目
2
5 6 -1 5 4 -7
7 0 6 -1 1 -6 7 -5
我觉得第一个应该是5 6 -1 5 4 输出是19 5 4
第二个是7 0 6 -1 1 -6 7输出是14 7 7
不知道题目例子是怎么得出来的
终于找到一篇能看懂的，mark


Bernardo Silva hit with 1-match ban for Mendy tweet
London - Manchester City star Bernardo Silva has been suspended for one match and fined £50,000 for a tweet he posted comparing teammate Benjamin Mendy with a black cartoon character, the Football Association announced on Wednesday.
In September Silva tweeted an image of a young Mendy alongside an image of the character representing the Spanish chocolate peanut brand Conguitos, before deleting it 46 minutes later.
There was no hearing after Silva admitted the misconduct charge, and acknowledged some people may be offended by the "historical connotations of the Conguitos character".
"The player did not himself intend the post to be insulting or in any way racist," read the report from the FA Commission.
"It is clear that the tweet was intended to be no more than a joke between close friends. However, this was not a private jocular communication between two friends.
"The post was on a social media platform exposed to the 600,000 followers of a high-profile and well-respected professional footballer."
Silva has been one of City's standout performers this season as the defending champions have struggled to keep pace with leaders Liverpool, trailing them by nine points after Sunday's 3-1 defeat at Anfield.
He will miss a tough home match with third-placed Chelsea - who are a point better off than City - on November 23.


Modal button strategies.
1. Strategy DEFAULT
2. Strategy SIMPLE
3. Strategy ADVANCED
4. Strategy FULL
| Input | Value |
|---|---|
id |
Value:
1, 2, 3 and 4 (one for every instance in this example)Unique id
|
images |
Value:
Image[] Array of
Image objects |
currentImage |
Value:
Image Image object to show |
libConfig |
Value:
LibConfig LibConfig object to config the library. See below. |
| Input | Value |
|---|---|
currentImageConfig |
Value:
{ downloadable: true } Image download is enabled with keyboard shortcuts
|
buttonsConfig |
Value: see all ButtonsConfig objects above
It will show buttons, based on ButtonsStrategy. To enable all features related to buttons, you need to implement 'download' and 'delete images'.
|


{% extends "layout.html" %} {% block title %}ERR0RZ!!!111{% endblock %} {% block body %}
AMPT ran into a problem. Details about the error may be in the log file.
Return home?


NMT CSE389 Team Project
Money Mouse Project: Prototype
Home
Prototypes
Documents
Evaluation
About
The link to the project prototype.
here
This link doesn't exist yet
Download the APK
here


CURRENCY EXCHANGE
USD:
Use this list (view-only) to see the most current list of available currencies:
Choose a Currency:
Enter a currency from above, in its three-letter abbreviation form:
CONVERT


|
Page Title
|
This sample HTML corresponds to 6.2 Content Page Titles. Here is a wireframe representation for Page titles:
| Page Title Text | Buttons (optional ) |
| Instructional Help Text (optional) | |
| Page Actions (optional) | Search components (optional) | View Menu (optional) |
Note that only the actual page title text is required. All other elements are optional.
- None -


At every stack operation, the charge is twice. First the actual cost of the operation which is performed on the stack is charged and second the cost of copying an element later is charged.
The maximum size of the stack can never exceed k, so there will be k operations. And after every k operations, at least k units will be left.
The amortized cost of the stack operation is constant that is O (1) and the cost to perform the operation on the stack having n elements will be O(n).
• The accounting analysis is done by assuming amortized costs for a given operation.
• In the accounting method, the operations are charged with different costs than its actual cost.
• This cost can be less or more than the actual cost an operation.
• The amount charges for an operation is called as amortized cost.
For the operation i, the actual cost is as follows:
Assume the amortized cost to be as follows:
• For an operation, which is expressed as an exact power of 2, its actual cost will be the sum of the credit which is accumulated and the amortized cost of its own which is one unit.
The credits which are left will be assigned as credit.
• And, if the operation is not the exact power of two, then that operation will use its one unit to pay its actual cost and the cost left which is 2 will be assigned as credit.
If the operation can be expressed in the terms of power of 2 then, the value of c i is as follows:
And the value of the is as follows:
Since, the value of (2n – 3n) is always greater than 1 for n = 0 and all n > 1 therefore, the value of will always be greater than ci for n=0 and n>1.
Now for n=1, the value of is 2 and the value of ci is 1.
Thus, the value of ci is always less than .
Therefore, as per the accounting analysis, the amortized cost is always greater than the actual cost which can be represented as follows:
Consider a variable A.max to hold the higher-order of 1 in A. A.max helps to use the amount limit to the credit resulted by INCREMENTs. That is, using A.max ensures RESET to use not more than the amount available in credit. Initially, A.max is assigned with -1, because initially, there are no 1’s in the counter. A.max is updated when the counter is incremented and reset.
Consider that the counting time to examine and modify a bit as 1 is and the counting time to examine and modify a bit as 0 is .
INCREMENT (A)
1. i=0
2. while i< A.length and A[i] = = 1
3. A[i]=0
4. i=i+1
5. if i < A.length
6. A[i] = 1
7. if i > A.max
8. A.max = i
9. else A.max = -1
Consider operation RESET sets all bits in the counter to 0.
RESET (A)
1. i = 0
2. while i < A.length and A.max
3. if A[i] = = 1
4. A[i] = 0
5. A.max = -1
When a bit is set to 1, $2 will be paid. One dollar is for setting a bit to 1 and another for resetting a bit to 0. That is, $1 is credited for each insertion. Thus, credit has dollars equal to number of 1s in the counter.
• It is known that $1 is required to reset a bit to 0. RESET makes all 1s in the counter to 0.This uses the dollars in credit that is the result of earlier INCREMENTs. Thus, for resetting all 1s to 0s, there is no need of paying dollars.
• In addition to $2 (for increment and reset), $1 is paid to update max. Thus, INCREMENT pays $3 each time ($2 for setting a bit to 1 and $1 for updating A.max with higher-order of 1).
• RESET pays $1 for updating A.max as -1. Since RESET runs loop to reset bits upto A.max and since every 1 bit seen by RESET has $1 of credit on it, the zeroing of bits of A can be completely paid for, by the credit stored on the bits.
• Only $1 more is to paid for resetting max.
Since the INCREMENT and RESET are charging a constant amount $4, the sequence of n INCREMENT and RESET operations takes O(n) time.


border-with-top-triangle
bouncing-loader
box-sizing-reset
button-border-animation
button-focus-swing-animation
button-hover-fill-animation
button-hover-grow-animation
button-hover-shrink-animation
checkerboard-pattern
circle
clearfix
constant-width-to-height-ratio
counter
custom-checkbox
custom-scrollbar
custom-text-selection
disable-selection
display-table-centering
donut-spinner
drop-cap
dynamic-shadow
etched-text
evenly-distributed-children
fit-image-in-container
flexbox-centering
floating-list-titles
fluid-typography
focus-within
full-width
fullscreen
gradient-text
grid-centering
hamburger-button
height-transition
horizontal-scroll-snap
hover-additional-content
hover-pespective
hover-shadow-box-animation
hover-underline-animation
image-hover-menu
image-hover-rotate
image-mosaic
image-overlay-hover
input-with-prefix
isometric-card
line-clamp
masonry-layout
mouse-cursor-gradient-tracking
navigation-list-item-hover-and-focus-effect
offscreen
overflow-scroll-gradient
polka-dot-pattern
popout-menu
pretty-text-underline
pulse-loader
reset-all-styles
responsive-layout-sidebar
rotating-card
scroll-progress-bar
shape-separator
sibling-fade
staggered-animation
sticky-list-titles
stripes-pattern
stylized-quotation-marks
system-font-stack
text-backdrop-overlay
tile-layout-using-inline-block
toggle-switch
transform-centering
triangle
truncate-text-multiline
truncate-text
typewriter-effect
vertical-scroll-snap
zebra-striped-list
zig-zag-pattern
zoomin-zoomout-animation


learn_SPE
(infile
, outfile
, num_symbols
, min_frequency
=2
, augmentation
=0
, verbose
=False
, total_symbols
=False
)
Learn num_symbols SPE operations from infile and write to outfile.
infile: a list of SMILES
num_symbols: maximum total number of SPE symbols
min_frequency: the minimum frequency of SPE symbols appears.
augmentation: times of SMILES augmentation
verbose: if True, print the merging process
total_symbols: if True; the maximum total of SPE symbols = num_symbols - number of atom-level tokens


The purpose of this Vignette is to show you how to correctly load and work with an Xgboost model that has been dumped to JSON. Xgboost internally converts all data to 32-bit floats, and the values dumped to JSON are decimal representations of these values. When working with a model that has been parsed from a JSON file, care must be taken to correctly treat:
For the purpose of this tutorial we will load the xgboost, jsonlite, and float packages. We’ll also set digits=22
in our options in case we want to inspect many digits of our results.
## Loading required package: jsonlite
## Loading required package: float
We will create a toy binary logistic model based on the example first provided here, so that we can easily understand the structure of the dumped JSON model object. This will allow us to understand where discrepancies can occur and how they should be handled.
dates <- c(20180130, 20180130, 20180130,
20180130, 20180130, 20180130,
20180131, 20180131, 20180131,
20180131, 20180131, 20180131,
20180131, 20180131, 20180131,
20180134, 20180134, 20180134)
labels <- c(1, 1, 1,
1, 1, 1,
0, 0, 0,
0, 0, 0,
0, 0, 0,
0, 0, 0)
data <- data.frame(dates = dates, labels=labels)
bst <- xgboost(
data = as.matrix(data$dates),
label = labels,
nthread = 2,
nrounds = 1,
objective = "binary:logistic",
missing = NA,
max_depth = 1
)
## [00:22:08] WARNING: amalgamation/../src/learner.cc:1061: Starting in XGBoost 1.3.0, the default evaluation metric used with the objective 'binary:logistic' was changed from 'error' to 'logloss'. Explicitly set eval_metric if you'd like to restore the old behavior.
## [1] train-logloss:0.505253
We will now dump the model to JSON and attempt to illustrate a variety of issues that can arise, and how to properly deal with them.
First let’s dump the model to JSON:
bst_json <- xgb.dump(bst, with_stats = FALSE, dump_format='json')
bst_from_json <- fromJSON(bst_json, simplifyDataFrame = FALSE)
node <- bst_from_json[[1]]
cat(bst_json)
## [
## { "nodeid": 0, "depth": 0, "split": 0, "split_condition": 20180132, "yes": 1, "no": 2, "missing": 1 , "children": [
## { "nodeid": 1, "leaf": 0.360000014 },
## { "nodeid": 2, "leaf": -0.450000018 }
## ]}
## ]
The tree JSON shown by the above code-chunk tells us that if the data is less than 20180132, the tree will output the value in the first leaf. Otherwise it will output the value in the second leaf.  What happened?
At this stage two things happened:
When working with imported JSON, all data must be converted to 32-bit floats
To explain this, let’s repeat the comparison and round to two decimals:
## [1] TRUE TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE
## [13] FALSE FALSE FALSE TRUE TRUE TRUE
If we round to two decimals, we see that only the elements related to data values of 20180131
don’t agree. If we convert the data to floats, they agree:
# now convert the dates to floats first
bst_from_json_logodds <- ifelse(fl(data$dates)<node$split_condition,
node$children[[1]]$leaf,
node$children[[2]]$leaf)
# test that values are equal
round(bst_preds_logodds,2) == round(bst_from_json_logodds,2)
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE
What’s the lesson? If we are going to work with an imported JSON model, any data must be converted to floats first. In this case, since ‘20180131’ cannot be represented as a 32-bit float, it is rounded up to 20180132, as shown here:
## # A float32 vector: 1
## [1] 20180132
All JSON parameters stored as floats must be converted to floats.
Let’s now say we do care about numbers past the first two decimals.
 What happened? Although we’ve converted the data to 32-bit floats, we also need to convert the JSON parameters to 32-bit floats. Let’s do this:
# now convert the dates to floats first
bst_from_json_logodds <- ifelse(fl(data$dates)<fl(node$split_condition),
as.numeric(fl(node$children[[1]]$leaf)),
as.numeric(fl(node$children[[2]]$leaf)))
# test that values are equal
bst_preds_logodds == bst_from_json_logodds
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE
All equal. What’s the lesson? If we are going to work with an imported JSON model, any JSON parameters that were stored as floats must also be converted to floats first.
Always use 32-bit numbers and operators
We were able to get the log-odds to agree, so now let’s manually calculate the sigmoid of the log-odds.  What is going on here? Well, since we are using the value 1
in the calcuations, we have introduced a double into the calculation. Because of this, all float values are promoted to 64-bit doubles and the 64-bit version of the exponentiation operator exp
is also used. On the other hand, xgboost uses the 32-bit version of the exponentation operator in its sigmoid function.
How do we fix this? We have to ensure we use the correct datatypes everywhere and the correct operators. If we use only floats, the float library that we have loaded will ensure the 32-bit float exponention operator is applied.
# calculate the predictions casting doubles to floats
bst_from_json_preds <- ifelse(fl(data$dates)<fl(node$split_condition),
as.numeric(fl(1)/(fl(1)+exp(fl(-1)*fl(node$children[[1]]$leaf)))),
as.numeric(fl(1)/(fl(1)+exp(fl(-1)*fl(node$children[[2]]$leaf))))
)
# test that values are equal
bst_preds == bst_from_json_preds
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE
All equal. What’s the lesson? We have to ensure that all calculations are done with 32-bit floating point operators if we want to reproduce the results that we see with xgboost.


Megan Thee Stallion And Trey Songz Get Cozy During Night Out After She Denies Dating Tristan Thompson – See The Vid!
by Nick MarkusAfter rumors that she and Tristan Thompson were dating, Megan Thee Stallion is now romantically linked to Trey Songz! Apparently, the two were seen out and about and things got pretty flirty between them!
Their late night outing happened on November 20 and they were getting quite cozy at a club.
One eyewitness report claims they stayed in front of the DJ booth so they were not hard to notice.
In a clip captured during that cozy outing, Trey kept his arm around Megan’s waist for quite some time as they would lean in to talk to each other over the loud music.
And that was not all! Since they were at a club, dancing just had to happen so, at some point, Megan dropped it low in front of Trey who looked like he really enjoyed the show she was putting on for him.
The dating rumors about them come only a day after she took to her platform of choice, Twitter, to deny speculations that she was dating someone else – Khloe Kardashian’s baby daddy, Tristan Thompson!
In fact, she sounded pretty baffled as well as upset by the seemingly random rumor.
‘What In the f**k are you talking about. I wish y’all would stop making s**t up I don’t even know that n***a,’ she tweet responded to a follower suggesting she and the basketball player had spent the night together following his game on November 18.
Obviously, she was very clear that there was nothing going on between Tristan and her but she did hint at Trey being her new boo.
In fact, the two of them even spent Halloween together and looked like they had the time of their lives!
The man appeared on her IG Stories at a party on October 30.
One clip showed him just lounging on a bed before noticing the camera was on him and turning to flash a smile in its direction.


You should see three blue squares: above the green square, to the green square's right, and below the green square.


GitHawk is the easiest way to use GitHub on iOS. Read notifications, reply to issues, merge pull requests and more.
Natively rendered Markdown that is lightning-fast (no web views!) and conforms to the GFM spec. GitHawk even supports interactive elements like checkboxes and links.
View pull request merge status, and simply tap to merge. You can choose to merge, squash, or rebase — whichever you prefer! Keep projects moving from your phone.
Keep your issues and pull requests up to date with all the features you're used to on the web. Commenting is easy with Markdown shortcuts and you can double-tap to 👍.
Add labels, assignees, and milestones as soon as notifications arrive. Keep your issues organized and updated.
Browse pull request diffs with the same green & red UI that you're used to.
Quickly add new issues to any repository. Never forget to file a bug.
Find any repository, issue, or pull request. Supports all of GitHub's search qualifiers.
Keep track of repositories, issues, and pull requests for quick access.
GitHawk works on any iOS device running iOS 11+ or watchOS 4+ with support for dynamic text sizing and multiple orientations.
Sign in with multiple accounts using personal access tokens. Manage personal accounts and bots without signing out.
It’s great to see a solid, native iOS Git client being built in the open. @githawk is really nice to use, too! https://t.co/BDzssAHlWn
You should try out @githawk for a nice way to handle GitHub notifications and pull requests on iOS.
Just tried @_ryannystrom ‘s githawk on iPad and folks - IT IS EVEN BETTER !
I've been using @githawk for almost a year now. I just had an extraordinary pleasant experience with it with respect to handling 6 different PRs. I just wanted to tell @_ryannystrom & @BasThomas kudos and wanted to spread the word a bit. This app is a MUS HAVE dev tool!


|
PX4 Firmware
PX4 Autopilot Software http://px4.io
|
Driver for the ST LSM303D MEMS accelerometer / magnetometer connected via SPI. More...
#include <px4_config.h>
#include <px4_defines.h>
#include <ecl/geo/geo.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdint.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdlib.h>
#include <semaphore.h>
#include <string.h>
#include <fcntl.h>
#include <poll.h>
#include <errno.h>
#include <stdio.h>
#include <math.h>
#include <unistd.h>
#include <getopt.h>
#include <perf/perf_counter.h>
#include <systemlib/err.h>
#include <nuttx/arch.h>
#include <nuttx/clock.h>
#include <drivers/drv_hrt.h>
#include <drivers/device/spi.h>
#include <drivers/drv_accel.h>
#include <drivers/drv_mag.h>
#include <drivers/device/ringbuffer.h>
#include <drivers/device/integrator.h>
#include <board_config.h>
#include <mathlib/math/filter/LowPassFilter2p.hpp>
#include <lib/conversion/rotation.h>
Go to the source code of this file.
Classes | |
| class | LSM303D |
| class | LSM303D_mag |
| Helper class implementing the mag driver node. More... | |
Namespaces | |
| lsm303d | |
| Local functions in support of the shell command. | |
Macros | |
| #define | DIR_READ (1<<7) |
| #define | DIR_WRITE (0<<7) |
| #define | ADDR_INCREMENT (1<<6) |
| #define | LSM303D_DEVICE_PATH_ACCEL "/dev/lsm303d_accel" |
| #define | LSM303D_DEVICE_PATH_ACCEL_EXT "/dev/lsm303d_accel_ext" |
| #define | LSM303D_DEVICE_PATH_MAG "/dev/lsm303d_mag" |
| #define | ADDR_WHO_AM_I 0x0F |
| #define | WHO_I_AM 0x49 |
| #define | ADDR_OUT_TEMP_L 0x05 |
| #define | ADDR_OUT_TEMP_H 0x06 |
| #define | ADDR_STATUS_M 0x07 |
| #define | ADDR_OUT_X_L_M 0x08 |
| #define | ADDR_OUT_X_H_M 0x09 |
| #define | ADDR_OUT_Y_L_M 0x0A |
| #define | ADDR_OUT_Y_H_M 0x0B |
| #define | ADDR_OUT_Z_L_M 0x0C |
| #define | ADDR_OUT_Z_H_M 0x0D |
| #define | ADDR_INT_CTRL_M 0x12 |
| #define | ADDR_INT_SRC_M 0x13 |
| #define | ADDR_REFERENCE_X 0x1c |
| #define | ADDR_REFERENCE_Y 0x1d |
| #define | ADDR_REFERENCE_Z 0x1e |
| #define | ADDR_STATUS_A 0x27 |
| #define | ADDR_OUT_X_L_A 0x28 |
| #define | ADDR_OUT_X_H_A 0x29 |
| #define | ADDR_OUT_Y_L_A 0x2A |
| #define | ADDR_OUT_Y_H_A 0x2B |
| #define | ADDR_OUT_Z_L_A 0x2C |
| #define | ADDR_OUT_Z_H_A 0x2D |
| #define | ADDR_CTRL_REG0 0x1F |
| #define | ADDR_CTRL_REG1 0x20 |
| #define | ADDR_CTRL_REG2 0x21 |
| #define | ADDR_CTRL_REG3 0x22 |
| #define | ADDR_CTRL_REG4 0x23 |
| #define | ADDR_CTRL_REG5 0x24 |
| #define | ADDR_CTRL_REG6 0x25 |
| #define | ADDR_CTRL_REG7 0x26 |
| #define | ADDR_FIFO_CTRL 0x2e |
| #define | ADDR_FIFO_SRC 0x2f |
| #define | ADDR_IG_CFG1 0x30 |
| #define | ADDR_IG_SRC1 0x31 |
| #define | ADDR_IG_THS1 0x32 |
| #define | ADDR_IG_DUR1 0x33 |
| #define | ADDR_IG_CFG2 0x34 |
| #define | ADDR_IG_SRC2 0x35 |
| #define | ADDR_IG_THS2 0x36 |
| #define | ADDR_IG_DUR2 0x37 |
| #define | ADDR_CLICK_CFG 0x38 |
| #define | ADDR_CLICK_SRC 0x39 |
| #define | ADDR_CLICK_THS 0x3a |
| #define | ADDR_TIME_LIMIT 0x3b |
| #define | ADDR_TIME_LATENCY 0x3c |
| #define | ADDR_TIME_WINDOW 0x3d |
| #define | ADDR_ACT_THS 0x3e |
| #define | ADDR_ACT_DUR 0x3f |
| #define | REG1_RATE_BITS_A ((1<<7) | (1<<6) | (1<<5) | (1<<4)) |
| #define | REG1_POWERDOWN_A ((0<<7) | (0<<6) | (0<<5) | (0<<4)) |
| #define | REG1_RATE_3_125HZ_A ((0<<7) | (0<<6) | (0<<5) | (1<<4)) |
| #define | REG1_RATE_6_25HZ_A ((0<<7) | (0<<6) | (1<<5) | (0<<4)) |
| #define | REG1_RATE_12_5HZ_A ((0<<7) | (0<<6) | (1<<5) | (1<<4)) |
| #define | REG1_RATE_25HZ_A ((0<<7) | (1<<6) | (0<<5) | (0<<4)) |
| #define | REG1_RATE_50HZ_A ((0<<7) | (1<<6) | (0<<5) | (1<<4)) |
| #define | REG1_RATE_100HZ_A ((0<<7) | (1<<6) | (1<<5) | (0<<4)) |
| #define | REG1_RATE_200HZ_A ((0<<7) | (1<<6) | (1<<5) | (1<<4)) |
| #define | REG1_RATE_400HZ_A ((1<<7) | (0<<6) | (0<<5) | (0<<4)) |
| #define | REG1_RATE_800HZ_A ((1<<7) | (0<<6) | (0<<5) | (1<<4)) |
| #define | REG1_RATE_1600HZ_A ((1<<7) | (0<<6) | (1<<5) | (0<<4)) |
| #define | REG1_BDU_UPDATE (1<<3) |
| #define | REG1_Z_ENABLE_A (1<<2) |
| #define | REG1_Y_ENABLE_A (1<<1) |
| #define | REG1_X_ENABLE_A (1<<0) |
| #define | REG2_ANTIALIAS_FILTER_BW_BITS_A ((1<<7) | (1<<6)) |
| #define | REG2_AA_FILTER_BW_773HZ_A ((0<<7) | (0<<6)) |
| #define | REG2_AA_FILTER_BW_194HZ_A ((0<<7) | (1<<6)) |
| #define | REG2_AA_FILTER_BW_362HZ_A ((1<<7) | (0<<6)) |
| #define | REG2_AA_FILTER_BW_50HZ_A ((1<<7) | (1<<6)) |
| #define | REG2_FULL_SCALE_BITS_A ((1<<5) | (1<<4) | (1<<3)) |
| #define | REG2_FULL_SCALE_2G_A ((0<<5) | (0<<4) | (0<<3)) |
| #define | REG2_FULL_SCALE_4G_A ((0<<5) | (0<<4) | (1<<3)) |
| #define | REG2_FULL_SCALE_6G_A ((0<<5) | (1<<4) | (0<<3)) |
| #define | REG2_FULL_SCALE_8G_A ((0<<5) | (1<<4) | (1<<3)) |
| #define | REG2_FULL_SCALE_16G_A ((1<<5) | (0<<4) | (0<<3)) |
| #define | REG5_ENABLE_T (1<<7) |
| #define | REG5_RES_HIGH_M ((1<<6) | (1<<5)) |
| #define | REG5_RES_LOW_M ((0<<6) | (0<<5)) |
| #define | REG5_RATE_BITS_M ((1<<4) | (1<<3) | (1<<2)) |
| #define | REG5_RATE_3_125HZ_M ((0<<4) | (0<<3) | (0<<2)) |
| #define | REG5_RATE_6_25HZ_M ((0<<4) | (0<<3) | (1<<2)) |
| #define | REG5_RATE_12_5HZ_M ((0<<4) | (1<<3) | (0<<2)) |
| #define | REG5_RATE_25HZ_M ((0<<4) | (1<<3) | (1<<2)) |
| #define | REG5_RATE_50HZ_M ((1<<4) | (0<<3) | (0<<2)) |
| #define | REG5_RATE_100HZ_M ((1<<4) | (0<<3) | (1<<2)) |
| #define | REG5_RATE_DO_NOT_USE_M ((1<<4) | (1<<3) | (0<<2)) |
| #define | REG6_FULL_SCALE_BITS_M ((1<<6) | (1<<5)) |
| #define | REG6_FULL_SCALE_2GA_M ((0<<6) | (0<<5)) |
| #define | REG6_FULL_SCALE_4GA_M ((0<<6) | (1<<5)) |
| #define | REG6_FULL_SCALE_8GA_M ((1<<6) | (0<<5)) |
| #define | REG6_FULL_SCALE_12GA_M ((1<<6) | (1<<5)) |
| #define | REG7_CONT_MODE_M ((0<<1) | (0<<0)) |
| #define | REG_STATUS_A_NEW_ZYXADA 0x08 |
| #define | INT_CTRL_M 0x12 |
| #define | INT_SRC_M 0x13 |
| #define | LSM303D_ACCEL_DEFAULT_RANGE_G 16 |
| #define | LSM303D_ACCEL_DEFAULT_RATE 800 |
| #define | LSM303D_ACCEL_DEFAULT_ONCHIP_FILTER_FREQ 50 |
| #define | LSM303D_ACCEL_DEFAULT_DRIVER_FILTER_FREQ 30 |
| #define | LSM303D_ACCEL_MAX_OUTPUT_RATE 280 |
| #define | LSM303D_MAG_DEFAULT_RANGE_GA 2 |
| #define | LSM303D_MAG_DEFAULT_RATE 100 |
| #define | LSM303D_TIMER_REDUCTION 200 |
| #define | LSM303D_NUM_CHECKED_REGISTERS 8 |
Functions | |
| __EXPORT int | lsm303d_main (int argc, char *argv[]) |
| void | lsm303d::start (bool external_bus, enum Rotation rotation, unsigned range) |
| Start the driver. More... | |
| void | lsm303d::test () |
| Perform some basic functional tests on the driver; make sure we can collect data from the sensor in polled and automatic modes. More... | |
| void | lsm303d::reset () |
| Reset the driver. More... | |
| void | lsm303d::info () |
| Print a little info about the driver. More... | |
| void | lsm303d::regdump () |
| dump registers from device More... | |
| void | lsm303d::usage () |
| Prints info about the driver argument usage. More... | |
| void | lsm303d::test_error () |
| trigger an error More... | |
Variables | |
| LSM303D * | lsm303d::g_dev |
Driver for the ST LSM303D MEMS accelerometer / magnetometer connected via SPI.
Definition in file lsm303d.cpp.
| #define ADDR_ACT_DUR 0x3f |
Definition at line 140 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_ACT_THS 0x3e |
Definition at line 139 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_CLICK_CFG 0x38 |
Definition at line 133 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_CLICK_SRC 0x39 |
Definition at line 134 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_CLICK_THS 0x3a |
Definition at line 135 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_CTRL_REG0 0x1F |
Definition at line 113 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_CTRL_REG1 0x20 |
Definition at line 114 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate(), LSM303D::print_registers(), and LSM303D::reset().
| #define ADDR_CTRL_REG2 0x21 |
Definition at line 115 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth(), LSM303D::accel_set_range(), and LSM303D::print_registers().
| #define ADDR_CTRL_REG3 0x22 |
Definition at line 116 of file lsm303d.cpp.
Referenced by LSM303D::print_registers(), LSM303D::reset(), and LSM303D::test_error().
| #define ADDR_CTRL_REG4 0x23 |
Definition at line 117 of file lsm303d.cpp.
Referenced by LSM303D::print_registers(), and LSM303D::reset().
| #define ADDR_CTRL_REG5 0x24 |
Definition at line 118 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_samplerate(), LSM303D::print_registers(), and LSM303D::reset().
| #define ADDR_CTRL_REG6 0x25 |
Definition at line 119 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range(), and LSM303D::print_registers().
| #define ADDR_CTRL_REG7 0x26 |
Definition at line 120 of file lsm303d.cpp.
Referenced by LSM303D::print_registers(), and LSM303D::reset().
| #define ADDR_FIFO_CTRL 0x2e |
Definition at line 122 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_FIFO_SRC 0x2f |
Definition at line 123 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_CFG1 0x30 |
Definition at line 125 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_CFG2 0x34 |
Definition at line 129 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_DUR1 0x33 |
Definition at line 128 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_DUR2 0x37 |
Definition at line 132 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_SRC1 0x31 |
Definition at line 126 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_SRC2 0x35 |
Definition at line 130 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_THS1 0x32 |
Definition at line 127 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_IG_THS2 0x36 |
Definition at line 131 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_INCREMENT (1<<6) |
Definition at line 79 of file lsm303d.cpp.
Referenced by LSM303D::mag_measure(), and LSM303D::measure().
| #define ADDR_INT_CTRL_M 0x12 |
Definition at line 99 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_INT_SRC_M 0x13 |
Definition at line 100 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_TEMP_H 0x06 |
Definition at line 90 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_TEMP_L 0x05 |
Definition at line 89 of file lsm303d.cpp.
Referenced by LSM303D::mag_measure(), and LSM303D::print_registers().
| #define ADDR_OUT_X_H_A 0x29 |
Definition at line 107 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_X_H_M 0x09 |
Definition at line 93 of file lsm303d.cpp.
| #define ADDR_OUT_X_L_A 0x28 |
Definition at line 106 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_X_L_M 0x08 |
Definition at line 92 of file lsm303d.cpp.
| #define ADDR_OUT_Y_H_A 0x2B |
Definition at line 109 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_Y_H_M 0x0B |
Definition at line 95 of file lsm303d.cpp.
| #define ADDR_OUT_Y_L_A 0x2A |
Definition at line 108 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_Y_L_M 0x0A |
Definition at line 94 of file lsm303d.cpp.
| #define ADDR_OUT_Z_H_A 0x2D |
Definition at line 111 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_Z_H_M 0x0D |
Definition at line 97 of file lsm303d.cpp.
| #define ADDR_OUT_Z_L_A 0x2C |
Definition at line 110 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_OUT_Z_L_M 0x0C |
Definition at line 96 of file lsm303d.cpp.
| #define ADDR_REFERENCE_X 0x1c |
Definition at line 101 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_REFERENCE_Y 0x1d |
Definition at line 102 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_REFERENCE_Z 0x1e |
Definition at line 103 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_STATUS_A 0x27 |
Definition at line 105 of file lsm303d.cpp.
Referenced by LSM303D::measure(), and LSM303D::print_registers().
| #define ADDR_STATUS_M 0x07 |
Definition at line 91 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_TIME_LATENCY 0x3c |
Definition at line 137 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_TIME_LIMIT 0x3b |
Definition at line 136 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_TIME_WINDOW 0x3d |
Definition at line 138 of file lsm303d.cpp.
Referenced by LSM303D::print_registers().
| #define ADDR_WHO_AM_I 0x0F |
Definition at line 86 of file lsm303d.cpp.
Referenced by LSM303D::print_registers(), and LSM303D::probe().
| #define DIR_READ (1<<7) |
Definition at line 77 of file lsm303d.cpp.
Referenced by LSM303D::mag_measure(), LSM303D::measure(), and LSM303D::read_reg().
| #define DIR_WRITE (0<<7) |
Definition at line 78 of file lsm303d.cpp.
Referenced by LSM303D::write_reg().
| #define INT_CTRL_M 0x12 |
Definition at line 197 of file lsm303d.cpp.
| #define INT_SRC_M 0x13 |
Definition at line 198 of file lsm303d.cpp.
| #define LSM303D_ACCEL_DEFAULT_DRIVER_FILTER_FREQ 30 |
Definition at line 204 of file lsm303d.cpp.
Referenced by LSM303D::LSM303D(), and LSM303D::reset().
| #define LSM303D_ACCEL_DEFAULT_ONCHIP_FILTER_FREQ 50 |
Definition at line 203 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define LSM303D_ACCEL_DEFAULT_RANGE_G 16 |
Definition at line 201 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define LSM303D_ACCEL_DEFAULT_RATE 800 |
Definition at line 202 of file lsm303d.cpp.
Referenced by LSM303D::ioctl(), LSM303D::LSM303D(), and LSM303D::reset().
| #define LSM303D_ACCEL_MAX_OUTPUT_RATE 280 |
Definition at line 205 of file lsm303d.cpp.
Referenced by LSM303D::LSM303D().
| #define LSM303D_DEVICE_PATH_ACCEL "/dev/lsm303d_accel" |
Definition at line 81 of file lsm303d.cpp.
Referenced by lsm303d::reset(), lsm303d::start(), and lsm303d::test().
| #define LSM303D_DEVICE_PATH_ACCEL_EXT "/dev/lsm303d_accel_ext" |
Definition at line 82 of file lsm303d.cpp.
| #define LSM303D_DEVICE_PATH_MAG "/dev/lsm303d_mag" |
Definition at line 83 of file lsm303d.cpp.
Referenced by lsm303d::reset(), lsm303d::start(), and lsm303d::test().
| #define LSM303D_MAG_DEFAULT_RANGE_GA 2 |
Definition at line 207 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define LSM303D_MAG_DEFAULT_RATE 100 |
Definition at line 208 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define LSM303D_NUM_CHECKED_REGISTERS 8 |
Definition at line 314 of file lsm303d.cpp.
Referenced by LSM303D::check_registers(), LSM303D::print_info(), and LSM303D::write_checked_reg().
| #define LSM303D_TIMER_REDUCTION 200 |
Definition at line 216 of file lsm303d.cpp.
Referenced by LSM303D::ioctl(), and LSM303D::start().
| #define REG1_BDU_UPDATE (1<<3) |
Definition at line 155 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG1_POWERDOWN_A ((0<<7) | (0<<6) | (0<<5) | (0<<4)) |
Definition at line 143 of file lsm303d.cpp.
| #define REG1_RATE_100HZ_A ((0<<7) | (1<<6) | (1<<5) | (0<<4)) |
Definition at line 149 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate().
| #define REG1_RATE_12_5HZ_A ((0<<7) | (0<<6) | (1<<5) | (1<<4)) |
Definition at line 146 of file lsm303d.cpp.
| #define REG1_RATE_1600HZ_A ((1<<7) | (0<<6) | (1<<5) | (0<<4)) |
Definition at line 153 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate().
| #define REG1_RATE_200HZ_A ((0<<7) | (1<<6) | (1<<5) | (1<<4)) |
Definition at line 150 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate().
| #define REG1_RATE_25HZ_A ((0<<7) | (1<<6) | (0<<5) | (0<<4)) |
Definition at line 147 of file lsm303d.cpp.
| #define REG1_RATE_3_125HZ_A ((0<<7) | (0<<6) | (0<<5) | (1<<4)) |
Definition at line 144 of file lsm303d.cpp.
| #define REG1_RATE_400HZ_A ((1<<7) | (0<<6) | (0<<5) | (0<<4)) |
Definition at line 151 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate().
| #define REG1_RATE_50HZ_A ((0<<7) | (1<<6) | (0<<5) | (1<<4)) |
Definition at line 148 of file lsm303d.cpp.
| #define REG1_RATE_6_25HZ_A ((0<<7) | (0<<6) | (1<<5) | (0<<4)) |
Definition at line 145 of file lsm303d.cpp.
| #define REG1_RATE_800HZ_A ((1<<7) | (0<<6) | (0<<5) | (1<<4)) |
Definition at line 152 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate(), and LSM303D::reset().
| #define REG1_RATE_BITS_A ((1<<7) | (1<<6) | (1<<5) | (1<<4)) |
Definition at line 142 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_samplerate().
| #define REG1_X_ENABLE_A (1<<0) |
Definition at line 158 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG1_Y_ENABLE_A (1<<1) |
Definition at line 157 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG1_Z_ENABLE_A (1<<2) |
Definition at line 156 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG2_AA_FILTER_BW_194HZ_A ((0<<7) | (1<<6)) |
Definition at line 162 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth().
| #define REG2_AA_FILTER_BW_362HZ_A ((1<<7) | (0<<6)) |
Definition at line 163 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth().
| #define REG2_AA_FILTER_BW_50HZ_A ((1<<7) | (1<<6)) |
Definition at line 164 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth().
| #define REG2_AA_FILTER_BW_773HZ_A ((0<<7) | (0<<6)) |
Definition at line 161 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth().
| #define REG2_ANTIALIAS_FILTER_BW_BITS_A ((1<<7) | (1<<6)) |
Definition at line 160 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_onchip_lowpass_filter_bandwidth().
| #define REG2_FULL_SCALE_16G_A ((1<<5) | (0<<4) | (0<<3)) |
Definition at line 171 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG2_FULL_SCALE_2G_A ((0<<5) | (0<<4) | (0<<3)) |
Definition at line 167 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG2_FULL_SCALE_4G_A ((0<<5) | (0<<4) | (1<<3)) |
Definition at line 168 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG2_FULL_SCALE_6G_A ((0<<5) | (1<<4) | (0<<3)) |
Definition at line 169 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG2_FULL_SCALE_8G_A ((0<<5) | (1<<4) | (1<<3)) |
Definition at line 170 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG2_FULL_SCALE_BITS_A ((1<<5) | (1<<4) | (1<<3)) |
Definition at line 166 of file lsm303d.cpp.
Referenced by LSM303D::accel_set_range().
| #define REG5_ENABLE_T (1<<7) |
Definition at line 173 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG5_RATE_100HZ_M ((1<<4) | (0<<3) | (1<<2)) |
Definition at line 184 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_samplerate().
| #define REG5_RATE_12_5HZ_M ((0<<4) | (1<<3) | (0<<2)) |
Definition at line 181 of file lsm303d.cpp.
| #define REG5_RATE_25HZ_M ((0<<4) | (1<<3) | (1<<2)) |
Definition at line 182 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_samplerate().
| #define REG5_RATE_3_125HZ_M ((0<<4) | (0<<3) | (0<<2)) |
Definition at line 179 of file lsm303d.cpp.
| #define REG5_RATE_50HZ_M ((1<<4) | (0<<3) | (0<<2)) |
Definition at line 183 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_samplerate().
| #define REG5_RATE_6_25HZ_M ((0<<4) | (0<<3) | (1<<2)) |
Definition at line 180 of file lsm303d.cpp.
| #define REG5_RATE_BITS_M ((1<<4) | (1<<3) | (1<<2)) |
Definition at line 178 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_samplerate().
| #define REG5_RATE_DO_NOT_USE_M ((1<<4) | (1<<3) | (0<<2)) |
Definition at line 185 of file lsm303d.cpp.
| #define REG5_RES_HIGH_M ((1<<6) | (1<<5)) |
Definition at line 175 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG5_RES_LOW_M ((0<<6) | (0<<5)) |
Definition at line 176 of file lsm303d.cpp.
| #define REG6_FULL_SCALE_12GA_M ((1<<6) | (1<<5)) |
Definition at line 191 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range().
| #define REG6_FULL_SCALE_2GA_M ((0<<6) | (0<<5)) |
Definition at line 188 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range().
| #define REG6_FULL_SCALE_4GA_M ((0<<6) | (1<<5)) |
Definition at line 189 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range().
| #define REG6_FULL_SCALE_8GA_M ((1<<6) | (0<<5)) |
Definition at line 190 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range().
| #define REG6_FULL_SCALE_BITS_M ((1<<6) | (1<<5)) |
Definition at line 187 of file lsm303d.cpp.
Referenced by LSM303D::mag_set_range().
| #define REG7_CONT_MODE_M ((0<<1) | (0<<0)) |
Definition at line 193 of file lsm303d.cpp.
Referenced by LSM303D::reset().
| #define REG_STATUS_A_NEW_ZYXADA 0x08 |
Definition at line 195 of file lsm303d.cpp.
Referenced by LSM303D::measure().
| #define WHO_I_AM 0x49 |
Definition at line 87 of file lsm303d.cpp.
Referenced by LSM303D::probe().
| int lsm303d_main | ( | int | argc, |
| char * | argv[] | ||
| ) |
Definition at line 2033 of file lsm303d.cpp.
References errx, lsm303d::info(), lsm303d::regdump(), lsm303d::reset(), ROTATION_NONE, lsm303d::start(), lsm303d::test(), lsm303d::test_error(), and lsm303d::usage().


deepmatcher.data¶
process¶
-
deepmatcher.data.
process
(path, train=None, validation=None, test=None, unlabeled=None, cache='cacheddata.pth', check_cached_data=True, auto_rebuild_cache=True, tokenize='nltk', lowercase=True, embeddings='fasttext.en.bin', embeddings_cache_path='~/.vector_cache', ignore_columns=(), include_lengths=True, id_attr='id', label_attr='label', left_prefix='left_', right_prefix='right_', use_magellan_convention=False, pca=True)[source]¶ Creates dataset objects for multiple splits of a dataset.
This involves the following steps (if data cannot be retrieved from the cache): #. Read CSV header of a data file and verify header is sane. #. Create fields, i.e., column processing specifications (e.g. tokenization, label
conversion to integers etc.)- Load each data file:
- Read each example (tuple pair) in specified CSV file.
- Preprocess example. Involves lowercasing and tokenization (unless disabled).
- Compute metadata if training data file. See
MatchingDataset.compute_metadata()
for details.
- Create vocabulary consisting of all tokens in all attributes in all datasets.
- Download word embedding data if necessary.
- Create mapping from each word in vocabulary to its word embedding.
- Compute metadata
- Write to cache
Parameters: - path (str) – Common prefix of the splits’ file paths.
- train (str) – Suffix to add to path for the train set.
- validation (str) – Suffix to add to path for the validation set, or None for no validation set. Default is None.
- test (str) – Suffix to add to path for the test set, or None for no test set. Default is None.
- cache (str) – Suffix to add to path for cache file. If None disables caching.
- check_cached_data (bool) – Verify that data files haven’t changes since the cache was constructed and that relevant field options haven’t changed.
- auto_rebuild_cache (bool) – Automatically rebuild the cache if the data files are modified or if the field options change. Defaults to False.
- lowercase (bool) – Whether to lowercase all words in all attributes.
- embeddings (str or list) –
One or more of the following strings:
- fasttext.{lang}.bin:
- This uses sub-word level word embeddings based on binary models from “wiki
word vectors” released by FastText. {lang} is ‘en’ or any other 2 letter
ISO 639-1 Language Code, or 3 letter ISO 639-2 Code, if the language does
not have a 2 letter code. 300d vectors.
fasttext.en.bin
is the default.
- fasttext.wiki.vec:
- Uses wiki news word vectors released as part of “Advances in Pre-Training Distributed Word Representations” by Mikolov et al. (2018). 300d vectors.
- fasttext.crawl.vec:
- Uses Common Crawl word vectors released as part of “Advances in Pre-Training Distributed Word Representations” by Mikolov et al. (2018). 300d vectors.
- glove.6B.{dims}:
- Uses uncased Glove trained on Wiki + Gigaword. {dims} is one of (50d, 100d, 200d, or 300d).
- glove.42B.300d:
- Uses uncased Glove trained on Common Crawl. 300d vectors.
- glove.840B.300d:
- Uses cased Glove trained on Common Crawl. 300d vectors.
- glove.twitter.27B.{dims}:
- Uses cased Glove trained on Twitter. {dims} is one of (25d, 50d, 100d, or 200d).
- embeddings_cache_path (str) – Directory to store dowloaded word vector data.
- ignore_columns (list) – A list of columns to ignore in the CSV files.
- include_lengths (bool) – Whether to provide the model with the lengths of each attribute sequence in each batch. If True, length information can be used by the neural network, e.g. when picking the last RNN output of each attribute sequence.
- id_attr (str) – The name of the tuple pair ID column in the CSV file.
- label_attr (str) – The name of the tuple pair match label column in the CSV file.
- left_prefix (str) – The prefix for attribute names belonging to the left table.
- right_prefix (str) – The prefix for attribute names belonging to the right table.
- use_magellan_convention (bool) – Set id_attr, left_prefix, and right_prefix according to Magellan (py_entitymatching Python package) naming conventions. Specifically, set them to be ‘_id’, ‘ltable_’, and ‘rtable_’ respectively.
- pca (bool) – Whether to compute PCA for each attribute (needed for SIF model). Defaults to False.
Returns: - Datasets for (train, validation, and test) splits in that
order, if provided, or dataset for unlabeled, if provided.
Return type: Tuple[MatchingDataset]
process_unlabeled¶
-
deepmatcher.data.
process_unlabeled
(path, trained_model, ignore_columns=None)[source]¶ Creates a dataset object for an unlabeled dataset.
Parameters: - path (string) – The full path to the unlabeled data file (not just the directory).
- trained_model (
MatchingModel
) – The trained model. The model is aware of the configuration of the training data on which it was trained, and so this method reuses the same configuration for the unlabeled data. - ignore_columns (list) – A list of columns to ignore in the unlabeled CSV file.


TCC Structure from Motion
1.0.0
Senior project on Structure from Motion for scene and camera trajectory reconstruction from monocular video
Class Hierarchy
Go to the textual class hierarchy
Generated by
1.8.18


Crime Mapping and Spatial Analysis
Class 4: Geographic Information Systems
John Palmer
Geographic Information Systems
Data
Hardware
Software
Data
Vector
Raster
Vector Data
Vector Data
Vector Data
Vector Data
ESRI Shapefiles (.shp)
GeoJSON (.json)
Comma Separated Values (.csv)
Keyhole Markup Language (.kml)
Scalable Vector Graphics (.svg)
Vector Data
Points
Polylines
Polygons
Vector Data: Scale
Vector Data: Scale
Vector Data
Eurostat Country Shapefiles
Raster Data
Raster Data
Raster Data
Spatial Resolution
Spectral Resolution
Raster Data
JPEG (.jpg)
TIFF (.tif)
GIF (.gif)
PNG (.png)
Layers
Hardware
memory (RAM)
computation (processors)
storage (hard drive)
connectivity (Internet)
GIS Software
read maps
add spatial information
spatial analysis
print maps
manage and transform CRS
GUI
layers
legends
servers
GIS Software
QGIS
ArcGIS
GRASS
Stata
R
Python
Map Projections
cylindrical projections
conical projections
planar projections
Map Projections
Map Projections
Angle conformity
Distances
Areas
Coordinate Reference Systems (CRS)
Projected vs. Geographic
Projected CRS: UTM
Projected CRS: UTM
Zone
northing (y) and easting (x) values in meters
Geographic CRS: WGS 84
Geographic CRS: WGS 84
CRS
datum/reference ellipsoid
the geoid
CRS issues
defining and transforming
measuring distance
measuring area
measuring angles
Map Production
Communication is key
Map Production
Title
Border
Legend
North Arrow / Compass Rose
Scale
Acknowledgment
Graticule
Projection Name
Maps for Visual Thinking
generate ideas or hypotheses
crude, working maps
Maps for Visual Communication
synthesize and present information
understand what you want to communicate and who is your target audience
Visual Communication
points, lines, polygons
color and pattern
shape
size
isolines and 3D effects
Map types
points
proportional symbols
choropleths
charts
isolines
connections
Point Maps
choice of symbols
choice of colors
Proportional Symbol Maps
choice of symbol
choice of size
choice of color
Choropleth Maps
choice of color
choice of pattern
Charts
pie
bar
graduated circle
line
density dots
Classifying color or size
How many classes? (4-6 as rule of thumb)
What type of data?
What does viewer need to understand?
Classification Approaches
Equal intervals
Equal counts (quantiles)
Equal areas
Natural breaks
Standard deviations
Vera Institute Incarceration Rate Map
Modifiable Areal Unit Problem
Heat maps
Standard deviational Ellipse
Clustering
Connections and flows
Bath City Commuters
Story maps
Guatemala: Operation Sofia (Forensic Architecture)
Final Project
Instructions


The task of peer pairing with others is one that I always look forward to. I'm a really social person who likes to crack a lot of jokes, so for me its not just an opportunity to learn and work together but a chance to have fun and break up the monotony of my day. Overall, I think pairing is one of the most valuable tools and methods of DBC's teaching style.
Getting to pair is one of my favorite aspects of our curriculum, and I feel like the extra added edge of working on a team helps me focus and perform better. So far, my peer paring experience has been really positive. Although there have been times when guided pairing sessions were a bit more serious, I still managed to work through challenges with my pair with a happy go lucky attitude to avoid getting frustrated with difficult code.
I'm not one to toot my own horn but, I am a really fun pair judging by the feedback I've received and that is something I really pride myself in. I'd say that I work just as hard to find solutions with my pair as I do to have a nice time with my pair. Who would want all work and no play? That would make the session boring. If the session can be memorable and pleasant, then perhaps the material learned during that session will be remembered more easily and with pleasant co-memories to accompany it. After reading the feedback, I feel that my approach has been well received.
The constructive feedback I have received has mostly recommended that I slow down and take my time when approaching the challenges because I sometimes go too fast and miss details. Thats probably a fair suggestion because I know I am generally one to just go, go , go and try to be as efficient as possible with my time. Another suggestion has been to embrace breaks while coding. I know that I have a tendency to get carried away when working on a challenge so taking a break to help clear my mind would be really helpful. Taking the feedback into account, I think I will make a new goal to strive towards going through each challenge thoroughly and reading each release before the pairing session starts as well planning breaks ahead of time based upon estimations of where I think difficulties may arise. A method like that could help prepare me for each part of a challenge as well as encourage me to take a break when those difficult moments arise.
Writing feedback for others has been an enlightening experience. Not only do I feel like I am evaluating the success of our pairing and acknowledging their growth as a programmer, but I am reminded of the difficulties that we struggled through and overcame together. An important aspect of writing good feedback is actionable items that will allow them to quantifiably improve their skills. This is probably the most difficult portion of writing feedback. Although there is always room for improvement, depending on what the material is, our pair may not exhibit certain areas of improvement that may have otherwise been visible and apparent. Writing feedback that is kind and specific is a much more doable task, and just as important.
| T-1 | T-2 | T-3 | T-4 | T-5 | T-6 | T-7 | T-8 |
| C-1 | C-3 | C-4 | C-5 | C-6 | C-7 | C-8 | C-9 |


LibUV bindings for the duktape JS engine
The goal of this project is to make a node.js-like environment that's ultra lean for tiny devices.
Source will be at GitHub
Here is a random duck love image from the internet to make you smile:


The loop mode allows the automatic repetition of RTR-NetTest.
The first test will start immediately after the loop mode has been initiated. Further tests will be started after the waiting time (default 30 minutes) has elapsed. These values can be changed under “Settings”. Tests will be performed until the configured number of tests (default 10 tests) has been reached. The loop mode is automatically terminated after 2 days. The loop mode can be stopped at any time.It needs to be explicitly pointed out that due to the loop mode it cannot be excluded that the tester is identified.


Once a program has been read, the system will have available all the information necessary for its execution. This information is called a program state.
The saved-state of a program may be saved on disk for future execution. To save a program into a file File, type the following query. On UNIX platforms, the file becomes executable:
| ?- save_program(File).
You can also specify a goal to be run when a saved program is restored. This is done by:
| ?- save_program(File, start).
where start/0
is the predicate to be called.
Once a program has been saved into a file File, the following query will restore the system to the saved-state:
| ?- restore(File).
If a saved-state has been moved or copied to another machine, the path names of foreign resources and other files needed upon restore are typically different at restore time from their save time values. To solve this problem, certain atoms will be renamed during restore as follows:
The purpose of this procedure is to be able to build and deploy an application consisting of a saved-state and other files as a directory tree with the saved-state at the root: as long as the other files maintain their relative position in the deployed copy, they can still be found upon restore.
Please note: When creating a saved state with
save_program/[1,2]
, the names and paths of foreign resources, are included in the saved-state. After restoring a saved-state, this information is used to reload the foreign resources again. The state of the foreign resource in terms of global C variables and allocated memory is thus not preserved. Foreign resources may define init and deinit functions to take special action upon loading and unloading; see Init and Deinit Functions.
As of SICStus Prolog 3.8, partial saved-states corresponding to a
set of source files, modules, and predicates can be created
by the built-in predicates save_files/2
,
save_modules/2
, and save_predicates/2
respectively. These
predicates create files in a binary format, by default with the
prefix `.po' (for Prolog object), which can be loaded by
load_files/[1,2]
. For example, to compile a program
split into several source files into a single PO file, type:
| ?- compile(Files), save_files(Files, Object).
For each filename given, the first goal will try to locate a source file and compile it into memory. The second goal will save the program just compiled into a PO file whose default suffix is `.po'. Thus the PO file will contain a partial memory image.
Please note: PO files can be created with any suffix, but cannot be loaded unless the suffix is `.po'!


{% extends 'dashboard.html' %} {% load static %} {% block scripts %} {% endblock %} {% block content %}
The Bridge City Bicycle Co-operative (herein referred to as The BCBC and The Community) is a nonprofit, community bicycle repair education and resource co-operative. We offer our members nonjudgmental repair space, tools and instruction during business hours (hours on website) by donation, and educational workshops. We also offer reconditioned/recycled low cost bikes and parts for sale. The BCBC is operated by volunteers; a medley of professionals, students, bike enthusiasts, activists, and other community members who share a love for cycling in Saskatoon. Membership is open to all individuals and costs $20 per year. A receipt will be issued to you once your membership fee has been paid.


The baseUrl for the IntelliSearch SearchService rest-service, typically http://server:9950/
A settings object that indicates how the search-client instance is to behave.
Holds a reference to the setup AllCategories service.
Holds a reference to the setup Authentication service.
Holds a reference to the currently set authentication token.
Holds a reference to the setup Autocomplete service.
Holds a reference to the setup BestBet service.
Holds a reference to the setup Categorize service.
Holds a reference to the setup Find service.
Gets the currently registered regex-filters.
Nodes that doesn't have any filters are returned, even if filters for other nodes are defined.
Also note that the filter automatically sets the expanded property for affected nodes, to help allow them to automatically be shown, with their immediate children.
The actual value is an associative array that indicates which category-nodes to filter and what pattern to filter that node with.
It will not execute any server-side calls, but may run triggers leading to new content returned in callbacks.
Note 1: This is only used when:
1. The categorize service is enabled in the SearchClient constructor (may be disabled via the Settings object). 2. You have enabled a CategorizeSettings.cbSuccess callback. 3. You have not disabled the CategorizeTriggers.clientCategoryFilterChanged trigger.
Note 2: deferUpdates will not have any effect on this functionality. Deferring only affects calls to the server and does not stop categorize-callbacks from being run - as long as they are the result of changing the [[clientCategoryFilter]].
This is a handy helper to help the user navigating the category-tree. It is typically used when a given node has a lot of categories. This often happens with i.e. the Author category node. With this feature you can present the user with a filter-edit-box in the Author node, and allow them to start typing values which will then filter the category-nodes' displayName to only match the text entered.
Nodes that doesn't have any filters are returned, even if filters for other nodes are defined.
Also note that the filter automatically sets the expanded property for affected nodes, to help allow them to automatically be shown, with their immediate children.
The actual value is an associative array that indicates which category-nodes to filter and what pattern to filter that node with.
It will not execute any server-side calls, but may run triggers leading to new content returned in callbacks.
Note 1: This is only used when:
1. The categorize service is enabled in the SearchClient constructor (may be disabled via the Settings object). 2. You have enabled a CategorizeSettings.cbSuccess callback. 3. You have not disabled the CategorizeTriggers.clientCategoryFilterChanged trigger.
Note 2: deferUpdates will not have any effect on this functionality. Deferring only affects calls to the server and does not stop categorize-callbacks from being run - as long as they are the result of changing the [[clientCategoryFilter]].
Gets the currently active client-id value.
Will run trigger-checks and potentially update services.
Sets the currently active client-id.
Will run trigger-checks and potentially update services.
Gets the currently active date-from value.
Will run trigger-checks and potentially update services.
Sets the from-date for matches to be used.
Will run trigger-checks and potentially update services.
Gets the currently active date-to value.
Will run trigger-checks and potentially update services.
Sets the to-date for matches to be used.
Will run trigger-checks and potentially update services.
Gets the currently active match generateContent setting.
Note: Requires the backend IndexManager to have the option enabled in it's configuration too.
Will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Sets whether the results should generate the content or not.
Note: Requires the backend IndexManager to have the option enabled in it's configuration too.
Will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Gets the currently active match generateContentHighlights setting.
Note: See the matchGenerateContent property in regards to IndexManager requirements.
Will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Sets whether the results should generate the content-highlight tags or not.
Note: See the matchGenerateContent property in regards to IndexManager requirements.
Will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Gets the currently active match grouping mode.
Note: Requires the search-service to have the option enabled in it's configuration too.
Will run trigger-checks and potentially update services.
Sets whether the results should be grouped or not.
Note: Requires the search-service to have the option enabled in it's configuration too.
Will run trigger-checks and potentially update services.
Gets the currently active match-page.
Sets the match-page to get. Will run trigger-checks and potentially update services.
Gets the currently active match page-size.
Sets the match page-size to be used. Will run trigger-checks and potentially update services.
Gets the currently active max number of autocomplete suggestions to get.
Sets the max number of autocomplete suggestions to get. Will run trigger-checks and potentially update services.
Returns the currently active query.
Note: Changing the query
property will likely lead to multiple trigger-checks and potential updates.
This is because changing the whole value will lead to each of the query-objects' properties to trigger individual
events.
To avoid multiple updates, call deferUpdates(true)
before and deferUpdates(false) afterwards. Then at max
only one update will be generated.
Sets the query to use.
Note: Changing the query
property will likely lead to multiple trigger-checks and potential updates.
This is because changing the whole value will lead to each of the query-objects' properties to trigger individual
events.
To avoid multiple updates, call deferUpdates(true)
before and deferUpdates(false) afterwards. Then at max
only one update will be generated.
Gets the currently active query-object.
Sets the query-text to be used. Will run trigger-checks and potentially update services.
Gets the currently active search-type value.
Sets the search-type to be used. Will run trigger-checks and potentially update services.
Gets the currently active match generateContent setting.
Changes will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Sets the language that the client uses. Affects category-names (and in the future maybe metadata too). The expected values should be according to the https://www.wikiwand.com/en/IETF_language_tag standard.
Changes will run trigger-checks and potentially update services.
Note: Only effective for v4+.
Decides whether an update should be executed or not. Typically used to temporarily turn off update-execution. When turned back on the second param can be used to indicate whether pending updates should be executed or not.
Note: Changes deferring of updates for all components (Autocomplete, Categorize and Find). Use the service properties of the SearchClient instance to control deferring for each service.
Turns on or off deferring of updates.
Used to indicate if a pending update is to be executed or skipped when deferring
is turned off. The param is ignored for state=true
.
Toggle the given filter.
Will run trigger-checks and potentially update services.
Is either string[], Filter or Category. When string array it expects the equivalent of the Category.categoryName property, which is like this: ["Author", "Normann"].
true if the filter was added, false if it was removed.
This method is typically called when the user clicks the search-button in the UI. For query-fields that accepts enter the default queryChangeInstantRegex catches enter (for find and categorize). When they don't take enter you will have to set up something that either catches the default enter or a user clicks on a "Search"-button or similar. You can choose to use the already current query, or you can pass it in. If you include the query then the internal updates are suppressed while changing the query-properties, to make sure that only one update per service is made (if any of their trigger-checks returned true).
When called it will unconditionally call the fetch() method of both Categorize and Find.
Note: The Autocomplete fetch() method is not called, as it is deemed very unexpected to want to list autocomplete suggestions when the Search-button is clicked.
Gets the next page of match-results (if any). Will run trigger-checks and potentially update services.
Gets the previous page of match-results. Will run trigger-checks and potentially update services.
Generated using TypeDoc
This is the "main class" of this package. Please read the getting-started section" for a proper introduction.
The SearchClient manages a range of other services:
Each of the above services can be used independently, but it is highly recommended to use the SearchClient instead.
The SearchClient allows you to have an advanced search with minimal effort in regards to setup and logics. instead of having to write all the logics yourself the SearchClient exposes the following methods for managing your search:
What happens is that any query-changes that arrive are checked in regards to trigger-settings. If they are to trigger and a callback has been set up then the server is requested and when the data is received it is sent to the callback registered in the settings-object.


Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano
Electric Piano


Cryptocurrency investors holding between 1,000 and 10,000 BTC ($8.5 million and $85 million) have seemingly bought the dip last year, as research shows they’ve accumulated over 450,000 bitcoins ($3.8 billion) in less than nine months.
bitcoin is dead
bitcoin is nerd money
bitcoin will never work
Deleted User29-May-19 11:36 AM
@jorian I added this this morning
and used a specific repo but switched back to KMD codebase
will test again in a few min, I was in a rush with a meeting
but yeah, it s for today
btw, for any AC or coin not having the logo implemented
just send me the files and it will be integrated on the next update
in any case if some of you got RVN contacts, I'm about to delist even if I don t want to, I added it for a froggy friend
1
need to talk to their dev but they banned me
cause after announcing I listed them for free I was instabanned
because I prefer to list coin that want to be on the platform, and as it consumes spaces and am limited, and noone came back to me, I consider they don't care
I assume my position, and won t force anyone
am here to help, not force
no animosity at all but I have to handle both time, resources, team and legal stuff. I want to keep them, I really do, but it s been like 2 days with a global advertisement, I tried to reach some people, but no answer.

@Deleted User
I didn t need more than an unban to relist
they don t even know we exist and I wanted to give this as a gift
I know, I just have to manage my time very precisely, I didn t even generate new pubs for new seasons, and am ashamed I didn t thank voters
please don't see any harm in my words, I m really confused if I was misunderstood, no angryness, just 0 time to lose if I want to take care of users and improve the app(edited)
KMD and assetchains first
2
2
I live in wonderland and love everyone
6
4
1
and I believe some KMD people have some raven and can reach em, where I m not able anymore, btw it s done now, welcome back RVN (edited)
3
3
2
I ll go there back and just send them flowers and love
cachey29-May-19 12:28 PM
siu - Chainmakers29-May-19 12:53 PM
KMDUSD chart looks awesome... next stop should be $2.50 - $3.00(edited)
9
8/41 weekly cross is a great sign.
PTYX29-May-19 01:28 PM
@Deleted User rvn has a strong community. Good for barterly
DONT send your Coinomat Assets to Sasha !!!
He wrote an email to us all and wants to send us 0.05 WCT tokens for any Coinomat Asset !!!
Its unbelievable.

Hollowman900029-May-19 02:07 PM
Fuck a Sasha asset
cascrypto29-May-19 02:08 PM
to make their chain / traigle realy decentral
@Hollowman9000 not jet I m was a guppy iota investor 5 jinn
Hollowman900029-May-19 02:10 PM
Ah I almost pulled the trigger with 2 btc
$21MM during last peak
cascrypto29-May-19 02:10 PM
yes you should have
Hollowman900029-May-19 02:10 PM
Sigh
jl777c29-May-19 02:13 PM
tell us about NEM
Hollowman900029-May-19 02:13 PM
jl with the salt shaker
jl777c29-May-19 02:15 PM
NEM is a bigger regret for me. i had about 8% of it and dumped it when it first started trading
Markus29-May-19 02:16 PM
8% ?
jl777c29-May-19 02:16 PM
yes, i bought up a lot of nemstakes on NXT AE
Keppie29-May-19 02:16 PM
8% jezus christ
Markus29-May-19 02:16 PM
JL is a blue whale
jl777c29-May-19 02:16 PM
i sold it for 80 sats each or something silly
at the time i thought it was a scam
Markus29-May-19 02:17 PM
do u have a personal stash aswell beside supernet assets?
siu - Chainmakers29-May-19 02:17 PM
We at chainmakers are starting to get leads of possible clients migrating from waves, seems like there is distrust being brewed there.
2
8
jl777c29-May-19 02:18 PM
other than a few PIRATE, all I have is in SuperNET, assets and KMD
siu - Chainmakers29-May-19 02:18 PM
at the time i thought it was a scam
as history has unfolded, not exactly a scam but quite bad management.


Android
Do you breathe Android?? Follow the Android Myrmidon… Get Androidified!!!
This space is for the technogeeks who are lost in the complex network of highways and cross-roads of Technological Advances. Follow the Myrmidons and let us build together a Context Aware Navigator for all the Technology Updates for the astray Technologists. Let us help them navigate through the shortest route to reach the zenith of Technology.
Do you breathe Android?? Follow the Android Myrmidon… Get Androidified!!!
Want to preach iOS?? Follow the iOS Myrmidon… Get the Trilemma solved!!!
Follow the UI Myrmidon & Dig deeper into the Front End Technologies!!
Is Web your Religion?? Follow the League of the Web Myrmidons & Get Webbed!!
Follow the QA Myrmidon to Assure Quality without Compromise!!
Follow the Security Myrmidon & equip yourself with the Best Weapons of Security!!


Before Change
PRIORITY_PATTERN = "(?P<priority>!-?\d+)?"
DB_NAME = re.compile("^" + DB_NAME_PATTERN + PRIORITY_PATTERN + "$")
URL = re.compile("^" + URL_PATTERN + PRIORITY_PATTERN + "$")
URL_DB_NAME = re.compile("^(?P<url>" + URL_PATTERN + ")" + ":" +
"(?P<db_name>" + DB_NAME_PATTERN + ")" +
PRIORITY_PATTERN + "$")
@classmethod
def apply(cls, args, run):
url, db_name, collection, priority = cls.parse_mongo_db_arg(args)
After Change
HOSTNAME1_PATTERN = r"(?P<host1>" \
r"[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?" \
r"(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*)"
HOSTNAME2_PATTERN = r"(?P<host2>" \
r"[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?" \
r"(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*)"
HOST_ONLY = r"^(?:{host}:{port})$".format(host=HOSTNAME1_PATTERN, port=PORT1_PATTERN)
FULL = r"^(?:{host}:{port}:)?{db}(?:\.{collection}(?::{rid})?)?(?:!{priority})?$".format(
host=HOSTNAME2_PATTERN,
port=PORT2_PATTERN,
db=DB_NAME_PATTERN,
collection=COLL_NAME_PATTERN,
rid=RUN_ID_PATTERN,
priority=PRIORITY_PATTERN)
PATTERN = r"{host_only}|{full}".format(host_only=HOST_ONLY, full=FULL)
@classmethod


-
Support
Support
Join a grand adventure of 7 levels and unlimited milestone rewards
Join a grand adventure of 7 levels and unlimited milestone rewards
Join a grand adventure of 7 levels and unlimited milestone rewards
Join a grand adventure of 7 levels and unlimited milestone rewards
Join a grand adventure of 7 levels and unlimited milestone rewards
Join a grand adventure of 7 levels and unlimited milestone rewards


Defines | |
| #define | UIP_BUFSIZE |
| The size of the uIP packet buffer. | |
| #define | UIP_STATISTICS |
| Determines if statistics support should be compiled in. | |
| #define | UIP_LOGGING |
| Determines if logging of certain events should be compiled in. | |
| #define | UIP_LLH_LEN |
| The link level header length. | |
Functions | |
| void | uip_log (char *msg) |
| Print out a uIP log message. |
|
|
The size of the uIP packet buffer. The uIP packet buffer should not be smaller than 60 bytes, and does not need to be larger than 1500 bytes. Lower size results in lower TCP throughput, larger size results in higher TCP throughput. |
|
|
The link level header length. This is the offset into the uip_buf where the IP header can be found. For Ethernet, this should be set to 14. For SLIP, this should be set to 0. |
|
|
Determines if logging of certain events should be compiled in. This is useful mostly for debugging. The function uip_log() must be implemented to suit the architecture of the project, if logging is turned on. |
|
|
Determines if statistics support should be compiled in. The statistics is useful for debugging and to show the user. |
|
|
Print out a uIP log message. This function must be implemented by the module that uses uIP, and is called by uIP whenever a log message is generated. |


Cuts the cake
问题描述 :
Ice cream took a bronze medal in the Beijing match. Liu sir is very very happy. So he buys a cake for them. kiki is a child who likes eating, so the task of cuting cake was given to kiki. kiki is also a mischievous child. She wants to cut the cake in a different way. This is introduced in the figure below.
But there is a difficult problem.which is how to make each preson get equally many cake. kiki is not good at match, so she wants you help her solve this problem.
But there is a difficult problem.which is how to make each preson get equally many cake. kiki is not good at match, so she wants you help her solve this problem.
输入:
Input contains multiple test cases. Each line is a case. Each case contains only one integer R which is the radius. The input is terminated with a R of 0.
输出:
Input contains multiple test cases. Each line is a case. Each case contains only one integer R which is the radius. The input is terminated with a R of 0.
样例输入:
10 15 5 25 0
样例输出:
5.774 8.165 8.660 12.247 2.887 4.082 14.434 20.412
/*
水啊，可是WA了好几次，在计算总面积时不能用R*R，可能会超范围。。。
2013/01/22-09:22
*/
#include"stdio.h" #include"math.h" #define pi 3.1415926 int main() { int r; double a,b,s; while(scanf("%d",&r)!=EOF) { if(r==0)break; s=pi; s=s/3; a=r*sqrt(s/pi); b=r*sqrt((s*2)/pi); printf("%.3f %.3f\n",a,b); } return 0; }
解题转自：http://blog.csdn.net/yangyafeiac/article/details/8833055
(adsbygoogle = window.adsbygoogle || []).push({});
这个刺猬是怎么回事儿……
第二个程序编译都通不过， int L[m+1][n+1];这样定义出错，应该换成具体的数字ac
跟书上的解法不一样，不知道哪个效率要高些
有点意思
不错，感谢分享。
1234百位上出现的次数应该是200吧。
有些说不通吧，只有1个孩子肯定是男孩了
清华也会出这么无聊的题
很有意思，可惜我很菜啊
第一种方法怎么会是O(log(m+n))呢？没有二分的话直接遍历应该就是O(m+n)吧？
刚开始学习，为啥会报错了
gcc环境
对于第一题，我的直觉告诉我换不换都一样，求指教
整理的很好，学习了
无需用转移方程也可以解决，哈哈


{extend name="public:index"} {block name="title"}Add customers{/block} {block name="index"}
Relationship with customer *
First name *
Last Name*
Initials
Street addresse
City
Province or state
Postal code
Country
Date of birth
Occupation
ID Type
submit


Windows was almost called “Interface Manager”. However, "Windows" better described the look of the
programs on the screen.
Windows 1.0 shipped with: Paint, Windows Writer, Notepad, Calculator, a calendar, clock, and Reversi.
Windows 3.0 added more fun
to the PC by including Solitaire,
Hearts and Minesweeper.
Windows 3.0 supported 16 colors, up from the 6 included in Windows 1.0.
The beloved Start Menu, Task bar, and Windows Explorer
arrived in Windows 95.
Internet Explorer was released in expansions and later releases of Windows 95.
Brian Eno was paid $35,000 to compose the start-up sound.
The piece had to fit 150
adjectives…in 3.8 seconds.
Windows 98 added support for both DVDs and USB devices, such as mice, keyboards, and fax machines.
The Quick Launch made its debut, letting you run programs without the Start menu.
Windows XP Actually stands for 'experience'.
Windows XP’s Luna theme was a dramatic change from the look introduced in Windows 95.
Windows Flip 3D lets users cycle between all their open windows.
On release, Windows Vista became the most secure operating system
of its time.
The new enhanced Windows 7 taskbar includes Jump Lists,
Pinning and Live previews.
Snap, Peek and Shake features make interacting with Windows
fun and easy.
In Windows 8, Microsoft introduced the Windows Store, with over 200, 000 apps for Windows devices.
Windows 8 was designed to be used easily with touch or traditional mouse and keyboard
Hi! How can I help?
Ask me anything
What's
the
weather?
Cortana, named after the Halo character is the smart digital assistant on your Windows desktop and phone.
The Windows Start menu
is back & better than ever!
Microsoft’s new Edge browser features a reading mode, annotations, touch compatibility,
& more.


It is a concept vehicle with Liuid Silver body colour, 20-inch wheels, fabric foding roof, electrically-controlled hood, 4-cylinder 2.0 TDI engine rated 204 PS (150 kW; 201 hp)
and 400 (295.02 lbf ft), diesel particulate filter and Bluetec emission control system, quattro permanent four-wheel drve system,
Audi S tronic dual-clutch gearbox, McPherson-strut front axle and a four-link rear axle, Audi drive select system with 3 modes (dynamic, sport, efficiency),
MMI control panel with touch pad and dual-view technology, sound system with the proinent extending tweeters.


All projects.
Project number
Project name
Project leader
{{project.Id}}
{{project.Name}}
{{project.Lead.Username}}
View
Edit
Cancel


Lorem ipsum
Line0
Line1
Line0
Line1
Line2
1988-01-01
|
Sydney
|
info
|
|---|---|
| one way street |
info-1
|
| GT Road |
info-2
|


October List
Books
- Deep Work by Cal Newport
- Life 3.0: Being Human in the Age of Artificial Intelligence by Max Tegmark
- Homo Deus: Yuval Noah Harari
- Empathy: Why It Matters and How to Get It
Courses
- MIT OCW 18.01
- MIT OCW 18.02
- STAT110 Harvard
- Coursera Deep Learning Specialization


Cubase Elements 11 0 10 Download For Pc Free
Steinberg Cubase Elements V11 0 10 Free Download Filecr
Try Cubase Now For 30 Days Steinberg
Cubase Elements 10 5 20 Crack Free Download Activator
Cubase Elements 10 0 60 Download For Mac Free
Steinberg Cubase Elements 10 Free Download
Steinberg Cubase Elements 10 Download Sweetwater
Steinberg Cubase Elements 10 Free Download Softprober
Steinberg Cubase Elements 10 Free Download 2020 Get Into Pc
Cubase Pro 10 Crack Full Serial Free Download 2020 2021 Home Facebook
Steinberg Cubase Elements 9 5 21 Build 3 Win Full Version Download Pirate
Steinberg Cubase Artist 11 Upgrade From Cubase Elements 6 11 Cubase Studio 4 5 Cubase Sl 1 3 Download Sweetwater
Cubase Elements 10 Download Page 1 Line 17qq Com
Steinberg Cubase Pro 10 Download Sweetwater
Cubase Software Free Andbrown
Cubase Ai 10 Wont Launch Cubase
Cubase 9 Pro Download Fasreagle
Steinberg Cubase Artist 11 Upgrade From Cubase Artist 6 10 Download Sweetwater
Steinberg Cubase Elements 9 5 30 Free Download
1
Steinberg Cubase Elements 11 Updates V6 10 5 Any Volume Download Interface For Education Counterpoint Direct
Cubase 5 Free Download Full Version Crack Torrent 1
Steinberg Cubase Elements 10 Permitted Free Download Softotornix
Amazon Com Steinberg Wavelab Elements 10 Simple Audio Mastering Software Suite Download Card Software
Download Cubase 8 Elements For Mac
Cubase Elements 10 5 20 Crack With Full Activator Download


Hello, I’m Chris Trahan and I am an author and web designer for The Budget Geek. I am a coffee enthusiast and investor. I have a passion for programing and financial statistics. I look forward to working on more websites as well as pursing my passion for coffee.
GPA: 3.45
Apart from being a web developer, I enjoy spending time with the people I am close with. When outdoors you can usually find me walking and listing to music, skateboarding, or by a bonfire on a cool autum night.
When indoors, I play different types of video games, learning about new technology, or watching stand up comedies.


Our chips are made from potatos
chiken comes from hens.
our pizza are made from chapati meat and anykind of toping.
we us bread ,meat and vegetables.
Are sodas are made from water and some Cemicols
our juses are made from fruits.


2.0.0
Fritz!Box DECT and Smart Home functions.
Fritz!Fon functions.
Receive events for incoming and outgoing calls.
Enable the callmonitor on your Fritz!Box by dialing #96*5*
and disable with #96*4*
Set options.callmonitorport
to 1012
or a custom port.
This is an implementation of Thorsten Basse's Fritz!Box Call Monitor
(Object)
FritzBox.js options object.
EventEmitter
:
Returns an event emitter for you to catch events with.


This post will show one way to implement the Confirm dialog from the building blocks. We will ask the user confirmation when deleting all contacts. We will be using the Transitions to show and hide the dialog.
Like all BuildingBlocks components, the Confirm
dialog must be imported. Download the building blocks sample application, and copy
style/confirm.css
style/confirm/
Into your application structure and link confirm.css
in the index page. confirm.css
expects the confirm
folder to be in the same directory.
The dialog structure is as follows
<form role="dialog" data-type="confirm">

Confirmation

Are you sure you want to delete all contacts?

<menu>
<button class="cancel">Cancel</button>
<button class="danger confirm">Delete</button>
</menu>
</form>
For our example we are going to wrap this form with the following section

The data-position
property should be familiar. This will place the dialog in the back of the page layout. When the dialog is shown with the fade-in
transition, and hidden with the fade-out
transition.
The dialog is placed in the back of the layout with the following CSS
[data-position="back"] {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: -1;
opacity: 0;
}
The animations are going to be triggered with the fade-in
and fade-out
classes
[data-position="back"].fade-in {
z-index: 120;
animation: fadeIn 0.2s forwards;
-webkit-animation: fadeIn 0.2s forwards;
}
[data-position="back"].fade-out {
animation: fadeOut 0.2s forwards;
-webkit-animation: fadeOut 0.2s forwards;
}
We can use this utility function to show dialogs and execute certain callbacks depending on the action the user chooses.
function addDialog(buttonSelector, dialogSelector, cancelCallback, confirmCallback) {
cancelCallback = cancelCallback || function(){};
confirmCallback = confirmCallback || function(){};
var dialog = document.querySelector(dialogSelector);
var dialogButton = document.querySelector(buttonSelector);
var cancelButton = document.querySelector(dialogSelector + " .cancel");
var confirmButton = document.querySelector(dialogSelector + " .confirm");
dialogButton.addEventListener ('click', function () {
dialog.className = 'fade-in';
});
cancelButton.addEventListener ('click', function () {
dialog.className = 'fade-out';
cancelCallback();
});
confirmButton.addEventListener ('click', function () {
dialog.className = 'fade-out';
confirmCallback();
});
}
And we simply call it as follows
addDialog("#btn-contact-clear", "#contact-confirm", null, requestClear);
Where requestClear is the anonymous function from the last revision of Showcase API
var requestClear = function() {
var clearRequest = navigator.mozContacts.clear();
clearRequest.onsuccess = function () {
console.log('All contacts have been removed.');
}
clearRequest.onerror = function () {
console.error('Contacts were not cleared');
}
};
This demo can be tested in the browser (just the building block functionality of course), and the source code resides here.


fintech
hackathon 2013
Digging in to the Xignite
Financial Web Service APIs
Who are we?
- Financial Web Services since about 2006
- Emphasis on simplicity and ease of integration
- Began with SOAP and simple HTTP GET
- ..still REST Level 0 / XML-RPC model
- Supports SOAP, [non-SOAP] XML, JSON, CSV
What services?
- Security Master
- Funds and ETFS
- Equities
- Forex & Metals
- Commodities
- Fixed Income / Credit
- Indices / Markets
- Companies
- Splice
- Other stuff*
Languages w/ sample code
- C#
- Java
- Ruby
- PHP
- Perl
- VB.NET
- No samples, but suds seems to be leader for Python
- Easiest integration elsewhere is probably JSON
TECHNICAL DETAILS
- Append _token parameter for auth
- Auth also supported via cookie, IP
- Supports JSONP via _callback param
- _fields parameter allows filtering of output files
- If using CSV serializer, add _flatten=true parameter for best results.
HACKATHON ACCOUNT INFO
- _token = fintechhackathon2013
- Xignite website dynamically builds test URLs for you
- Just append your _token, if using HTTP GET endpoint
- Website credentials
- Username<EMAIL_ADDRESS>- Password: fintechhackathon2013
-
Not really needed, but easier for discovery / research
Best Practices
- Most things return 2xx or 5xx
- In-API status:
- Success [Great!]
- RegistrationError [Retry won't help]
- RequestError [Probably asking for the wrong thing]
- SystemError [Retry very well may succeed]
- plz with exponential backoff
Best practices (cont'd)
- Still over the public web
- ..so use low-integral # of retries
- Circuit Breaker pattern!
- SSL/TLS, if desired
- Cache results for frequent requests or ref data queries
Fabulous prizes
Xignite will be awarding a $500
gift certificate to Amazon.com to the
best app/widget utilizing our APIs!
Ideas:
- Data viz
- Analytics
- Bonds
- Multiple instrument types
Questions?
<EMAIL_ADDRESS>@slpsys


Hunt for champagne-coloured BMW possibly linked to targeted Hallam shooting
A victim who survived being shot in the stomach three times at home in Hallam now fears for his life, as police hunt for a champagne-coloured luxury car possibly linked to the violent attack.
Police believe the October 6 shooting was targeted but the victim has been unable to shed any light as to why he was hit.
Armed Crime detectives have been told a group of men attended a Nettle Drive home in Hallam about 6.10pm and demanded entry to the property.
An altercation took place between the group and the 54-year-old victim and his 34-year-old female partner.
The Dandenong man was seriously injured after he was shot in the stomach at least three times and was rushed to hospital by his partner.
Detective Superintendent Peter Brigham said the victim had sustained “quite serious injuries” and he had “narrowly avoided being killed”.
“A number of shots were fired at the address,” Det Supt Brigham said. “We believe this was a targeted attack. He has concerns for his safety.
“We are very concerned about this, it has happened on a Sunday evening at 6pm.
“We have a large team of detectives investigating this matter.”
Police said they were unsure what the altercation was about, but the victim was co-operating with police.
The victim is said to be unsure of the specifics as to why he was shot.
“He has had extensive surgery, he will probably have ongoing health issues as a consequence of the injuries,” Det Supt Brigham said.
The car is not believed to be stolen.
Police said they hadn’t identified any links to outlawed motorcycle gangs in their investigation but were unable to eliminate that possibility.
CCTV from the area has led investigators to believe a champagne-coloured BMW sedan may be linked to the shooting.
The car has distinctive Euro-style V number plates and is likely to be a 2004 to 2007 model.
Anyone with information about the BMW including its owner and current whereabouts is urged to contact Crime Stoppers on 1800 333 000.
brianna.travers@news.com.au