A switchgear is an integrated assembly of switches, buses fuses and other components used to isolate electrical equipment at an electrical installation, for example, an electrical power sub-station. Switchgear is used to both de-energise equipment to allow work to be done and to clear faults downstream of the switchgear. Switchgear is often housed in a metal cabinet at the installation.
A distinction is made between so called ‘fixed switchgear’ and so called ‘withdrawable switchgear’. In fixed switchgear the main circuit breaker is fastened within the installation by fasteners, for example bolts, and cannot be removed from the installation without using tools to undo the fasteners. In withdrawable switchgear additional constructional features enable the main circuit breaker to be withdrawn from the installation (and put back in) with a minimum usage of tools or with no usage of tools. Accordingly, in a withdrawable switchgear, the main circuit breaker can be removed quickly for maintenance or replacement or to provide easy access to other components in the installation.
Conventional switchgear comprises a number of electrical terminals or poles, typically two or more, each electrically isolated from the other, and comprising an insulating housing containing an electrical contact. The insulating housings may be made of epoxy resin. In one known arrangement, one such terminal has an electrical contact for a bus or power rail and another such terminal has an electrical contact for a cable connection routed to a load. An electrical connection is established between the bus and the load by inserting into each terminal housing a respective one of a pair of electrical contacts of a circuit breaker. In this way, one circuit breaker's contact engages the contact of one of the terminals and the other circuit breaker's contact engages the other terminal's contact so that the electrical path is established between the bus and the load through the breaker. Each terminal's housing is generally conical in shape, with a circular cross section. In air insulated switchgear the terminals must be separated by a certain gap for insulation purposes.
U.S. Pat. No. 3,889,722 describes a plastic insulated switching unit for a multiphase high voltage switchgear. The switching unit comprises an insulating housing defining a cylindrical cavity and fixed ring-shaped contacts at an inside wall of said housing. A drawout switching device comprises a projecting tubular pole, having an operating mechanism. The tubular pole comprises ring-shaped contact pieces mounted on its outside. The switching device is moveable between a fully inserted position and an isolating position. In U.S. Pat. No. 3,889,722 the fixed ring-shaped contacts are each located in a recess formed in the inner surface of the insulating housing.
It is desirable to provide an improved terminal for an electrical switchgear and in particular one that allows for a more compact switchgear.


Q:

floatval causes the digits after the thousand sep ',' to be erased

floatval('19500.00');

returns 19500 ;
however
echo floatval('19,500.00');

returns 19 ;
this could've really given me a big problem it was good that I've noticed :D ... is there some reason for that behavior or it's just a bug ... should all values be number_formatted before ouput?

A:

You put that value in single quotes, so it's not treated as a numerical value, but as a string.
Here's php.net's explanation what happens to strings with floatval (from http://php.net/manual/en/function.floatval.php):

Strings will most likely return 0 although this depends on the
  leftmost characters of the string.

Meaning: The leftmost characters of the string in your case is 19 - that's a numerical value again, so the output is 19.


Clinicopathological analysis of programmed cell death 1 and programmed cell death ligand 1 expression in the tumour microenvironments of diffuse large B cell lymphomas.
To investigate the clinicopathological characteristics of programmed cell death ligand 1 (PD-L1) and programmed cell death 1 (PD-1) expression in the tumour microenvironments of diffuse large B cell lymphoma (DLBCL). Tumour tissues from 126 DLBCL patients were immunostained for PD-L1 and PD-1. The expression of PD-L1 by tumour cells and/or tumour-infiltrating immune cells (mainly macrophages) was evaluated, and the number of tumour-infiltrating PD-1(+) cells was assessed. PD-L1 expression in tumour cells was observed in 61.1% of DLBCLs, with a weak intensity in 29.4%, moderate intensity in 21.4% and strong intensity in 10.3% of cases. Strong PD-L1 expression in tumour cells was associated significantly with the presence of B symptoms (adjusted P = 0.005) and Epstein-Barr virus (EBV) infection (adjusted P = 0.015), and tended to be higher in activated B cell-like immunophenotype (16.7%) than germinal centre B cell-like immunophenotype (2.5%) (adjusted P = 0.271). DLBCLs with PD-L1 expression in tumour cells/macrophages showed similar clinicopathological characteristics. The quantity of PD-1(+) tumour-infiltrating lymphocytes correlated positively with the level of PD-L1 expression in tumour cells (P = 0.042) or in tumour cells/macrophages (P = 0.03). Increased infiltration of PD-1(+) cells was associated with prolonged progression-free survival (P = 0.005) and overall survival (P = 0.026) in DLBCL patients treated with rituximab-cyclophosphamide, doxorubicin, vincristine, prednisone (R-CHOP), whereas PD-L1 expression had no prognostic significance. PD-L1 and PD-1 were expressed variably in DLBCLs by tumour cells and tumour-infiltrating immune cells and might be potential therapeutic targets using PD-1/PD-L1 blockade.


UNITED NATIONS (Reuters) - The United States, Britain and the United Nations were skeptical on Wednesday of South Sudan President Salva Kiir’s declaration of a unilateral ceasefire, noting that it coincides with the start of the rainy season that traditionally lessens fighting.

Kiir also said on Monday he would release political prisoners, but with no sign of a political deal with rebels it was not clear whether a ceasefire would take hold. [nL8N1IO3NE]

U.N. South Sudan envoy David Shearer welcomed the announcements, but warned they would be closely scrutinized. U.N. peacekeepers have been deployed since South Sudan gained independence from Sudan in 2011.

“The proof of the pudding, as they say, is in the eating,” Shearer told the U.N. Security Council on Wednesday.

South Sudan has been mired in a civil war since 2013, when Kiir fired his deputy. The conflict, fanned by ethnic rivalries, has sparked Africa’s worst refugee crisis since the 1994 Rwandan genocide and plunged parts of the country into famine.

British U.N. Ambassador Matthew Rycroft said the onus was now on Kiir to “prove that these are meaningful commitments, not just convenient timing with the start of the rainy season when fighting is made more difficult.”

“I note with skepticism, but not surprise, that on the day the ceasefire was announced, government offensives continued in Yei and attacks by militia groups continue still,” he said.

Deputy U.S. Ambassador to the United Nations, Michele Sison, said the ceasefire pledge by Kiir came two months after he had promised it to the east African regional bloc IGAD.

She told the council it also only came after government troops pursued “offensives in multiple locations in South Sudan before the onset of the rainy season” and that there had been no end to the obstacles faced by U.N. peacekeepers.

The Security Council has long threatened to impose an arms embargo on South Sudan. But when the United States put the measure to a vote in December it failed to get the nine votes needed to pass. [nL1N1EI0RL]

Both Rycroft and Sison pushed the council on Wednesday to impose further sanctions. Russia against expressed it opposition to an arms embargo, adding that it hoped the ceasefire is implemented.

Kiir on Tuesday announced that Lieutenant General Marial Chanuong - blacklisted by the Security Council in 2015 - would head the government ground forces. Chanuong was sanctioned for leading “the slaughter of Nuer civilians in and around Juba, many who were buried in mass graves,” in 2013.

The United States said on Wednesday it would provide an additional $329 million in humanitarian assistance to help provide food, water, medical care and shelter to people affected by famine and violence in South Sudan, Nigeria, Somalia and Yemen.

With the new funding, the overall U.S. humanitarian assistance for those four crises comes to $1.2 billion since the beginning of the 2017 fiscal year.


Q:

How to concatenate the percentage of a row in a single value?

I would like to concatenate the percentage of that value across the single row. Let say I have:
dat<-data.frame(x1=c(1), x2=c(4), x3=c(5), stringsAsFactors = FALSE)

I would like to have a concatenate value in the dat$concat column like this: [10,40,50] (each value is the percentage now)
I previously asked how I can concatenate, and the command works pretty well:
dat$conc <- paste0("[",apply(dat,1,paste,collapse=","),"]")

How can I do it?

A:

If we're assuming that 5 stands for 50%, then it's as easy as replacing dat with dat*.1, Like this:
dat <- data.frame(x1=c(1), x2=c(4), x3=c(5), stringsAsFactors = FALSE)

dat$conc <- paste0("[",apply(dat*.1,1,paste,collapse=","),"]")

  x1 x2 x3          conc
1  1  4  5 [0.1,0.4,0.5]

But I do want to note that if 5 is meant to signify 5%, not 50%, then you would want to replace dat with dat/100, like this:
dat <- data.frame(x1=c(1), x2=c(4), x3=c(5), stringsAsFactors = FALSE)

dat$conc <- paste0("[",apply(dat/100,1,paste,collapse=","),"]")

  x1 x2 x3             conc
1  1  4  5 [0.01,0.04,0.05]

EDIT:
To get the percentage of each value relative to its row (i.e. value/rowSums(x)), try this:
dat <- data.frame(x1=c(7),x2=c(4),x3=c(5),stringsAsFactors=FALSE)

dat$conc <- paste0("[",apply(dat/rowSums(dat),1,paste,collapse=","),"]")

Output:
  x1 x2 x3                 conc
1  7  4  5 [0.4375,0.25,0.3125]


5 interesting ways people have used lifelogging to enrich their lives

Share:

Since the term “quantified self” was coined in 2007 by Kevin Kelly and Gary Wolf, it has seen much progress in terms of entering the mainstream consumer market. All kinds of wearables exist for all sorts of purposes, with the primary aim to live out a more fulfilling life (or simply to nod in unison with this quote attributed to the Socrates “The unexamined life is not worth living“). Whatever the motivation for lifelogging, we at Narrative are of course extremely excited that many have chosen to lead the more quantified life. And today, we would like to share these 5 interesting ways people have used lifelogging to enrich their lives. We hope it helps you expand your definition of lifelogging and feel free to share with us if you have any other ideas!

1. For their marriage

As we all know, behaviours before and after marriage can vary a whole lot. One data scientist by the name of Alice Zhao, after receiving a Word document of all the text messages her (then) boyfriend had given her for their one-year anniversary, decided to present her husband with a new and improved gift of data after getting married for six years – a visualisation of all the text messages before and after marriage. She pointed out that her husband has always had somewhat of an obsession with “home”, while she transited from one who frequently began conversations with “hey” to simply agreeing with her husband on everything by saying “Ok”. How have your wedded conversations changed?

2. For augmenting his damaged memory

After meeting with a car accident that rendered a compromise in his declarative episodic memory, Thomas Dixon has relied heavily on his smart phone, particularly Twitter, to augment that part of his brain that isn’t functioning properly. Dixon does this by using Twitter throughout the day to make notes of what he isn’t likely to remember tomorrow. While this form of extreme journalling exists for lifelogging enthusiasts, Dixon says that this is a very necessary practice for him to function independently.

3. For capturing the joys and hardships of parenthood

The team at Huggies Korea recently launched a campaign that literally stole our hearts (and tears) away. After inviting several mothers to discuss the joys and hardships of raising their children, Huggies provided these moms with two lifelogging cameras for a week, one to be worn on the mom and another on her baby. The result is absolutely touching. To all moms and dads using the Narrative Clip, please tweet at @getnarrative and #narrativeclip to share your lovely parenting moments with us too!

4. For documenting global warming

Lifelogging can of course be expanded to include documenting the environment in which human beings live. And this is how photographer Camille Seaman has made use of visual lifelogging to spread awareness of the reality of global warming. Although initially unintended for chronicling climate change, Camille eventually titled her photo book “Melting Away” as she began to photograph the endangered polar regions, which she loves and connects with after a visit to Alaska, Svalbard and Antarctica more than ten years ago. Order this photo book now for some amazing and absolutely stunning photography.

5. For a better quantified social self

With almost everyone getting hooked on social media platforms, analysing and understanding our social media selves could be very telling of the way we interact digitally. To do this, Jamie Todd Robin uses ThinkUp, a smart and simple web app that analyses your activity on Facebook and Twitter to provide you with meaningful insights into your social media behaviour. According to Jamie, the insights generated by ThinkUp falls into four categories – personal insights, fun insights, pay it forward and improving social media behaviour. Find out more about how ThinkUp works here!


If this is your first visit, be sure to
check out the Forum Rules by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Re: Script for sniffing traffic.

Hello comaX,

First of all, thanks for sharing your script... I was testing it and noticed the victims can't play youtube while the script is running. I tested with Chrome and Safari with the same results. The videos seems to be loading but doesn't load and so, doesn't play. The script works great, but the stealth factor starts to fail when the victims guess something is weird. Is there a fix for it? Thanks in advanced.

Re: Script for sniffing traffic.

Nice script. It works in my BT5R1 KDE 32 like a charm. I have some problems in ssl, cause I can't get passwords from SSL sites.
Maybe it's my problem I don't know. The settings seems to be ok

Are you sure you're not logging on in the test case in https://... If you are then being the MiTM won't help, because all traffic is encrypted anyway. You need to make sure SSlStrip is taking away the HTTPS and making it HTTP only. If it's not, then try using the ettercap option and spoofing the ssl connection. Although that might take some social engineering to work in the wild... If the options that I suggested to ComaX (Allowing user input for the decision of either fake ssl, sslstrip, padlock icon, fake certificate etc...) get put in place, then it'll be easier. But until then good luck.

World Domination is such an ugly phrase. I prefer the term World Optimization.

Re: Script for sniffing traffic.

If the options that I suggested to ComaX (Allowing user input for the decision of either fake ssl, sslstrip, padlock icon, fake certificate etc...) get put in place

Damn, I forgot about those. Sorry.
It's been a while I didn't write anything new.
About the padlock icon, don't you think it's better to leave it the way it is ? Do you think some people might not want it ? If so, I will make that an option.
I'll try to work on the other stuff you mentioned to, if I have the time.

Re: Script for sniffing traffic.

I think that the initiation of the script should look like this
./yamas
(a)rpspoof or (e)ttercap?
if a then keep all the defaults the way they are

if e then
do you want to (s)trip the ssl connection or to s(p)oof it?
if s then keep defaults and do you want to add the (p)adlock icon in the users browser?

if p then
do you want to use a fake certificate or not?Y/n?

the flow of this will allow the user to define all his own options and still provide the functionality of the other options to those who want them. Let me know. Thanks. Still looking forward to the update.

World Domination is such an ugly phrase. I prefer the term World Optimization.

Re: Script for sniffing traffic.

(a)rpspoof or (e)ttercap?
if a then keep all the defaults the way they are

if e then
do you want to (s)trip the ssl connection or to s(p)oof it?
if s then keep defaults and do you want to add the (p)adlock icon in the users browser?

if p then
do you want to use a fake certificate or not?Y/n?

the flow of this will allow the user to define all his own options and still provide the functionality of the other options to those who want them. Let me know. Thanks. Still looking forward to the update.

I'll leave the ettercap option as a parameter passed to the script, but I think I'll use this kind of menu, it's a good idea ! By the way, if you have an idea of how to script this, you can submit it to me and you'll get the proper credits

My main problem is that I never much used ettercap for the ssl stuff because I think it's bad SE, but surely I understand why someone would want that, so it makes sense to add it.

Cheers

Btw, is it me or is the site going really slow those last couple of weeks ?

Re: Script for sniffing traffic.

Originally Posted by comaX

I'll leave the ettercap option as a parameter passed to the script, but I think I'll use this kind of menu, it's a good idea ! By the way, if you have an idea of how to script this, you can submit it to me and you'll get the proper credits

My main problem is that I never much used ettercap for the ssl stuff because I think it's bad SE, but surely I understand why someone would want that, so it makes sense to add it.

Cheers

Btw, is it me or is the site going really slow those last couple of weeks ?

It might be just the two of us, its been sluggish for me as well.

So. The "new" flow looks like this.
./yamas - same old, same old.
./yamas -e
Do you want.... (all the previous menu options.)

BTW, I'm not sure what you mean Bad SE?
Any way, I've never really scripted anything in bash, but I've got years of experience with c and .net, so it might be ported. That being said, if I knew what I was doing in bash, I would write it like so:
All vars would be booleans

var=(strip or spoof?)
if strip then var1=(padlock?)
if var1 then
run command w/ padlock, exit function/loop
if not var1 then
run command w/o padlock, exit function/loop

if spoof then var1=(add cert?)
if var1 then
run command w/ cert, exit function/loop
if not var1 then
run command w/o cert, exit function/loop

This psuedocode could be ported to bash fairly easily, I just don't know how... But I leave that to the experts like you.
Let me know. Thanks.

World Domination is such an ugly phrase. I prefer the term World Optimization.

Re: Script for sniffing traffic.

I wouldn't call myself an expert at all, but thanks ! I guess I'll have to do some reading on ettercap's functionnalities.
By "bad SE", I mean that any decent browser these days would say "bad cert, don't go there", I can't imagine someone thinking "You know what browser ? F*ck you, imma going' there !"

I guess I still want to believe in humanity after all

EDIT :
I came across a MAJOR problem while working on this... Unless I understood something the wrong way, you either spoof ssl connection with ettercap's fakessl (which includes fakecert), and you WILL have https etc or you use sslstrip to get rid of the ssl.

But you can't do both at the same time.

So including fakessl would mean disable sslstrip, which will mean that the password parsing won't work, which pretty much defeats the whole goal of the script.

Correct me if I'm wrong !

Meanwhile, I'll keep digging.

EDIT :
@AnimusDomini

Hello comaX,

First of all, thanks for sharing your script... I was testing it and noticed the victims can't play youtube while the script is running. I tested with Chrome and Safari with the same results. The videos seems to be loading but doesn't load and so, doesn't play. The script works great, but the stealth factor starts to fail when the victims guess something is weird. Is there a fix for it? Thanks in advanced.

I believe, it was posted retroactively... So, as I told you, I never experienced such a thing, but it would make sense if the videos were slow to load. I'll ask people to provide feedback in the "message of the day" in the script, hoping people actually read it ^^

Re: Script for sniffing traffic.

Originally Posted by ShadowMaster

Are you sure you're not logging on in the test case in https://... If you are then being the MiTM won't help, because all traffic is encrypted anyway. You need to make sure SSlStrip is taking away the HTTPS and making it HTTP only. If it's not, then try using the ettercap option and spoofing the ssl connection. Although that might take some social engineering to work in the wild... If the options that I suggested to ComaX (Allowing user input for the decision of either fake ssl, sslstrip, padlock icon, fake certificate etc...) get put in place, then it'll be easier. But until then good luck.

thanks for your reply but I didnt understand what you mean. I have run yamas and when I tried to login in my test pc ("victim") in gmail via: https://gmail.com doens't strip the ssl.

Maybe I have not understand how sslstrip works. I think that sslstrip removes the ssl and the site will be http://gmail.com and not givint a fake ssl certificate to the victim (as cain and abel). So what I have wrong?


Thomas Jackson, American Renaissance, June 1998

Lee Silver, Remaking Eden: Cloning and Beyond in a Brave New World, Avon Books, 1997, 317 pp.

What can we expect from human genetic engineering? How will cloning change our species? Can governments misuse genetic technology? These are some of the questions Lee Silver tries to answer in Remaking Eden. This book is so breezy it reads as if it were pitched to readers of Mademoiselle, but Prof. Silver clearly knows his field and makes no secret of his enthusiasm for using science to improve on nature. Whatever scruples — religious or otherwise — one may have about the advisability of tinkering with human reproduction, this book leaves little doubt that human cloning and designer babies are likely to be common in the next century.

Just a Small Business

Prof. Silver explains that cloning will be a crucial step in our ability to manipulate reproduction. Last year’s successful cloning of a sheep means there should be no scientific obstacles to doing the same thing with humans, but what is a clone and how does cloning work? A clone is an exact genetic copy of an organism. Clones are easily produced by plants that can be propagated from cuttings, but animals don’t reproduce that way. A clone of a person would be made by putting his genetic material into an embryonic cell, implanting that cell in a womb, and letting it develop to term. Biologically, a clone is no different from an identical twin, except that it is born later — perhaps many years later.

The news of the sheep cloning was met with widespread hostility, and people from President Clinton on down urged that cloning of humans be prohibited. Prof. Silver thinks opposition is both futile (because cloning will be impossible to ban) and misplaced (because cloning will be good and useful). He argues that fancy reproductive genetics cannot be prevented because it does not require large-scale investment, and can be done virtually anywhere. If the United States bans it, Singapore or North Korea or the Cayman Islands will welcome the small businesses that will inevitably spring up to provide it.

According to Prof. Silver, cloning and its associated techniques are good, partly because only individuals, not governments, are likely to use them. There are several reasons for this. First, human cloning starts with a single cell that must be grown into an adult, so it takes 18 to 20 years. Champion athletes or obedient soldiers cannot be cranked out of a clone factory fully-grown, and Prof. Silver suspects that few governments have the patience to wait for clones to grow up. He also reports that in the foreseeable future the chances of creating an artificial womb are slim to none, since the chemical communications between mother and fetus are too complicated to reproduce. Cloning will therefore require human wombs, and large-scale government cloning would require a slave army of young women compelled to produce and rear government-issue babies. This is improbable even under the worst dictators.

Who, then, would clone and why? Since cloning will be labor-intensive, only the rich will be able to afford it. Some people — and not necessarily egomaniacs — will want the nearest thing yet to another chance at life: the opportunity to rear a genetic carbon copy of themselves.

Prof. Silver offers other more exotic possibilities: A couple could go infertile before it had all the children it wanted and could decide to clone the one(s) it already had rather than adopt. A lesbian could decide to clone herself and implant the embryo in her “partner”’s womb — both women would then be “biological” mothers of the resulting child. If the only child of a couple were killed in an accident the parents might decide to clone the child (from its remaining tissue) rather than start over. At a more gruesome level, a clone might be produced because it would be a perfectly compatible organ donor for someone who needed new parts. Some types of useful tissue are already present in the fetus, so the clone could be aborted and all its useful bits harvested.

Cloning makes for startling possibilities. A woman who particularly admired her parents could clone them, have them implanted in her own womb, and rear them. She would then be the birth mother of people who were, genetically, her own parents. Also, since human tissues can be stored indefinitely in the deep freeze, a long-dead ancestor’s genes could be thawed out and given another try. A child could grow up to learn that what he had always thought was his brother was — genetically — his great-grandfather.

Prof. Silver points out that it is possible to clone someone who has never been born. An aborted fetus has all the genetic material anyone needs for cloning. Spookier still is what could be done with the fact that male and female fetuses already contain eggs and the precursors of sperm. If these were harvested and used for in vitro fertilization, someone could be born of parents who were, themselves, never born. Prof. Silver does not necessarily endorse any of this — he is simply explaining what is now or soon will be possible. And to those who find these ideas repulsive, he points out that when in vitro fertilization was first achieved in 1978 it was denounced as “playing God.” It is now practiced without controversy in 40 different countries, and by the end of 1994 some 140,000 people had come into the world that way.

He also notes that surrogate mothers — women who rent out their wombs — continue to ply their trade, despite bad publicity. In 1986, Mary Beth Whitehead refused to turn over a contract baby she had agreed to carry for an infertile couple, and the saga of “Baby M” wore on for months. Since then, states have passed laws governing commercial surrogacy, some banning it outright. Others, like Arkansas, are receptive to reproductive contracts and will enforce them even if the surrogate mother does not want to hand over the baby. Prof. Silver reports that surrogates are now selected with such care that there are no more battles over possession. His point is that a procedure that once provoked an outcry is now quietly flourishing. He predicts that other reproductive techniques that now seem outlandish will also gain wide acceptance.

Whatever happens, this will be sport for the rich: In vitro fertilization costs anywhere from $50,000 to $200,000 and the total costs of hiring a stranger to carry your child run to about $50,000.

Improving on Nature

Even more troubling for some people is the prospect of human genetic improvement, but simple techniques of this sort are already being used. If parents use amniocentesis to test an unborn child for genetic diseases, they have the option of aborting the fetus rather than have a baby with a serious defect. This is crude, all-or-nothing selection but it is still a refusal to leave reproduction to chance. Embryo selection is similar but more complex. When infertile couples resort to in vitro fertilization, they usually fertilize several eggs at once to make sure at least one will be usable. If several embryos are left to develop they can be examined and the most promising chosen for implantation. Soon it will be possible to change the genetic contents of the embryo so as to eliminate hereditary diseases and even add desirable qualities.

Prof. Silver notes that cloning will be central to this process because at the pre-implantation stage that will make it possible to work with batches of embryos rather than just one. Biological procedures are never 100 percent reliable, so reproductive genetics needs the margin for error that comes with genetically identical copies. A technician who would never attempt an uncertain maneuver on a single, laboriously-harvested, fertilized, and partially-developed embryo could try it confidently on 100 identical embryos.

Needless to say, there is much controversy about all this. Some people would view the 99 failed-and-discarded embryos as 99 abortions. Likewise, there are doubts about the advisability of tinkering with genetic characteristics that could be passed on to succeeding generations. Indeed, some of the probable methods do seem strange. For example, it should soon be possible to modify the precursor cells that produce human sperm. Harmful characteristics could be eliminated and helpful ones added. These cells could then be implanted into the testes of a pig or mouse, which would produce improved human sperm, which could be harvested and used for in vitro fertilization.

Whatever techniques are used, Prof. Silver suggests that in 100 years or so, true designer babies will be possible. A couple could select their own most desirable traits and add nice features from other people and even other species. There is no theoretical obstacle to stitching into humans the genes that give dogs a keen sense of smell or even those that permit echolocation in bats or dolphins. Humans may some day be able to see radio waves and infrared light, or even perform photosynthesis.

Prof. Silver recognizes that the children of people who can afford these techniques will dominate society. Every parent with enough money could have beautiful, talented, genius children. Prof. Silver even recognizes that these improved humans could quickly become a distinct species, or even several distinct species, depending on the set of characteristics they selected. Is this eugenics? Indeed it is, says Prof. Silver, who argues that even if the Nazis gave it a bad name, it would be irresponsible not to take control of our genetic destiny now that we are able.

Fantastic as all of this may sound, Prof. Silver is probably at his most convincing when he argues that unless the United States or some other superpower launches a global effort to prevent anyone anywhere from perfecting and practicing these techniques, reproductive engineering will surely come to pass. Parents want the best for their children, and with or without their government’s permission they will find a way to get it. Although there will not be new, improved human super-species in our lifetime, Prof. Silver argues that there is no harm in getting used to the idea now.


Japan has many surveys and economic indicators. It can be useful to look at the economy from many different angles and to get some reports that are very topical but not so detailed and others that are very detailed but not so topical. But there are risks inherent in such a process. It will also produce reports that are inconsistent with each other and create more work for analysts trying to figure out which report is wheat and which is chaff. Welcome to what wacky word of empirical economics where statistics are everything but judgment is vital.

And so it is this month. While Japan's economy watchers index has fallen for three months in a row and this month has brought an increase it is still true that the index points to a sharp weakening in the economy. The future index from this survey is lower in six of the past seven months. When the level readings of this diffusion index are ranked on a period from January 2009, the headline ranks in its 11.8 percentile, the employment gauge ranks in its 11.8 percentile and the future index ranks in its 16.5 percentile. These are extremely weak readings and consistent with one another.

In diffusion terms, the three sector readings each are below 50; therefore, already pointing to contraction. But the ranking statistics tell how weak these readings really are in comparison with past tendencies.

A second set of rankings in the table assesses the diffusion metrics based on their year-over-year percentage changes. Ranked that way, the three indexes present nearly the same picture. The economy watchers index has a 15.6 percentile standing, employment has a 12.5 percentile standing and the future index has a very low 5.5 percentile standing. On balance, the levels of activity are low and momentum is very poor. That is a truly a bad combination of events, especially for an economy already running negative interest rates.

A second set of diffusion surveys from Teikoku also are available with sector detailing. These metrics show index level standings for manufacturing, retailing, wholesaling, services, and construction. The Teikoku sector indexes have queue rankings as low as 50% (for manufacturing) and rankings as high as 77% (for services). They are certainly not as weak as the economy watchers survey and therefore raise questions about the true state of the economy. And both the economy watchers and Teikoku surveys are evaluated on common ground from the current August observations back to January 2009. However, when the Teikoku data are ranked on their year-over-year growth rates, they suddenly get quite a bit weaker with no ranking as high as its 30% percentile and with two sectors (manufacturing and wholesaling) below their 11th percentile. Both the Teikoku and the economy watchers index, therefore, agree that momentum is quite poor although they disagree on the current state of the economy.

The last survey that is up-to-date through August is from IHS Markit. Markit data I have only back to January 2015 so they are not directly comparable in terms the rankings. Still, the Markit data give a mixed view on index levels ranking manufacturing as weaker only 12.5% of the time and services as weaker 94.6% of the time- a very strong service sector reading for Japan- at least when compared to the last 4.75 years. Momentum on those two sector grades out about the same with a 13.6 percentile standing for manufacturing and a somewhat less buoyant (but still quite firm) 79.5 percentile standing for services.

The consistency here is that all three of these surveys see some weak momentum. The economy watchers index sees weakness too and expected weakness without sector reference. Teikoku agrees with Markit on the service sector firmness/strength (although Markit is even stronger) and Teikoku has services momentum much weaker than Markit.

Last I present the METI sector indexes. As a set, they are up to date through June. Nearly all the other indexes mentioned above are weaker or much weaker in August than they were in June, making June a clearly behind-the-times reading. The METI industry gauge is available through July; despite rampant weakness in the other gauges, it managed to increase from its June level. That is simply odd.

We can perform the same ranking calculations on the LEI (leading economic index). Doing that gives us an LEI level ranking in its bottom 12% with momentum in its bottom 11 percentile. The LEI agrees with the economy watchers survey.

Do sector surveys speak with forked tongue or tell the truth?

The table below presents rankings of some well-known traditional indicators in a slightly broader timeline (the economy watchers index is included in this longer time line as a control). The queue (or rank) standings applied to growth rates in the table are actually close to the economy watchers results. Employment has a relatively higher standing, but then that is normal since employment is a current to lagging variable. Retail sales, industrial production and exports have year-over-year growth rates that all rank in the lower one-quarter of their respective historic ranges. On balance, the METI indexes seem out of touch with reality. And Japan's economy looks like it might be headed for trouble. And even though a lot is being blamed on the global trade war, exports are not the weakest metric here. That dubious distinction goes to retail sales.


import { _finally } from '../../operator/finally';
declare module '../../Observable' {
    interface Observable<T> {
        finally: typeof _finally;
        _finally: typeof _finally;
    }
}


If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You will be required to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Comment

Holy crap Wayne!!! What ON EARTH makes ANY hand plane worth that kind of money!?!?!??!

I ended up using my small plane and then finishing it off with a sanding block.
It worked out great! I feel a lot more comfortable with it now too.
It's nice when you get something to work the way it should.

So in the real world, what is a good, quality hand plane to get? How much should i expect to pay for a good plane?

Thanks for everyone's input on this.
Sorry L. I chose not to use the chainsaw...

Yoroshiku onegai shimasu

Comment

The value is perceived by collectors because it is made by Holtey (awesome plane maker but there are others just as good IMHO)
That style of plane (Holt, Spires, Norris) is kinda like a porsche / pinto comparison.
For the rest of us pinto drivers there are several choices. Most of my planes are vintage Stanley off Ebay (the older ones are way better than the newer ones) and cost between $30 and $100. The $100 was for an 1899 (year) Stanley #7 jointer in excellent condition.
In general the less you spend the more work that will be required to get it back into user shape (can me MANY hours) but if you enjoy that type of task (I did) it is a good cheap way to get really good tools. There are also a few private guys out there that sell refurbed hand planes or will refurb your ebay plane for reasonable $.
The next step up are the Lee Valley and Lie Nielsen planes.
These will set you back between $100 for a block and $400 for a Lie Nielsen #7 Jointer but they are excellent quality and only require a minor amount of blade touch up to be ready for work.
Both groups attend most of the wood shows across the country, since both companies have a slightly different feel to their planes it may be best to go an play with them before you drop the big bucks, both companies offer deals at the wood shows as well

Comment

I don't think i want to start out with a $400 plane. Even though i know i would be doing the right thing by buying one, i just can't fork out that much money for a hand plane (not yet anyway).
Once i get some practice under my belt i'm sure i will feel different about that.
I've seen some of the planes offered up on ebay but i'm never sure if i'd be getting a good one or not.
I'll keep looking though.


Aditya may shine like the Sun between September 2017 to October 2018!

Though he will be doing some projects currently, the real Aditya will still be far from his best!
Aditya Roy Kapur makes for a very unusual and offbeat actor, and makes for a great ambassador for an unconventional brand of acting. Starting his career as a Video Jockey on Channel V, Aditya's destiny pulled him into the mesmerising world of films, and he then made his film debut in the Ajay Devgn and Salman Khan starrer – London Dreams. His second film was Action Replayy, in which he played a quirky role as the son of Akshay Kumar. Though, the initial phase in Bollywood didn't turn out to be a memorable joyride, Aditya didn't lose hope. He was then seen in the intense drama film – Guzaarish, starring Aishwarya Rai Bachchan and Hrithik Roshan ,wherein he got considerable critical acclaim for his performance. In 2013 came the turning point of his life, when his role of Rahul Jaikar in Aashiqui 2 and the chemistry with co-star Shraddha Kapoor was highly appreciated and when the film turned out to be a spectacular blockbuster! The joyride, in its actual sense had then begun for Aditya, as then the real talent in him had got the right exposure and the platform! He is now ranked amongst some of the most talented actors of Bollywood and he will be next seen in Fitoor, opposite the scintillating Katrina! When exactly will we see Aditya as a prominent and established actor? Let's find out with the help of the stars...

Aditya Roy Kapoor

Date of Birth: 16th November, 1985
Time of Birth: Unknown
Place of Birth: Mumbai, Maharashtra, India

SOLAR CHART

Where is He?

Creative by birth!
With Venus and Sun in Libra, Aditya is a good actor. He is expressive and does have potential to make it big in the film industry!

Film-career Not a Cakewalk, though...
However, Venus conjunct Ketu indicates lot of struggle in the film industry. The path may not be an easy one. His struggle would be as big as that of the screen-size! Venus in Libra makes him highly creative. His confidence level needs to be boosted as Sun is in Libra, which happens to be his Sign of debilitation and additionally, he is afflicted by Ketu, which acts like a restrictive force. He may suffer from inferiority complex or some prestige issues.(this may not be apparent in his behaviour, though)

Wrong decisions, causing much problems?
Jupiter is debilitated, so he is a person who may take wrong decisions too often in life or he may take decisions that may be unwise or those that may be triggered by impulse. This may also be reason behind somes setbacks in his career.

Slow but steady progress...
Saturn with Mercury indicates slow, but steady career progress, even on the small-screen level.

What is happening in his life?

Saturn causing much stress!
Although his Moon's exact degree can't be ascertained owing to the absence of credible birth-time, but the Moon didn't change the sign within 24 hours of his birth, so we can say that his Moon Sign is Sagittarius. He is under the influence of Shani's Saade Saati till 17th January, 2023. During this Saade Saati period, he will have to struggle a lot. There will be situations that will create a lot of frustration and things may not work out exactly as per his plans. He will have to be very careful while making commitments. Nevertheless, first phase of Saade Saati ruling till 26th January, 2017, can be Laxmi Daayak (financially beneficial) for him, so he may earn well during this phase as compared to the period that will be in operation after that (after 26th January 2017).

Where is his career heading to?

Watch out for the favourable dates...
He is likely to see ups and downs in his career till Shani's (Saturn's) Saade Saati ends on 17th January, 2023. However, a good breakthrough point is envisaged during Jupiter's transit through the Sign of Libra between September 2017 and October 2018. During this period, Aditya is going to rise and shine like 'Aditya' (the Sun) himself! And, he may come up with a wonderful project which will take him to the next level on the career front.

