| DOSE: |
repeated |
oral |
Alcohol |
(liquid) |
[Erowid Note: Driving while intoxicated or tripping is dangerous and irresponsible because it endangers other people. Don't do it!]
I’m a fairly normal guy in my thirties, with a steady job, and no medical history, but it could be said I have an addictive personality. At the time of this alcohol experience, I was in the middle of losing a serious relationship, and I was stressed from some financial issues as well. In addition, I/we were drinking five or more drinks daily, and as I had recently finished building a bar in our home, there was a large quantity of alcohol readily available.
Around 10 am on a Saturday, my girlfriend went off to work, and I promptly made my first Long Island tea of the day. I had maybe nine of these on an empty stomach, and a few beers as well. If I ate anything at all, it was a small bag of chips and some nuts. I’m content being alone, so it surprises me that I decided to head out for some company.
I made it to one of my haunts—a pool hall maybe 5 miles away and was delighted to see Bill, with whom I was once very close, but hadn’t seen in a few years. I even hugged the guy (which is unlike me), and we enjoyed beers and shots of tequila, and caught-up on each others’ lives. Being Saturday afternoon, people I knew kept showing up and I kept buying shots of tequila and drinking beer. I was high for a few hours, but eventually, I got sloppy, and was apparently asked to leave. I was blacking in and out by then, and vaguely remember some sort of altercation with a bouncer (which is also unlike me). As we headed to the parking lot, this guy decided I wasn’t driving anywhere, and I did not protest as he took my keys. I was laid out across the back seat of his ancient Suburban, and there was a second passenger sitting next to the driver.
Before we move on to the weird part, let me make a few statements: 1) I live not far from where the alien spaceship crashed in 1947, and “I believe”. 2) As mentioned above, my mental state was clouded with money and girl issues, and I was possibly not far from some sort of “mental episode” anyway. 3) The interior lighting in the old truck was sub-standard. 4) I had been drinking significant quantities all day on an empty stomach.
As we hit a pothole, I was shaken back to consciousness. This is what I assessed—I know where I am and whom I’m with, but we should not be driving on a dirt road. From this angle, and with the lighting, Bill looks like some sort of alien. Oh Christ, Bill is an alien, so is that other guy, and they’re taking me out to the desert and bad things will happen there. It is imperative that I get away from these aliens right away! My plan was this—get them to pull over, lure them from the vehicle, then run back to the vehicle, and drive away fast. Therefore, I did.
At this point, the paranoia got much worse, and now it wasn’t just Bill and his friend that were aliens, but the whole city was being taken over. Then, I lost hold of the alien concept and was simply fleeing from some “evil thing”.  The only solution was to get out of town. It seemed a noble idea to rescue my girlfriend too, so I headed towards home driving insanely the whole way. When I got there, she had just recently got off the phone with some guy named Bill who related a ridiculous story about being stranded on a dirt road by a screaming lunatic, so she had gone to give him a ride and try to fill in the details. “Well, I can’t wait for her,” I thought, so I headed towards the edge of town.
Being the rational person that I am, I knew I would need supplies for this journey, so walked into a gas station, grabbed a 12 pack of Corona, 2 bottles of water, and left. The cashier tried to stop me, but I screamed something about how it was pointless to pay when this evil thing was going to wipe out the town anyway. She promptly called the police.
The vehicle I was driving was huge and white, and since it was swerving all over the road, I promptly had flashers and sirens behind me. As I failed to pull over, I soon had three or so cop cars trailing me, and in my desperation, we were soon all doing 70 mph through town. I was not running from the cops because I didn’t want to be arrested; It was because I knew they were “in on it”, and I really didn’t want to experience an alien anal probe, or whatever else they had in mind.
Eventually, I totaled the vehicle, rolling it 3 times but as I was wearing a seatbelt, and someone was watching over me, I was only cut up a little bit. At the hospital, I became obsessed with the idea that someone must have spiked one of my drinks, and insisted they check my blood and piss for drugs. I was clean except for a BAC of .28 or something. Apparently, a “Mickey” wouldn’t show-up anyway, but I’ve accepted the idea that I was just too drunk, and a little stressed.
When I related this horror story at drug and alcohol counseling, one of the ex-cons remarked, “Well, it sounds like you acted correctly if you really thought that’s what was going on.” After spending a few thousand, I got out of jail, and embraced sobriety. It’s been a couple years now, and I’m pretty sure Bill isn’t really an alien. However, when Star Trek comes on TV, I tend to change the channel; it makes me feel a little anxious.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


