Money Play. How should Red play 52?
pips Red=95 White=76
(CorrectAnswer= 0/0, ErrorScore= 0)
There are times when discretion is the better part of valour and this one of them.
Red does better to run and play for the race than make some of White’s small numbers good for him. After 21/16, 7/5 both players will have five crossovers left before they can bear off. Also, the gap on White’s 4-pt will hurt him in the bear-off.
Finally, Red owns the cube so he is in the game to the end and if he does manage to turn the game around then the cube will be a powerful asset.
Red does better to run and play for the race than make some of White’s small numbers good for him. After 21/16, 7/5 both players will have five crossovers left before they can bear off. Also, the gap on White’s 4-pt will hurt him in the bear-off.
Finally, Red owns the cube so he is in the game to the end and if he does manage to turn the game around then the cube will be a powerful asset.
1. Cubeful 2-ply 21/16 7/5 Eq.: -0.514 0.209 0.000 0.000 - 0.791 0.000 0.000 2. Cubeful 2-ply 21/16 13/11 Eq.: -0.517 (-0.003) 0.208 0.000 0.000 - 0.792 0.000 0.000 3. Cubeful 2-ply 21/14 Eq.: -0.529 (-0.015) 0.203 0.000 0.000 - 0.797 0.000 0.000 4. Cubeful 2-ply 21/16 3/1 Eq.: -0.536 (-0.022) 0.200 0.000 0.000 - 0.800 0.000 0.000 5. Cubeful 2-ply 21/16 6/4 Eq.: -0.543 (-0.028) 0.197 0.000 0.000 - 0.803 0.000 0.000


This app is a qooxdoo based front-end
for a postgresql database with python jsonrpc web services
(ELVIS, see sources) aimed to manage biological resources
for plants and seeds. It is actively developed by the BIDefI team at IRHS. In the app, users can define
groups or collections of plants and use them in projects and
experiments. They can characterize them and will be able to
store manipulation done in laboratory like sampling or
extracting DNA. It is like a LIMS but focused on plants and
samples management.
The instance of the app is for internal use only but the app
is released under CeCILL free software
license.


Woman attempts to break hula hoop Guinness World Record with more than 75 hours
by Gerren Keith GaynorA Chicago woman may have hula hooped her way to a Guinness World Record.
Jenny Doan, 29, is believed to have made history Friday after unofficially surpassing the record for the longest marathon hula hooping session.
Doan, originally from Australia, passed the previously held record of 74 hours and 54 minutes but said she’s not stopping until she reaches the 100-hour mark.
Since starting her marathon on Tuesday morning at a local bar, Doan said she only slept three hours and has managed to push through the pain, WTTW reported.
ILLINOIS BOY, 11, BREAKS WORLD RECORD, RUNS HALF MARATHON IN ALL 50 STATES
GOLDEN TOILET WORTH THAN $1 MILLION MAY BREAK WORLD RECORD
When she was at the 67-hour mark, Doan was in pain due to lactic acid buildup in her legs, which led to knee stiffness.
“It was a terrible ripple effect,” she said.
Still, she managed to keep going. During her 5-minute break, which is allowed every hour she completes per official Guinness rules, Doan sat in a chair while supporters rubbed her legs to help with recovery. She also began using knee braces and compression socks.
Though she’s already surpassed the previously held record, Doan’s reported record will remain unofficial until it’s verified by Guinness.
Doan isn’t just hula hooping her way to a possible world title. She’s also using the challenge to raise funds for the nonprofit Mental Health America.
To keep her going, Doan listens to music, streams Netflix and texts her friends -- all while still maintaining her form.
CLICK HERE TO SIGN UP FOR OUR LIFESTYLE NEWSLETTER
But there may be a discrepancy as to whether Doan broke the 74-hour, 54-minute record. Doan reportedly dropped her hoop around the 58-hour, 24-minute mark, according to the Chicago Tribune.
During the livestream, Doan determined that the drop can be used as one of her 5-minute breaks. But a Guinness World Records spokesperson said, “The individual cannot drop the hula hoop and then proceed to request the use of the 5-minute break.”
“It’ll be an interesting discussion,” said Doan’s roommate Chris Vellucci. “I’d understand if she didn’t have breaks accrued, then absolutely, it’s a failed attempt. But having break time, that was her break.”
“She had banked time to take a break,” he added, “which involves dropping the hoop. Sometimes she’d catch it and throw it down [to start her other breaks].”
To prepare for her big feat, Doan enrolled in a rigorous four-month training program, in which she alternated with different-sized hoops for high speed and endurance.
Whether she officially achieves her goal remains to be seen. Still, if she does, she anticipates holding the record for a long time to come.
CLICK HERE TO GET THE FOX NEWS APP
“Hula hooping is sufficiently obscure,” Doan said. “So if I was to hold [the record], I’d hope to hold it for a while, for the same 10 years, if not longer.”