On the whole, his case appears to be a slightly jinxed one, but he shall gradually build a strong base for himself!


Galectins and other endogenous carbohydrate-binding proteins of animal bladder.
Defects in the glycocalyx of the bladder epithelium may be related to the development of bladder diseases including interstitial cystitis which is a chronic bladder disease of unknown etiology. Indirect evidence has implicated alterations in the bladder epithelial glycoconjugates in interstitial cystitis and vesicaler instillation of glycosaminoglycans is promoted as treatments. However, information on the nature of the glycoconjugates of the bladder epithelium and lectins that may interact with the exogenous instilled glycoconjugates is very limited. We have examined the endogenous lectin associated with bladder epithelium by immunohistochemistry using biotinylated neoglycoconjugates. The strong calcium-independent binding of beta-D-galactose probe suggested the presence of galectins in rabbit and human bladder. Extracts of rabbit bladder organ cultures metabolically labeled with [14C]-amino acids were subjected to affinity chromatography on immobilized lactose and the specifically bound material eluted with 0.2 M lactose. SDS-PAGE of the recovered proteins revealed a major band of approximately 30 kDa and a minor band of 21 kDa. Polymerase chain reaction and northern blot analysis showed that both galectin-3 and galectin-4 are expressed in rabbit bladder. Since galectin-3 from rabbit had been previously cloned, we cloned and sequenced galectin-4 from rabbit bladder. The deduced full length sequence of 328 amino acids revealed four distinct regions: a N-terminal peptide of 19 residues, two carbohydrate recognition domains of 130 residues each, and a linker region of 49 residues. Comparison of the rabbit galectin-4 sequence with those of human, pig, rat, and mouse revealed two invariant peptide motifs that are proposed as signature sequences for identifying related galectins.