The aim of this project is to develop your own code for solving eigenvalue problems. The matrix to diagonalize is the same as the one we encountered in project one, a so-called tridiagonal Toeplitz matrix. This matrix has analytical eigenpairs (eigenvalues and eigenvectors) and gives us an excellent testing ground for our algorithms. In this project we will develop an eigenvalue solver based on Jacobi's method. The project will also introduce you to units tests and we will compare our results against other eigenvalue solvers (from LAPACK and/or numpy).
This project aims also at introducing to you the concept of scaling of equations. This means often either making various variables dimensionless or introducing units which are more convenient.
We will start with the two-point boundary value problem of a buckling beam or a spring fastened at both ends. This is one of the problems which has analytical solutions. Thereafter, by simply adding a new variable along the diagonal elements, we can study quantum mechanical problems. In particular, we will study the harmonic oscillator problem in three dimensions, with one or two electrons. For the latter case we can study the role of the repulsive Coulomb interaction and extract interesting physics results. For selected frequencies, this interacting two-electron problem exhibits analytical solutions, one of the few cases of an interacting system where wecan find analytical solutions. See M. Taut, Phys. Rev. A 48, 3561 (1993) for the derivation of analytical expressions for the eigenpairs..
Electrons confined in small areas in semiconductors, so-called quantum dots, form a hot research area in modern solid-state physics, with applications spanning from such diverse fields as quantum nano-medicine to the contruction of quantum gates. The article on quantum computing with quantum dots by Loss and DiVincenzo is an excellent read for those interested in this exciting topic.
We start with the following differential equation, namely $$ \gamma \frac{d^2 u(x)}{dx^2} = -F u(x), $$ where \( u(x) \) is the vertical displacement of the beam in the \( y \) direction. The beam has length \( L \), \( x\in [0,L] \) and \( F \) is a force applied at \( (L,0) \) in the direction towards the origin. The parameter \( \gamma \) is a constant defined by properties like the rigidity of the beam. We apply again so-called Dirichlet boundary conditions and set \( u(0)=u(L)=0 \).
In this specific case two of the parameters \( \gamma \), \( F \) and \( L \) are known. As an example, assume we know \( F \) and \( L \). Then the eigenvalue problem we set up below will allow us to find \( \gamma \).
We define a dimensional variable $$ \rho = \frac{x}{L}, $$ meaning that we have \( \rho \in [0,1] \). By reordering the equation as $$ \frac{d^2 u(\rho)}{d\rho^2} = -\frac{FL^2}{\gamma} u(\rho)=-\lambda u(\rho), $$ with \( \lambda= FL^2/\gamma \) we have an equation that when discretized, becomes an eigenvalue problem. We use the same expression for the second derivative of a function \( u \) as we did in project 1, namely $$ \begin{equation} u''=\frac{u(\rho+h) -2u(\rho) +u(\rho-h)}{h^2} +O(h^2), \tag{1} \end{equation} $$ where \( h \) is our step. Next we define minimum and maximum values for the variable \( \rho \), \( \rho_{\mathrm{min}}=0 \) and \( \rho_{\mathrm{max}}=1 \), respectively. With a given number of mesh points, \( N \), we define the step length \( h \) as, with \( \rho_{\mathrm{min}}=\rho_0 \) and \( \rho_{\mathrm{max}}=\rho_N \), $$ \begin{equation*} h=\frac{\rho_N-\rho_0 }{N}. \end{equation*} $$ The value of \( \rho \) at a point \( i \) is then $$ \rho_i= \rho_0 + ih \hspace{1cm} i=1,2,\dots , N. $$ We can rewrite the differential equation for a value \( \rho_i \) as $$ -\frac{u(\rho_i+h) -2u(\rho_i) +u(\rho_i-h)}{h^2} = \lambda u(\rho_i), $$ or in a more compact way as $$ -\frac{u_{i+1} -2u_i +u_{i-1} }{h^2} = \lambda u_i. $$ Following our approach from project 1, we can rewrite this equation in a more a general form, but now as an eigenvalue problem, that is $$ \begin{equation} \begin{bmatrix} d& a & 0 & 0 & \dots &0 & 0 \\ a & d & a & 0 & \dots &0 &0 \\ 0 & a & d & a &0 &\dots & 0\\ \dots & \dots & \dots & \dots &\dots &\dots & \dots\\ 0 & \dots & \dots & \dots &a &d & a\\ 0 & \dots & \dots & \dots &\dots &a & d\end{bmatrix} \begin{bmatrix} u_1 \\ u_2 \\ u_3 \\ \dots \\ u_{N-2} \\ u_{N-1}\end{bmatrix} = \lambda \begin{bmatrix} u_1 \\ u_2 \\ u_3 \\ \dots \\ u_{N-2} \\ u_{N-1}\end{bmatrix} . \tag{2} \end{equation} $$ As in project 1, we have not included the endpoints \( u_0 \) and \( u_N \). We have defined \( d=2/h^2 \) and the non-diagonal ones as \( a=-1/h^2 \). This eigenvalue problem has analytical eigenpairs, with eigenvalues given as $$ \lambda_j = d+2a\cos{(\frac{j\pi}{N+1})} \hspace{0.1cm} j=1,2,\dots N. $$
Your task now is to write a function which implements Jacobi's rotation algorithm (see Lecture notes chapter 7) in order to solve Eq. (2). However, the first simple check is to set up the matrix to diagonalize for a given \( N \) and use either armadillo's or numpy's functions for diagonalizing a matrix. You can then check that you obtain the analytical eigenvalues.
For Jacobi's method, we define the quantities \( \tan\theta = t= s/c \), with \( s=\sin\theta \) and \( c=\cos\theta \) and $$ \begin{equation*}\cot 2\theta=\tau = \frac{a_{ll}-a_{kk}}{2a_{kl}}. \end{equation*} $$ We can then define the angle \( \theta \) so that the non-diagonal matrix elements of the transformed matrix \( a_{kl} \) become non-zero and we obtain the quadratic equation (using \( \cot 2\theta=1/2(\cot \theta-\tan\theta) \) $$ \begin{equation*} t^2+2\tau t-1= 0, \end{equation*} $$ resulting in $$ \begin{equation*} t = -\tau \pm \sqrt{1+\tau^2}, \end{equation*} $$ and \( c \) and \( s \) are easily obtained via $$ \begin{equation*} c = \frac{1}{\sqrt{1+t^2}}, \end{equation*} $$ and \( s=tc \).
How many similarity transformations are needed before you reach a result where all non-diagonal matrix elements are essentially zero? Try to estimate the number of transformations and extract a behavior as function of the dimensionality of the matrix. Compare your results with the analytical ones.
You can check your results against the Armadillo function for solving eigenvalue problems. The armadillo function eigsys can be used to find eigenvalues and eigenvectors. A Python program which solves this part of the project is available under the project writing slides.
Comment your results (here you could for example compute the time needed for both algorithms for a given dimensionality of the matrix).
In this project (and later ones as well) we will implement so-called unit tests. Our unit tests are mainly meant to test mathematical properties of our algorithm. During the development phase of a program it is useful to devise tests that your program should pass. One of these is to make sure that for a given simple test matrix (say a \( 5\times 5 \) matrix) our algorithm for searching for the largest non-diagonal element always returns the correct answer. Furthermore, for a known simple matrix, irrespective of changes made, we should always get the same and correct eigenvalues. Another test is to make sure that the orthogonality shown in exercise (a) is preserved. Try to figure out other tests your code should pass, based either on the mathematical properties of the algorithms or more program specific tests. Implement at least two unit tests in this project.
Here we will assume that these electrons move in a three-dimensional harmonic oscillator potential (they are confined by for example quadrupole fields) and repel each other via the static Coulomb interaction. We assume spherical symmetry. You don't need to think of quantum mechanics when solving this project, look at it as another diagonalization problem.
We are first interested in the solution of the radial part of Schroedinger's equation for one electron. This equation reads $$ \begin{equation*} -\frac{\hbar^2}{2 m} \left ( \frac{1}{r^2} \frac{d}{dr} r^2 \frac{d}{dr} - \frac{l (l + 1)}{r^2} \right )R(r) + V(r) R(r) = E R(r). \end{equation*} $$ In our case \( V(r) \) is the harmonic oscillator potential \( (1/2)kr^2 \) with \( k=m\omega^2 \) and \( E \) is the energy of the harmonic oscillator in three dimensions. The oscillator frequency is \( \omega \) and the energies are $$ \begin{equation*} E_{nl}= \hbar \omega \left(2n+l+\frac{3}{2}\right), \end{equation*} $$ with \( n=0,1,2,\dots \) and \( l=0,1,2,\dots \).
Since we have made a transformation to spherical coordinates it means that \( r\in [0,\infty) \). The quantum number \( l \) is the orbital momentum of the electron. Then we substitute \( R(r) = (1/r) u(r) \) and obtain $$ \begin{equation*} -\frac{\hbar^2}{2 m} \frac{d^2}{dr^2} u(r) + \left ( V(r) + \frac{l (l + 1)}{r^2}\frac{\hbar^2}{2 m} \right ) u(r) = E u(r) . \end{equation*} $$ The boundary conditions are \( u(0)=0 \) and \( u(\infty)=0 \).
We introduce a dimensionless variable \( \rho = (1/\alpha) r \) where \( \alpha \) is a constant with dimension length and get $$ \begin{equation*} -\frac{\hbar^2}{2 m \alpha^2} \frac{d^2}{d\rho^2} u(\rho) + \left ( V(\rho) + \frac{l (l + 1)}{\rho^2} \frac{\hbar^2}{2 m\alpha^2} \right ) u(\rho) = E u(\rho) . \end{equation*} $$ We will set in this project \( l=0 \). Inserting \( V(\rho) = (1/2) k \alpha^2\rho^2 \) we end up with $$ \begin{equation*} -\frac{\hbar^2}{2 m \alpha^2} \frac{d^2}{d\rho^2} u(\rho) + \frac{k}{2} \alpha^2\rho^2u(\rho) = E u(\rho) . \end{equation*} $$ We multiply thereafter with \( 2m\alpha^2/\hbar^2 \) on both sides and obtain $$ \begin{equation*} -\frac{d^2}{d\rho^2} u(\rho) + \frac{mk}{\hbar^2} \alpha^4\rho^2u(\rho) = \frac{2m\alpha^2}{\hbar^2}E u(\rho) . \end{equation*} $$ The constant \( \alpha \) can now be fixed so that $$ \begin{equation*} \frac{mk}{\hbar^2} \alpha^4 = 1, \end{equation*} $$ or $$ \begin{equation*} \alpha = \left(\frac{\hbar^2}{mk}\right)^{1/4}. \end{equation*} $$ Defining $$ \begin{equation*} \lambda = \frac{2m\alpha^2}{\hbar^2}E, \end{equation*} $$ we can rewrite Schroedinger's equation as $$ \begin{equation*} -\frac{d^2}{d\rho^2} u(\rho) + \rho^2u(\rho) = \lambda u(\rho) . \end{equation*} $$ This is the first equation to solve numerically. In three dimensions the eigenvalues for \( l=0 \) are \( \lambda_0=3,\lambda_1=7,\lambda_2=11,\dots . \)
We define minimum and maximum values for the variable \( \rho \), \( \rho_{\mathrm{min}}=0 \) and \( \rho_{\mathrm{max}} \), respectively. You need to check your results for the energies against different values \( \rho_{\mathrm{max}} \), since we cannot set \( \rho_{\mathrm{max}}=\infty \).
With a given number of mesh points, \( N \), we define the step length \( h \) as, with \( \rho_{\mathrm{min}}=\rho_0 \) and \( \rho_{\mathrm{max}}=\rho_N \), $$ \begin{equation*} h=\frac{\rho_N-\rho_0 }{N}. \end{equation*} $$ The value of \( \rho \) at a point \( i \) is then $$ \rho_i= \rho_0 + ih \hspace{1cm} i=1,2,\dots , N. $$ We can rewrite the Schroedinger equation for a value \( \rho_i \) as $$ -\frac{u(\rho_i+h) -2u(\rho_i) +u(\rho_i-h)}{h^2}+\rho_i^2u(\rho_i) = \lambda u(\rho_i), $$ or in a more compact way $$ -\frac{u_{i+1} -2u_i +u_{i-1}}{h^2}+\rho_i^2u_i=-\frac{u_{i+1} -2u_i +u_{i-1} }{h^2}+V_iu_i = \lambda u_i, $$ where \( V_i=\rho_i^2 \) is the harmonic oscillator potential.
We define first the diagonal matrix element $$ \begin{equation*} d_i=\frac{2}{h^2}+V_i, \end{equation*} $$ and the non-diagonal matrix element $$ \begin{equation*} e_i=-\frac{1}{h^2}. \end{equation*} $$ In this case the non-diagonal matrix elements are given by a mere constant. All non-diagonal matrix elements are equal. With these definitions the Schroedinger equation takes the following form $$ \begin{equation*} d_iu_i+e_{i}u_{i-1}+e_{i}u_{i+1} = \lambda u_i, \end{equation*} $$ where \( u_i \) is unknown. We can write the latter equation as a matrix eigenvalue problem $$ \begin{equation} \begin{bmatrix}d_1 & e_1 & 0 & 0 & \dots &0 & 0 \\ e_1 & d_2 & e_2 & 0 & \dots &0 &0 \\ 0 & e_2 & d_3 & e_3 &0 &\dots & 0\\ \dots & \dots & \dots & \dots &\dots &\dots & \dots\\ 0 & \dots & \dots & \dots &\dots e_{N-3} &d_{N-2} & e_{N-2}\\ 0 & \dots & \dots & \dots &\dots &e_{N-2} & d_{N-1} \end{bmatrix} \begin{bmatrix} u_{1} \\ u_{2} \\ \dots\\ \dots\\ \dots\\ u_{N-1} \end{bmatrix}=\lambda \begin{bmatrix} u_{1} \\ u_{2} \\ \dots\\ \dots\\ \dots\\ u_{N-1} \end{bmatrix}. \tag{3} \end{equation} $$
Note here that we have not included the endpoints since we assume that they are knowm (as we did in project 1). The matrix is also symmetric in this case.
Add the harmonic oscillator potential to your tridiagonal Toeplitz matrix from 2a-2c and diagonalize the matrix. Study the results as functions of the number of integration points \( N \) and your approximation to \( \rho_{\mathrm{max}} \). The analytical results with our scaling for the one-electron energies are \( \lambda=3,7,11,15,\dots \). How many integration points do you need in order to reproduce the analytical results with say four leading digits after the decimal point?
You can reuse the code you wrote for part (b), but you need to add the potential \( \rho^2 \) to the diagonal elements.
Note: if you are not interested in the explicit quantum physics case here, you can replace this part with either 2g or 2h below. The latter ones are optional exercises if you do this.
We will now study two electrons in a harmonic oscillator well which also interact via a repulsive Coulomb interaction. Let us start with the single-electron equation written as $$ \begin{equation*} -\frac{\hbar^2}{2 m} \frac{d^2}{dr^2} u(r) + \frac{1}{2}k r^2u(r) = E^{(1)} u(r), \end{equation*} $$ where \( E^{(1)} \) stands for the energy with one electron only. For two electrons with no repulsive Coulomb interaction, we have the following Schroedinger equation $$ \begin{equation*} \left( -\frac{\hbar^2}{2 m} \frac{d^2}{dr_1^2} -\frac{\hbar^2}{2 m} \frac{d^2}{dr_2^2}+ \frac{1}{2}k r_1^2+ \frac{1}{2}k r_2^2\right)u(r_1,r_2) = E^{(2)} u(r_1,r_2) . \end{equation*} $$
Note that we deal with a two-electron wave function \( u(r_1,r_2) \) and two-electron energy \( E^{(2)} \).
With no interaction this can be written out as the product of two single-electron wave functions, that is we have a solution on closed form.
We introduce the relative coordinate \( \mathbf{r} = \mathbf{r}_1-\mathbf{r}_2 \) and the center-of-mass coordinate \( \mathbf{R} = 1/2(\mathbf{r}_1+\mathbf{r}_2) \). With these new coordinates, the radial Schroedinger equation reads $$ \begin{equation*} \left( -\frac{\hbar^2}{m} \frac{d^2}{dr^2} -\frac{\hbar^2}{4 m} \frac{d^2}{dR^2}+ \frac{1}{4} k r^2+ kR^2\right)u(r,R) = E^{(2)} u(r,R). \end{equation*} $$
The equations for \( r \) and \( R \) can be separated via the ansatz for the wave function \( u(r,R) = \psi(r)\phi(R) \) and the energy is given by the sum of the relative energy \( E_r \) and the center-of-mass energy \( E_R \), that is $$ \begin{equation*} E^{(2)}=E_r+E_R. \end{equation*} $$
We add then the repulsive Coulomb interaction between two electrons, namely a term $$ \begin{equation*} V(r_1,r_2) = \frac{\beta e^2}{|\mathbf{r}_1-\mathbf{r}_2|}=\frac{\beta e^2}{r}, \end{equation*} $$ with \( \beta e^2=1.44 \) eVnm.
Adding this term, the \( r \)-dependent Schroedinger equation becomes $$ \begin{equation*} \left( -\frac{\hbar^2}{m} \frac{d^2}{dr^2}+ \frac{1}{4}k r^2+\frac{\beta e^2}{r}\right)\psi(r) = E_r \psi(r). \end{equation*} $$ This equation is similar to the one we had previously in (b) and we introduce again a dimensionless variable \( \rho = r/\alpha \). Repeating the same steps as above, we arrive at $$ \begin{equation*} -\frac{d^2}{d\rho^2} \psi(\rho) + \frac{1}{4}\frac{mk}{\hbar^2} \alpha^4\rho^2\psi(\rho)+\frac{m\alpha \beta e^2}{\rho\hbar^2}\psi(\rho) = \frac{m\alpha^2}{\hbar^2}E_r \psi(\rho) . \end{equation*} $$ We want to manipulate this equation further to make it as similar to that in (a) as possible. We define a new 'frequency' $$ \begin{equation*} \omega_r^2=\frac{1}{4}\frac{mk}{\hbar^2} \alpha^4, \end{equation*} $$ and fix the constant \( \alpha \) by requiring $$ \begin{equation*} \frac{m\alpha \beta e^2}{\hbar^2}=1 \end{equation*} $$ or $$ \begin{equation*} \alpha = \frac{\hbar^2}{m\beta e^2}. \end{equation*} $$ Defining $$ \begin{equation*} \lambda = \frac{m\alpha^2}{\hbar^2}E, \end{equation*} $$ we can rewrite Schroedinger's equation as $$ \begin{equation*} -\frac{d^2}{d\rho^2} \psi(\rho) + \omega_r^2\rho^2\psi(\rho) +\frac{1}{\rho} = \lambda \psi(\rho). \end{equation*} $$ We treat \( \omega_r \) as a parameter which reflects the strength of the oscillator potential.
Here we will study the cases \( \omega_r = 0.01 \), \( \omega_r = 0.5 \), \( \omega_r =1 \), and \( \omega_r = 5 \) for the ground state only, that is the lowest-lying state.
With no repulsive Coulomb interaction you should get a result which corresponds to the relative energy of a non-interacting system. Make sure your results are stable as functions of \( \rho_{\mathrm{max}} \) and the number of steps.
We are only interested in the ground state with \( l=0 \). We omit the center-of-mass energy.
You can reuse the code you wrote for part (b), but you need to add the potential \( \omega_r^2\rho^2+1/\rho \) to the diagonal elements.
Comment the results for the lowest state (ground state) as function of varying strengths of \( \omega_r \).
For specific oscillator frequencies, the above equation has answers in an analytical form, see the article by M. Taut, Phys. Rev. A 48, 3561 (1993).
This exercise is a continuation of the previous and adds more quantum physics to the analysis. In this exercise we want to plot the wave function for two electrons as functions of the relative coordinate \( r \) and different values of \( \omega_r \). With no Coulomb interaction you should have a result which corresponds to the non-interacting case. Plot either the function itself or the probability distribution (the function squared) with and without the repulsion between the two electrons. Varying \( \omega_r \), the shape of the wave function will change.
We are only interested in the wave function for the ground state with \( l=0 \) and omit again the center-of-mass motion.
The eigenvectors are normalized. Plot then the normalized wave functions for different values of \( \omega_r \) and comment the results.
Here follows a brief recipe and recommendation on how to write a report for each project.
The preferred format for the report is a PDF file. You can also use DOC or postscript formats or as an ipython notebook file. As programming language we prefer that you choose between C/C++, Fortran2008 or Python. The following prescription should be followed when preparing the report:


HTTP assertions for Deno made easy via superagent.
import { superdeno } from<EMAIL_ADDRESS>import { opine } from<EMAIL_ADDRESS>const app = opine();
app.get("/user", (req, res) => {
res.setStatus(200).json({ name: "Deno" });
});
superdeno(app)
.get("/user")
.expect("Content-Type", /json/)
.expect("Content-Length", "15")
.expect(200)
.end((err, res) => {
if (err) throw err;
});
Looking to test an Oak web server? Check out SuperOak!
The motivation of this module is to provide a high-level abstraction for testing HTTP in Deno, while still allowing you to drop down to the lower-level API provided by superagent.
This is a Deno module available to import direct from this repo and via the Deno Registry.
Before importing, download and install Deno.
You can then import SuperDeno straight into your project:
import { superdeno } from<EMAIL_ADDRESS>SuperDeno is also available on nest.land, a package registry for Deno on the Blockchain.
import { superdeno } from<EMAIL_ADDRESS>You may pass a url string, http.Server
, a request handling function, or an object that implements an app.listen()
method (which mirrors the http.serve
interface) to superdeno()
- if SuperDeno identifies that a server is not already listening for connections, then one is bound to an ephemeral port for you so there is no need to keep track of ports.
SuperDeno works with any Deno test framework. Here's an example with Deno's built-in test framework, note how you can pass done
straight to any of the .expect()
calls:
Deno.test("GET /user responds with json", async () => {
await superdeno(app)
.get("/user")
.set("Accept", "application/json")
.expect("Content-Type", /json/)
.expect(200);
});
Here's an example of SuperDeno working with the Opine web framework:
import { opine } from<EMAIL_ADDRESS>import { superdeno } from<EMAIL_ADDRESS>export { expect } from<EMAIL_ADDRESS>const app = opine();
app.get("/", (req, res) => {
res.send("Hello Deno!");
});
Deno.test("it should support regular expressions", async () => {
await superdeno(app)
.get("/")
.expect("Content-Type", /^application/)
.end((err) => {
expect(err.message).toEqual(
'expected "Content-Type" matching /^application/, got "text/html; charset=utf-8"'
);
});
});
Here's an example of SuperDeno working with the Oak web framework:
import { Application, Router } from<EMAIL_ADDRESS>import { superdeno } from<EMAIL_ADDRESS>const router = new Router();
router.get("/", (ctx) => {
ctx.response.body = "Hello Deno!";
});
const app = new Application();
app.use(router.routes());
app.use(router.allowedMethods());
Deno.test("it should support the Oak framework", () => {
const controller = new AbortController();
const { signal } = controller;
app.addEventListener("listen", async ({ hostname, port, secure }) => {
const protocol = secure ? "https" : "http";
const url = `${protocol}://${hostname}:${port}`;
await superdeno(url)
.get("/")
.expect("Hello Deno!", () => {
controller.abort();
});
});
await app.listen({ port: 0, signal });
});
If you are using the Oak web framework then it is recommended that you use the specialized SuperOak assertions library for reduced bootstrapping.
If you don't need to test the server setup side of your Oak application, or you are making use of the app.handle()
method (for example for serverless apps) then you can write slightly less verbose tests for Oak:
import { Application, Router } from<EMAIL_ADDRESS>import { superdeno } from<EMAIL_ADDRESS>const router = new Router();
router.get("/", (ctx) => {
ctx.response.body = "Hello Deno!";
});
const app = new Application();
app.use(router.routes());
app.use(router.allowedMethods());
Deno.test("it should support the Oak framework `app.handle` method", async () => {
/**
* Note that we have to bind `app` to the function otherwise `app.handle`
* doesn't preserve the `this` context from `app`.
*/
await superdeno(app.handle.bind(app))
.get("/")
.expect("Hello Deno!");
});
In this case, SuperDeno handles the setup and closing of the server for you, so you can focus on just testing your middleware.
For further examples, see the tests or the supertest examples for inspiration.
You may use any superagent client (browser) methods and perform assertions in the .end()
callback for lower-level needs.
Assert response status
code.
Assert response status
code and body
.
Assert response body
text with a string, regular expression, or parsed body object.
Assert header field
value
with a string or regular expression.
Pass a custom assertion function. It'll be given the response object to check. If the check fails, throw an error.
function hasPreviousAndNextKeys(res) {
if (!("next" in res.parsedBody)) throw new Error("missing next key");
if (!("prev" in res.parsedBody)) throw new Error("missing prev key");
}
await superdeno(app).get("/").expect(hasPreviousAndNextKeys);
Perform the request and invoke fn(err, res)
.
This is a port (not fork) of supertest to TypeScript + Deno, which fulfills this motivation currently for Node. This module also includes a XHR sham so superagent client mode can be used directly.
This library is a port of supertest whose license and copyrights are available at SUPERTEST_LICENSE in the root of this repository, and covers all files within the source directory which detail that the file is a port.
SuperDeno is licensed under the MIT License.
Icon designed and created by Hannah Morten.
Generated using TypeDoc


VueJS Web-component
Normal HTML
In the HTML-head of this static web page; there's a embedded style tag with some basic CSS. The CSS rules style the HTML button-tag with a 'gold' background-color.
As you can see the web-component below also uses a HTML-button tag. But … that button is NOT styled according to the embedded CSS of this page.
Web-component
Inspect the web-component below using browser developer tools.
The block below is a Web-component. Originally a Vue component. The HTML, Css and JavaScripting is all contained inside the Web-component.
Web-component with attributes for button name and slot
-data.
<name-block button="Change username">
Custom username
</name-block>
Because this is a Web-component; this page's Css doesn't interfere width the Shadow DOM of the web-component. Above Web-component is used as the non-standard custom web-component tag above.


?NEW
YORK
BOTANICAL
GARDEN
0153
0195
Cenchrus
brownii
Roem.
&
Sehiilt
Luis
fătasns
Guerra
2006
HERBARIUM
OF
IOWA
STATE
UNIVERSITY
REVISION
OF
THE
GENUS
CENCHRUS
CenchPUB
brownii
R╚
&
S
DETERMINED
BY
D.6.
DELISLE
SEE
CONTr
I-
S
n>t
H?nă.
THE
NEW
YORK
BOTANICAL
GARDEN
EXPLORATION
OF
CUBA
Province
of
Pinar
del
Rio
Sierra
Mendoza
W.'Fhr.
ą
t
Si-jLc
jo
^
j.
A.
Shafer,
Collector
December
25,
isii
01530195
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


Home
Projects
NEW
Covid-19 Project
NEW
Project 2
Project 3
Contact Me
NEW
Megh Dedhia
Megh Dedhia
Budding Full Stack Developer | Freelance Graphic Designer
Get World Statistics
Get India Timeline
Get India statistics
COVID-19 World Stats


The Akismet PHP5 Class
This class takes the functionality from the Akismet WordPress plugin written by Matt Mullenweg and allows it to be integrated into any PHP5 application or website.
The original plugin is available on the Akismet website.
Usage:
Optionally you may wish to check if your WordPress API key is valid as in the example below.
Located in /Akismet.class.php (line 64)
Tests for spam.
Uses the web service provided by Akismet to see whether or not the submitted comment is spam. Returns a boolean value.
Makes a request to the Akismet service to see if the API key passed to the constructor is valid.
Use this method if you suspect your API key is invalid.
Defaults to rest.akismet.com
Defaults to '1.1'
Defaults to 80
The name that the author submitted with the comment.
The email address that the author submitted with the comment.
The address is assumed to be valid.
The URL that the author submitted with the comment.
The comment's body text.
The type of comment being submitted.
May be blank, comment, trackback, pingback, or a made up value like "registration" or "wiki".
A permanent URL referencing the blog post the comment was submitted to.
To override the referring page when submitting spam/ham later on
To override the user IP address when submitting spam/ham later on
Submit ham that is incorrectly tagged as spam.
Using this function will make you a good citizen as it helps Akismet to learn from its mistakes. This will improve the service for everybody.
Submit spam that is incorrectly tagged as ham.
Using this function will make you a good citizen as it helps Akismet to learn from its mistakes. This will improve the service for everybody.
Documentation generated on Sat, 23 Feb 2008 11:03:15 +0000 by phpDocumentor 1.4.1


We need your consent to proceed
This research is being conducted by XXXX, a postdoctoral research fellow, and XXXX, a faculty member, at XXXX. This study takes 10 minutes.
If you agree to take part in the research, you will complete a study that involves reading some text, remembering it as well as you can, and then answering some questions about it. All of the information we obtain during the research will be kept confidential, and not associated with your name in any way, however, while the study is running it will be associated with your MTurk worker id. Once the study is complete we will replace your worker id with a random string.
Your participation in this research is voluntary. You are free to refuse to take part, and you may stop taking part at any time. You are free to discontinue participation in this study at any time with no penalty.
If you have any questions about this research, do not hesitate to contact XXXX at XXXX. If you have any questions about your rights or treatment as a participant in this research project, please contact XXXX's XXXX at XXXXX or<EMAIL_ADDRESS>By consenting to participate, you acknowledge that you are 18 years or older, have read this consent form, agree to its contents, and agree to take part in this research. If you do not wish to consent, close this page and return the HIT on Mechanical Turk.
{% endblock consent_text %}Do you understand and consent to these terms?
{% block consent_button %} {% endblock consent_button %} {% block reject_button %} {% endblock reject_button %}


Join our panlist to learn more about events and opportunities with Yale Code4Good, our partner nonprofits/organizations, and other amazing places to use your technological skills for good.


Job Manager is running but encountered a problem getting data from its workflow server.
{{ linkText }}
{{errorMessage}}


List of available demos
basic (css overlays/controls)
text (hit effects)
collisions (spatial hashing)