Describes the health of the specified targets or all of your targets.
See also: AWS API Documentation
describe-target-health
--target-group-arn <value>
[--targets <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
The Amazon Resource Name (ARN) of the target group.
The targets.
Shorthand Syntax:
Id=string,Port=integer ...
JSON Syntax:
[
{
"Id": "string",
"Port": integer
}
...
]
--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values.
--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.
To describe the health of the targets for a target group
This example describes the health of the targets for the specified target group. These targets are healthy.
Command:
aws elbv2 describe-target-health --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
Output:
{
"TargetHealthDescriptions": [
{
"HealthCheckPort": "80",
"Target": {
"Id": "i-ceddcd4d",
"Port": 80
},
"TargetHealth": {
"State": "healthy"
}
},
{
"HealthCheckPort": "80",
"Target": {
"Id": "i-0f76fade",
"Port": 80
},
"TargetHealth": {
"State": "healthy"
}
}
]
}
To describe the health of a target
This example describes the health of the specified target. This target is healthy.
Command:
aws elbv2 describe-target-health --targets Id=i-0f76fade,Port=80 --target-group-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
Output:
{
"TargetHealthDescriptions": [
{
"HealthCheckPort": "80",
"Target": {
"Id": "i-0f76fade",
"Port": 80
},
"TargetHealth": {
"State": "healthy"
}
}
]
}
The following is an example response for a target whose target group is not specified in an action for a listener. This target can't receive traffic from the load balancer.
Output:
{
"TargetHealthDescriptions": [
{
"Target": {
"Id": "i-0f76fade",
"Port": 80
},
"TargetHealth": {
"State": "unused",
"Reason": "Target.NotInUse",
"Description": "Given target group is not configured to receive traffic from ELB"
}
}
]
}
The following is an example response for a target who target group was just specified in an action for a listener. The target is still being registered.
Output:
{
"TargetHealthDescriptions": [
{
"Target": {
"Id": "i-0f76fade",
"Port": 80
},
"TargetHealth": {
"State": "initial",
"Reason": "Elb.RegistrationInProgress",
"Description": "Target registration is in progress"
}
}
]
}
The following is an example response for an unhealthy target.
Output:
{
"TargetHealthDescriptions": [
{
"Target": {
"Id": "i-0f76fade",
"Port": 80
},
"TargetHealth": {
"State": "unhealthy",
"Reason": "Target.Timeout",
"Description": "Connection to target timed out"
}
}
]
}
TargetHealthDescriptions -> (list)
Information about the health of the targets.
(structure)
Information about the health of a target.
Target -> (structure)
The description of the target.
Id -> (string)
The ID of the target.Port -> (integer)
The port on which the target is listening.HealthCheckPort -> (string)
The port to use to connect with the target.TargetHealth -> (structure)
The health information for the target.
State -> (string)
The state of the target.Reason -> (string)
The reason code. If the target state is healthy , a reason code is not provided.
If the target state is initial , the reason code can be one of the following values:
- Elb.RegistrationInProgress - The target is in the process of being registered with the load balancer.
- Elb.InitialHealthChecking - The load balancer is still sending the target the minimum number of health checks required to determine its health status.
If the target state is unhealthy , the reason code can be one of the following values:
- Target.ResponseCodeMismatch - The health checks did not return an expected HTTP code.
- Target.Timeout - The health check requests timed out.
- Target.FailedHealthChecks - The health checks failed because the connection to the target timed out, the target response was malformed, or the target failed the health check for an unknown reason.
- Elb.InternalError - The health checks failed due to an internal error.
If the target state is unused , the reason code can be one of the following values:
- Target.NotRegistered - The target is not registered with the target group.
- Target.NotInUse - The target group is not used by any load balancer or the target is in an Availability Zone that is not enabled for its load balancer.
- Target.InvalidState - The target is in the stopped or terminated state.
If the target state is draining , the reason code can be the following value:
- Target.DeregistrationInProgress - The target is in the process of being deregistered and the deregistration delay period has not expired.
Description -> (string)
A description of the target health that provides additional details. If the state is healthy , a description is not provided.


mcc -W python:runme_demo2 -T link:lib -d C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2\for_testing -v C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\Denoise.m C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\PCE_check.m C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2.m Compiler version: 8.1 (R2020b) Analyzing file dependencies. Parsing file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\Denoise.m" (referenced from command line). Parsing file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\PCE_check.m" (referenced from command line). Parsing file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2.m" (referenced from command line). Generating file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2\for_testing\runme_demo2\__init__.py". Generating file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2\for_testing\setup.py". Generating file "C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2\for_testing\readme.txt". Packaging... Creating the bundle... Creating the install agent URL file... Web based installer created at C:\Users\hsbw9\Desktop\site\static\matlab_prnu_pce\runme_demo2\for_redistribution\MyAppInstaller_web.exe. Packaging complete. Elapsed packaging time was: 17 seconds.


--- title: "Willingness to have kid in relation to income, age and number of existing kids" author: "Yuhan Huang, Tong Li, Chong Zhang, Chuyi Zhang" date: "2020-10-19T21:49:57-07:00" categories: ["R"] tags: ["R Markdown", "plot", "regression"] output: html_document: default pdf_document: default ---
People’s reproducing decisions could be quite influential towards family structure and social development under a more general concept. Therefore, this research uses survey data from the 2017 Canadian General Social Survey (GSS) to answer the following questions. How do the income level, number of existing kids, and couples’ average age influence their willingness to have kids in the future? More specifically, how do these variables strengthen or weaken couples’ willingness to have a child in the future?After presenting several statistical models (such as the logistic model), the question was discussed and interpreted based on the model outcome.
The topic of this study is about whether a family will want a child in the future(FUTURE_CHILD), considering INCOME, AGE, and TOTAL_CHILDREN as predictor variables. In the meantime, we can find the most influential factor in this decision. The insight for this study is based on the diminishing birth rate year by year, the birth rate for 2017 was only 10.55%, and it has been decreasing since 2009 right after the financial crisis in 2008, which is the reason we(this research) include family income as a predictor variable. GSS’s primary purpose is to provide information on specific social policy issues. This data analysis will show the severity of this problem, which would help enact new policies toward this issue.
The data in this research is the survey data from the 2017 GSS. Combining the research question following data variables were selected for the first (logistic) model: respondent’s age, family income, the total number of children born in the past, and their willingness to have a child in the future. By omitting each variable’s unknown value, 4086 remaining observations became accessible for the model(logistic model). During the cleaning process, the income level was defined from the ‘Income_family’ variable instead of ‘income_respondent’ because, in an existing family, total or average income can better reflect the financial status than using the estimator’s income. The dependent variable of ‘future_children_intention’ was modified into a binary outcome of ‘0’ as ‘probably not’ or ‘definitely not’ to the question and ‘1’ representing ‘probably yes’ and ‘definitely yes’ perform better under a logistic model. The data could have missed some lurking variables, such as the age of the existing children. However, the marginal change in willingness dependent on this variable can be ignored because the combination of age and number of the current children can indirectly reflect the change in children’s age.
This research uses logistic regression to analyze the result, which is a binary dependent variable (yes or no). It is because the logistic regression model is used for predictive analysis to explain the relationship between one dependent binary variable (yes or no) and three nomial variables (age, income level, and total children).
##
## Call:
## glm(formula = future_child ~ age + total_children + income_level,
## family = "binomial", data = working_data1)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -2.2430 -0.5248 -0.1983 0.6471 4.0064
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 5.145748 0.231327 22.244 <2e-16 ***
## age -0.167719 0.007578 -22.134 <2e-16 ***
## total_children -1.110818 0.067973 -16.342 <2e-16 ***
## income_level -0.015555 0.024278 -0.641 0.522
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 5547.8 on 4096 degrees of freedom
## Residual deviance: 3288.8 on 4093 degrees of freedom
## AIC: 3296.8
##
## Number of Fisher Scoring iterations: 6
The regression equation of our study is: \[log(p/1-p)= 5.14 - 0.168x_age - 1.110x_total.children - 0.016x_income.level\] For every additional unit increase in age we expect the log odds of willingness to have kid to decrease by 0.168. For every additional unit increase in total_children we expect the log odds of willingness to have kid to have kid to decrease by 1.110. For every additional unit increase in income_level we expect the log odds of willingness to have kid to decrease by 0.016.
The first plot examines the relationship between FUTURE_CHILD and AGE. The equation is written as the probability of wanting a child in the future. The response value of 1 on the y-axis represents “yes,” and 0 represents “no” (same for all four plots, omitted in the following paragraphs). The plot shows that the probability of wanting a child in the future decreases as the AGE increases. When the AGE is between 16 to 20, the line’s slope is not very steep, which indicates that the probability of wanting a child decreases slowly as AGE increases in this period. The line is more vertical for AGE between 20 to 25, which suggests a change in the AGE of 1 year has a more massive effect in this range. When the FUTURE_CHILD goes to zero at the AGE approaches 27, the line flattens.
The second plot examines the relationship between FUTURE_CHILD and TOTAL_CHILDREN. The plot shows that the probability of wanting a child in the future decreases as the TOTAL_CHILDREN increases. When the number of children in the family is between 0 and 1, the slope of the line is not very steep, which indicates that the probability of wanting a child decreases slowly among 0 to 1 child. The line is steeper in the TOTAL_CHILDREN between 2 to 3, which indicates that a change in TOTAL_CHILDREN increased by 1 has a larger effect in this range. When the FUTURE_CHILD goes to zero at the TOTAL_CHILDREN around 3, the line flattens.
Last plot examines the relationship between FUTURE_CHILD and INCOME_LEVEL. The plot shows that the probability of wanting a child in the future decreases as the INCOME_LEVEL increases. The line is steeper when INCOME_LEVEL is around less than $25,000 to $74,999, which indicates that the income range between $25,000 and $74,999 has a larger effect when making the decision of whether to have a child in the future. When the FUTURE_CHILD goes to zero at the INCOME_LEVEL beyond $75,000, the line flattens.
The GSS sample is drawn using an area probability design that randomly selects respondents in households across Canada to participate in the survey. The general population would be all the Canadians. Respondents that become part of the GSS sample are from a mix of urban, suburban, and rural geographic areas, which are the frame population. The GSS uses Statistics Canada’s standard telephone frame, which combines landline and cellular telephone numbers from the Address Register, the Census of Population, and various administrative sources, and has been integrated with Statistics Canada’s standard dwelling frame. Last, the sampled population is the people who actually participated in the survey, and the size is approximately 20,000 respondents by 2019. Since 2013, GSS has been collected using a combination of self-completed online questionnaires and telephone interviews. Participation in the study is strictly voluntary, and the sample for the GSS is based on the method of cluster sampling, so the standard errors are larger for the GSS than the simple random sampling. The non-sampling errors include inadequate frame-coverage error, non-response problem; response error; interviewer bias; and processing, editing, and entering error.
In this survey GSS, most of the data is categorical instead of numerical, which produces limitation of choices of models. The categorical data type produces disadvantages, however, considering topic like how a person makes a choice on the question, a binary outcome is able to explain the case better.
Working beyond this research, this data set of GSS can tell more about the decision-making question of having a child in the future or not. For example, under measuring the family’s financial status, this research used ‘income_family’. From another perspective, ‘income_respondent’ can be combined with ‘income_family’ to show how answers differ between the person who bears more of the family’s financial pressure and the rest of the members. A follow-up survey could include questions like “Do you feel that you bear more financial pressure from the family or it is equally shared”. It can tell something about the lurking variable of their decision to have a child. In the meantime, it also gives more possibility to provide a weighted stratified sampling based on their share of family financial pressure.
https://stackoverflow.com/questions/36685921/plot-logistic-regression-curve-in-r/36686468
cleaning data by Rohan Alexander and Sam Caetano
“Hello R Markdown” by Frida Gomam


The $200 Kharbon IP67 Wireless Earbuds are just $67 today
Bluetooth earbuds are more accessible than ever, but many of us are still hesitant to make the switch out of fear for poor battery life. If your active lifestyle doesn’t have time to constantly recharge your earbuds, we understand your pain, and so does Kharbon Audio. Thankfully, their latest pair of Bluetooth earbuds boast several days’worth of battery life, and you can get a pair on sale for just $67 when you use code BFSAVE15 at checkout.
The Kharbon IP67 Wireless Earbuds offer high-fidelity sound quality thanks to their graphene technology. They feature an ergonomic design with an extended ear canal tube to provide a comfortable fit. As the name suggests, they have an IP67 waterproof rating, allowing you to enjoy your music when you’re powering through the gym, running in the rain, or even while swimming.
What truly sets the Kharbon earbuds apart is the portable charging case, which offers up to 150 hours of extended battery life. With this, you can take your music on the go for days on end without worrying about finding a wall charger. Best of all, the charging case also doubles as a power bank for your phone and other wireless devices if you’re in a pinch.
Bluetooth earbuds can’t truly be wireless if you’re constantly tethered to cables while recharging? With the Kharbon 1P67 Wireless Earbuds, you’ll enjoy outstanding sound quality while keeping your charge time to a minimum. They’re currently on sale for $79, or 60% off, but you can get an additional 15% off using coupon code BFSAVE15.
Prices subject to change


--- layout: article title: "'Black Box of the Web' in Today's web prevalent society" date: 2015-03-07 15:56:04.000000000 -06:00 categories: [] tags: [] status: draft type: post published: false meta: _edit_last: '25921218' author: login: jsswart email<EMAIL_ADDRESS>display_name: Jacob Swartzentruber first_name: '' last_name: '' excerpt: ---
talk about how we use the web for everything nowadays but most of us don't know what it is or what its capabilities are. Much like a car where I know how to control it but if it broke down I couldn't pin point what was wrong. Web is worse because we use it for so much more. THIS is why I went into web design. It is fascinating and scary at the same time.


R package for simple string manipulation
Clean, wrangle, and parse character [string] vectors using base exclusively base R functions.
Detect text patterns (an easy-to-use wrapper for base::grep()
and base::grepl()
).
## return logical vector
chr_detect(letters, "a|b|c|x|y|z")
#> [1] TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
#> [12] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
#> [23] FALSE TRUE TRUE TRUE
## return inverted logical values
chr_detect(letters, "a|b|c|x|y|z", invert = TRUE)
#> [1] FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#> [12] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
#> [23] TRUE FALSE FALSE FALSE
## return matching positions
chr_detect(letters, "a|b|c|x|y|z", which = TRUE)
#> [1] 1 2 3 24 25 26
## return inverted matching positions
chr_detect(letters, "a|b|c|x|y|z", which = TRUE, invert = TRUE)
#> [1] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
## return matching values
chr_detect(letters, "a|b|c|x|y|z", value = TRUE)
#> [1] "a" "b" "c" "x" "y" "z"
## return inverted matching values
chr_detect(letters, "a|b|c|x|y|z", value = TRUE, invert = TRUE)
#> [1] "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" "t"
#> [18] "u" "v" "w"
Extract text patterns.
## some text strings
x <- c("this one is @there
has #MultipleLines https://github.com and
http://twitter.com @twitter",
"this @one #istotally their and
some non-ascii symbols: \u00BF \u037E",
"this one is they're https://github.com",
"this one #HasHashtags #afew #ofthem",
"and more @kearneymw at https://mikew.com")
## extract all URLS
chr_extract_links(x)
#> [[1]]
#> [1] "https://github.com" "http://twitter.com"
#>
#> [[2]]
#> [1] NA
#>
#> [[3]]
#> [1] "https://github.com"
#>
#> [[4]]
#> [1] NA
#>
#> [[5]]
#> [1] "https://mikew.com"
## extract all hashtags
chr_extract_hashtags(x)
#> [[1]]
#> [1] "MultipleLines"
#>
#> [[2]]
#> [1] "istotally"
#>
#> [[3]]
#> [1] NA
#>
#> [[4]]
#> [1] "HasHashtags" "afew" "ofthem"
#>
#> [[5]]
#> [1] NA
## extract mentions
chr_extract_mentions(x)
#> [[1]]
#> [1] "there" "twitter"
#>
#> [[2]]
#> [1] "one"
#>
#> [[3]]
#> [1] NA
#>
#> [[4]]
#> [1] NA
#>
#> [[5]]
#> [1] "kearneymw"
Remove text patterns.
## remove URLS
chr_remove_links(x)
#> [1] "this one is @there\n has #MultipleLines and \n @twitter"
#> [2] "this @one #istotally their and \n some non-ascii symbols: ¿ ;"
#> [3] "this one is they're "
#> [4] "this one #HasHashtags #afew #ofthem"
#> [5] "and more @kearneymw at "
## string together functions with magrittr pipe
library(magrittr)
## remove mentions and extra [white] spaces
chr_remove_mentions(x) %>%
chr_remove_ws()
#> [1] "this one is has #MultipleLines https://github.com and http://twitter.com"
#> [2] "this #istotally their and some non-ascii symbols: ¿ ;"
#> [3] "this one is they're https://github.com"
#> [4] "this one #HasHashtags #afew #ofthem"
#> [5] "and more at https://mikew.com"
## remove hashtags
chr_remove_hashtags(x)
#> [1] "this one is @there\n has https://github.com and \n http://twitter.com @twitter"
#> [2] "this @one their and \n some non-ascii symbols: ¿ ;"
#> [3] "this one is they're https://github.com"
#> [4] "this one "
#> [5] "and more @kearneymw at https://mikew.com"
## remove hashtags, line breaks, and extra spaces
x %>%
chr_remove_hashtags() %>%
chr_remove_linebreaks() %>%
chr_remove_ws()
#> [1] "this one is @there has https://github.com and http://twitter.com @twitter"
#> [2] "this @one their and some non-ascii symbols: ¿ ;"
#> [3] "this one is they're https://github.com"
#> [4] "this one"
#> [5] "and more @kearneymw at https://mikew.com"
## remove links and extract words
x %>%
chr_remove_links() %>%
chr_remove_mentions() %>%
chr_extract_words()
#> [[1]]
#> [1] "this" "one" "is" "has"
#> [5] "MultipleLines" "and"
#>
#> [[2]]
#> [1] "this" "istotally" "their" "and" "some" "non-ascii"
#> [7] "symbols"
#>
#> [[3]]
#> [1] "this" "one" "is" "they're"
#>
#> [[4]]
#> [1] "this" "one" "HasHashtags" "afew" "ofthem"
#>
#> [[5]]
#> [1] "and" "more" "at"
Replace text with string.
## replace their with they're
chr_replace(x, "their", "they're", ignore.case = TRUE)
#> [1] "this one is @there\n has #MultipleLines https://github.com and \n http://twitter.com @twitter"
#> [2] "this @one #istotally they're and \n some non-ascii symbols: ¿ ;"
#> [3] "this one is they're https://github.com"
#> [4] "this one #HasHashtags #afew #ofthem"
#> [5] "and more @kearneymw at https://mikew.com"
ASCII functions currently in progress. For example, replace non-ASCII symbols with similar ASCII characters (work in progress).
## ascii version
chr_replace_nonascii(x)
#> [1] "this one is @there\n has #MultipleLines https://github.com and \n http://twitter.com @twitter"
#> [2] "this @one #istotally their and \n some non-ascii symbols: ? ;"
#> [3] "this one is they're https://github.com"
#> [4] "this one #HasHashtags #afew #ofthem"
#> [5] "and more @kearneymw at https://mikew.com"
Create ngrams at the character-level.
## character vector
x <- c("Acme Pizza, Inc.", "Tom's Sports Equipment, LLC")
## 2 char level ngram
chr_ngram_char(x, n = 2L)
#> [[1]]
#> [1] "Ac" "cm" "me" "e " " P" "Pi" "iz" "zz" "za" "a," ", " " I" "In" "nc"
#> [15] "c."
#>
#> [[2]]
#> [1] "To" "om" "m'" "'s" "s " " S" "Sp" "po" "or" "rt" "ts" "s " " E" "Eq"
#> [15] "qu" "ui" "ip" "pm" "me" "en" "nt" "t," ", " " L" "LL" "LC"
## 3 char level ngram in lower case and stripped of punctation and white space
chr_ngram_char(x, n = 3L, lower = TRUE, punct = TRUE, space = TRUE)
#> [[1]]
#> [1] "acm" "cme" "mep" "epi" "piz" "izz" "zza" "zai" "ain" "inc"
#>
#> [[2]]
#> [1] "tom" "oms" "mss" "ssp" "spo" "por" "ort" "rts" "tse" "seq" "equ"
#> [12] "qui" "uip" "ipm" "pme" "men" "ent" "ntl" "tll" "llc"
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.


You could earn $1,000 to binge-watch Hallmark Christmas movies
by Mary Meisenzahl, Business Insider US- A tech company, Century Link, will pay one person $1,000 to binge Christmas movies on the Hallmark Channel leading up to the holiday.
- For the chance to win, you’ll need to fill out a short application about why you’re the perfect person for the job.
- All the winner has to do is watch 24 Christmas movies in 12 days, and write about them on social media.
- Visit Business Insider’s homepage for more stories.
If your dream job is getting paid to stay inside and watch movies, you’re in luck.
Tech company Century Link is choosing one lucky person to receive $1,000 for the important task of watching and critiquing 24 Hallmark Christmas movies leading up to December 25.
To apply, you’ll need to explain why you’re the perfect fit for the job. Century Link recommends making a short video “showcasing your Christmas spirit,” for a better shot at winning. Applicants must be at least 18 years old, love Christmas, and be willing to document the movie-watching process on social media.
Century Link will create the perfect movie setting for the winner. It will provide access to Hallmark movies, plus hot cocoa, Christmas cookies, a string of fairy lights, a mini Christmas tree, and “More Hallmark swag than you could ever need.”
If this chance sounds too good to pass up, apply here.


My node is not doing anything at the moment though.
TXSCLCC notarisations are showing 0.
(not related to net.ccp)
PHBA206104-Apr-19 08:11 AM
same here, after the update yesterday mine slowed down as well
my 6h & 12h span rank are now reversed compared to yesterday lol
NNoperator04-Apr-19 08:15 AM
MAX_OUTBOUND_CONNECTIONS @CHMEX
and if you want a shitload find the sleep right before it asks for more peers
set that much lower
and you'll be asking all of your peers for more peers constantly
I wonder what effect this has on your server bandwidth ? Also will some ISPs view this as DDoS attack if all our nodes start hammering on each other?
Alright04-Apr-19 08:17 AM
they do it every 2 minutes by default
I think I have it set to 30 seconds atm
NNoperator04-Apr-19 08:17 AM
Why not leave things default instead ?
Alright04-Apr-19 08:17 AM
muh counts
NNoperator04-Apr-19 08:18 AM
Hopefully not more harm...(edited)
Alright04-Apr-19 08:18 AM
am only demonstrating something that people have been doing for months on mainnet(edited)
take it up with them
NNoperator04-Apr-19 08:18 AM
noted
Alright04-Apr-19 08:19 AM
It is a good test case. This is why I'm telling people to do it
especially curious to see what happens if many people do it
it is a testnet after all
3
CHMEX04-Apr-19 08:47 AM
do you have a +- UTC timestamp on when to merge the pending PR
Alright04-Apr-19 09:05 AM
~3pm UTC
1
PHBA206104-Apr-19 09:10 AM
MAX_OUTBOUND_CONNECTIONS in ~/komodo/src/net.cpp
so I need to rebuild komodo afterwards right ?
CHMEX04-Apr-19 09:10 AM
if you change it yes you need to rebuild and restart the daemons
1
mrlynch04-Apr-19 09:16 AM
@Alright update today at 1500 UTC?
CHMEX04-Apr-19 09:22 AM
yes more or less that time
1
gt04-Apr-19 09:35 AM
3 pm utc is a bueno time
Lumbi04-Apr-19 09:44 AM
I wonder if the stats should be based on the notary that finds the block, rather than the one that pays the d_pow fee ... (edited)
CHMEX04-Apr-19 09:52 AM
finding a block has not much to do with notarizing
zatJUM04-Apr-19 09:54 AM
I have no more nota since last update (just reindexed all assets before)
ComputerGenie 👴👴👴04-Apr-19 09:58 AM
@zatJUM sometimes they come in waves and sometimes they come in waves of not coming
the reality is that the more participants there are is the more often there will come times without (which is why someone said early on that no stat under 48hrs matters)
zatJUM04-Apr-19 10:03 AM
Thanks CG, at last I had 1 on BEER
ComputerGenie 👴👴👴04-Apr-19 10:05 AM
rounding numbers for the sake of conversation, with 20 participants and 7 required to sign there's a 66% likelihood on each notarization that you will not be one of the signers
Lumbi04-Apr-19 10:08 AM
...or perhaps specify that the notary block finder is given priority in such a way that under normal conditions (perhaps a one minute pay window) the finder would also be the notarizer?(edited)
CHMEX04-Apr-19 10:10 AM
why should miners be notaries?
ComputerGenie 👴👴👴04-Apr-19 10:11 AM
@Lumbi if you're on about testnet, more than 90% of blocks are found by
e) none of the above(edited)
Lumbi04-Apr-19 10:14 AM
to be clear I am referring to the notary miner that is given preferred mining conditions. it seems it would be a bit more intuitive and not advantage faster notaries as the emphasis among notaries would be on distributed security and not speed (once a block is found).(edited)
ComputerGenie 👴👴👴04-Apr-19 10:15 AM
in mainnet, PoW is PoW afaik
one could argue the relative difference of NN(A) using 5GHz and NN(B) using 3.9GHz; however, even at the "low diff" of NNs, there's a nominal speed difference at that high of a degree of precision(edited)
Lumbi04-Apr-19 10:24 AM
if we assume all the notaries have sufficient fastness, perhaps randomness could be added to the code so that of the 64 notaries they are chosen randomly and over time equality of notarizations would be achieved regardless of the speed of the hardware ?
1
ComputerGenie 👴👴👴04-Apr-19 10:27 AM
PoW is, in and of itself, exactly what you're asking for
fwiw, to add code that "randomly" picks one of the 64 would make it less random (not to mention that it would really piss off non-NN miners)
Lumbi04-Apr-19 10:35 AM
or when one notary finds a block a second random process is initiated that determines finally which notary notarizes (without hardware advantage, more of a PoS random function that should ultimately lead to equality in numbers of notarizations among the 64 over time).(edited)
ComputerGenie 👴👴👴04-Apr-19 10:40 AM
Either way, you're forcing the outcome and making it less random and more centralized
Lumbi04-Apr-19 10:53 AM
libertarian naysaying is a well known ad infinitum
ComputerGenie 👴👴👴04-Apr-19 11:00 AM
as is saying "you're wrong" to people that are wrong.....
Lumbi04-Apr-19 11:01 AM
it's a purity spiral
if taken to the extreme
jl777c04-Apr-19 11:02 AM
if you are notarizing using nintendo system, you deserve to get less notarizations. why would we change the system to help such NN??
there is nothing wrong with unequal outcomes
ComputerGenie 👴👴👴04-Apr-19 11:04 AM
there is nothing wrong with unequal outcomes
if only more people in the US understood that
one cannot have both equal opportunity and equal outcome
1
Lumbi04-Apr-19 11:08 AM
a refurbished nintendo system would be epic ! nothing wrong with doing more with less, no? the true metric of a notary is uptime and purity of code...
"true randomness" keeps me up at night ...
ComputerGenie 👴👴👴04-Apr-19 11:09 AM
then why suggest a system that is even further away?
Lumbi04-Apr-19 11:11 AM
why suggest I'm making such a suggestion?
ComputerGenie 👴👴👴04-Apr-19 11:11 AM
because you are
PHBA206104-Apr-19 11:12 AM
true randomness can only be generated from a hardware random number generator
ComputerGenie 👴👴👴04-Apr-19 11:12 AM
you go further away from "true random" when you intentionally effect the outcome to a specific extent(edited)
Lumbi04-Apr-19 11:12 AM
@PHBA2061 but therein lies the rub.... who built the hardware?
PHBA206104-Apr-19 11:16 AM
not me ofc, but what matters is how it generates rng, for example hrng could generate noise by measuring thermal noise ,or any physical noise
MadCryptoHead04-Apr-19 11:20 AM
Hello Guys, I have another question
I have been following the configuration guide for the notary node. I am now in the final steps, but when I have to import the private key a doubt comes to my head. Where shoud I look for the private key?
I cannot find the BTCDwif key and the BTCwif key
Perhaps should I extract them from iguana? Maybe it is not explained in the guide?
Thanks in advance
SHossain04-Apr-19 11:24 AM
For testnet you can create an Komodo address and get the private key (WIF key)
mainnet is different and needs more secure setup(edited)
MadCryptoHead04-Apr-19 11:32 AM
And in mainnet, how do I should obtain BTCDwif and BTCwif keys to be imported?
I mean, shoud I create a BTC and BTCD wallets on the server?
SHossain04-Apr-19 11:38 AM
KMD wif = BTCD wif
for mainnet you should write down 24 words seed phrase in a piece of paper and store it somewhere safe. input that phrase into your notary node by typing (when creating the wp file). follow the insctructions for mainnet. when you execute the ./wp file that will display your BTC WIF, KMD WIF, Pubkkey etc. to use. import those WIF keys into coin daemons.
another way to obtain WIF key is to use Decker's script and use the compressed address, key and pubkey https://github.com/KomodoPlatform/komodo/wiki/How-to-Generate-Address-and-Private-Key-(WIF)-for-3rd-Party-Coins-Using-Passphrase
Komodo. Contribute to KomodoPlatform/komodo development by creating an account on GitHub.
Decker's script is needed for all 3rd party coins that has different format address and private key
MadCryptoHead04-Apr-19 12:01 PM
It seems that this is not explained in the tutorial or I am not getting it, sorry. Where should I create the ./wp file and what should be the format of the command line to add the 24 words phrase?
SHossain04-Apr-19 12:03 PM
curl --url "http://<IP_ADDRESS>:7778" --data "{\"agent\":\"bitcoinrpc\",\"method\":\"encryptwallet\",\"passphrase\":\"insert very secure password here\"}"
MadCryptoHead04-Apr-19 12:04 PM
passphrase = 24 words seed phrase?
SHossain04-Apr-19 12:04 PM
yes
\"passphrase\":\"insert very secure password here\"
almoche04-Apr-19 12:04 PM
@SHossain Hi, I‘m almoche. Still setting up my server
2
SHossain04-Apr-19 12:04 PM
you need to change insert very secure password here with your 24 words
the mainnet guide is slightly outdated and will be updated in due time. please follow the testnet guide from Alright's repo and participate in testnet if you are interested.
MadCryptoHead04-Apr-19 12:12 PM
ok, the problem is that I created a random password not in the 24 words format. Now I have a right output with the keys
thanks
According your recommendations I am going to continue my tests in the testnet
almoche04-Apr-19 12:12 PM
@SHossain Just one question regarding server config. first general config: i7-700, 64gb ram, 2x500gb nvme...what do you advise? raid 1 or is raid 0 sufficient?
SHossain04-Apr-19 12:14 PM
RAID1 is more secure
ComputerGenie 👴👴👴04-Apr-19 12:14 PM
prefers JBOD
almoche04-Apr-19 12:15 PM
thanks, so 500gb is enough for the node?!
ComputerGenie 👴👴👴04-Apr-19 12:17 PM
yes
1
jeezy04-Apr-19 12:37 PM
500GB will not be enough next season
ComputerGenie 👴👴👴04-Apr-19 12:52 PM
Guess I should have qualified "for testnet"
1
Alright04-Apr-19 01:21 PM
@Lumbi it's not really a matter of hardware, rather ping
@SHossain what is the point of using encryptwallet if your WIF is sitting in wp_7776 anyway(edited)
dukeleto04-Apr-19 01:27 PM
500GB is not enough this season
unless you delete things very aggressively
with more asset chains and external coins coming, 1TB for next year is probably what is needed
ComputerGenie 👴👴👴04-Apr-19 01:29 PM
500GB is not enough this season
indeed true, btc is 1/2 that now
SHossain04-Apr-19 01:29 PM
wp_7776 file contains walletpassphrase call. which to be used if you use encryptwallet. not sure if these calls are active or not. this came from early version of the guide that Kolo created and I never found an issue following the guide. however, there were few modifications in the setup guide by some members and ops and the guide got messed up a bit.(edited)
the original guide stated to copy btc, kmd file and change the port to 7776 and raname wp file to wp_7776 and change port to 7776
someone changed that part of the guide.
Strob04-Apr-19 01:32 PM
there is also a file called passphrase.txt in the iguana directory, do we still need that?