Q:

If $A\succeq{B}\succeq0$ and $C\succeq{D}\succeq0$ then $A \circ C\succeq B \circ D \succeq0$

Let $A, B,C,D \in M_n$ are Hermitian.
We define

$A \circ B = [{a_{ij}}{b_{ij}}]$.
$A\succeq{B}$ Iff $A-B$ positive semidefinite.

suppose $A\succeq{B}\succeq0$ and $C\succeq{D}\succeq0$.
Why does $A \circ C\succeq B \circ D \succeq0$

A:

Just apply Schur product theorem to $A\circ C=(A-B)\circ C+B\circ (C-D)+B\circ D$.


/*
**  GSC-18128-1, "Core Flight Executive Version 6.7"
**
**  Copyright (c) 2006-2019 United States Government as represented by
**  the Administrator of the National Aeronautics and Space Administration.
**  All Rights Reserved.
**
**  Licensed under the Apache License, Version 2.0 (the "License");
**  you may not use this file except in compliance with the License.
**  You may obtain a copy of the License at
**
**    http://www.apache.org/licenses/LICENSE-2.0
**
**  Unless required by applicable law or agreed to in writing, software
**  distributed under the License is distributed on an "AS IS" BASIS,
**  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
**  See the License for the specific language governing permissions and
**  limitations under the License.
*/