Here's how Dojo describes itself:
Dojo saves you time and scales with your development process, using web standards as its platform. It’s the toolkit experienced developers turn to for building high quality desktop and mobile web applications. From simple websites to large packaged enterprise applications whether desktop or mobile, Dojo will meet your needs.
Dojo is a great toolkit with lots of capabilities. However, many of its components rely on Dojo's own AMD loader. Since Durandal relies on require.js, this presents a problem. However, they can be made to work together. Here's how:
<script type="text/javascript"> var dojoConfig = { async: true, tlmSiblingOfDojo: false, parseOnLoad: true, aliases: [['text', 'dojo/text']], packages: [ { name: 'durandal', location: '/App/durandal' }, { name: 'helpers', location: '/App/helpers' }, { name: 'views', location: '/App/views' }, { name: 'viewmodels', location: '/App/viewmodels' } ] }; </script> <script type="text/javascript" src="App/lib/dojo/dojo/dojo.js"></script> <script type="text/javascript" src="App/main.js"></script>
signal("moduleLoaded", [module.result, module.mid]);
Note: The code specified in step 3 has been submitted via a pull request to the Dojo team. Hopefully, in the future, this step will not be necessary.


Address: 127.127.9.u
Reference ID: GPS
Driver ID: GPS-MX4200
Serial Port: /dev/gpsu
; 4800 baud, 8-bits,
no parity
Features: ppsclock
(required)
This driver supports the Magnavox MX 4200 Navigation Receiver adapted
to precision timing applications. It requires the ppsclock
line discipline or streams module described in the Line Disciplines and Streams Drivers page. It also
requires a gadget box and 1-PPS level converter, such as described in
the Pulse-per-second (PPS) Signal Interfacing
page.
This driver supports all compatible receivers such as the 6-channel MX 4200, MX 4200D, and the 12-channel MX 9212, MX 9012R, MX 9112.
This driver supports two modes of operation, static and mobile, controlled by clock flag 2.
In static mode (the default) the driver assumes that the GPS antenna is in a fixed location. The receiver is initially placed in a "Static, 3D Nav" mode, where latitude, longitude, elevation and time are calculated for a fixed station. A DOP-weighted running average position is calculated from this data. After 24 hours, the receiver is placed into a "Known Position" mode, initialized with the calculated position, and then solves only for time. The position averaging algorithm does not take into account boundary conditions, so this mode of operation very near the international date line or the poles is not recommended.
In mobile mode, the driver assumes the GPS antenna is mounted on a moving platform such as a car, ship, or aircraft. The receiver is placed in "Dynamic, 3D Nav" mode and solves for position, altitude and time while moving. No position averaging is performed.
The driver writes each timecode as received to the
clockstats
file.
time1 time
time2 time
stratum number
refid string
GPS
.
flag1 0 | 1
flag2 0 | 1
flag3 0 | 1
flag4 0 | 1
Additional Information


Gogs: Pull Request, Wiki and New Design
December 12, 2015
This post is published corresponding to the Gogs - Go Git Service
v0.8.0
release.
It has been over a year since last release post, mainly because there are too much work undergoing and plans are completely outdated. Fortunately, most of things finally get done in this big release.
From last post of release (v0.5.0
), almost 1.8k commits with tons of improvements, bug fixes, new features and others are added to Gogs. Especially top-wanted features like pull request, repository wiki and builtin SSH server. Besides, all pages are now under new Semantic UI theme with completely redesigned issue tracker, and many people have given us positive feedback. The last thing I never forget to mention is Gogs now has 182 contributors from the community.
Upgrade to 0.8
- Gogs has auto-migration since
0.5.x
, so all upgrades should happen automatically and you do not need to take care of it. - … However, starting from
0.8
release, Gogs no longer supports auto-migration for installations that are lower than0.6.0
. Therefore, if you’re using version before0.6.0
, you have to run any of earlier version before0.8.0
once, then upgrade to0.8.0
. - Upgrade steps are available in:
Pull Request
The No.1 wanted feature has finally arrived in Gogs, and it has been tested with several releases since 0.6.9
. It is good to use now, but not perfect yet, such as you can’t make a pull request inside same repository, and no review comments support.
Many underlying improvements can be applied as well, dirty works needed to be cleared out.
Wiki
You can now edit your wiki pages via online Markdown editor or edit locally and push to Gogs.
Builtin SSH Server
Few people ask why Gogs even need this. Let me answer it once forever:
Even though Gogs has gained many advantages by developing based on Go, such as low resource usage and fast response, but primary goal of Gogs is still very simple, which provide painless Git hosting solution. Embed a SSH server means an external SSH server is no longer a hard requirement and Gogs will not mess up with authorized_keys
file any more. Last but not the least, it works on Windows!
Issue Tracker
Dozens of bug fixes by redesigned issue tracker, you are also able to use emoji and edit comments now.
Others
- You can push linux to Gogs now.
- Limited APIs are available at wiki.
- HTTPS secured downloads.
- Discussion forum.
- Official support for Docker with only 40MB image size.
- More and more cloud platforms, products, services and software support.
Final Bits
Can’t thank enough to the all the people who follow a long way to this point. You are awesome!
Thank you for supporting Gogs and taking time to read this post, if you have any advice or feedback, please contact us on GitHub.


Yvonne Wang
First year HCI DM Track Masters candidate at Georgia Tech, Yvonne is an avid animal lover and art enthusiastic. One of the animals that brings her most joy is the husky puppy. Fluffy puppies will brighten anyone's day and hoards of puppy pictures will whisk you away to happier places.When she is not working hard to spur on her WebDev/UX/UI career or looking at cute puppers, she loves to explore local art galleries and revel in the works of masters across many ages. Can you guess from her portrait what one of her favorite pieces is?
Grace A. Halverson
First year DM Masters candidate at Georgia Tech, Grace is a quirky squirrel and cat lover who enjoys making of all kinds, from crafting to learning a little coding. One of the biggest bonuses of moving from a small town to a bit city meant that there were more galleries and art museums to explore.Although she is not contemporary art's biggest fan, she values the exposure to current artists and their works and enjoys novel experiences. That being said, it is always nice to know what local galleries might be housing pieces from gothic or romantic periods. If you ask her who her favorite artist is, she would give you a list of artists that have nothing in common, save that they evolved over time and shamelessly created controversial content simply because they wanted to and saw beauty beyond what was trending at their time. Long live the revolutionaries and long live squirrels!


| {{ "funds.withdraw_history_btc.number" | t }} | {{ "funds.withdraw_history_btc.withdraw_time" | t }} | {{ "funds.withdraw_history_btc.withdraw_address" | t }} | {{ "funds.withdraw_history_btc.actual_amount" | t }} | {{ "funds.withdraw_history_btc.fee" | t }} | {{ "funds.withdraw_history_btc.state_and_action" | t }} |
|---|---|---|---|---|---|
| {{withdraw.id}} | {{withdraw.created_at}} | {{withdraw.fund_extra}} @ {{withdraw.fund_uid}} | {{withdraw.amount}} | {{withdraw.fee}} | {{withdraw.aasm_state}} |
| 暂无历史数据 |


---
layout: default
title: Welcome!
---
Welcome!
Hello new visitors to my website! My name is Patrick Huang and welcome to my website. Anticipating new visitors, this is a new post that will serve as a temporary homepage before I make some new changes.
On this website, you will find information about my passion for video editing and also instructions on how I created this website with Jekyll. Thanks for your visit!


?NEW
YORK
BOTANICAL
GARDEN
Plants
of
Trinidad,
ETritism
Wjes.x7\ndies
U
I
t
a
/
/
└-o
ús/C_*.
N.
L.
BRITTON
T.
E.
HAZEN
WALTER
MENDELSON
MOUNT
TOCUCHE
\
COLLE
.ECTOR
8
April.
3-5,
1920
1604478
Legend -
Level of confidence that token is an accurately-transcribed word
extremely low
very low
low
undetermined
medium
high
very high


Academic Services Code snippet repository
Sort by name
Sort by language
Accordion Boxes by Pat Norman
[html]
Social Impact Tool by Emma Gerts
[html]
Link Builder Template by Sam Hall
[html]
Learning Design Process by Heidi Laidler
[html]


Start!
Stop!
Force metrics update
Fetch all docs
Add a doc
Destroy DB
Start fetch tests
Force go to next stage
Adapter
Add
docs of
bytes:
Go!
Metrics
metric
value
(No metrics yet.)
Errors
(No errors yet.)
Log
LOG> loading HTML...


[github] https://github.com/kleinercubs [email]<EMAIL_ADDRESS>2015.9 - 2018.6
2018.9 - current
Bachelor of Computer Science
Comment


So who is Kevin? Follow along to find out! I will discuss the things that peak my interest and things that I hate
One of my main interests is gaming. Growing up I have played Playstation, Xbox, Nintendo 64, Gameboy, and Stadia. My main platform for gaming at the moment is PC in which my favorite game genre is the MMORPG.The game in which I spend the most time is called Old School RuneScape.
| Game | Genre | Release |
|---|---|---|
| RuneScape | MMORPG | 2001 |
| Call of Duty MW2 | FPS | 2009 |
| Destiny | MMOFPS | 2014 |
| Elder Scrolls IV | RPG | 2006 |
Another interest of mine is movies. I go to the cinema on just about a weekly basis and this has been my routine for many years. My favorite movie genre is action but I can get into just about anything except documentaries. Some of my favorite movies are:
I have recently developed an interest for coding. I currently don't know much about it hence why I am taking courses such as this one. I love to learn and hope to have a lucrative and productive career in programming.
Some things that I hate would be cleaning, documentaries, and running.


Add Something
Describe something with 100 characters.
Take Picture
Confirm
Do Something
Do Something


Singapore Fintech Festival 2017: Singapore, Hong Kong and Canada Will Use Blockchain for Trade Finance; MAS and ABS Publicly Release Source Codes
“MAS will work with Hong Kong’s Monetary Authority and Bank of Canada to develop blockchain payments; MAS and ABS releases source codes of prototypes under Project Ubin”
Singapore launched its second Fintech Festival on 13 November 2017, a week-long event hosting 25,000 participants from 100 countries. Dubbed the world’s largest fintech festival, the program includes talks from Fintech experts and networking sessions for startups and businesses.
The festival is organized by the Monetary Authority of Singapore (MAS). Partners include The Association of Banks (ABS) and SingEx Holdings.
Blockchain was a huge topic during the Singapore Fintech Festival 2017 (SFF 2017). We attended the event, and here are the latest developments in blockchain announced on Day 1 and Day 2:
1.MAS will work with Hong Kong and Canada to develop a trade finance platform powered by blockchain technology
In our article yesterday, we reported that James Henry Lau, Secretary for Financial Services and the Treasury in Hong Kong said that blockchain could provide “great benefits” to trade finance between countries.
During SFF 2017, MAS announced that it is working with Hong Kong’s Monetary Authority and Bank of Canada to build a cross border trade finance platform with blockchain technology.
MAS managing director Ravi Menon said that “blockchain technology offers good promise to make trade finance safer and more efficient.”
“Today, trade finance is largely paper-based. This is not only inefficient, but increases risks such as fraud and duplicate invoicing,” he added.
2.MAS and ABS released source codes for blockchain prototypes to the public
MAS and ABS have released source codes for blockchain prototypes to the public under the Project Ubin initiative. The Project Ubin initiative was launched in November 2016 by a consortium of banks and technology companies led by the MAS. Its goal is to simplify and provide more security for clearing and settlement of payments and securities.
Project Ubin has gone through two phases so far. The first phase concluded in 9 March 2017, where a report was produced by Deloitte that covers aspects of distributed ledger technology that are most suited to settlement systems and details the design principles used for the prototype.
The second phase saw MAS and ABS successfully develop “software prototypes of three different models for decentralised inter-bank payment and settlements with liquidity savings mechanisms.”
To conclude the second phase, MAS and ABS have now publicly released source codes of the three blockchain prototypes. In a statement, they said that “Central banks, financial institutions, as well as academic and research institutions will be able to tap the publicly-released source codes to facilitate their experiments, research and innovation.”
MAS chief fintech officer Sopnendu Mohanty also said that "Open-sourcing these prototypes will encourage other central banks to conduct similar trials and engender further development on domestic inter-bank payments."
"We aim to link up such DLT-based systems in the future for improved cross-border connectivity. This is our contribution to the global financial ecosystem, and a step towards developing cheaper, safer and more efficient cross-border payments,” he added.
「 Declaration: Please indicate the source if repost the article in UNITIMES. Opinions expressed by Contributors belong to themselves. 」