Hello, World! My name is Pablo Marques. I am a 32 year old Brazilian who wants to change careers and be a professional developer. Subscribe to my newsletter to follow the challenges I face and the lessons I learn as I pursue my goal.
BTW, this was supposed to be a survey form, but I thought "Why not?" and made this a subscription form for my newsletter. Sorry not sorry!
BTW2, the design of this page is inspired by the survey forms they do in Word, you know? That's why this is so ugly. Nothing to do with my qualifications as a designer, true story🙄...


Is this just another contest?
No, this is a lead generation and business development event. The goal isn't to earn a prize at the end of the competition, but rather to establish new and profitable business relationships. The event aims to put together carefully selected innovative solutions to solve real challenges in the market.
What if the agreement between company and supplier does not happen?
The agreement between the company and the startup shall not occur if the parties fail to reach an agreement.
What happens after the event?
After the event, the negotiation process starts from those startups that presented the best case and were selected by the companies. It is up to the startups to lead this after event process. The InnoEnergy Reverse Pitch team can support the connection at this stage and in case the agreement considers an Innovation Project.
How is the funding application done?
After an agreement between the company and startup, as well as the definition of the solution to be developed, if funding is required, the company should contact InnoEnergy to follow the funding program procedures.
What if I have any additional questions?
You can reach us by sending an e-mail. All your questions will be answered shortly.