/*
** File: ut_time_stubs.c
**
** Purpose:
** Unit test stubs for Time routines
**
** Notes:
** Minimal work is done, only what is required for unit testing
**
*/

/*
** Includes
*/
#include <stdio.h>
#include <string.h>
#include "cfe_time.h"
#include "utstubs.h"

/*
** Functions
*/
/*****************************************************************************/
/**
** \brief CFE_TIME_EarlyInit stub function
**
** \par Description
**        This function is used to mimic the response of the cFE TIME function
**        CFE_TIME_EarlyInit.  It always returns OS_SUCCESS when called.
**
** \par Assumptions, External Events, and Notes:
**        None
**
** \returns
**        Returns OS_SUCCESS.
**
******************************************************************************/
int32 CFE_TIME_EarlyInit(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_EarlyInit);

    return status;
}

/*****************************************************************************/
/**
** \brief CFE_TIME_TaskMain stub function
**
** \par Description
**        This function is used as a placeholder for the cFE TIME function
**        CFE_TIME_TaskMain.
**
** \par Assumptions, External Events, and Notes:
**        None
**
** \returns
**        This function does not return a value.
**
******************************************************************************/
void CFE_TIME_TaskMain(void)
{
    UT_DEFAULT_IMPL(CFE_TIME_TaskMain);
}

/*****************************************************************************/
/**
** \brief CFE_TIME_Print stub function
**
** \par Description
**        This function is used to mimic the response of the cFE TIME function
**        CFE_TIME_Print.
**
** \par Assumptions, External Events, and Notes:
**        None
**
** \returns
**        This function does not return a value.
**
******************************************************************************/
void CFE_TIME_Print(char *PrintBuffer, CFE_TIME_SysTime_t TimeToPrint)
{
    UT_Stub_RegisterContext(UT_KEY(CFE_TIME_Print), PrintBuffer);
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Print), TimeToPrint);

    snprintf(PrintBuffer,
             CFE_TIME_PRINTED_STRING_SIZE,
             "UT %u.%u -",
             (unsigned int)TimeToPrint.Seconds,
             (unsigned int)TimeToPrint.Subseconds);

    UT_DEFAULT_IMPL(CFE_TIME_Print);
}

/*****************************************************************************/
/**
** \brief CFE_TIME_GetTime stub function
**
** \par Description
**        This function is used to mimic the response of the cFE TIME function
**        CFE_TIME_GetTime.  It increments the time structure values each time
**        it's called to provide a non-static time value for the unit tests.
**
** \par Assumptions, External Events, and Notes:
**        None
**
** \returns
**        Returns the time structure.
**
******************************************************************************/
CFE_TIME_SysTime_t CFE_TIME_GetTime(void)
{
    static CFE_TIME_SysTime_t SimTime = { 0 };
    CFE_TIME_SysTime_t Result = { 0 };
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetTime);

    if (status >= 0)
    {
        if (UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_GetTime), (uint8*)&Result, sizeof(Result)) < sizeof(Result))
        {
            SimTime.Seconds++;
            SimTime.Subseconds++;
            Result = SimTime;
        }
    }

    return Result;
}

/*****************************************************************************/
/**
** \brief CFE_TIME_CleanUpApp stub function
**
** \par Description
**        This function is used to mimic the response of the cFE TIME function
**        CFE_TIME_CleanUpApp.  The user can adjust the response by setting
**        the values in the TIMECleanUpRtn structure prior to this function
**        being called.  If the value TIMECleanUpRtn.count is greater than
**        zero then the counter is decremented; if it then equals zero the
**        return value is set to the user-defined value TIMECleanUpRtn.value.
**        A positive value, indicating success, is returned otherwise.
**
** \par Assumptions, External Events, and Notes:
**        None
**
** \returns
**        Returns either a user-defined status flag or CFE_SUCCESS.
**
******************************************************************************/
int32 CFE_TIME_CleanUpApp(uint32 AppId)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_CleanUpApp);

    return status;
}

CFE_TIME_Compare_t  CFE_TIME_Compare(CFE_TIME_SysTime_t TimeA, CFE_TIME_SysTime_t TimeB)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Compare), TimeA);
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Compare), TimeB);

    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_Compare);

    return (CFE_TIME_Compare_t) status;
}

CFE_TIME_SysTime_t  CFE_TIME_Add(CFE_TIME_SysTime_t Time1, CFE_TIME_SysTime_t Time2)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Add), Time1);
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Add), Time2);

    static CFE_TIME_SysTime_t SimTime = { 0 };
    CFE_TIME_SysTime_t Result = { 0 };
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_Add);

    if (status >= 0)
    {
        if (UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_Add), (uint8*)&Result, sizeof(Result)) < sizeof(Result))
        {
            SimTime.Seconds++;
            SimTime.Subseconds++;
            Result = SimTime;
        }
    }

    return Result;
}

uint32  CFE_TIME_Sub2MicroSecs(uint32 SubSeconds)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Sub2MicroSecs), SubSeconds);

    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_Sub2MicroSecs);

    return (uint32) status;
}

int32 CFE_TIME_UnregisterSynchCallback(CFE_TIME_SynchCallbackPtr_t CallbackFuncPtr)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_UnregisterSynchCallback), CallbackFuncPtr);

    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_UnregisterSynchCallback);

    return status;
}

void CFE_TIME_ExternalGPS(CFE_TIME_SysTime_t NewTime, int16 NewLeaps)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_ExternalGPS), NewTime);
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_ExternalGPS), NewLeaps);

    UT_DEFAULT_IMPL(CFE_TIME_ExternalGPS);
}

void CFE_TIME_ExternalMET(CFE_TIME_SysTime_t NewMET)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_ExternalMET), NewMET);

    UT_DEFAULT_IMPL(CFE_TIME_ExternalMET);
}

void CFE_TIME_ExternalTime(CFE_TIME_SysTime_t NewTime)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_ExternalTime), NewTime);

    UT_DEFAULT_IMPL(CFE_TIME_ExternalTime);
}

void CFE_TIME_ExternalTone(void)
{
    UT_DEFAULT_IMPL(CFE_TIME_ExternalTone);
}

uint16 CFE_TIME_GetClockInfo(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetClockInfo);

    return status;
}

CFE_TIME_ClockState_Enum_t CFE_TIME_GetClockState(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetClockState);

    return status;
}

int16 CFE_TIME_GetLeapSeconds(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetLeapSeconds);

    return status;
}

CFE_TIME_SysTime_t CFE_TIME_GetMET(void)
{
    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_GetMET);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_GetMET), &Result, sizeof(Result));
    }

    return Result;
}

uint32 CFE_TIME_GetMETseconds(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetMETseconds);

    return status;
}

uint32 CFE_TIME_GetMETsubsecs(void)
{
    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_GetMETsubsecs);

    return status;
}