Steem Developer Portal
Understanding Configuration Values
Low level blockchain constants
Intro
These values underpin the behavior of the entire blockchain. In a sense, each witness votes for these configuration values every time they sign a block. Unlike many of the Dynamic Global Properties, these values never change at runtime (e.g., as a witness, in order to change them, you typically must shut down your node, make the change, recompile, and run).
See: config.hpp
Usually, these configuration values are universally adhered to, but there are situations where these values can and should be altered, like in the case of deploying a new blockchain (typically a testnet). Some of the values that do not affect consensus, like STEEM_SOFT_MAX_COMMENT_DEPTH
, are allowed to change to some extent.
Sections
- Fields
IS_TEST_NET
STEEM_ENABLE_SMT
STEEM_INITIAL_VOTE_POWER_RATE
STEEM_REDUCED_VOTE_POWER_RATE
STEEM_ADDRESS_PREFIX
STEEM_BLOCK_INTERVAL
STEEM_CASHOUT_WINDOW_SECONDS
STEEM_CHAIN_ID
STEEM_CHAIN_ID_NAME
STEEM_CREATE_ACCOUNT_DELEGATION_RATIO
STEEM_CREATE_ACCOUNT_DELEGATION_TIME
STEEM_FEED_HISTORY_WINDOW
STEEM_GENESIS_TIME
STEEM_HARDFORK_REQUIRED_WITNESSES
STEEM_INFLATION_NARROWING_PERIOD
STEEM_MAX_ACCOUNT_NAME_LENGTH
STEEM_MAX_ACCOUNT_WITNESS_VOTES
STEEM_MAX_WITNESSES
STEEM_MAX_PERMLINK_LENGTH
STEEM_MAX_WITNESS_URL_LENGTH
STEEM_MIN_REPLY_INTERVAL
STEEM_MIN_REPLY_INTERVAL_HF20
STEEM_MIN_ROOT_COMMENT_INTERVAL
STEEM_MIN_PAYOUT_SBD
STEEM_NULL_ACCOUNT
STEEM_REVERSE_AUCTION_WINDOW_SECONDS
STEEM_SOFT_MAX_COMMENT_DEPTH
STEEM_SAVINGS_WITHDRAW_TIME
STEEM_UPVOTE_LOCKOUT_HF17
STEEM_VESTING_WITHDRAW_INTERVALS
- Not Covered
- Example Method Call
- Example Output
IS_TEST_NET
Indicates if this node is running on testnet. See: Steem Testnet
STEEM_ENABLE_SMT
Indicates if Smart Media Tokens have been enabled (future hardfork).
STEEM_INITIAL_VOTE_POWER_RATE
The rate used prior to HF19. The number of votes an account may cast per day before voting power is impacted (originally 40 votes per day).
STEEM_REDUCED_VOTE_POWER_RATE
The rate used since HF19. The number of votes an account may cast per day before voting power is impacted (10 votes per day).
STEEM_ADDRESS_PREFIX
Address prefix used on mainnet is STM
and on testnet is TST
. See: Steem Testnet
STEEM_BLOCK_INTERVAL
Block interval in seconds is 3
. This is the target for block production. This constant is also used as a component for determining valid peer inventory, bandwidth calculations, and block production gaps.
STEEM_CASHOUT_WINDOW_SECONDS
This value was simply set to 7 days, since HF17.
Prior to this, other very complicated machinations were tried like multiple payouts and an initial 24 hours (prior to HF12) and even initial 12 hours (in HF12) all with time extensions depending on how much of an upvote the content got.
Note, on testnet, this is typically much shorter: 1 hour. See: Steem Testnet
STEEM_CHAIN_ID
The chain ID to connect to, which is used to seed signing and prevent transaction crosstalk between two chains, typically mainnet and testnet. See: Steem Testnet
STEEM_CHAIN_ID_NAME
Tyically used to automatically get a unique chain id for a testnet. See: Steem Testnet
STEEM_CREATE_ACCOUNT_DELEGATION_RATIO
This ratio is set to 5 and is used to determine the cost of an account created with delegation.
As an example, imagine the account creation fee is currently 3.000 STEEM
. Instead of creating the account using pure STEEM, there is an option to use delegation so that the blockchain would reduce the creation fee to 0.100 STEEM
. Going this route would require a delegation of 15.000 STEEM
, that can be revoked at any time, but will stay in limbo for 30 days after the creation date (STEEM_CREATE_ACCOUNT_DELEGATION_TIME
).
This minimum STEEM ensures that those accounts can transact if the delegation is removed.
STEEM_CREATE_ACCOUNT_DELEGATION_TIME
There is a minimum delegation period (30 days) and a minimum fee in STEEM even when delegating for account creation (derived with STEEM_CREATE_ACCOUNT_DELEGATION_RATIO
). The minimum period enforces a rate limit on account creation.
Note that delegation can be revoked before 30 days have elapsed from the creation date, but stays in limbo.
STEEM_FEED_HISTORY_WINDOW
Price feed history window, which is 3.5 days since HF16.
STEEM_GENESIS_TIME
Scheduled time that the blockchain waited until the first block was produced. It is represented as the unix epoch of<PHONE_NUMBER>
, which is Thu Mar 24 16:00:00 UTC 2016
. About five seconds later, the first block was produced. See: https://steemd.com/b/1
STEEM_HARDFORK_REQUIRED_WITNESSES
The minimum number of Delegated Proof of Stake witnesses required for hardfork. This guarantees 75% participation on all subsequent rounds.
By default it is set to 17, but when running a testnet, we can change it to 1 so that only one node instance would be sufficient and the network will be still functional and fast. See: Steem Testnet
STEEM_INFLATION_NARROWING_PERIOD
Inflation narrows 0.01% every 250k blocks, since HF16. At block 7,000,000, there was a 9.5% instantaneous inflation rate, decreasing to 0.95% at this rate of 0.01% every 250k blocks. This narrowing will take approximately 20.5 years and will complete on block 220,750,000.
| Year | Supply | Inflation | New Supply | Year | Supply | Inflation | New Supply | |
|---|---|---|---|---|---|---|---|---|
| 2016 | 250,000,000 | 9.50% | 23,750,000 | 2031 | 646,511,386 | 3.19% | 20,613,886 | |
| 2017 | 273,750,000 | 9.08% | 24,854,398 | 2032 | 667,125,272 | 2.77% | 18,464,106 | |
| 2018 | 298,604,398 | 8.66% | 25,854,554 | 2033 | 685,589,378 | 2.35% | 16,090,399 | |
| 2019 | 324,458,952 | 8.24% | 26,727,942 | 2034 | 701,679,777 | 1.93% | 13,515,587 | |
| 2020 | 351,186,894 | 7.82% | 27,452,027 | 2035 | 715,195,364 | 1.51% | 10,766,608 | |
| 2021 | 378,638,921 | 7.40% | 28,004,740 | 2036 | 725,961,973 | 1.08% | 7,874,074 | |
| 2022 | 406,643,661 | 6.98% | 28,364,989 | 2037 | 733,836,047 | 0.95% | 6,971,442 | |
| 2023 | 435,008,650 | 6.55% | 28,513,181 | 2038 | 740,807,489 | 0.95% | 7,037,671 | |
| 2024 | 463,521,832 | 6.13% | 28,431,762 | 2039 | 747,845,160 | 0.95% | 7,104,529 | |
| 2025 | 491,953,593 | 5.71% | 28,105,742 | 2040 | 754,949,689 | 0.95% | 7,172,022 | |
| 2026 | 520,059,335 | 5.29% | 27,523,204 | 2041 | 762,121,711 | 0.95% | 7,240,156 | |
| 2027 | 547,582,539 | 4.87% | 26,675,768 | 2042 | 769,361,868 | 0.95% | 7,308,938 | |
| 2028 | 574,258,308 | 4.45% | 25,558,997 | 2043 | 776,670,805 | 0.95% | 7,378,373 | |
| 2029 | 599,817,304 | 4.03% | 24,172,733 | 2044 | 784,049,178 | 0.95% | 7,448,467 | |
| 2030 | 623,990,038 | 3.61% | 22,521,348 | 2045 | 791,497,645 | 0.95% | 7,519,228 |
STEEM_MAX_ACCOUNT_NAME_LENGTH
Names must comply with the following grammar (RFC 1035), i.e.: a valid name consists of a dot-separated sequence of one or more labels consisting of the following rules:
- Each label is three characters or more
- Each label begins with a letter
- Each label ends with a letter or digit
- Each label contains only letters, digits or hyphens
In addition we require the following:
- All letters are lowercase
- Length is between (inclusive) STEEM_MIN_ACCOUNT_NAME_LENGTH (3 characters) and STEEM_MAX_ACCOUNT_NAME_LENGTH (16 characters)
STEEM_MAX_ACCOUNT_WITNESS_VOTES
Each account may cast up to 30 witness votes.
STEEM_MAX_WITNESSES
This value is set to 21, which means there are 21 witnesses cycling to produce blocks.
Every round of block production begins with the shuffling of 21 witnesses: the top 20 witnesses (by vote), plus one randomly-selected standby witness. Each is given a turn to produce a single block at a fixed rate of one block every 3 seconds. If a witness does not produce a block in their time slot, then that time slot is skipped, and the next witness produces the next block.
STEEM_MAX_PERMLINK_LENGTH
A permlink is a unique string identifier for a post/comment, linked to the author of the post/comment. It must not exceed 256 characters.
STEEM_MAX_WITNESS_URL_LENGTH
Witnesses may provide a URL in their witness proposal. It must not exceed 2,048 characters.
STEEM_MIN_REPLY_INTERVAL
Prior to HF20, comments (replies) could only be broadcasted once every 20 seconds, per account.
STEEM_MIN_REPLY_INTERVAL_HF20
In HF20, comments (replies) can be broadcasted once every 3 seconds, per account (one comment per account per block). See: #2019
STEEM_MIN_ROOT_COMMENT_INTERVAL
Posts (root comments) can only be broadcasted once every 5 minutes, per account.
STEEM_MIN_PAYOUT_SBD
Rewards of less than 0.020 SBD
are considered “dust” and will not receive payout.
STEEM_NULL_ACCOUNT
This defines the null
account used by the blockchain as the canonical account designated to burn assets.
The blockchain checks all asset types transferred to this account, thus, even reward balances and VESTS are burned. See: operation_time_tests.cpp
STEEM_REVERSE_AUCTION_WINDOW_SECONDS
Prior to HF6, there was no reverse auction logic. From HF6 to HF19, the reverse auction window is 30 minutes.
In HF20, the reverse action is being reduced to 15 minutes. See: #1874, #1878
STEEM_SOFT_MAX_COMMENT_DEPTH
A comment is nested at a maximum depth of 255. As a soft limit, it is enforced by the witness_plugin
. See: witness_plugin.cpp
Prior to HF17, the maximum comment depth was 6. See: #767
STEEM_SAVINGS_WITHDRAW_TIME
This value sets the timelock of 3 days for funds being withdrawn from savings. Funds can be transferred into savings instantly, but require 72 hours (3 days) to withdraw from savings. This will guarantee there is at least 1 business day during which you can contact your recovery agent.
STEEM_UPVOTE_LOCKOUT_HF17
Accounts may not increase payout within last 12 hours before payout, since HF17.
STEEM_VESTING_WITHDRAW_INTERVALS
Sets the power-down rate, which is fulfilled once a week over 13 weeks.
Prior to HF16, this value was 104 weeks.