|
Livox SDK API
V2.2.0
|
#include <format.h>
Public Types | |
| typedef T | value_type |
| typedef const T & | const_reference |
| Public Types inherited from fmt::v5::internal::basic_buffer< T > | |
| typedef T | value_type |
| typedef const T & | const_reference |
Public Member Functions | |
| basic_memory_buffer (const Allocator &alloc=Allocator()) | |
| ~basic_memory_buffer () | |
| basic_memory_buffer (basic_memory_buffer &&other) | |
| basic_memory_buffer & | operator= (basic_memory_buffer &&other) |
| Allocator | get_allocator () const |
| Public Member Functions inherited from fmt::v5::internal::basic_buffer< T > | |
| virtual | ~basic_buffer () |
| T * | begin () throw () |
| T * | end () throw () |
| std::size_t | size () const throw () |
| std::size_t | capacity () const throw () |
| T * | data () throw () |
| const T * | data () const throw () |
| void | resize (std::size_t new_size) |
| void | clear () |
| void | reserve (std::size_t new_capacity) |
| void | push_back (const T &value) |
| template<typename U > | |
| void | append (const U *begin, const U *end) |
| T & | operator[] (std::size_t index) |
| const T & | operator[] (std::size_t index) const |
Protected Member Functions | |
| void | grow (std::size_t size) |
| Protected Member Functions inherited from fmt::v5::internal::basic_buffer< T > | |
| basic_buffer (std::size_t sz) throw () | |
| basic_buffer (T *p=NULL, std::size_t sz=0, std::size_t cap=0) throw () | |
| void | set (T *buf_data, std::size_t buf_capacity) throw () |
A dynamically growing memory buffer for trivially copyable/constructible types with the first SIZE
elements stored in the object itself.
You can use one of the following typedefs for common character types:
+-------------—+---------------------------—+ | Type | Definition | +================+==============================+ | memory_buffer | basic_memory_buffer<char> | +-------------—+---------------------------—+ | wmemory_buffer | basic_memory_buffer<wchar_t> | +-------------—+---------------------------—+
Example**::
fmt::memory_buffer out; format_to(out, "The answer is {}.", 42);
This will append the following output to the out
object:
.. code-block:: none
The answer is 42.
The output can be converted to an std::string
with to_string(out)
.
| typedef const T& fmt::v5::basic_memory_buffer< T, SIZE, Allocator >::const_reference |
| typedef T fmt::v5::basic_memory_buffer< T, SIZE, Allocator >::value_type |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
protectedvirtual |
Increases the buffer capacity to hold at least capacity elements.
Implements fmt::v5::internal::basic_buffer< T >.
|
inline |
Moves the content of the other basic_memory_buffer
object to this one.


PiNet, a system for Raspberry Pi classrooms
Home
All guides
Getting started
Managing users
Shared folders
Backups
Advanced
FAQ
Blog
Unfortunately PiNet is no longer maintained. For more information, please see
here
.
{{ content }}


Home
Blog
Projects
About Me
Budding Web Developer!
PROJECTS:
Contact Info
Blog Posts:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Social


What do you mean when you describe something as "performant"? Do you mean that it's fast, efficient, powerful, flexible, or that it handles big tasks? "Performant" gets used to mean any of those things, when there are perfectly good, specific, and strong words to do the job.
By taking a verb, "perform", and making it into an adjective, "performant", qualitative statements which used to be active become passive. What sounds more exciting to you, "It's performant" or "It's blazing fast"?
Using the internal language of a sub-group — jargon — is one way people try to signal they're part of that group. If you're talking to other engineers, they don't need the signaling. If you're not talking to engineers, jargon is adding a subtext of "I'm in, you're not" to your message. Do you really want to do that?
"But words get in to the dictionary by being used!" Yes, and that's another good reason to avoid jargon and meaningless buzzwords.


This will be replaced by the content of html-blocks/pages--external/products-beef-start-block.html
This will be replaced by the content of html-blocks/pages--external/products-beef-animation-block.html
This will be replaced by the content of html-blocks/pages--external/production-product-icons-slider.html


Press n or j to go to the next uncovered block, b, p or k for the previous block.
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| ts | 55.88% | 19/34 | 33.33% | 6/18 | 30% | 3/10 | 61.29% | 19/31 | |
| ts/cores/queue | 90.24% | 37/41 | 100% | 0/0 | 89.47% | 17/19 | 90.24% | 37/41 | |
| ts/cores/sorting | 92.31% | 36/39 | 90% | 9/10 | 100% | 4/4 | 91.67% | 33/36 | |
| ts/cores/stack | 88.24% | 15/17 | 100% | 0/0 | 87.5% | 7/8 | 88.24% | 15/17 | |
| ts/heap | 96.7% | 88/91 | 100% | 33/33 | 88.46% | 23/26 | 96.55% | 84/87 | |
| ts/queue | 75.68% | 28/37 | 75% | 6/8 | 80% | 8/10 | 77.14% | 27/35 | |
| ts/sorting | 86.26% | 157/182 | 77.78% | 42/54 | 84.62% | 11/13 | 85.71% | 138/161 |


Relay for battery: allows Arduino to turn power to itself off when no power comes from solar panel, at night, to save power. When the sun comes up, the voltage from the solar channel will turn the Arduino back on.
Button to connect battery: When the Pi is off and the battery is connected, the relay to the battery is still off.The button allows the user to connect the battery temporarily so that the Arduino recognizes the high enough battery voltage and turns the relay on.


The rainbowr
package generates LGBT pride flags overlaid with the R logo
The package can be installed from GitHub with:
df <- data.frame(
flag = c("rainbow", "transgender", "bisexual", "bear", "aromantic", "lesbian"),
palette1 = c("white", "grey80", "#ccccff", "grey30", "grey50", "grey50"),
palette2 = c("black", "black", "white", "brown", "black", "lavender"),
row = c(1, 1, 2, 3, 3, 2),
col = c(1, 2, 1, 2, 3, 3),
stringsAsFactors = FALSE
)
hextile <- make_hextile(df)
#> adding rainbow hex (1 of 6)
#> adding transgender hex (2 of 6)
#> adding bisexual hex (3 of 6)
#> adding bear hex (4 of 6)
#> adding aromantic hex (5 of 6)
#> adding lesbian hex (6 of 6)
plot(hextile)