CFE_TIME_SysTime_t CFE_TIME_GetSTCF(void)
{
    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_GetSTCF);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_GetSTCF), &Result, sizeof(Result));
    }

    return Result;
}

CFE_TIME_SysTime_t CFE_TIME_GetTAI(void)
{
    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_GetTAI);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_GetTAI), &Result, sizeof(Result));
    }

    return Result;
}

CFE_TIME_SysTime_t CFE_TIME_GetUTC(void)
{
    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_GetUTC);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_GetUTC), &Result, sizeof(Result));
    }

    return Result;
}

CFE_TIME_SysTime_t CFE_TIME_MET2SCTime(CFE_TIME_SysTime_t METTime)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_MET2SCTime), METTime);

    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_MET2SCTime);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_MET2SCTime), &Result, sizeof(Result));
    }

    return Result;
}

uint32 CFE_TIME_Micro2SubSecs(uint32 MicroSeconds)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Micro2SubSecs), MicroSeconds);

    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_Micro2SubSecs);

    return status;
}

int32 CFE_TIME_RegisterSynchCallback(CFE_TIME_SynchCallbackPtr_t CallbackFuncPtr)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_RegisterSynchCallback), CallbackFuncPtr);

    int32 status;

    status = UT_DEFAULT_IMPL(CFE_TIME_RegisterSynchCallback);

    return status;
}

CFE_TIME_SysTime_t CFE_TIME_Subtract(CFE_TIME_SysTime_t Time1, CFE_TIME_SysTime_t Time2)
{
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Subtract), Time1);
    UT_Stub_RegisterContextGenericArg(UT_KEY(CFE_TIME_Subtract), Time2);

    int32 status;
    CFE_TIME_SysTime_t Result = { 0 };

    status = UT_DEFAULT_IMPL(CFE_TIME_Subtract);
    if (status == 0)
    {
        UT_Stub_CopyToLocal(UT_KEY(CFE_TIME_Subtract), &Result, sizeof(Result));
    }

    return Result;
}


Q:

Robolectric not using ShadowWebView as the super class of a class that extends WebView. MustOverrideException instead

I'm attempting to get Robolectric 2.1 working with my project and getting a MustOverrideException when my subclass of WebView attempts to call setDatabasePath on it's WebSettings. I have a custom Application class that attempts to create an instance of a subclass of WebView in onCreate. As part of that WebView's constructor, it attempts to set the database path.
I would have thought that since getSettings was being called from WebView, that the call would have really hit ShadowWebView which is supposed to return a TestWebSettings object which doesn't throw those exceptions. Instead, it seems to just be calling the normal WebSettings.getSettings and returning something that doesn't have those methods implemented. I've attempted using @Config(shadows = ShadowWebView.class) for my test but with no change. I've attempted to create a custom Shadow of my specialized web view and apply that to the test, but it still calls the regular custom class. Here's the exception I see when I attempt to run my tests:
java.lang.RuntimeException: android.webkit.MustOverrideException: abstract function called: must be overriden!
    at org.robolectric.RobolectricTestRunner$2.evaluate(RobolectricTestRunner.java:231)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
    at org.robolectric.RobolectricTestRunner$1.evaluate(RobolectricTestRunner.java:177)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.runTestClass(JUnitTestClassExecuter.java:80)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.execute(JUnitTestClassExecuter.java:47)
    at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassProcessor.processTestClass(JUnitTestClassProcessor.java:69)
    at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:49)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
    at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.messaging.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
    at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
    at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:103)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
    at org.gradle.messaging.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.messaging.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:355)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:680)
Caused by: android.webkit.MustOverrideException: abstract function called: must be overriden!
    at android.webkit.WebSettings.setDatabasePath(WebSettings.java:932)
    at com.example.android.jsbridge.ExWebView.init(ExWebView.java:237)
    at com.example.android.jsbridge.ExWebView.<init>(ExWebView.java:187)
    at com.example.android.jsbridge.ExWebView.getInstance(ExWebView.java:192)
    at com.example.android.ExApplication.onCreate(ExApplication.java:88)
    at org.robolectric.internal.ParallelUniverse.setUpApplicationState(ParallelUniverse.java:146)
    at org.robolectric.RobolectricTestRunner.setUpApplicationState(RobolectricTestRunner.java:387)
    at org.robolectric.RobolectricTestRunner$2.evaluate(RobolectricTestRunner.java:227)

A:

I liked Jearil's answer, but not having to wait for a new release is even better. I extended ShadowWebView and TestWebSettings to add the method that wasn't implemented.
ExtendedShadowWebView.java
@Implements(value = WebView.class, inheritImplementationMethods = true)
public class ExtendedShadowWebView extends ShadowWebView{
private WebSettings webSettings = new ExtendedTestWebSettings();
  @Implementation
  public WebSettings getSettings() {
    return webSettings;
  }
}

ExtendedTestWebSettings.java
public class ExtendedTestWebSettings extends TestWebSettings {
      @Implementation
      public void setDefaultFontSize(int fontSize) {
           // This was the method I needed, replace with your setDatabasePath
      }
}

MyActivityTest.java
@RunWith(RobolectricTestRunner.class)
@Config(manifest = TestUtility.ANDROID_MANIFEST_XML,shadows=ExtendedShadowWebView.class)
public class MyActivityTest {


Bernie Sanders supporter Manny Rivera is a U.S. Navy veteran who is tackling a major problem with the Democratic primary election in Puerto Rico. After it was announced Friday that less than one-third of the previously establish polling locations would be open for the presidential primary on June 5, Rivera, understanding that transportation will be limited and public transit unavailable on primary day, devised a strategy to help ensure that Bernie Sanders gets a fair crack at earning delegates in Puerto Rico.

Anyone born in Puerto Rico on or after January 13, 1941, are citizens of the United States as a birthright, but they can’t vote for the president in the general election, because Puerto Rico does not have statehood. In April of 2000, Puerto Ricans almost won their right to vote in the general elections when the U.S. District Court for the District of Puerto Rico declared that U.S. citizens residing in Puerto Rico had a right to vote. In 2000, Al Gore was running against George Bush in a highly-controversial election. Puerto Ricans in Florida generally lean towards the Democratic party.

Socially conservative, Puerto Ricans are similar to the Democrats of the Midwest in political beliefs, according to numerous pundits. U.S. citizens living in Puerto Rico, they claim, could have altered the 2000 election outcome. The Puerto Rico legislature authorized a presidential election, and everyone was set to vote, until the right was revoked by a higher court and the election was cancelled, The Green Papers reported. Consequently, U.S. citizens living in Puerto Rico have only the primaries to have their vote count, since both major parties allow Puerto Ricans to vote in their election selecting presidential nominees.

Manny Rivera intends to make sure that voters aren’t disenfranchised from the only chance they will get this election season to vote for a presidential candidate in the wake of the significant polling location cut.

“My name is Manny a 33 years old Navy Veteran and Bernie Sanders supporter. I currently living in Puerto Rico and I’m volunteering with the Bernie Sanders’ Campaign here in Puerto Rico,” Rivera wrote. “The Voting Poll locations in Puerto Rico have been reduced by the Democratic Party from 1615 to 455! We are a few days away from the big day. No public transportation will be offered to Puerto Ricans on Sunday, June 5th Please help us to provide transportation to people in need.”

Rivera’s solution to the potential disenfranchisement of so many Democratic voters on the island?

Bernie Uber.

Puerto Rico has eight voting districts, and Rivera has declared that each district will have four drivers available all day to shuttle voters to and from their polling locations. A GoFundMe page is collecting donations for people who want to help cover the tab so that Puerto Ricans can exercise their only chance to have any say in the 2016 presidential election. The fundraiser has amassed over $3,000 in donations as of late Friday morning and almost reached its goal. Earlier in the morning, it was at just over $500.

“You guys are gonna make this happen and you will remember this year for all your years to come!! VIVA LA REVOLUCION,” wrote Bernie Sanders supporter Suz Denissov.

Public transport is nonexistent in some parts of Puerto Rico, and in other areas, according to The Costa Rica Star, it is inefficient. On the Sunday of the primary, public transportation will be limited to essentially taxis and Uber, reports indicate. In perfect timing for the Bernie Uber project, the California-based transportation networking firm recently began operating in Puerto Rico after gaining legislative approval.

While Rivera works to get voters transportation to their polling locations, the Sanders campaign has been reaching out to voters with a new political ad. The ad highlights Sanders’ opposition to “vulture funds” and “the insider deal,” the narrator says in Spanish.

“Why? It could lead to slashed pensions, more unemployment, closed hospitals and school cuts.”

Bernie Sanders will introduce his own legislation to help the island. Sanders’ bill will help boost financial recovery for Puerto Ricans and Medicaid and Medicare payments to the island. It will also designate $10.8 billion towards the island’s crumbling infrastructure, which would also create jobs, Star Herald reported. Sanders’ commitment to infrastructure, taking care of the poor, and economic development is famed as the reasons that Sanders, while mayor, was able to revive Burlington, Vermont, into a thriving city.

“We have got to make it clear to these vulture funds that they cannot have it all,” Sanders said. “The solution to Puerto Rico’s debt crisis is not more austerity. The solution is more economic development, more jobs and less poverty.”

Puerto Rico has 60 delegates available, but a lack of pre-election polls makes it incredibly difficult to know whether Clinton or Sanders is ahead in the hearts and minds of Puerto Ricans.

Roberto Prats, the leader of the Democratic party in Puerto Rico, reportedly says that the decision to eliminate the majority of polling locations was the result of limited resources due to local elections also taking place, Bustle reported.

[Image via Facebook]


/*
 * Copyright (C) 2008 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import java.io.File;
import java.io.IOException;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.Enumeration;

/**
 * DexFile tests (Dalvik-specific).
 */
public class Main {
    private static final String CLASS_PATH = System.getenv("DEX_LOCATION") + "/071-dexfile-ex.jar";
    private static final String ODEX_DIR = System.getenv("DEX_LOCATION");
    private static final String ODEX_ALT = "/tmp";
    private static final String LIB_DIR = "/nowhere/nothing/";