binary
bugs
Why this hackerspace is only open to women, non-binary, trans, and intersex people
in progress...


Swine fever: New Indonesian festival celebrates pigs
LAKE TOBA, Indonesia (AP) - Christian residents in Muslim-majority Indonesia’s remote Lake Toba region have launched a new festival celebrating pigs that they say is a response to efforts to promote halal tourism in the area.
The festival features competitions in barbecuing, pig calling and pig catching as well as live music and other entertainment. Organizers say the events are part of the culture of the largely Christian community that lives in the area.
Lake Toba is one of the destinations that the government is promoting under its “10 new Balis” program, which aims to boost tourism and diversify Southeast Asia’s largest economy. Indonesia is a secular nation, but it is also the world’s most populous Muslim-majority nation.
Christians in the Lake Toba area say they are worried that efforts will be made to promote the lake as halal tourism spot. Halal tourism aims to attract Muslim families by meeting their religious and dietary requirements - including no alcohol, certified food and facilities such as segregated swimming pools.
Pigs are considered unclean animals in Islam and the consumption of pork is prohibited. By starting a festival celebrating the animal, organizers say they can both celebrate their own culture and protest plans for halal tourism.
The event, held for the first time late last month, attracted more than a thousand people from nearby villages and some tourists. Organizer say they plan to make it an annual event.
The government has denied it is promoting halal tourism.
Lake Toba, created by a volcanic explosion, is 100 kilometers (62 miles) long, 30 kilometers (19 miles) wide and about half-a-kilometer (1,640 feet) deep.
Sign up for Daily Newsletters
Copyright © 2019 The Washington Times, LLC.
Please read our comment policy before commenting.


Seth's Presentations
Speaker Workshop
Introduction
The Social Developer
The Technical Story
Presentation Mechanics


Money Play. How should Red play 53?
pips Red=107 White=118
(CorrectAnswer= 0/0, ErrorScore= 0)
Over the board 13/5 was played but that is a blunder.
That checker on Red’s mid-point is needed to keep the pressure on White’s blot on Red’s 11-pt and to give him a difficult choice with his small numbers.
Both 10/5, 8/5 or the simple 10/2 are correct. If White hits the checker on the mid-point Red may make an anchor in White’s board and this is a situation where he may be better off with two checkers back rather than one.
This technique is often overlooked in live play and I think it is an important technique to learn. Backgammon is all about pressure and here 13/5 takes the pressure off White.
That checker on Red’s mid-point is needed to keep the pressure on White’s blot on Red’s 11-pt and to give him a difficult choice with his small numbers.
Both 10/5, 8/5 or the simple 10/2 are correct. If White hits the checker on the mid-point Red may make an anchor in White’s board and this is a situation where he may be better off with two checkers back rather than one.
This technique is often overlooked in live play and I think it is an important technique to learn. Backgammon is all about pressure and here 13/5 takes the pressure off White.
1. Cubeful 2-ply 13/5 Eq.: -0.741 0.278 0.042 0.001 - 0.722 0.063 0.002 2. Cubeful 2-ply 13/8 6/3 Eq.: -0.799 (-0.059) 0.270 0.042 0.001 - 0.730 0.072 0.003 3. Cubeful 2-ply 13/8 10/7 Eq.: -0.816 (-0.076) 0.266 0.041 0.001 - 0.734 0.068 0.003 4. Cubeful 2-ply 13/10 8/3 Eq.: -0.818 (-0.077) 0.269 0.039 0.001 - 0.731 0.075 0.003 5. Cubeful 2-ply 13/10 6/1 Eq.: -0.854 (-0.114) 0.266 0.039 0.001 - 0.734 0.084 0.003


{% extends "base.html" %} {% block title %}Register{% endblock %} {% block head %} {% endblock %} {% block content %}
Fill out the form and get started instantly
Please keep your credentials safe all the time :).
Are You A Teacher?


' Enter your program here, and press Run Code to see the output. BEGIN MAINPROGRAM Display "Hello, world!" END MAINPROGRAM
Hello, world!


This is my second game made with unity. It is a simple Pong game made for two player. You control the left paddel with W & S, you control the paddel on the right with UP on the arrow keys & Down on the arrow keys.
DOWNLOADS Please note all downloads are from OneDrive. Once you click on the link you will be taken to OneDrive. Wait a moment and the download will become a avilable. If you are downloading the full project. Click the link and then download in OneDrive.


Child of Light
Characters
Aurora
Igniculus
Rubella
Plot
Chapter 1
Most text comes from Wikipedia and the Fandom CoL Wiki
Wikipedia
CoL Wiki