Output text file stream.
More...
#include <text_file_out.hpp>
◆ text_file_out()
| hou::text_file_out::text_file_out |
( |
const std::string & |
path | ) |
|
|
explicit |
Path constructor.
Throws if the provided path is not valid.
- Parameters
-
| path | the path to the file to be opened. |
◆ eof()
| bool hou::text_file_out::eof |
( |
| ) |
const |
|
finalvirtualnoexcept |
Checks the end of stream indicator.
- Returns
- true if the end of file indicator is set.
Implements hou::stream.
◆ error()
| bool hou::text_file_out::error |
( |
| ) |
const |
|
finalvirtualnoexcept |
Checks the error indicator.
- Returns
- true if the error indicator is set.
Implements hou::stream.
◆ get_byte_count()
| size_t hou::text_file_out::get_byte_count |
( |
| ) |
const |
|
finalvirtualnoexcept |
Retrieves the total number of bytes in the stream.
- Returns
- the size of the stream in bytes.
Implements hou::stream.
◆ get_text_pos()
Gets the current text position indicator.
- Exceptions
-
- Returns
- the current text position indicator.
Implements hou::text_stream.
◆ get_write_byte_count()
| size_t hou::text_file_out::get_write_byte_count |
( |
| ) |
const |
|
finalvirtualnoexcept |
Retrieves the number of bytes written by the last write operation.
- Returns
- the number of bytes written by the last write operation.
Implements hou::stream_out.
◆ get_write_element_count()
| size_t hou::text_file_out::get_write_element_count |
( |
| ) |
const |
|
finalvirtualnoexcept |
Retrieves the number of elements written by the last write operation.
- Returns
- the number of elements written by the last write operation.
Implements hou::stream_out.
◆ on_write()
| void hou::text_file_out::on_write |
( |
const void * |
buf, |
|
|
size_t |
element_size, |
|
|
size_t |
buf_size |
|
) |
| |
|
finalprotectedvirtual |
Writes from a specified location in memory.
The caller must ensure that the memory range between buf and buf + (element_size * buf_size) is valid. If this is not the case, calling this function results in undefined behaviour.
Throws in case of an error while writing.
This function should be overridden by derived classes. all public write functions internally call this function.
- Parameters
-
| buf | a pointer to the memory location to write into. |
| element_size | the size of a single element to be written. |
| buf_size | the number of elements to be written. |
- Exceptions
-
Implements hou::stream_out.
◆ set_text_pos()
Sets the current text position indicator.
- Parameters
-
| pos | the current text position indicator. It must either be start or a value obtained by calling get_text_pos on this stream. Using a value obtained by calling get_text_pos on another text_stream is undefined behaviour. |
- Exceptions
-
- Returns
- a reference to this stream.
Implements hou::text_stream.
The documentation for this class was generated from the following file:


Causal Mediation Analysis for Stochastic Interventions
Authors: Nima Hejazi and Iván Díaz
medshift
?The medshift
R package is designed to provide facilities for estimating a parameter that arises in a decomposition of the population intervention causal effect into the (in)direct effects under stochastic interventions in the setting of mediation analysis. medshift
is designed as an implementation to accompany the methodology described in Díaz and Hejazi (2019).
To illustrate how medshift
may be used to estimate the effect of applying a stochastic intervention to the treatment (A
) while keeping the mediator(s) (Z
) fixed, consider the following example:
library(data.table)
library(medshift)
# produces a simple data set based on ca causal model with mediation
make_simple_mediation_data <- function(n_obs = 1000) {
# baseline covariate -- simple, binary
W <- rbinom(n_obs, 1, prob = 0.50)
# create treatment based on baseline W
A <- as.numeric(rbinom(n_obs, 1, prob = W / 4 + 0.1))
# single mediator to affect the outcome
z1_prob <- 1 - plogis((A^2 + W) / (A + W^3 + 0.5))
z1_prob[z1_prob < 0.01] <- 0.01
z1_prob[z1_prob > 0.99] <- 0.99
Z <- rbinom(n_obs, 1, prob = z1_prob)
# create outcome as a linear function of A, W + white noise
Y <- Z + A - 0.1 * W + rnorm(n_obs, mean = 0, sd = 0.25)
# full data structure
data <- as.data.table(cbind(Y, Z, A, W))
setnames(data, c("Y", "Z", "A", "W"))
return(data)
}
# set seed and simulate example data
set.seed(75681)
example_data <- make_simple_mediation_data()
# compute AIPW estimate based on an incremental propensity score intervention
# that triples (delta = 3) the individual-specific odds of receiving treatment
aipw_medshift <- medshift(W = example_data$W, A = example_data$A,
Z = example_data$Z, Y = example_data$Y,
delta = 3, estimator = "onestep",
estimator_args = list(cv_folds = 3))
summary(aipw_medshift)
#> lwr_ci param_est upr_ci
#> 0.740072 0.788103 0.836135
#> param_var eif_mean estimator
#> 0.000601 -3.501778e-17 one-step efficient
For details on how to use data adaptive regression (machine learning) techniques in the estimation of nuisance parameters, consider consulting the vignette that accompanies the package.
Contributions are very welcome. Interested contributors should consult our contribution guidelines prior to submitting a pull request.
After using the medshift
R package, please cite the following:
@article{diaz2019causal,
title={Causal mediation analysis for stochastic interventions},
author={D{\'\i}az, Iv{\'a}n and Hejazi, Nima S},
year={2019},
url = {https://arxiv.org/abs/1901.02776},
doi = {},
journal={submitted},
volume={},
number={},
pages={},
publisher={}
}
@manual{hejazi2019medshift,
author = {Hejazi, Nima S and D{\'\i}az, Iv{\'a}n},
title = {{medshift}: Causal mediation analysis for stochastic
interventions in {R}},
year = {2019},
url = {https://github.com/nhejazi/medshift},
note = {R package version 0.0.8}
}
© 2018-2019 Nima S. Hejazi
The contents of this repository are distributed under the MIT license. See below for details:
MIT License
Copyright (c) 2018-2019 Nima S. Hejazi
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Díaz, Iván, and Nima S Hejazi. 2019. “Causal Mediation Analysis for Stochastic Interventions.” Submitted. https://arxiv.org/abs/1901.02776.


I have gazed the black flower blooming her animal eye. Gacela oscura. Negra llorona.
Along the clayen banks I follow her-astonished, gathering grief’s petals she lets fall like horns.
Why not now go toward the things I love?
Like Jacob’s angel, I touched the garnet of her wrist, and she knew my name. And I knew hers— it was Auxocromo, it was Cromóforo, it was Eliza. It hurtled through me like honeyed-rum.
When the eyes and lips are touched with honey what is seen and said will never be the same.
Eve took the apple in that ache-opened mouth, on fire and in pieces, from the knife’s sharp edge.
In the photo her fist presses against the red-gold geometry of her thigh.
Achilles chasing Hektor round the walls of Ilium three times. How long must I circle the high gate above her knees?
Again the gods put their large hands in me, move me, break my heart like a clay jar of wine, loosen a beast from some darklong depth—
my melancholy is hoofed. I, the terrible beautiful Lampon, a shining devour-horse tethered at the bronze manger of her collarbones.


Welcome to this weird piano thing.
You can play this piano using your computers keyboard, or by clicking the keys.
Everyone else who is on this page at the same time can hear you play and play along with you
Hopefully your bad playing will be lost in the noise....


Table Of Contents
CSRF Protection¶
The CSRF package includes tools that help you implement checking against cross-site request forgery (“csrf”). Due to the large number of variations on approaches people take to CSRF (and the fact that many make compromises) the base implementation allows you to plug in a number of CSRF validation approaches.
CSRF implementations are made by subclassing
CSRF
. For utility, we have provided one
possible CSRF implementation in the package that can be used with many
frameworks for session-based hash secure keying,
SessionCSRF
.
Using CSRF¶
CSRF in WTForms 2.0 is now driven through a number of variables on
class Meta
. After choosing a CSRF implementation,
import it and configure it on the class Meta of a subclass of Form
like such:
from somemodule import SomeCSRF
class MyBaseForm(Form):
class Meta:
csrf = True # Enable CSRF
csrf_class = SomeCSRF # Set the CSRF implementation
csrf_secret = b'foobar' # Some implementations need a secret key.
# Any other CSRF settings here.
And once you’ve got this set up, you can define your forms as a subclass of MyBaseForm:
class UserForm(MyBaseForm):
name = TextField()
age = IntegerField()
def view():
form = UserForm(request.POST)
if request.POST and form.validate():
pass # Form is valid and CSRF succeeded
return render('user.html', form=form)
There is a special field inside the CSRF form (called csrf_token
by
default) which you need to make sure you render in your template:
<form action="/user" method="POST">
{{ form.csrf_token }}
{% if form.csrf_token.errors %}

You have submitted an invalid CSRF token

{% endif %}

{{ form.name }} {{ form.name.label }}

{{ form.age }}{{ form.age.label }}

Remember, with the class Meta you can always override variables in a sub-class or at the constructor for special-cases:
class SearchForm(MyBaseForm):
"""
We expect search queries to come externally, thus we don't want CSRF
even though it's set up on the base form.
"""
class Meta:
# This overrides the value from the base form.
csrf = False
How WTForms CSRF works¶
Most CSRF implementations hinge around creating a special token, which is put in a hidden field on the form named csrf_token, which must be rendered in your template to be passed from the browser back to your view. There are many different methods of generating this token, but they are usually the result of a cryptographic hash function against some data which would be hard to forge.
-
class
wtforms.csrf.core.
CSRFTokenField
(*args, **kw)¶ A subclass of HiddenField designed for sending the CSRF token that is used for most CSRF protection schemes.
Notably different from a normal field, this field always renders the current token regardless of the submitted value, and also will not be populated over to object data via populate_obj
-
__init__
(*args, **kw)¶
-
current_token
= None¶
-
_value
()¶ We want to always return the current token on render, regardless of whether a good or bad token was passed.
-
populate_obj
(*args)¶ Don’t populate objects with the CSRF token
-
pre_validate
(form)¶ Handle validation of this token field.
-
process
(*args)¶
-
-
class
wtforms.csrf.core.
CSRF
¶ -
setup_form
(form)¶ Receive the form we’re attached to and set up fields.
The default implementation creates a single field of type
field_class
with name taken from thecsrf_field_name
of the class meta.Parameters: form – The form instance we’re attaching to. Returns: A sequence of (field_name, unbound_field) 2-tuples which are unbound fields to be added to the form.
-
generate_csrf_token
(csrf_token_field)¶ Implementations must override this to provide a method with which one can get a CSRF token for this form.
A CSRF token is usually a string that is generated deterministically based on some sort of user data, though it can be anything which you can validate on a subsequent request.
Parameters: csrf_token_field – The field which is being used for CSRF. Returns: A generated CSRF string.
-
validate_csrf_token
(form, field)¶ Override this method to provide custom CSRF validation logic.
The default CSRF validation logic simply checks if the recently generated token equals the one we received as formdata.
Parameters: - form – The form which has this CSRF token.
- field – The CSRF token field.
-
field_class
= <class 'wtforms.csrf.core.CSRFTokenField'>¶ The class of the token field we’re going to construct. Can be overridden in subclasses if need be.
-
Creating your own CSRF implementation¶
Here we will sketch out a simple theoretical CSRF implementation which generates a hash token based on the user’s IP.
Note This is a simplistic example meant to illustrate creating a CSRF implementation. This isn’t recommended to be used in production because the token is deterministic and non-changing per-IP, which means this isn’t the most secure implementation of CSRF.
First, let’s create our CSRF class:
from wtforms.csrf.core import CSRF
from hashlib import md5
SECRET_KEY = '1234567890'
class IPAddressCSRF(CSRF):
"""
Generate a CSRF token based on the user's IP. I am probably not very
secure, so don't use me.
"""
def setup_form(self, form):
self.csrf_context = form.meta.csrf_context
return super(IPAddressCSRF, self).setup_form(form)
def generate_csrf_token(self, csrf_token):
token = md5(SECRET_KEY + self.csrf_context).hexdigest()
return token
def validate_csrf_token(self, form, field):
if field.data != field.current_token:
raise ValueError('Invalid CSRF')
Now that we have this taken care of, let’s write a simple form and view which would implement this:
class RegistrationForm(Form):
class Meta:
csrf = True
csrf_class = IPAddressCSRF
name = StringField('Your Name')
email = StringField('Email', [validators.email()])
def register(request):
form = RegistrationForm(
request.POST,
meta={'csrf_context': request.ip}
)
if request.method == 'POST' and form.validate():
pass # We're all good, create a user or whatever it is you do
elif form.csrf_token.errors:
pass # If we're here we suspect the user of cross-site request forgery
else:
pass # Any other errors
return render('register.html', form=form)
And finally, a simple template:
<form action="register" method="POST">
{{ form.csrf_token }}

{{ form.name.label }}: {{ form.name }}

{{ form.email.label }}: {{ form.email }}

<input type="submit" value="Register">
</form>
Please note that implementing CSRF detection is not fool-proof, and even with the best CSRF protection implementation, it’s possible for requests to be forged by expert attackers. However, a good CSRF protection would make it infeasible for someone from an external site to hijack a form submission from another user and perform actions as them without additional a priori knowledge.
In addition, it’s important to understand that very often, the more strict the CSRF protection, the higher the chance of false positives occurring (ie, legitimate users getting blocked by your CSRF protection) and choosing a CSRF implementation is actually a matter of compromise. We will attempt to provide a handful of usable reference algorithms built in to this library in the future, to allow that choice to be easy.
Some tips on criteria people often examine when evaluating CSRF implementations:
- Reproducability If a token is based on attributes about the user, it gains the advantage that one does not need secondary storage in which to store the value between requests. However, if the same attributes can be reproduced by an attacker, then the attacker can potentially forge this information.
- Reusability. It might be desired to make a completely different token every use, and disallow users from re-using past tokens. This is an extremely powerful protection, but can have consequences on if the user uses the back button (or in some cases runs forms simultaneously in multiple browser tabs) and submits an old token, or otherwise. A possible compromise is to allow reusability in a time window (more on that later).
- Time Ranges Many CSRF approaches use time-based expiry to make sure that a token cannot be (re)used beyond a certain point. Care must be taken in choosing the time criteria for this to not lock out legitimate users. For example, if a user might walk away while filling out a long-ish form, or to go look for their credit card, the time for expiry should take that into consideration to provide a balance between security and limiting user inconvenience.
- Requirements Some CSRF-prevention methods require the use of browser cookies, and some even require client-side scripting support. The webmaster implementing the CSRF needs to consider that such requirements (though effective) may lock certain legitimate users out, and make this determination whether it is a good idea to use. For example, for a site already using cookies for login, adding another for CSRF isn’t as big of a deal, but for other sites it may not be feasible.
Session-based CSRF implementation¶
A provided CSRF implementation which puts CSRF data in a session.
This can be used fairly comfortably with many request.session type objects, including the Werkzeug/Flask session store, Django sessions, and potentially other similar objects which use a dict-like API for storing session keys.
The basic concept is a randomly generated value is stored in the user’s session, and an hmac-sha1 of it (along with an optional expiration time, for extra security) is used as the value of the csrf_token. If this token validates with the hmac of the random value + expiration time, and the expiration time is not passed, the CSRF validation will pass.
-
class
wtforms.csrf.session.
SessionCSRF
¶ Meta Values
csrf_secret
A byte string which is the master key by which we encode all values. Set to a sufficiently long string of characters that is difficult to guess or bruteforce (recommended at least 16 characters) for example the output ofos.urandom(16)
.csrf_time_limit
if None, tokens last forever (not recommended.) Otherwise, set to adatetime.timedelta
that will define how long CSRF tokens are valid for. Defaults to 30 minutes.csrf_context
This should be arequest.session
-style object. Usually given in the Form constructor.
Example¶
from wtforms.csrf.session import SessionCSRF
from datetime import timedelta
class MyBaseForm(Form):
class Meta:
csrf = True
csrf_class = SessionCSRF
csrf_secret = b'EPj00jpfj8Gx1SjnyLxwBBSQfnQ9DJYe0Ym'
csrf_time_limit = timedelta(minutes=20)
class Registration(MyBaseForm):
name = StringField()
def view(request):
form = Registration(request.POST, meta={'csrf_context': request.session})
# rest of view here
Note that request.session is passed as the csrf_context
override to the
meta info, this is so that the CSRF token can be stored in your session for
comparison on a later request.
Example Integration¶
WTForms primitives are designed to work with a large variety of frameworks, and as such sometimes things seem like they are more work to use, but with some smart integration, you can actually clean up your code substantially.
For example, if you were going to integrate with Flask, and wanted to use the SessionCSRF implementation, here’s one way to get the CSRF context to be available without passing it all the time:
from flask import session
from wtforms.csrf.session import SessionCSRF
class MyBaseForm(Form):
class Meta:
csrf = True
csrf_class = SessionCSRF
csrf_secret = app.config['CSRF_SECRET_KEY']
@property
def csrf_context(self):
return session
Now with any subclasses of MyBaseForm, you don’t need to pass in the csrf context, and on top of that, we grab the secret key out of your normal app configuration.


SMOKIN' SALMON COOKIES
HOME
|
ABOUT
|
CONTACT
Find out more about the newest and greatest cookie that's taking the Northwest by storm!


snakefmt
Format Snakemake files.
More information: home page
- Format a specific Snakefile:
snakefmt path/to/snakefile
- Format all Snakefiles recursively in a specific directory:
snakefmt path/to/directory
- Format a file using a specific configuration file:
snakefmt --config path/to/config.toml path/to/snakefile
- Format a file using a specific maximum line length:
snakefmt --line-length 100 path/to/snakefile
- Display the changes that would be performed without performing them (dry-run):
snakefmt --diff path/to/snakefile


Custom toys for kids
by Sarah DubetzFor children in the hospital, seeing oneself in a doll is integral for therapy, validation and comfort — but most dolls don’t have scars, limb differences, or medical equipment. So, one doll at a time, former social worker Amy Jandrisevits brought smiles to child patients. Partnering up with local hospitals and through her nonprofit, A Doll Like Me, Jandrisevits sews custom dolls to reflect and celebrate kids’ unique differences, because a “child needs to pick up a doll and see themselves.”


| 041:024 Khan | : |
Then, if they have patience, yet the Fire will be a home for them, and if they beg for to be excused, yet they are not of those who will ever be excused. |
| 041:024 Maulana | : |
Then if they are patient, the Fire is their abode. And if they ask for goodwill, they are not of those who are granted goodwill. |
| 041:024 Pickthal | : |
And though they are resigned, yet the Fire is still their home; and if they ask for favour, yet they are not of those unto whom favour can be shown. |
| 041:024 Rashad | : |
If they continue the way they are, Hell will be their destiny, and if they make up excuses, they will not be excused. |
| 041:024 Sarwar | : |
Even if they were to exercise patience, their dwelling would still be hell fire. Even if they were to seek favors, they would receive none. |
| 041:024 Shakir | : |
Then if they will endure, still the fire is their abode, and if they ask for goodwill, then are they not of those who shall be granted goodwill. |
| 041:024 Sherali | : |
Now if they can endure, the Fire is their abode; and if they ask for favour, they are not of those whom favour will be shown. |
| 041:024 Yusufali | : |
If, then, they have patience, the Fire will be a home for them! and if they beg to be received into favour, into favour will they not (then) be received. |
Concepts/Themes Covered: أركان الإسلام > التوحيد > الكافرون > صفات الكفار Pillars of Islam> Islamic> The Disbelievers> The Characteristics of the Disbelievers الإيمان > الغيب > النار > أصحاب النار Faith> The Unseen World> Hell-Fire>Hell Fellows
This tool uses eight English parallel translations for the Holy Quran imported from Mr. Clay Smith. You can also visit Qurany Concepts for browsing the Quran themes or topics. If you want to search the Holy Quran for keywords, please visit Qurany Keywords.


Once you sign up, you have access to our Perkboard which lets you view all the perks you could get.
Pick your perks relevant to your niche and wait for the brand to approve you. Once approved you will be given instructions on what to post and depending on the deal, you can get your perk before or after your post goes live.
Easy Peasy!


Open source project from "Freecodecamp repository" Fetch with Github API, thanks for sharing this useful ressources
Fetch with Github API, thanks for sharing this useful ressources


Four dollar toast roof party crucifix pour-over, marfa leggings shabby chic kogi vinyl tousled hella brooklyn
Four dollar toast roof party crucifix pour-over, marfa leggings shabby chic kogi vinyl tousled hella brooklyn
Four dollar toast roof party crucifix pour-over, marfa leggings shabby chic kogi vinyl tousled hella brooklyn.
Four dollar toast roof party crucifix pour-over, marfa leggings shabby chic kogi vinyl tousled hella brooklyn.


Ethereum
Let it decentralize
Artist: Liam Cobb
The time line of Ethereum:
2013
-(
Eth price: N/A
) Whitepaper released
2014
-(
Eth price: ~$.26
) Ether Sale
2015
-(
Eth price: $1.24
) Ethereum goes live with Frontier
2016
-(
Eth price: $12.54
) DAO attack and fork
2017
-(
Eth price: $334.23
) Byzantium fork
2019
-(
Eth price: $151.06
) Istanbul fork
2020
-(
Eth price: $586.23
) Beacon Chain genesis
2021
-(
Eth price: $2454
) Berlin fork
For more detailed information on the history of Ethereum, visit
Ethereum.org


If you find a book or article particularly interesting, do you want your partner to read it as well? Additional details required Additional details required Yes, I like sharing my interests with my partner It doesn't matter if they read it or not
Suppose you lived in a two-bedroom apartment with your partner, what would the sleeping arrangement be? Additional details required Additional details required We'd definitely share one bedroom Each of us would have our own bedroom, but we could spend the night together in either room


Last updated: 2020-03-31
Checks: 7 0
Knit directory: mcfa-para-est/
This reproducible R Markdown analysis was created with workflowr (version 1.5.0). The Checks tab describes the reproducibility checks that were applied when the results were created. The Past versions tab lists the development history.
Great! Since the R Markdown file has been committed to the Git repository, you know the exact version of the code that produced these results.
Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.
The command set.seed(20190614)
was run prior to running the code in the R Markdown file. Setting a seed ensures that any results that rely on randomness, e.g. subsampling or permutations, are reproducible.
Great job! Recording the operating system, R version, and package versions is critical for reproducibility.
Nice! There were no cached chunks for this analysis, so you can be confident that you successfully produced the results during this run.
Great job! Using relative paths to the files within your workflowr project makes it easier to run your code on other machines.
Great! You are using Git for version control. Tracking code development and connecting the code version to the results is critical for reproducibility. The version displayed above was the version of the Git repository at the time these results were generated.
Note that you need to be careful to ensure that all relevant files for the analysis have been committed to Git prior to generating the results (you can use wflow_publish
or wflow_git_commit
). workflowr only checks the R Markdown file, but you know if there are other scripts or data files that it depends on. Below is the status of the Git repository when the results were generated:
Ignored files:
Ignored: .Rhistory
Ignored: .Rproj.user/
Ignored: data/compiled_para_results.txt
Ignored: data/results_bias_est.csv
Ignored: manuscript/
Ignored: output/fact-cov-converge-largeN.pdf
Ignored: output/fact-cov-converge-medN.pdf
Ignored: output/fact-cov-converge-smallN.pdf
Ignored: output/loading-converge-largeN.pdf
Ignored: output/loading-converge-medN.pdf
Ignored: output/loading-converge-smallN.pdf
Ignored: sera-presentation/
Untracked files:
Untracked: analysis/ml-cfa-parameter-bias-factor-loadings.Rmd
Untracked: analysis/ml-cfa-parameter-bias-level1-factor-covariances.Rmd
Untracked: analysis/ml-cfa-parameter-bias-level2-factor-covariances.Rmd
Untracked: analysis/ml-cfa-parameter-bias-level2-factor-variances.Rmd
Untracked: analysis/ml-cfa-parameter-bias-overview.Rmd
Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.
There are no past versions. Publish this analysis with wflow_publish()
to start tracking its development.
The following two chunks of code are what were used to take the Mplus outcome and turn it into something we could analyze. This page contains the code two these two separate R scripts.
# ============================================= #
# ML-CFA Parameter Recovery Project
# Padgett & Morgan
# ============================================= #
# Data Created: 2019-06-14
# Date Modified: 2019-06-14
# By: R. Noah Padgett
# ============================================= #
# ============================================= #
# Purpose:
# This R script is for extracting the parameter
# estimates and the summary information from
# all 15 results files
# to create one parsed down data file with
# with the fit information and identification
# information.
#
# The output will be a single file that I
# will use for all data analyses.
# ============================================= #
library(dplyr)
## Variables to extract from simulation
var.names <- c(
'Condition', 'Replication',
'Model', 'Estimator', 'Converge', 'Admissible', 'chisqu_value', 'chisqu_df',
'chisqu_pvalue', 'CFI', 'TLI', 'RMSEA', 'SRMRW', 'SRMRB',
"lambda11", "lambda12", "lambda13", "lambda14", "lambda15", "lambda16",
"lambda26", "lambda27", "lambda28", "lambda29", "lambda210",
"thetaW1", "thetaW2", "thetaW3", "thetaW4", "thetaW5",
"thetaW6", "thetaW7", "thetaW8", "thetaW9", "thetaW10",
"psiW12",
"nu1", "nu2", "nu3", "nu4", "nu5", "nu6", "nu7", "nu8", "nu9", "nu10",
"thetaB1", "thetaB2", "thetaB3", "thetaB4",
"thetaB5", "thetaB6", "thetaB7", "thetaB8", "thetaB9", "thetaB10",
"psiB1", "psiB12", "psiB2",
"tau11", "tau12", "tau13", "tau14", "tau21", "tau22", "tau23", "tau24",
"tau31", "tau32", "tau33", "tau34", "tau41", "tau42", "tau43", "tau44",
"tau51", "tau52", "tau53", "tau54", "tau61", "tau62", "tau63", "tau64",
"tau71", "tau72", "tau73", "tau74", "tau81", "tau82", "tau83", "tau84",
"tau91", "tau92", "tau93", "tau94", "tau101", "tau102", "tau103", "tau104",
"selambda11", "selambda12", "selambda13", "selambda14",
"selambda15", "selambda16", "selambda26", "selambda27", "selambda28",
"selambda29", "selambda210", "sethetaW1", "sethetaW2", "sethetaW3",
"sethetaW4", "sethetaW5", "sethetaW6", "sethetaW7", "sethetaW8", "sethetaW9",
"sethetaW10", "sepsiW12", "senu1", "senu2", "senu3", "senu4", "senu5",
"senu6", "senu7", "senu8", "senu9", "senu10", "sethetaB1", "sethetaB2",
"sethetaB3", "sethetaB4", "sethetaB5", "sethetaB6", "sethetaB7", "sethetaB8",
"sethetaB9", "sethetaB10", "sepsiB1", "sepsiB12", "sepsiB2",
"setau11", "setau12", "setau13", "setau14", "setau21", "setau22", "setau23",
"setau24", "setau31", "setau32", "setau33", "setau34", "setau41", "setau42",
"setau43", "setau44", "setau51", "setau52", "setau53", "setau54", "setau61",
"setau62", "setau63", "setau64", "setau71", "setau72", "setau73", "setau74",
"setau81", "setau82", "setau83", "setau84", "setau91", "setau92", "setau93",
"setau94", "setau101", "setau102", "setau103", "setau104")
## initialize dataframe (helps with speed i think)
mydata <- as.data.frame(matrix(NA, ncol=length(var.names)))
colnames(mydata) <- var.names
#mydata$Model <- as.factor(mydata$Model)
#mydata$Estimator <- as.factor(mydata$Estimator)
## Set up iterations
EST <- c('MLR', 'ULSMV', 'WLSMV')
MOD <- c('C')
CON <- c('1t18', '19t36', '37t54', '55t71', '72')
## Run loop to extract and combine data into one file
for(est in EST){
for(m in MOD){
for(c in CON){
## Read in specified data file
dat <- read.table(
paste0('Results/output_results_',est,'_',m,'_Con',c,'.txt'),
header = T, sep = "\t", fill= T
)
## ~~
## subset to the variables of interest
dat <- dat[, colnames(dat) %in% var.names]
## merge data into one dataset
mydata <- merge(mydata, dat, all=T)
cat('.')
} ## End conditions
} ## End Model specification
} ## End Estimator
mydata <- mydata[-108001, ]
mydata <- mydata[, var.names]
## Write out Results text file
write.table( x = mydata,
file = paste0('Results/compiled_parameter_results.txt'),
sep = '\t',row.names = F
) ## End write data.table
# ============================================= #
# script: get_data.R
# Project: ML-CFA Parameter Recovery
# Author(s): R.N. Padgett & G.B. Morgan
# ============================================= #
# Data Created: 2019-10-16
# Date Modified: 2019-10-16
# By: R. Noah Padgett
# ============================================= #
# Stems from Padgett's MA thesis
# ============================================= #
# Purpose:
# This R script is for loading and formating
# the data file for use in analyses.
#
# The output is a data.frame (tibble) object
# ============================================= #
sim_results <- as_tibble(read.table('data/compiled_para_results.txt', header=T,sep='\t'))
## Next, turn condition into a factor for plotting
sim_results$Condition <- as.factor(sim_results$Condition)
## level-1 Sample size
ss_l1 <- c(5, 10, 30) ## 6 conditions each
ss_l2 <- c(30, 50, 100, 200) ## 18 condition each
icc_ov <- c(.1, .3, .5) ## 2 conditions each
icc_lv <- c(.1, .5) ## every other condition
nCon <- 72 # number of conditions
nRep <- 500 # number of replications per condition
nMod <- 3 ## numberof estimated models per conditions
## Total number of rows: 108,000
ss_l2 <- c(rep(ss_l2[1], 18*nRep*nMod), rep(ss_l2[2], 18*nRep*nMod),
rep(ss_l2[3], 18*nRep*nMod), rep(ss_l2[4], 18*nRep*nMod))
ss_l1 <- rep(c(rep(ss_l1[1],6*nRep*nMod), rep(ss_l1[2],6*nRep*nMod), rep(ss_l1[3],6*nRep*nMod)), 4)
icc_ov <- rep(c(rep(icc_ov[1], 2*nRep*nMod), rep(icc_ov[2], 2*nRep*nMod), rep(icc_ov[3], 2*nRep*nMod)), 12)
icc_lv <- rep(c(rep(icc_lv[1], nRep*nMod), rep(icc_lv[2], nRep*nMod)), 36)
## Force these vectors to be column vectors
ss_l1 <- matrix(ss_l1, ncol=1)
ss_l2 <- matrix(ss_l2, ncol=1)
icc_ov <- matrix(icc_ov, ncol=1)
icc_lv <- matrix(icc_lv, ncol=1)
## Add the labels to the results data frame
sim_results <- sim_results[order(sim_results$Condition),]
sim_results <- cbind(sim_results, ss_l1, ss_l2, icc_ov, icc_lv)
## Set up iterators for remainder of script
ests <- c('MLR', 'ULSMV', 'WLSMV')
# Add in true parameter values
## Loadings (0.6) forall conditions
sim_results$lambdaT <- 0.6
## level-1 factor covariance
sim_results$psiW12T <- 0.3
## level-2 factor (co)variance
lv_var <- c(.111, 1)
sim_results$psiB1T <- rep(c(rep(lv_var[1], nRep*nMod), rep(lv_var[2], nRep*nMod)), 36)
sim_results$psiB2T <- rep(c(rep(lv_var[1], nRep*nMod), rep(lv_var[2], nRep*nMod)), 36)
lv_cov <- c(.0333, .3)
sim_results$psiB12T <- rep(c(rep(lv_cov[1], nRep*nMod), rep(lv_cov[2], nRep*nMod)), 36)
## level-2 observed variable residual variance
ob_var <- c(.111, .43, 1 )
sim_results$thetaBT <- rep(c(rep(ob_var[1], 2*nRep*nMod), rep(ob_var[2], 2*nRep*nMod), rep(ob_var[3], 2*nRep*nMod)), 12)
# Compute ICC estimates
# latent variables
sim_results$icc_lv1_est <- sim_results$psiB1/(sim_results$psiB1+1)
sim_results$icc_lv2_est <- sim_results$psiB2/(sim_results$psiB2+1)
#observed variables
i <- 1
for(i in 1:10){
varb <- paste0('thetaB',i)
varw <- paste0('thetaW',i)
icc_est <- ifelse(sim_results$Estimator=="MLR",
sim_results[, varb]/( sim_results[, varb] + sim_results[, varw]),
sim_results[, varb]/( sim_results[, varb] + 1))
sim_results$icc_est <- icc_est
colnames(sim_results)[ncol(sim_results)] <- paste0('icc_ov', i,'_est')
}
sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252
[2] LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] workflowr_1.5.0 Rcpp_1.0.3 rprojroot_1.3-2 digest_0.6.23
[5] later_1.0.0 R6_2.4.1 backports_1.1.5 git2r_0.26.1
[9] magrittr_1.5 evaluate_0.14 stringi_1.4.3 rlang_0.4.2
[13] fs_1.3.1 promises_1.1.0 rmarkdown_1.18 tools_3.6.1
[17] stringr_1.4.0 glue_1.3.1 httpuv_1.5.2 xfun_0.11
[21] yaml_2.2.0 compiler_3.6.1 htmltools_0.4.0 knitr_1.26


NYC_colossus Documentation
Requirements
Frontend
- Allow emails to be sent out
Completed: Completed. Using MailGun. Configuration information in /colossus.settings.py EMAIL SETTINGS and FIRST_PARTY APP SETTINGS
Currently sent through Joel's email addr<EMAIL_ADDRESS>- Allow upload of HTML template in application
Completed: template module with better editor: tinymce
- Store newsletter statistics (delivery success / failures)
Completed: Dashboard module
- Ability to provide attachments (custom or single attachment)
Not Completed
- Provide contact list management features (add, edit, remove contacts)
Completed: List module
- Includes the ability to manage multiple contact lists
Completed: List module
- Allow design of emails in application (WYSYWIG Editor)
Completed: template module & has already replaced a better editor: tinymce
Backend
- Login with NYC.ID (SAML 2.0 Identity Provider)
Completed: Core logic in accounts app
- Permissions for sending, managing contact list, and editing / creating newsletters
Feature Overview
- Login (using SAML 2.0):
Using NYC.ID Server to authenticate users.
- Dashboard Activity:
Show the statistics of each campaign (open rates or more)
- Campaigns:
Create and send new subscribe emails
It's possible to send it directly or at a scheduled time
When create a new campaign, input the campaign's name
Load recipients by choosing existed mailing lists and tags;
Input who is sending this email and his email address (this is not the actual email to send newsletter which is already designated in configuration files);
Add a subject;
Choose email templates, WYSYWIG editor is available
Monitor the rate of opening the links (if there is some in the campaign contents)
- Mailing Lists:
Create lists by providing list names and other information;
Either import subscibers or input them manually
Can add speciliazed embedded forms, tags, unsubscribe link and modify other settings in every mailing list
- Templates:
Create email templates by copy and paste HTML templates
Editor: tinymce
- Overview:
Create and manage multiple mailing lists;
Import lists from other providers (csv files or paste email addresses);
Create reusable email templates;
Customize sign up pages (subscribe, unsubscribe, thank you page, etc.);
Default double opt-in for sign ups;
Schedule email campaign to send on a specific date and time;
Track email opens and clicks;
Change link URL after email is sent;
Reports with geolocation;
Compatible with Mailgun, SendGrid, Mandrill, or any other SMTP email service.
SAML Configurations
- Library Import
/requirements/production.txt
- Basic Settings
/instance/saml/settings.json.example
- Advanced Settings
/instance/saml/advanced_settings.json.example
- SAML Settings in Project
/colossus/settings.py
- Public/Private Certificate
/instance/saml/certs/
SAML Reference
Others
- Database auth module: /colossus/apps/accounts
- Use django's default django.contrib.auth.
What to do
- Ability to provide attachments (custom or single attachment)
In Campaign Module


@(num: Int)(implicit session: Session)
@main("Our Screens") {
The epitome of elegance and exclusivity, QA premium screens are redefining the viewing experience. Kitted out with every luxury imaginable, from wine-coolers
to heated recliner seats, you can take in your film in complete and utter comfort. Each seat is also installed with its own button, allowing you to silently call over staff when you're
ready to order from our extensive food and drink selection. It's a real feast for your eyes as well with the opulence also extending to the screen. Our 8K projectors and state-of-
the-art surround sound systems mean that you'll be treated to rich, deep and intense colours and contrasts, creating astounding visuals with audio making you feel like you're right
on set.
So swap your soft drinks for champagne and prepare yourself for the ultimate cinematic experience, watch our social medias for news on whats coming to our premium screens!
Beloved by partners and patrons alike for there plush seating, incredible surround sound, and incomparable screen quality, our screens offer an experience like no other.
Step into fierce battles, raging storms or tense courtrooms all from the comfort of your seat! Our extensive food and drink menu has something for everything. Served
straight to your seat so you dont have to miss a moment of the action. The cleverly tiered seating guarantees that you will have completely unobstructed
views so rest assured you will be guaranteed the best viewing experience possible.
Check out our new releases page to see whats on in our screens!!


break
or continue
statements inside of finally
blocks.
While occasionally intended, such statements are very confusing, may mask thrown exceptions, and complicate debugging.
Example:
while (true) {
try {
throwingMethod();
} finally {
continue;
}
}


Register
Please fill in this form to create an account.
Upload photo
Email
Password
Repeat Password
Name
Status
Teacher
Student
Enter your phone number:
Date Of Birth:
Register
Already have an account?
Log in
.


Also commonly called as the ‘Paradesi Synagogue’ or ‘Mattancherry Synagogue’, the ‘Jewish Synagogue’ located in the small neighbourhood of Mattencherry in Old Cochin, dates back to 1568 and was built by the community of Paradesi Jews who once inhabited the Jew Town area in Kerala during the olden times.
The only functional synagogue of the total seven synagogues belonging to the Cochin’s Paradesi Jewish community, its exquisite architecture and splendid interiors decorated with glass chandeliers and vintage lamps, grab your immediate attention as soon as you step inside the abbey; the synagogue’s floor constructed with hand-painted blue willow tiles, specially imported from China in 18th century further adds to its artistic grandeur that never fails to impress its visitors.
Needless to say, the synagogue is a treasure trove of some valuable antiques which throw light on its glorious past; look out for the 4th century copper plates inscribed with Malayalam script, a hand-knotted oriental rug gifted by the last Ethiopian emperor and two gold crowns presented by the Hindu king of Cochin to the Jewish community as a testament to their harmonious relations. One of the most popular historical tourism places in Kerala, the synagogue today, with its fast dwindling population of Paradesi Jews, mostly remains empty and awaits for tourists who often come here to admire its beauty and to get a glimpse at its age-old history. It is 3.5 kilometers from cochin.
Visiting Timings:-10:00AM-12:00PM and 3:00PM-5:00PM
Commonly referred to as ‘Mattencherry Palace’, the ‘Dutch Palace’ stands close to the ‘Jewish Synagogue’ in Jew Town area of Mattencherry neighbourhood and makes for yet another significant historical sightseeing places in Kerala. The palace was originally built by the Portuguese in 1557 which they later gifted to the king of Cochin not only as a compensation for their dreadful act of devastating a Hindu temple in the region but, also as a bribe for establishing trade relations with the kingdom.
In 1663, the palace was taken over by the Dutch who greatly revamped and improvised its structure. That is the reason, the palace is today, more popularly known as the ‘Dutch Palace’. With its simple white exteriors beautifully complementing the lush greenery and tall coconut trees that fringe the area, the palace is truly a sight to behold from inside; as soon as you step in the palace, you are flabbergasted to witness some breath-taking murals etched on its walls, depicting mythological scenes from Hindu epics of Ramayana, Mahabharata and other Puranic legends.
And yes! These murals are counted amongst the best of their kind in India.That is not all, the ‘Dutch Palace’ has many more elements to surprise its visitors; the intricately carved wooden ceiling of the coronation hall adorning the design of inverted lotus is sure to leave you spellbound. What further adds to the charm of the palace is its rare and antique collection of royal paraphernalia including furniture, weaponry, palanquins, costumes and life-size portraits of Kochi kings who ruled here in the bygone era.
Undoubtedly, a great place for history buffs and art enthusiasts, a visit to the ‘Dutch Palace’ would be no less than a walk in the past and is sure to leave you with some fascinating unknowns about the history of Kerala. It is 3.7 kilometers from cochin.
Visiting Timings:-9:45AM-1:00PM and 3:00PM-5:00PM
Snuggled on the shores of the tropical Malabar Coast, ‘Fort Kochi’, the historic centre of the modern day Cochin city, is by far the most important historical places to visit in Kerala. Steeped in rich antiquity and dotted with scores of crumbling buildings and monuments that reminisce of the Dutch, Portuguese and British colonial raj in the country during bygone times, it is a place worth setting out on foot, listening to those intriguing yet ‘never-heard-before’ tales of the past.
As you venture on a tour of this once ‘melting hot-pot of cultures’ in South India, pause for a moment and marvel on the captivating vistas of the ‘Chinese Fishing Nets’ that precariously hang over the wooden cantilevers lined along the beach of this old town. Standing tall in their lustrous glory as a proud symbol of Kerala’s colonial legacy, these nets look even more surreal against the backdrop of the setting sun; no wonder, they are one of the most photographed attractions here and can be seen ornamenting official picture postcards and postal stamps of the state.
After a tiring day of walking around Fort Kochi, exploring its historical and cultural heritage attractions, if you feel worn out, settle down for some entertainment at the ‘Kerala Kathakali Centre’, an institute that work towards propagating different traditional art forms of Kerala; watch a magnificent Kathakali performance here and learn some interesting historical facts about this beautiful dance form during an insightful session with the brilliant Kathakali artists in person. Needless to say, a ‘must-visit’ on your Kerala Heritage tour, ‘Fort Kochi’ is always going to be etched in your memories for the lifetime. It is 6.3 kilometers from cochin.
Visiting Timings:-9:00AM-1:00PM and 3:00PM-5:00PM
Built in 1503, ‘St. Francis Church’ holds the status of being the oldest European church in India. One of the most historically significant places in Kerala, which once stood as a quiet spectator to the struggle of different European colonial powers in the Indian subcontinent, the church today, attracts countless visitors from across the globe.
The architecture of this ancient church, though not very artistic and modern, still manages to grab all the admiration by the visitors; the stained glass windows and gorgeous porticoes flanked with stepped pinnacle just add to its old world charm. What further draws the attention of many, is its antique collection of hand-operated cloth fans that are till date, worked upon manually with ropes on either side.
Besides all that, what marks for the most important highlight of this church is its association with Vasco da Gama, the first Portuguese trader and voyager who landed on the Indian soil; the church is popular as the resting ground of this famous explorer who was buried here in 1524. Even though his mortal remains were sent back to Portugal 14 years later, the burial place still attracts many curious travellers from parts of the world.
One of the most significant of the numerous popular churches in India, ‘St. Francis Church’ has come a long way from being a Roman Catholic Church to a Reformist Church maintained by the Dutch to finally transforming into an Anglican Church. Today, this church is owned by CSI (Church of South India) and has become an integral part of Kochi’s identity. Tourists are welcome to visit this church any day of the week except Sundays and public holidays when it is busy hosting the regular prayer services for the locals. It is 6.4 kilometers from cochin.
Visiting Timings:-7:00AM-6:30PM
For all the history buffs, nothing can match the grandeur of the ‘Thripunithura Hill Palace Museum’ located in the capital city of Kochi in Kerala. A majestic palace complex built by the erstwhile Maharaja of Cochin In 1865, it has now been converted into an archaeological and heritage museum by the Kerala State Archaeology Department and invites a number of historians, researchers and scholars studying Indian history from all across the world.
The largest museum of its kind in Kerala, it showcases an excellent collection of artefacts primarily belonging to the Cochin royal family; some of the most beautiful oil paintings and murals of ancient times can be seen adorning the walls of this museum.
Other noteworthy exhibits include royal thrones & chairs, wood & ivory items, stone sculptures, a collection of valuable old coins, ancient manuscripts, inscriptions & palm leaf records, chariots & horse carts and pottery gifted by Chinese and Japanese traders to the royal kings of Kochi.
One brilliant exhibit that instantly captures your attention at the museum is the collection of gold ornaments studded with precious and semi-precious stones; the gold crown belonging to the erstwhile maharaja is truly the centre of attraction. Needless to say, a heaven for history lovers, this palace is a must visit whenever you are in Kerala. It is 12.1 kilometers from cochin.
Visiting Timings:-9:30AM-12:00PM and 2:00PM-4:30PM


APAeval is a community effort to evaluate computational methods for the detection and quantification of poly(A) sites and the estimation of their differential usage across RNA-seq samples.
APAeval @ RNA2021 proposes three challenges, each consisting of a set of benchmarks for tools that:
For more information please visit the event landing page at the Integrative RNA Biology Community (iRNA COSI)


All referral updates are posted in real time on the ACT/Referrals problem list. On the problem list, you can see which referrals your patient has completed, which referrals he/she still needs, and when their specialty referral appointments have been scheduled for. For those referrals that need them, you can also see how far along your patient is in their charity care application
To access the ACT/Referrals problem list:
You should now see the following screen


David DaCosta
“When something is important enough,
you do it even if the odds are not in your favor.”
Web - Games - Apps - Software
UML Hawkathon was a lot of fun! I'll be heading
to MIT Hacking Medicine's Grand Hack in April, catch me there!
I like to code. I'm from the North Shore. Bruins for life! I started coding in a Java class at North Shore Community College when I was trying to get an idea of where I wanted to go in life. Fell in love with it. Now I make games & stuff.
I've worked mainly in C/C++ at Umass Lowell. Towards the end of the Computing Sequence we did some pretty cool projects like Solar System emulation & a Linear Feedback Shift Register. On my own I'm a big fan of Python.