    private static final String getOdexDir() {
        return new File(ODEX_DIR).isDirectory() ? ODEX_DIR : ODEX_ALT;
    }

    /**
     * Prep the environment then run the test.
     */
    public static void main(String[] args) throws Exception {
        /*
         * Create a sub-process to see if the ProcessManager wait
         * interferes with the dexopt invocation wait.
         *
         * /dev/random never hits EOF, so we're sure that we'll still
         * be waiting for the process to complete.  On the device it
         * stops pretty quickly (which means the child won't be
         * spinning).
         */
        ProcessBuilder pb = new ProcessBuilder("cat", "/dev/random");
        Process p = pb.start();

        testDexClassLoader();
        testDexFile();

        // shouldn't be necessary, but it's good to be tidy
        p.destroy();
        // let the ProcessManager's daemon thread finish before we shut down
        // (avoids the occasional segmentation fault)
        Thread.sleep(500);
        System.out.println("done");
    }

    /**
     * Create a class loader, explicitly specifying the source DEX and
     * the location for the optimized DEX.
     */
    private static void testDexClassLoader() throws Exception {
        ClassLoader dexClassLoader = getDexClassLoader();
        Class<?> Another = dexClassLoader.loadClass("Another");
        Object another = Another.newInstance();
        // not expected to work; just exercises the call
        dexClassLoader.getResource("nonexistent");
    }

    /*
     * Create an instance of DexClassLoader.  The test harness doesn't
     * have visibility into dalvik.system.*, so we do this through
     * reflection.
     */
    private static ClassLoader getDexClassLoader() throws Exception {
        ClassLoader classLoader = Main.class.getClassLoader();
        Class<?> DexClassLoader = classLoader.loadClass("dalvik.system.DexClassLoader");
        Constructor<?> DexClassLoader_init = DexClassLoader.getConstructor(String.class,
                                                                           String.class,
                                                                           String.class,
                                                                           ClassLoader.class);
        // create an instance, using the path we found
        return (ClassLoader) DexClassLoader_init.newInstance(CLASS_PATH,
                                                             getOdexDir(),
                                                             LIB_DIR,
                                                             classLoader);
    }