class Binding
constructor: (@name, @expr) ->
@bindings: []
A Binding instance is created for each binding attribute in the DOM. Mostly the Binding class is used as a static place to register new bind handlers.
class Binding
constructor: (@name, @expr) ->
@bindings: []
Adds a binding handler that will be run for each attribute whose name matches @prefix + name
. The handler
is
a function that receives three arguments: the jQuery element the attribute was on, the value of the attribute
(usually an expression), and the controller for this area of the page.
If the handler removes the element from its parent (to store as a template for cloning into repeats or ifs) then
processing will stop on the element and its children immediately. This allows you to recurse into the element
with new controllers by using element.bindTo(newChildController)
.
If a new controller is returned from the handler this controller will be used for the remaining handlers and the children of the element.
The priority
argument is optional and allows handlers with higher priority to be run before those with lower
priority. The default is 0
.
Example: This binding handler adds pirateized text to an element.
Binding.addBinding('my-pirate', function(element, expr, controller) {
controller.watch(expr, function(value) {
value = (value+'' || '')
.replace(/\Bing\b/g, "in'")
.replace(/\bto\b/g, "t'")
.replace(/\byou\b/, 'ye')
+ ' arrrr!'
element.text(value)
}
})

This text will be replaced.

@addBinding: (name, options, handler) ->
if typeof options is 'function'
handler = options
options = {}
else unless options
options = {}
entry =
name: options.name or name
priority: options.priority or 0
keepAttribute: options.keepAttribute
handler: handler
@bindings[name] = entry
@bindings.push entry
@bindings.sort bindingSort
entry
Returns a binding object that was added with addBinding()
.
@getBinding: (name) ->
@bindings[name] if @bindings.hasOwnProperty(name)
Removes a binding handler that was added with addBinding()
.
Example:
Binding.removeBinding('pirate')

This text will not be replaced.

@removeBinding: (name) ->
entry = @getBinding(name)
return unless entry
delete @bindings[name]
@bindings.splice @bindings.indexOf(entry), 1
Shortcut, adds a handler that executes the expression when the named event is dispatched.
Example: Handles the click event.
Binding.addEventBinding('on-click')
<button on-click="window.alert('hello!')">Say Hello</button>
@addEventBinding: (name, options) ->
eventName = name.split('-').slice(1).join('-')
@addBinding name, options, (element, attr, controller) ->
expr = attr.value
element.on eventName, (event) ->
event.preventDefault()
unless element.attr('disabled')
controller.thisElement = element
controller.eval expr
delete controller.thisElement
Shortcut, adds a handler that responds when the given key is pressed, e.g. Binding.addEventBinding('on-esc', 27)
.
@addKeyEventBinding: (name, keyCode, ctrlKey, options) ->
@addBinding name, options, (element, attr, controller) ->
expr = attr.value
element.on 'keydown', (event) ->
return if ctrlKey? and (event.ctrlKey isnt ctrlKey and event.metaKey isnt ctrlKey)
return unless event.keyCode is keyCode
event.preventDefault()
unless element.attr('disabled')
controller.thisElement = element
controller.eval expr
delete controller.thisElement
Shortcut, adds a handler to set the named attribute to the value of the expression.
Example
Binding.addAttributeBinding('attr-href')
allows
My Profile
which would result in
My Profile
@addAttributeBinding: (name, options) ->
attrName = name.split('-').slice(1).join('-')
@addBinding name, options, (element, attr, controller) ->
expr = attr.value
controller.watch expr, (value) ->
if value?
element.attr attrName, value
element.trigger attrName + 'Changed'
else
element.removeAttr attrName
Shortcut, adds a handler to toggle an attribute on or off if the value of the expression is truthy or false,
e.g. Binding.addAttributeToggleBinding('attr-checked')
.
@addAttributeToggleBinding: (name, options) ->
attrName = name.split('-').slice(1).join('-')
@addBinding name, options, (element, attr, controller) ->
expr = attr.value
controller.watch expr, (value) ->
element.prop attrName, value and true or false
Processes the bindings for the given jQuery element and all of its children.
@process: (element, controller) ->
unless controller instanceof Controller
throw new Error 'A Controller is required to bind a jQuery element.'
slice = Array::slice
walker = new Walker element.get(0)
processed = []
walker.onElementDone = (node) ->
if processed.length and processed[processed.length - 1].get(0) is node
processed.pop().triggerHandler('processed')
while node = walker.next()
element = $ node if node isnt walker.root
parentNode = node.parentNode
Finds binding attributes and sorts by priority.
attributes = slice.call(node.attributes)
.map(getBoundAttributes)
.filter(filterAttributes)
.sort(sortAttributes)
processed.push element if attributes.length
Go through each binding attribute from first to last.
while attributes.length
attribute = attributes.shift()
binding = attribute.binding
Remove the binding handlers so they only get processed once. This simplifies code and also makes the DOM cleaner.
unless binding.keepAttribute
element.removeAttr(attribute.name)
Calls the handler function allowing the handler to set up the binding.
if binding.name.slice(-2) is '-*'
Wildcard bindings get the camelcased name
attribute.match = attribute.name.replace(binding.name.slice(0, -1), '')
attribute.camel = attribute.match
.replace /[-_]+(\w)/g, (_, char) -> char.toUpperCase()
result = binding.handler element, attribute, controller
Stops processing of this element (and its children will be skipped) if the element was removed from the DOM. This is used for bind-if and bind-each etc.
if node.parentNode isnt parentNode
processed.pop()
break
If the binding returns false it signifies a new controller has taken over
if result is false
walker.skip()
processed.pop()
break
element
getBoundAttributes = (attr) ->
If a binding is registered for the exact name or for prefix-* use that
binding = Binding.getBinding(attr.name)
unless binding
parts = attr.name.split('-')
while parts.length > 1
parts.pop()
break if (binding = Binding.getBinding(parts.join('-') + '-*'))
unless binding
if expression.isInverted attr.value
binding = Binding.getBinding('attr-*')
Cache in an object since attr.value will empty once it is removed
if binding
binding: binding, name: attr.name, value: attr.value
filterAttributes = (binding) -> binding
sortAttributes = (a, b) -> b.binding.priority - a.binding.priority
bindingSort = (a, b) -> b.priority - a.priority
Sets up the binding handlers for this jQuery element and all of its descendants
jQuery.fn.bindTo = (controller) ->
if this.length isnt 0
Binding.process(this, controller)
chip.Binding = Binding
class Walker
constructor: (@root) ->
@current = null
A callback to do additional things when a node and it's children are done
onElementDone: ->
Get the next element and process it
next: ->
if @current is null
@current = @root
else
@current = @placeholder if @current isnt @root and @current.parentNode is null
@current = @traverse @current
Save a placeholder for when a node is removed from the DOM so we can continue walking
if @current
@placeholder =
parentNode: @current.parentNode
nextElementSibling: @current.nextElementSibling
else
@placeholder = null
@onElementDone @root
@current
traverse: (node) ->
if node.nodeType
child = node.firstElementChild
return child if child
while (node isnt null)
@onElementDone node if node.nodeType
return null if node is @root
sibling = node.nextElementSibling
return sibling if sibling
node = node.parentNode
node
Skip over the current element (don't walk its children) on next call to next()
skip: ->
@current = @placeholder


Dahlia Landon, MBA, President and CEO: Arthur Landon, upon his retirement, could think of no one better to pass the rings to than his Oxford-educated granddaughter, Dahlia, who had already proven herself indispensable to the company in her previous role as Vice President of Business Development. Prior to that, Dahlia earned her business chops as Vice President of Product Development for Naftu Financial Group, in New York City.


CreditWorthy
Loan Money
Loan Amount:
Year(s):
1 year
2 years
Interest:
Calculate
Principal Loan:
Interest Rate:
Total Loan:
EMI:
Confirm Loan
Balance
CREDIT SCORE
%
Principal Loan:
Interest Rate:
Total Loan:
EMI:
Payment
Payment
EMI Payment:
For the Month of:
January
February
March
April
May
June
July
August
September
October
November
December
Pay


Cacti - T. pachanoi
My name's Ricky and this is a description of my first 'trip' using Mescaline.
Early in the afternoon I as able to attain one and a half feet of the cactus plant San Pedro. After forty five minutes of the time consuming task of removing the spines and peeling off the waxy-like skin I sliced off the darker material and ground it up in a bowl mixed with a significant amount of sugar to help remove the taste. Unfortunatley, San Pedro is just about the most vile textured and gluggy plant I've come across when eaten in this fashion. After 45 minutes of slowly working my way through my bowl of slime I was finally done and ready for my adventure.
One and a half hours later I began to feel the effects; not obvious or overpowering like MDMA. It was just a slight change in 'perception'. The light in my room started to phase from bright to dark, but when I noticed it happening my mind accepted it rather then noticing it as something unnatural. Two hours in I got in contact with one of my friends and decided to walk to his house. The walk there, a few kilometers, seemed like a breeze. I felt like I was floating and that my upper body was moving forward independent of any effort in my legs. About half way I became aware of the form that my mind was starting to perceive my surroundings. As I listened to happy hardcore music my environment felt very much like a cartoon. Colours, sounds and shapes all started to take on a very bright and friendly aura.
Upon reaching my friend's house we had a few conversations over the course of two hours that I felt were a little one sided. For every word that I spoke in a sentence my mind felt compelled to spawn a new set of ideas as a reference. Unfortunately this meant that by the time I had finished a sentence I had often forgotten what it was being said in response to. As I spoke, my friends seemed like they were no longer conscious beings existing in a shared environment, but rather moving elements of the environment. I felt as though my understanding and comprehension was far above that of a normal functioning being.
After a few hours I walked home, this time finding that the colours of the street lent themselves more to the chilled out music I was playing. Often I would find that entire streets seemed to melt into a blue hue simply as a personification of the emotions brought on through the music. However, on my journey home I began to notice a distinct alteration of my perception of time. As something caught my interest in the street I found that my mind would work profusely towards unraveling it and finding a conclusion to it's 'meaning' I guess. All of this would happen in the space of several seconds, leaving me with a conclusion, a process, and what seemed like hours of thinking patterns that, in reality, only occurred within the time it took me to walk five paces.
Upon returning home, I attempted to write down some of the ideas that I had focused on during my journey home. This is where my vision started to betray me. It seemed that as I wrote, my mental processing of the sentence I was writing worked at twice the speed of the action of putting pen to paper. I was left watching my hand form the letters to spell the words of the sentence whilst completely forgetting where the sentence was actually headed. Nevertheless I ended up with much legible material the next morning. I went to bed a short while later and just let my mind roam, forming patterns and stories without meaning as I forced myself to let go of trying to understand their relevence.
Mescaline allowed my mind to work so fast that I found it impossible to translate my thoughts accurately into language. It gave me the ability to evolve ideas at the speed of light whilst still leaving me in a mental state able to comprehend what was happening. Very positive experience that I intend to repeat.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


7 cosNotification Examples
7.1 A Tutorial on How to Create a Simple Service
Interface Design
To use the cosNotification application clients must be implemented. There are twelve types of clients:
- Structured Push Consumer
- Sequence Push Consumer
- Any Push Consumer
- Structured Pull Consumer
- Sequence Pull Consumer
- Any Pull Consumer
- Structured Push Supplier
- Sequence Push Supplier
- Any Push Supplier
- Structured Pull Supplier
- Sequence Pull Supplier
- Any Pull Supplier
The interfaces for these participants are defined in CosNotification.idl and CosNotifyComm.idl.
Generating a Client Interface
We start by creating an interface which inherits from the correct interface, e.g., CosNotifyComm::SequencePushConsumer. Hence, we must also implement all operations defined in the SequencePushConsumer interface. The IDL-file could look like:
#ifndef _MYCLIENT_IDL #define _MYCLIENT_IDL #include <CosNotification.idl> #include <CosNotifyComm.idl> module myClientImpl { interface ownInterface:CosNotifyComm::SequencePushConsumer { void ownFunctions(in any NeededArguments) raises(Systemexceptions,OwnExceptions); }; }; #endif
Run the IDL compiler on this file by calling the ic:gen/1 function. This will produce the API named myClientImpl_ownInterface.erl. After generating the API stubs and the server skeletons it is time to implement the servers and if no special options are sent to the IDl compiler the file name is myClientImpl_ownInterface_impl.erl.
The callback module must contain the necessary functions inherited from CosNotification.idl and CosNotifyComm.idl.
How to Run Everything
Below is a short transcript on how to run cosNotification.
%% Start Mnesia and Orber mnesia:delete_schema([node()]), mnesia:create_schema([node()]), orber:install([node()]), mnesia:start(), orber:start(), %% If cosEvent not installed before it is necessary to do it now. cosEventApp:install(), %% Install cosNotification in the IFR. cosNotificationApp:install(30), %% Register the application specific Client implementations %% in the IFR. 'oe_myClientImpl':'oe_register'(), %% Start the cosNotification application. cosNotificationApp:start(), %% Start a factory using the default configuration ChFac = cosNotificationApp:start_factory(), %% ... or use configuration parameters. ChFac = cosNotificationApp:start_factory([]), %% Create a new event channel. Note, if no QoS- anr/or Admin-properties %% are supplied (i.e. empty list) the default settings are used. {Ch, ChID} = 'CosNotifyChannelAdmin_EventChannelFactory': create_channel(ChFac, DefaultQoS, DefaultAdmin), %% Retrieve a SupplierAdmin and a Consumer Admin. {AdminSupplier, ASID}= 'CosNotifyChannelAdmin_EventChannel':new_for_suppliers(Ch, 'OR_OP'), {AdminConsumer, ACID}= 'CosNotifyChannelAdmin_EventChannel':new_for_consumers(Ch,'OR_OP'), %% Use the corresponding Admin object to get access to wanted Proxies %% Create a Push Consumer Proxie, i.e., the Client Push Supplier will %% push events to this Proxy. {StructuredProxyPushConsumer,ID11}= 'CosNotifyChannelAdmin_SupplierAdmin': obtain_notification_push_consumer(AdminSupplier, 'STRUCTURED_EVENT')), %% Create Push Suppliers Proxies, i.e., the Proxy will push events to the %% registered Push Consumers. {ProxyPushSupplier,I4D}='CosNotifyChannelAdmin_ConsumerAdmin': obtain_notification_push_supplier(AdminConsumer, 'ANY_EVENT'), {StructuredProxyPushSupplier,ID5}='CosNotifyChannelAdmin_ConsumerAdmin': obtain_notification_push_supplier(AdminConsumer, 'STRUCTURED_EVENT'), {SequenceProxyPushSupplier,ID6}='CosNotifyChannelAdmin_ConsumerAdmin': obtain_notification_push_supplier(AdminConsumer, 'SEQUENCE_EVENT'), %% Create application Clients. We can, for example, start the Clients %% our selves or look them up in the naming service. This is application %% specific. SupplierClient = ... ConsumerClient1 = ... ConsumerClient2 = ... ConsumerClient3 = ... %% Connect each Client to corresponding Proxy. 'CosNotifyChannelAdmin_StructuredProxyPushConsumer': connect_structured_push_supplier(StructuredProxyPushConsumer, SupplierClient), 'CosNotifyChannelAdmin_ProxyPushSupplier': connect_any_push_consumer(ProxyPushSupplier, ConsumerClient1), 'CosNotifyChannelAdmin_StructuredProxyPushSupplier': connect_structured_push_consumer(StructuredProxyPushSupplier, ConsumerClient2), 'CosNotifyChannelAdmin_SequenceProxyPushSupplier': connect_sequence_push_consumer(SequenceProxyPushSupplier, ConsumerClient3),
The example above, exemplifies a notification system where the SupplierClient in some way generates event and pushes them to the proxy. The push supplier proxies will eventually push the events to each ConsumerClient.


Are you ready to fight the world on the blockchain? The project will release soon. Sign up for a newsletter:


<script src="RGraph.common.core.js"></script> <script src="RGraph.hbar.js"></script>Put this where you want the chart to show up:
<canvas id="cvs" width="1000" height="450"> [No canvas support] </canvas>This is the code that generates the chart - it should be placed AFTER the canvas tag(s):


IgxHierarchicalGrid with enabled batch editing. You can edit parent as well as child layout records. You can also add a record on root level using Add singer button.
You can read more about configuring the igx-hierarchical-grid component in the
README or the
official documentation.


Form is currently offline, please email directly If you believe I am an ideal potential candidate, then I would love to hear from you. Please fill out the form below and I will respond to you within 24-48hrs


|
MysoreScript
|
Value wraps an object pointer. More...
#include <interpreter.hh>
Public Member Functions | |
| Obj * | address () |
| Returns the address of the object. More... | |
| Value () | |
| Default constructor, the value is null. More... | |
| Value (Obj o) | |
| Construct a new value from an object pointer. More... | |
| Value (Value &o) | |
| Copy constructor. More... | |
| Value (Value &&o) | |
| Move constructor. More... | |
| ~Value () | |
| Destructor, responsible for removing the reference from the GC's view. More... | |
| void | operator= (Obj o) |
| void | operator= (Value &o) |
| operator Obj () | |
| bool | isInteger () |
| Returns true if this object is a small integer, false otherwise. More... | |
| int | getIntValue () |
| Returns the integer value of this object, if it is a small integer. More... | |
Value wraps an object pointer.
It is responsible for informing the garbage collector that the object is referenced outside of the GC'd heap and so should not be deallocated.
Note that the GC tracks the stack, so it is not necessary to use this class for object pointers stored purely on the stack.
Definition at line 25 of file interpreter.hh.
|
inline |
Default constructor, the value is null.
Definition at line 57 of file interpreter.hh.
|
inline |
Construct a new value from an object pointer.
Definition at line 61 of file interpreter.hh.
|
inline |
Copy constructor.
Definition at line 65 of file interpreter.hh.
|
inline |
Move constructor.
Definition at line 69 of file interpreter.hh.
| Interpreter::Value::~Value | ( | ) |
Destructor, responsible for removing the reference from the GC's view.
Definition at line 313 of file interpreter.cc.
|
inline |
Returns the address of the object.
This is used so that the storage can be used for values in a symbol table. All globals are handled by creating an instance of this class and then adding the address to the symbol table.
Definition at line 50 of file interpreter.hh.
|
inline |
Returns the integer value of this object, if it is a small integer.
Definition at line 94 of file interpreter.hh.
|
inline |
Returns true if this object is a small integer, false otherwise.
Definition at line 87 of file interpreter.hh.
|
inline |
Definition at line 80 of file interpreter.hh.
|
inline |
Definition at line 78 of file interpreter.hh.
|
inline |
Definition at line 79 of file interpreter.hh.


Last semester I learnt about probability density functions (PDFs). These are the bread and butter of statistics: a concept that comes back over and over again in pretty much every (parametric) statistical procedure. But one thing frustrated me: it is very hard to imagine what a PDF is when this is all you see:
\[f(x | \mu,\sigma^2) = \frac{1}{\sqrt{2 \sigma^2 \pi}} \cdot e^{-\frac{(x-\mu)^2}{2\sigma^2}}\]
This is the normal distribution: the familiar bell curve with on the \(x\)-axis any real value, and on the \(y\)-axis the probability density. The left side of the equation shows that the probability density of \(x\) depends on two parameters: \(\mu\) and \(\sigma^2\). These are the mean and variance of the distribution. My question was: for all those distribution functions commonly used in the statistical literature, what happens to the shape when we change their parameters?
I could already make plots in R
, but in order to see the changes as they happen, it was obvious to me that I needed some form of application that dynamically updates the graph as parameters are changed. Then I found shiny, a framework by the makers of RStudio. Shiny makes it ridiculously easy to create interactive dashboards and applications that input variables to R
and output visually pleasing graphs, tables, and anything else you can squeeze out of it. So I started programming different probability density functions and their associated parameters into this framework.
I created a web-app called Densy
, a fun-sounding combination of “density” and “shiny”. Densy
is not finished, because I went on to do other things, but I still use it every now and then to get a feeling with probability distributions. For example, when I stumbled upon the Cauchy distribution after a long time, I went back to Densy
to play with it.
In Densy
, you can edit parameters of distribution functions and see the changes immediately. This is what it looks like for the normal distribution I outlined above:
In the left-hand panel, you can easily change the parameters \(\mu\) and \(\sigma\), and you can opt to see a confidence interval as well.
Around this time, I also found the plotting library plotly, which can make fantastic interactive 3d graphs like the one below. Go on, mouse over it & drag the image around! (if you’re on mobile, I’m terribly sorry but this does not work for you haha).
So I decided to also implement several bivariate distributions into the application. Bivariate distributions need three-dimensional graphs because they have a density value (z-axis) on two variables (x and y axes). Because they are 3d, these distribution functions are even more fun to play around with, so do give it a try!
Just go to my shinyapps.io account to see the app in action. If it doesn’t work, that’s because my free account gets only limited server time. You’ll have to wait until next month. However, the best way to run Densy
is if you have RStudio
or R
with the shiny
package. You can simply run the app by typing in the following commands:
install.packages("devtools")
devtools::install_version("plotly", version = "3.6.0", repos = "http://cran.us.r-project.org")
shiny::runGitHub("Densy-Develop", "vankesteren")
Click “open in browser” at the top for the best experience. How cool!


The corpse of Pierce's scout, who came here looking for the entrance. Search for any clues he might have left.
Search the corpse.


This feature allows you to create aliases on the fly.
Simply use anything@{{ custom_domain.domain }}
next time you need an email address.
The alias will be created the first time it receives an email.
Delete Domain
Please note that this operation is irreversible.
All aliases associated with this domain will be also deleted


Stanford Vision Systems
Vision inspired systems research
{% include navbar.html %}
About
We are a group of computer vision and systems researchers at Stanford
University whose focus is on building next generation systems for
video/image processing. Unlike typical machine learning or computer systems
groups, our work crosses the boundary between theory and implementation.
This trait has enabled us to produce useful systems that are orders of
magnitude higher performance than the state of the art.
Recent News
Lorem Ipsum has been the industry's standard dummy text ever since the
1500s, when an unknown printer took a galley of type and scrambled it to
make a type specimen book.
It is a long established fact that a reader will be distracted by the
readable content of a page when looking at its layout. The point of
using Lorem Ipsum is that it has a more-or-less normal distribution.
Highlights
Contrary to popular belief, Lorem Ipsum is not simply random text.  Richard McClintock, a Latin professor at Hampden-Sydney
College in Virginia, looked up one of the more obscure Latin words,
consectetur, from a Lorem Ipsum passage, and going through the cites of the
word in classical literature, discovered the undoubtable source. Lorem Ipsum
comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum"
(The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a
treatise on the theory of ethics, very popular during the Renaissance. The
first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line
in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text.  Richard McClintock, a Latin professor at
Hampden-Sydney College in Virginia, looked up one of the more obscure
Latin words, consectetur, from a Lorem Ipsum passage, and going through
the cites of the word in classical literature, discovered the
undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33
of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by
Cicero, written in 45 BC. This book is a treatise on the theory of
ethics, very popular during the Renaissance. The first line of Lorem
Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section
1.10.32.
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium
doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore
veritatis et quasi architecto beatae vitae dicta sunt explicabo.  Neque
porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur,
adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et
dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis
nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid
ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea
voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem
eum fugiat quo voluptas nulla pariatur?
Members
Recent Publications
[full list]
J. Smith, F. Jones, P. Johnson. "
Optimizing
Things that Need to be Optimized". WXYZ (under
review). Sep. 2017. [
pdf]
J. Smith, F. Jones, P. Johnson. "
Optimizing Things that Need to
be Optimized". WXYZ (under review). Sep. 2017. [
pdf]
J. Smith, F. Jones, P. Johnson. "
Optimizing Things that Need to
be Optimized". WXYZ (under review). Sep. 2017. [
pdf]
J. Smith, F. Jones, P. Johnson. "
Optimizing Things that Need to
be Optimized". WXYZ (under review). Sep. 2017. [
pdf]


Introduction
ZParse is a multi-purpose, extensible, self-defineable javascript template parsing system which lets you define your templating rules. It acts like a preprocessor and parses strings containing defined delimiters and tags into a javascript function. It is similar to TrimPath JavaScript Template. The difference and its strength is that instead of defining the syntax inside the script it allows YOU to create and define the syntax yourself as you need. Of course there is a default syntax included for people who don't need a custom syntax. But the main intention for me creating this parser is to be multi-purpose, so it can fullfill your demand. Therefore extensibility is very essential. Another strength of this parser is, that it parses the template tags into a DOM-like tree instead of replacing the tags with pre-defined functions to give you more flexibility and opportunity to take full advantage of javascript templating.
It is actually only tested in ie7 (minimal test ie6, it works recently), opera9 and firefox2. please contact me for bugs
Features at glance:
- Lightweight code to include (3kb compressed js file).
- Very extensible
- Self-defineable syntax
- DOM-like tag parsing. Instead of search and replace
- Advanced tag handling. Allows you to gain access to its children and ancestors
- Advanced arguments handling. You can create argument like "create {object} extends {class}" and you will get object and class as your arguments variables
- A powerful-enough standard syntax
Using ZParse
First, in your HTML/JSP/PHP/ASP file, include the {your script path}/zparse.js JavaScript file.
The zparse.js file can live anywhere you want and may be renamed. It has no dependencies to other files. For example, you might move it to script/lib/zparse.js or js/zparse.js.After including zparse.js, a JavaScript variable named ZParse will hold an Object ready for you to use.
ZParse Class
ZParse is a namespace combined with a Class. As a Class it can construct parser objects, which is independent to each other. So many parser with different syntax rules can be created without conflict.
usage :
new ZParse(implementation)parameters :
example :
ZParse.prototype.parse
Parse template string to template function. After executing this function, properties sourceArray, sourceTree, functionText and function functionScript(data) can be accessed.
usage :
parser.parse(implementation)parameters :
return :
{Boolean}, Parsing status, false if failed, true if succeeded.example :
ZParse.prototype.process
Process created template function with data resource. This function requires the execution of parse() function.
usage :
parser.process(data, bind)parameters :
return :
{String}, text output.example :
ZParse.parseXMLToJSON
Simple but good DOM/XML to JSON converter.
usage :
ZParse.parseXMLToJSON(xmlObject)Default Syntax
This section describes the syntax for ZParse default implementation, explaining its usage and available markups and tags.
First, you have to include implementation.js. It loads an Object called Implementation.
You can print any javascript expression except { } using ${expr} . If you need to use { }, you can use <$expr:> instead.
syntax :
${ javascript variable to print }<$ javascript variable to print :>
example :
Code Snippet
You can insert javascript code by using <% your code %>.
example :
Statements
Statement tags are nestable in just like JavaScript statement blocks ( if / else / for ) are nestable.
if, elseif, else. Conditional statements
You can use if / else condition as you do in javascript.
syntax :
<:if condition :> todo <:/if:><:elseif condition :> todo <:/elseif:>
<:else:> todo <:/else:>
example :
for, foreach, else. Conditionable loop statements
You can use for / foreach loop statement as you do in javascript. You can also create an exception if the object you iterate undefined or if the array doesn't contain any element by using else tag after for / foreach tag.
syntax :
<:for index in array/object :> todo <:/for:><:foreach element in array/object :> todo <:/foreach:>
<:else:> todo <:/else:>
example :
Macro declaration
A macro is like a javascript function, except the body of the macro is another zparse template, not javascript. Macro name can be any javascript variable or even a property of a javascript object. use $data.{macroName} if you want to declare your object in data resource or use window.{macroName} if you want your macro to be declared as global function.
syntax :
<:macro name( arg1 [, arg2 ...] ):> todo <:/macro:><:macro object.name( arg1 [, arg2 ...] ):> todo <:/macro:>
example :
cdata
You can use the cdata markup syntax to tell zparse to ignore processing for a block of text. The text will be emitted without any tag or markup processing.
syntax :
<:cdata:> ... <:/cdata:>limitation :
because the implementation is executed after building the DOM-like tree, any zparse tags inside the cdata block must be valid. So if you have any if, else, elseif, for, forelse, macro, etc. in cdata you have to close them properly.
Tutorial
coming soon...
Creating Custom Template Rules
With ZParse you are allowed to create your own rules. This can be realized with the implementation object. The implementation object is a simple javascript object with certain structure.
delimiter and tag name
They are just placeholders, it's not restricted to anything.
opener and closer
Opener and closer can be any character that you wish to be delimiter for your template tag. For example, if you want to have syntax like ${variable}, you have to define ${ as opener and } as closer.
tag type
There are currently 2 types implemented: single and block. Single tags can't contain any child and can't be nested. Block tags can contain children and can be nested, but they'll have to be closed properly.
example :
tag arguments
Arguments are automatically parsed argument string. It is optional, if you use it, tree.arguments.{your argument} will be accessible. If not you can still use tree.argSource to gain access inside delimiter.
tree argument
Tree is current child to be parsed in handler function. It is a DOM-like object that contains properties. It has information about its parent, children, arguments, etc.
parameters :
content
If you have a block tag, you can access content argument. It contains the parsed string of the children. If you want to access the unparsed string use tree.innerSource.
caller
With caller you have access to the parser object that calls the handler.
Demo
About Me
I am Rizqi, born in Indonesia, living in Hamburg, Germany. I have experiences in coding javascript since I was 14. But I was too shy and lazy to be active in the web. So this is my first contribution to the net. I appreciate any kind of response from you (except spam), please contact me.