    private static void testDexFile() throws Exception {
        ClassLoader classLoader = Main.class.getClassLoader();
        Class<?> DexFile = classLoader.loadClass("dalvik.system.DexFile");
        Method DexFile_loadDex = DexFile.getMethod("loadDex",
                                                   String.class,
                                                   String.class,
                                                   Integer.TYPE);
        Method DexFile_entries = DexFile.getMethod("entries");
        Object dexFile = DexFile_loadDex.invoke(null, CLASS_PATH, null, 0);
        Enumeration<String> e = (Enumeration<String>) DexFile_entries.invoke(dexFile);
        while (e.hasMoreElements()) {
            String className = e.nextElement();
            System.out.println(className);
        }
    }
}


No. You are not punching above your weight.

So, had a friend elsewhere trigger something earlier when she said she was "punching above her weight".

She's not, she's gorgeous. But that's also not why she's not punching above her weight. She's not because it doesn't matter what people external from her and her partner think, and the only person that matters when it comes to whether they want to be with her, is her partner.

It's not whether society says someone needs to be of a certain "level" of hotness or they are beneath your standard. Who tells you what your standard is? I bet you like something not "standard" about a partner. Some like larger men or women, some like tall thin partners, long hair, shaggy beards.. I actually like a slight overbite, no clue why, but I like it.

The point is, if you like what society would view as a "flaw" (and let's be honest, those "flaws" make us all unique), then why can't people want you because of yours?

You are special, you're uniquely you, and if someone has come to you and wants to be with you, it's not "despite" these things, it's because of them. They want you because of how you are. Fat, thin, big nose, small nose, spots, freckles... and anything and everything else, they want you because you are you.

"Punching above their weight" denotes that if someone is viewed as, for arguments sake, an 8/10 on some dumb chart they can only date similar levels of people, that is putting people into the position of cattle, that you shouldn't choose someone you want to be with, but with someone who you "deserve" to be with... choice is taken out of it, and that shouldn't happen.

Also, hearing that you are punching above your weight from others will, as time goes on, ruin someone's self confidence. If you were constantly told "lucky you, your partner could do so much better but they stick around" you will start to think they will leave, start to believe you are ugly and worthless, and eventually, sooner or later, the relationship is likely to fall apart due to it.

So no, you are not punching above your weight, you are exactly where you need to be, and your partner wants you. And if you don't have a partner, that's fine too, because you will find someone who likes you for who you are, and what you look like. In fact, they may well be looking at you right now thinking you are out of their league, and are too ashamed to approach you.

And if you approach someone and they say no, that's fine, they have different things they look for in a person, and this is fine too. You are great as you are.


A tape cartridge having a leader block provided therein has been used for some magnetic recording and reproducing apparatuses which are provided as a peripheral equipment for a computer to back up information and are adapted to use a tape cartridge having a magnetic tape wound on a single reel in the tape cartridge and guided along a predetermined guide path to a winding reel in the apparatus. Such a tape cartridge has a leader block provided at a leading end of the magnetic tape while the apparatus has a drawing pin member associated with the leader block.
Such a drawing pin member is disclosed in Japanese Patent Application Publication No. 13,097/1984, for example. In this prior art, the drawing pin member is in the form of a cylinder and is formed of a relatively thinner cylindrical portion and an enlarged portion provided at the leading end of the thinner cylindrical portion. The drawing pin member is engaged with a slot in the leader block including a recess provided corresponding to the enlarged portion.
In order to bring the tape cartridge to an operative position, it is inserted into a cartridge holder at a loading/unloading position, which causes the slot in the leader block to be engaged with the cylindrical portion of the drawing pin member. Then, the tape cartridge is pushed down to the operative position, which causes the recess of the slot to be engaged with the enlarged portion of the drawing pin member so as to connect the leader block to the drawing pin member.
In such an apparatus as constructed to manually move the tape cartridge to the operative position after it is inserted into the cartridge holder at its loading/unloading position, the tape cartridge tends to be inserted into the cartridge holder while the cartridge holder is being pushed down toward the operative position. In this case, the enlarged portion of the drawing pin member engages the slot in the leader block, but the drawing pin member is never inserted into the slot because the enlarged portion has a size larger than that of the slot and therefore is pushed in a direction in which the tape cartridge is inserted.
In general, the drawing pin member is driven by an electric motor, but if no worm gears are provided in a reduction mechansim for reducing the revolution speed of the electric motor, then the drawing pin member is moved by the pushing force thereof. In this condition, the leader block can be no longer engaged with the drawing pin member. Thus, the electric source to the motor is required to be interrupted in order to return the original condition of the drawing pin member.


J. Michael Riva

J. Michael Riva (June 28, 1948 – June 7, 2012) was an American production designer.

Early and personal life
John Michael Riva was born in Manhattan, to William Riva, a Broadway set designer, and Maria Elisabeth Sieber, a German-born actress and the daughter of Marlene Dietrich. Riva had three brothers (John Peter, John Paul and John David). Riva attended the prep school Institute Le Rosey in Switzerland for 6 years before attending UCLA. He and his wife Wendy Riva had two sons Daniel and Adam. He had a son by a previous marriage, John Michael (Mikey) Riva Jr. and an adopted son Jean-Paul Riva from his long relationship with Jamie Lee Curtis.

Career
Riva had a long and prestigious career as an art director and production designer on numerous films, including the 1985 film The Color Purple, for which he was nominated for the Academy Award for Best Art Direction. Other credits include The Goonies (1985), Lethal Weapon (1987), A Few Good Men (1992), Spider-Man 3 (2007), Iron Man (2008) and Iron Man 2 (2010).

His final films, The Amazing Spider-Man and Django Unchained, were released posthumously. He was the production designer for the opening ceremony of the 1996 Summer Olympics in Atlanta, as well as for the 74th and 79th Academy Awards in 2002 and 2007, respectively. He won a Primetime Emmy Award for his work on the latter.

Death
Riva suffered a stroke on June 1, 2012, in New Orleans, Louisiana, during production of Django Unchained. He died in a hospital there on June 7, 2012, at age 63. Django director Quentin Tarantino commented, "Michael became a dear friend on this picture, as well as a magnificent, talented colleague."

Filmography

Films
All as production designer unless stated otherwise

Television
All as production designer unless stated otherwise

References
http://vimeo.com/3559547

External links

Category:1948 births
Category:2012 deaths
Category:People from Manhattan
Category:American production designers
Category:American people of German descent
Category:Disease-related deaths in Louisiana
Category:Emmy Award winners


Chelsea reign nears end for Rafael Benítez after Europa League success - video

Outgoing Chelsea manager Rafael Benítez says he will be sad to leave Chelsea after a turbulent six months in charge, which culminated in
winning the Europa League final against Benfica 2-1 on Wednesday. The victory and a top-four finish vindicates Benítez, who was criticised over his team selection by Chelsea fans throughout the season. Benítez's final game in charge is against Everton on Sunday

Source: Reuters

Thu 16 May 2013 04.11 EDT
First published on Thu 16 May 2013 04.11 EDT


Sayyidi Habib `Umar bin Hafiz (may Allah protect him and benefit us by him) derives lessons to be learned from the Hijrah of Allah’s Messenger ﷺ . Extracts from a Friday khutbah.

Should you not reflect on why the Prophet ﷺ made the Hijrah? Why he bore those hardships? Why he was forced to migrate? He looked at the city of Makkah upon leaving it and said: “Allah knows that you are the most beloved of cities to me. Had not your people driven me out, I would not have left.” How can you live as a believer in him without realising what drove him to bear these hardships?

The most noble of creation in the sight of the Creator is our Master Muhammad. Allah was capable of making the life of the Master of His creation a life of ease and tranquillity. If Allah wished, the Prophet would not have suffered, he would not have had a camel’s entrails thrown on his back, he would not have been pelted with stones, he would not have been driven out of his own city, he would not have tied a stone to his stomach out of hunger and he would not have fought in battle. But Allah chose all of these things for our Prophet.

Tell me, where are you going in this life and what are your thoughts focused upon? What is the level of your understanding of Allah’s religion? Have you understood the wisdom behind your creation? If the purpose of man’s creation was to relax and experience comfort, then the most worthy of creation of experiencing that was the Prophet, the possessor of the highest rank in Allah’s sight. If you realise this, how can you then find comfort in base things? How can you be distracted by things with which the enemies of Allah distract you such that you possess no concern for the Ummah and no desire to benefit it, no desire to make sacrifices and no reliance upon Allah, no trust in Him and no certainty? Is this the life of someone who believes in and follows the Chosen One? Was he the only one who made these sacrifices, or did all those who believed in him from that first generation do the same? Allah Himself commends them in the Qur’an. They were people of steadfastness and sacrifice, strong in their reliance upon the All-Powerful, people of complete trust in His promises. They had complete faith in that which had been revealed to the Prophet. Do we find these attributes in ourselves? Do not leave this Jumu`ah without resolving to expend your efforts to emulate the foremost, the first of the Emigrants and the Helpers. You will then be one of those who follows them with excellence and you will receive what Allah has promised: As for the foremost, the first of the Emigrants and the Helpers, and those who follow them with excellence – this includes anyone who follows them in excellence up to this day and up until the Day of Judgement – Allah is pleased with them and they, too, are pleased with Him. He has prepared for them gardens under which rivers flow, in which they will abide forever. That is the supreme triumph.1

This is how your Lord addresses you. How can you then allow your lower self or the Devil to make you live in heedlessness? How can you allow year after year to pass without having any awareness, any desire to draw closer to the Most High? Do you not want to be among those mentioned in the verse? Even before the Hijrah, some of the first Muslims had been martyred, such as Sumayyah, the first martyr in Islam; some had been tortured, like Bilal; some had migrated to Abyssinia; some had been enclosed in the valley of Abu Talib for three years until they were forced to eat the leaves of trees. All of them suffered and made sacrifices. On the night of the Hijrah, Sayyiduna `Ali bin Abu Talib sacrificed himself by sleeping on the Prophet’s bed. Sayyiduna Abu Bakr was with the Prophet, sacrificing himself and his wealth. He was with him in the Cave of Thawr, not for an hour or two, but for three nights. Every night you sleep in a house on a bed. Can you not imagine how the Beloved of Allah spent his nights in that cave?

Whose body was it that lay on the rocks of the cave patiently seeking Allah’s reward? It was the body of the one who was taken above the seven heavens, beyond the Lote Tree of the Utmost Boundary. When will you understand the wisdom behind your creation? When will you realise what your belief in Muhammad dictates? If you entered a cave with a stone floor with creatures living in it and sat there for an hour or two you would know the degree of the Prophet’s striving and steadfastness. The forces which call us to evil have distracted us so that we do not reflect on these realities. A believer may live his whole life and not reflect once upon these things. He rushes to attain comfort in his life, as if He has not received any directions from Allah.

The Ansar in Madinah expressed their love for those that made the Hijrah and made sacrifices to accommodate them. None of them asked: “Why have they taken our land, our homes and our wealth?” On the contrary: They love those who have sought refuge with them; they entertain no desire in their hearts for what the latter are given, but rather prefer them over themselves, even though poverty became their lot.2 They were worthy of being praised by Allah in His Book. There are people who are deluded by the praise of the media and are prepared to make sacrifices to gain some fame. They are not interested in aiding the cause of Allah and His Messenger ﷺ and they have no realisation of what their mission is in this life. Say to them that a time will come when not a single letter will remain of the words written in those newspapers. The people who wrote those words will no longer remain, nor will those who were written about. However, the words of Allah which contain praise for those people and those who follow them in excellence will remain. Should our ambitions not be higher? Should we not seek to be mentioned in the Book of the Lord of the Mighty Throne? He praises you with those words and that praise remains until the Day of Judgement and beyond that into the Abode of Ennoblement. Our enemies have distracted us such that we have forgotten the wisdom behind our creation, but in reading and reflecting upon the Prophetic Biography in general, and the story of the Hijrah in particular, we come to realise this wisdom. We also come to know that we have a duty to make sacrifices and have complete trust and reliance in Allah.

Some Muslims believe it is impossible to convey the message of Islam to the world in this time and that power is in the hands of the disbelievers. We say to them that the events of the Hijrah are enough proof of the falsehood of this belief. Is not Allah enough for His slave?3 Look at the state of the Chosen One when he was in the cave with Abu Bakr al-Siddiq and the disbelievers were at the mouth of the cave.

Abu Bakr said:

“O Messenger of Allah, were one of them to look down at his feet he would see us.”

The Messenger of Allah replied:

“What do you think of the state of two people and Allah is their third? Do not despair, for truly Allah is with us.”

We say to those in doubt, even if our state resembles the state of the Prophet ﷺ in the cave: “What do you think of the state of a group who still possess the light of faith? Truly Allah is with them.” Allah will cause tranquillity to descend upon them: Then Allah sent down His peace upon His Messenger4 and He will assist them with troops that cannot be seen, neither with the eye, nor with the help of any form of modern technology. Allah will lower the word of the disbelievers while the Word of Allah is transcendent.5 Have no doubt in this.

—


Q:

Prove that integer $n$ exists such that $n^2$ begins with $201120122013$.

I've found a few different formulations of the problem where the given digits are different, so my guess is that it actually works for any array of integers. But I don't know how to solve it, nor where to start. I'm not that good in number theory.

A:

Consider $y = 10^k\sqrt{201120122013}$ then $\lceil y\rceil^2 < (y+1)^2 = 10^{2k} 201120122013 + 2y + 1$.  Now $2y+1<10^{k+12}$ so if $k>12$ the leading digits of $\lceil y\rceil^2$ are 201120122013.

A:

$$ 44846418141586293^2 = 2011201220130000177943626365481849 $$

A:

You're right that there's a general procedure for this - it's based on approximations of the square root.  Suppose we have a number $n^2$ of length $d$ digits - in other words, $10^{d-1}\leq n^2 \leq 10^d$.  Then saying that the first $12$ digits of $n^2$ are $201120122013$ is the same as saying that the first $12$ digits (after the decimal point) of $n^2/10^d$ are $0.201120122013$; or in other words, that $0.201120122013 \leq n^2/10^d \le 0.201120122013+10^{-12}$.
Now, let $t = \sqrt{0.201120122013} = .44846418141586\ldots$ and consider the numbers $t_i = \lceil10^i\cdot t\rceil$ - these correspond to taking longer and longer 'overestimates' of the digits of $t$; for instance, $t_1 = 5, t_2 = 45, t_3 = 449,\ldots$  Then we know that $0\leq t_i-10^i\cdot t\lt 1$ (by the definition of the ceiling function), so we know that $0\leq t_i^2-10^{2i}\cdot t^2 = (t_i-10^i\cdot t)\cdot (t_i+10^i\cdot t) \lt t_i+10^i\cdot t \lt 2(10^i\cdot t+1)$; since $t$ is less than $1$ then the last value is certainly less than $2\cdot 10^i$.  But we can divide this by $10^{2i}$ to get $t^2\leq t_i^2/10^{2i}\lt t^2+ 2\cdot10^{-i}$ - or in other words, $0.201120122013 \leq t_i^2/10^{2i} \le 0.201120122013+2\cdot10^{-i}$ - and all we have to do to get this to match up with our original inequality is to take an $i$ such that $2\cdot 10^{-i}$ is even less than $10^{-12}$ - for instance, $i=13$ will do.  This gives us an answer that $t_{13} = 4484641814159$ squares to $t_{13}^2=20112012201303326692877281$.