Conventions¶
Coordinate frames¶
The diffractometer equation¶
We use the vector \(\vec{h}\) to describe a position in fractional reciprocal space in terms of the reciprocal lattice basis vectors \(\vec{a^*}, \vec{b^*}\) and \(\vec{c^*}\).
The special positions at which h, k and l are integer define the reciprocal lattice points for which (hkl) are the Miller indices.
The basic diffractometer equation relates a position \(\vec{h}\) to a position \(\vec{r_\phi}\) in Cartesian reciprocal space. This space is defined so that its axes coincide with the axes of the laboratory frame. The distinction is necessary because distances in reciprocal space are measured in units of \(\unicode{x212B}^{-1}\). However, for convenience it is often acceptable to refer to either Cartesian reciprocal space or the real space laboratory frame as the “lab frame”, when the correct choice is clear by context. The diffractometer equation is
where \(\mathbf{R}\) is the goniostat rotation matrix and \(\mathbf{A}\) is the crystal setting matrix, while its inverse \(\mathbf{A}^{-1}\) is referred to as the indexing matrix. The product \(\mathbf{A} \vec{h}\) may be written as \(\vec{r_0}\), which is a position in the \(\phi\)-axis frame, a Cartesian frame that coincides with the laboratory frame at a rotation angle of \(\phi=0\). This makes clear that the setting matrix does not change during the course of a rotation experiment (notwithstanding small “misset” rotations — see Orientation matrix.
For an experiment performed using the rotation method we use here \(\phi\) to refer to the angle about the actual axis of rotation, even when this is effected by a differently labelled axis on the sample positioning equipment (such as an \(\omega\) axis of a multi-axis goniometer). Only in code specifically dealing with sample positioning equipment might we need to redefine the labels of axes. Outside of such modules, the rotation angle is \(\phi\) and the axis of rotation is \(\vec{e}\), which together with the definition of the laboratory frame determine the rotation matrix \(\mathbf{R}\).
Orthogonalisation convention¶
Following [2] we may decompose the setting matrix \(\mathbf{A}\) into the product of two matrices, conventionally labelled \(\mathbf{U}\) and \(\mathbf{B}\). We name \(\mathbf{U}\) the orientation matrix and \(\mathbf{B}\) the reciprocal space orthogonalisation matrix. These names are in common, but not universal use. In particular, some texts (for example [6] refer to the product (i.e. our setting matrix) as the “orientation matrix”.
Of these two matrices, \(\mathbf{U}\) is a pure rotation matrix and is dependent on the definition of the lab frame, whilst \(\mathbf{B}\) is not dependent on this definition. \(\mathbf{B}\) does depend however on a choice of orthogonalisation convention, which relates \(\vec{h}\) to a position in the crystal-fixed Cartesian system. The basis vectors of this orthogonal Cartesian frame are fixed to the reciprocal lattice via this convention.
There are infinitely many ways that \(\mathbf{A}\) may be decomposed into a pair \(\mathbf{U} \mathbf{B}\). The symbolic expression of \(\mathbf{B}\) is simplified when the crystal-fixed Cartesian system is chosen to be aligned with crystal real or reciprocal space axes. For example, [2] use a frame in which the basis vector \(\vec{i}\) is parallel to reciprocal lattice vector \(\vec{a^*}\), while \(\vec{j}\) is chosen to lie in the plane of \(\vec{a^*}\) and \(\vec{b^*}\). Unfortunately, this convention is then disconnected from the standard real space orthogonalisation convention, usually called the PDB convention [7]. This standard is essentially universal in crystallographic software for the transformation of fractional crystallographic coordinates to positions in orthogonal space, with units of \(\unicode{x212B}\). In particular, it is the convention used in the cctbx [4]. The convention states that the orthogonal coordinate \(x\) is determined from a fractional coordinate \(u\) by
where the matrix \(O\) is the real space orthogonalisation matrix. This matrix transforms to a crystal-fixed Cartesian frame that is defined such that its basis vector \(\vec{i}\) is parallel to the real space lattice vector \(\vec{a}\), while \(\vec{j}\) lies in the \((\vec{a}, \vec{b})\) plane. The elements of this matrix made explicit in a compact form are
It is desirable to specify our reciprocal space orthogonalisation convention in terms of this real space orthogonalisation convention. [3] derives relationships between real and reciprocal space. Of particular interest from that text we have
By analogy, equate \(\vec{x^*}^\prime\) with \(\vec{h}\) and \(\mathbf{B}\) with \(\mathbf{M}^{-1}\). Also equate \(\mathbf{M}^\mathsf{T}\) with \(\mathbf{O}\) and \(\vec{x}^\prime\) with \(\vec{u}\). We then see that
where \(\mathbf{F}\) is designated the real space fractionalisation
matrix. This is easily obtained in cctbx by a method of a
cctbx.uctbx.unit_cell
object.
A symbolic expression for \(\mathbf{F}\) in terms of the real space unit cell parameters is given by [8] from which we derive \(\mathbf{B}\) simply:
with \(V = abc \sqrt{ 1 - \cos^2{\alpha} - \cos^2{\beta} - \cos^2{\gamma} + 2 \cos{\alpha}\cos{\beta}\cos{\gamma}}\)
Orientation matrix¶
The matrix \(\mathbf{U}\) “corrects” for the orthogonalisation convention implicit in the choice of \(\mathbf{B}\). As the crystal-fixed Cartesian system and the \(\phi\)-axis frame are both orthonormal, Cartesian frames with the same scale, it is clear that \(\mathbf{U}\) must be a pure rotation matrix. Its elements are clearly dependent on the mutual orientation of these frames.
It is usual to think of the orientation as a fixed property of the “sequence”. In practice the orientation is parameterised such that it becomes a function of time, to account for crystal slippage (the true degree of this is unknown but expected to be small; Mosflm uses crystal orientation parameters to account for inadequacies in other aspects of the experimental description). To reconcile these points, the current orientation may be expanded into a fixed, datum part and a variable time-dependent part that is parameterised. That gives
where \(\Psi\) is the combined rotation matrix for the misset expressed as three angles, \(\psi_x, \psi_y\) and \(\psi_z\) in the laboratory frame.
In Mosflm these angles are converted to their equivalents in the \(\phi-\) axis frame, where:
At this stage it is unclear which set of angles are the best choice for parameterisation of the crystal orientation.
The laboratory frame¶
An important design goal of the DIALS project is that all algorithms should be fully vectorial. By this we mean that it should be possible to change the reference frame arbitrarily and all calculations should work appropriately in the new frame.
Nevertheless, it is useful to adopt a particular standard frame of reference for meaningful comparison of results, communication between components of the software and for an agreed definition of what the laboratory consists of (incompatible definitions can be reasonably argued for, such as that it should be either fixed to the detector, or to the rotation axis and beam).
In the interests of both standardisation and practicality, we choose to adopt the Image CIF (imgCIF) reference frame [1], [5] for cases with a single axis horizontal goniometer. For beamlines with a vertical goniometer, we align the rotation axis with the \(Y\) rather than the \(X\) axis. This ensures the axis appears vertical in the image viewer, reducing confusion for the users. Such decisions can be made on a case-by-case basis within the specific format class used to read the images, giving the freedom to choose the most convenient coordinate system for the geometry of each experiment.
Summary of coordinate frames¶
\(\vec{h}\) gives a position in fractional reciprocal space, fixed to the crystal.
\(\mathbf{B}\vec{h}\) gives that position in the crystal-fixed Cartesian system (basis aligned to crystal axes by the orthogonalization convention)
\(\mathbf{UB}\vec{h}\) gives the \(\phi\)-axis frame (rotates with the crystal, axes aligned to lab frame at \(\phi=0\))
\(\mathbf{RUB}\vec{h}\) gives Cartesian reciprocal space (fixed wrt the laboratory)
The diffraction geometry relates this to the direction of the scattering vector \(\vec{s}\) in the laboratory frame
Projection along \(\vec{s}\) impacts an abstract sensor frame giving a 2D position of the reflection position on a sensor.
This position is converted to the pixel position for the 2D position on an image in number of pixels (starting 0,0 at the origin).
The DXTBX goniometer model¶
The following information is likely only to be of interest to developers of DIALS, since it is concerned with internal conventions for the representation of the goniostat rotation operator.
When one performs a rotation diffraction experiment, the goniostat rotation operator \(\mathbf{R}\), which was introduced in (2), represents the rotation of the sample in the real-space laboratory frame. Equivalently, it relates the laboratory frame to the rotated real-space coordinate system of the sample. By numbering the physical motors of a goniometer such that motor 1 is mounted to the laboratory floor, motor 2 is mounted on motor 1, motor 3 is mounted on motor 2, etc., \(\mathbf{R}\) can be expressed as a composition of rotation operators, one for each motor,
It is useful to represent \(\mathbf{R}\) this way because, in practice, the position of a gonimometer is usually recorded as an angular displacement for each motor \(i\), which gives the magnitude of the rotation \(\mathbf{R}_i\), combined with prior knowledge of the orientation of each motor’s axis in the laboratory frame when the goniometer is at its zero datum, which gives the axis vector of \(\mathbf{R}_i\).
DIALS uses the DXTBX package to handle the geometry of diffraction experiments. In DXTBX, it is assumed that only one goniometer motor will turn during a measurement scan. Numbering that motor \(n\), the various operators \(\mathbf{R}_i\) are grouped into three,
where \(\mathbf{R}' = \mathbf{R}_n\) is the scanning axis rotation and \(\mathbf{S}\) and \(\mathbf{F}\) are combined rotation operators,
\(\mathbf{S}\) is referred to as the ‘setting rotation’ (not to be confused with the crystal setting operator \(\mathbf{A}\)) and represents the combined rotation of all motors between the laboratory floor and the scanning motor \(n\). The setting rotation is so-named because it sets the orientation of the axis of \(n\). \(\mathbf{F}\) is referred to as the ‘fixed rotation’ and represents the combined rotation of all axes between \(n\) and the sample. Both \(\mathbf{S}\) and \(\mathbf{F}\) are constant throughout a scan, since they represent motors whose positions are set before starting the scan and remain fixed throughout the scan.
For example, a common diffractometer apparatus is the three-circle \(κ\) geometry. In this arrangement, the \(ω\) motor is fixed to the laboratory floor, the \(κ\) motor is mounted on \(ω\), and the \(φ\) motor is mounted on \(κ\) and holds the sample mount. During a typical rotation scan, either \(φ\) or \(ω\) will rotate, while the other two axes are held in a fixed orientation, chosen so as to explore a particular region of reciprocal space. In the case of a \(φ\) scan, \(\mathbf{S} = \mathbf{R}_ω \circ \mathbf{R}_κ\), \(\mathbf{R}' = \mathbf{R}_φ\) and \(\mathbf{F} = 𝟙\). In the case of an \(ω\) scan, \(\mathbf{S} = 𝟙\), \(\mathbf{R}' = \mathbf{R}_ω\) and \(\mathbf{F} = \mathbf{R}_κ \circ \mathbf{R}_φ\).
References


| outbox |
SFTP server, in read-only mode, where user credentials come from Central EGA |
|
| db |
The long-term database. |
|
| vault |
The long-term storage. |
|
| outgesters |
Front-facing HTTP(s) server, receiving POST requests to outgest files.
It is guarded by an external check regarding the given file access permissions.
It is based on standard OpenID Connect (OAuth2) authorization. |
|
| streamers |
Fetch the vault file internally and prepare streaming in Crypt4GH format. |
|


PCB Parameter Description
##PCB Dimension EasyEDA supports the design of PCBs up to 100cm * 100cm however we suggest our customers try to limit the design to a PCB size of no larger than 45cm * 45cm. We may have to charge more for PCB sizes greater than this because they are harder to fabricate and need a bigger box with more packaging to protect them in shipping.
- If the size is larger than 45cm, you just need to order any pay, we will contact you if you need to charge more via email
- If the size is smaller than 2cm, you need to penalize them to big size, or we can't help you to do the E-test.
##PCB Quantity EasyEDA uses a group buy model, so the price is very low, but the minimum number of PCBs should be 5 pcs. So for example, if you need 2 pcs, you need to order 5 pcs and similarly, if you need 7 pcs you need to order 10 pcs.
##PCB Thickness EasyEDA PCB provides 0.4mm, 0.6mm, 0.8mm, 1.0mm, 1.2mm, 1.6mm, 2.0mm thickness to choose from. If you need a 2.5mm or 3mm thickness board, please ask us for a quote via email. Please note that not all thicknesses will be available for all numbers of layers; for example no PCB house can fabricate a 32 layer PCB with a 0.4mm thickness!
##PCB Stack up ###2 Layer PCB stackup 1Oz
###2 Layer PCB stackup 2Oz
###4 Layer PCB stackup 1Oz
###4 Layer PCB stackup 2Oz
###6 Layer PCB stackup 1Oz
For other numbers of layers or for a different layer stack up, please email us before placing your order.
##Copper Weight You can select 1oz, 2oz, 3oz in our order page. For other copper weights, please ask us for a quote via email: we can help you to fabricate PCBs with copper weights from 0.5oz to 16oz.
##Different Design in Panel Some customers would like to merge more than 1 PCB in the same gerber. We know you want to save money but this may make it hard to cut the board outline and more importantly this will take a lot more time to pick up and package the PCB. Although by doing this, you just have the one order, this complicates the fabrication of the panel and separation of the individual PCBs, so we will usually charge more for this. Similarly, using holes or slots as breakoff sections between boards are treated the same way as putting more than one design on a panel, each with its' own board outline.
Note: This additional charge only applies if the PCBs on a panel are different. Boards such as in the left hand image below will not incur an additional charge because they are easy to pick up but boards such as in the right hand image would incur an additional charge.
If you are just in the prototype phase and want to save money, then you can use the following trick. Place your different designs all inside one overall board outline and use lines drawn in the silk layer to mark out the separate the PCBs. Then, when you receive the PCB, carefully cut them apart yourself (we recommend you do this before you assemble the PCBs!). Like the PCB shown below, the yellow lines are drawn in the silk layers showing how you can merge 3 different PCBs in one gerber without incurring any extra costs.
V-cut/V-Groove
This will help you to build a PCB Array to save time by making it faster to solder the PCB in SMT.
-
The V-cut line should be the same as the outline of the Sub-PCB. That is to say, there is zero space between the sub-boards.
-
The PCB panel needs to be larger than 8 * 8cm.
-
The V-cut line must cross the whole panel or else the factory can't add a V-groove on the PCB because the milling cutter may destroy any sub-PCBs on the V-cut line. They also cannot stop part way across the panel. The V-cut lines shown below are not acceptable:
##Material Details EasyEDA supports FR4-Standard Tg 140C, FR4-Tg 150C, FR4-High Tg 170C. The FR4 TG's lead time may be more than 6 days. 90% of EasyEDA orders use FR4-Standard. For more information about this, please check the FR4 Material pdf
##Smallest Holes Diameter 0.3mm for mechanical drill, 0.2mm for the laser drill. To save money, please use a minimum drill diameter of 0.3mm.
##Ring The width of the ring around vias or pads should be wider than 6mil/0.15mm.
##Min. Tracing/Spacing We support down to 4mil but to save money, please use 6mil.
##Impedance Control We support 5% and 10% precision. Please add enough information about your impedance control requirements to help us to fabricate your PCB.
##Gold Fingers If you wish to built PCBs that plug directly into edge connectors, such as memory cards, please choose Gold Fingers as shown in the image below:
##Half-cut/Castellated Holes If you need to build some PCBs as shown in the image below, please choose Half-cut holes.
##Panel by EasyEDA When your gerber is for just one design and need EasyEDA to help you to duplicate many copies onto one panel, you can use this option. You can drag across the rectangles to select then click on the panel to set how many rows and columns as shown in the image below:
For this image, we will merge 10 small PCBs to 1 big panel.
If you select the Edge Rails, we will add a 5mm board edge as shown in the image below: This is 2 rows and 5 cols panel PCB.
Stencil Parameter Description
A Stencil can help you to solder the PCB quickly. For efficient and reliable SMT assembly a Stencil is a must. EasyEDA can provide the option of NON-FRAMEWORK (or frameless) and FRAMEWORK stencils. The right hand image below shows a frameless stencil. Frameless stencils are cheaper and lower weight(0.2Kg) so they can help to reduce the shipping cost.


“Purato pacchato vāpi,
aparo ce na vijjati;
Atīva phāsu bhavati,
ekassa vasato vane.
If no-one else is found
in front or behind,
it’s extremely pleasant
to be dwelling alone in a forest grove.
Handa eko gamissāmi,
araññaṁ buddhavaṇṇitaṁ;
Phāsu ekavihārissa,
pahitattassa bhikkhuno.
Come now, I’ll go alone
to the wilderness praised by the Buddha.
It’s pleasant for a mendicant
to be dwelling alone and resolute.
Yogi-pītikaraṁ rammaṁ,
mattakuñjarasevitaṁ;
Eko attavasī khippaṁ,
pavisissāmi kānanaṁ.
Alone and self-disciplined,
I’ll quickly enter the delightful forest,
which gives joy to meditators,
and is frequented by rutting elephants.
Supupphite sītavane,
sītale girikandare;
Gattāni parisiñcitvā,
caṅkamissāmi ekako.

Ekākiyo adutiyo,
ramaṇīye mahāvane;
Kadāhaṁ viharissāmi,
katakicco anāsavo.
When will I dwell alone,
without a companion,
in the great wood, so delightful,
my task complete, free of defilements?
Evaṁ me kattukāmassa,
adhippāyo samijjhatu;
Sādhayissāmahaṁyeva,
nāñño aññassa kārako.
This is what I want to do:
may my wish succeed!
I’ll make it happen myself,
for no-one can do another’s duty.
Esa bandhāmi sannāhaṁ,
pavisissāmi kānanaṁ;
Na tato nikkhamissāmi,
appatto āsavakkhayaṁ.
Fastening my armor,
I’ll enter the forest.
I won’t leave
without attaining the end of defilements.
Mālute upavāyante,
sīte surabhigandhike;
Avijjaṁ dālayissāmi,
nisinno nagamuddhani.
As the cool breeze blows
with fragrant scent,
I’ll split ignorance apart,
sitting on the mountain-peak.
Vane kusumasañchanne,
pabbhāre nūna sītale;
Vimuttisukhena sukhito,
ramissāmi giribbaje.
In a forest grove covered with blossoms,
in a cave so very cool,
I take pleasure in Giribbaja,
happy with the happiness of freedom.
Sohaṁ paripuṇṇasaṅkappo,
cando pannaraso yathā;
Sabbāsavaparikkhīṇo,
natthi dāni punabbhavo”ti.
… Ekavihāriyo thero ….
I’ve got all I wished for
like the moon on the fifteenth day.
With the utter ending of all defilements,
now there’ll be no more future lives.


[PART XVI.] SUBSTANCE ABUSE
Cross References
Mental health, alcohol, or drug abuse treatment reviews, see chapter 334B.
Mental health and alcohol and drug abuse treatment insurance benefits, see chapter 431M.
Mental health and substance abuse special fund, see §334-15.
Substance abuse testing, see chapter 329B.
§321-191 Definitions. As used in this part:
"Advisory commission" means the state advisory commission on drug abuse and controlled substances established in section 329-2.
"Clean and sober home" means a dwelling unit that is intended to provide a stable, independent environment of alcohol- and drug-free living conditions to sustain recovery and that is shared by unrelated adult persons who are recovering from substance abuse.
"Department" means the department of health.
"Substance" means alcohol, any drug on schedules I through IV of chapter 329, or any substance which includes in its composition volatile organic solvents.
"Substance abuse" means the misuse of a substance or the use of a substance to an extent deemed deleterious or detrimental to the user, to others, or to society. [L 1975, c 190, pt of §2; am L 2014, c 193, §4]
Revision Note
Numeric designations deleted.
Cross References
Diagnosis and counseling of minors, see §577-26.


| DOSE: |
1050 mg |
oral |
DXM |
(freebase) |
I used Bill White's DXM FAQ 3.0 to make up some DXM freebase. The 2 layer naptha/syrup method seemed easier than filtering out precipitates. The result was a nice yield of about a gram of nice white powder. I emptied out a few capsules and put the DXM in to make it easier to swallow. A small meal beforehand seemed to make sense. 2 beers were used to wash them down and help disolve the freebase. It took about 2 hours till I felt the least bit of a buzz. From then on it was getting better by the minute. I was very pleased to find there was absolutely no nausea or itching. Music sounded fantastic and I didn't seem so 'confused' like other DXM trips via syrup-gulping. There were times durring the peak when I felt a 'hot acidic' sensation in my veins. At no time was I ever afraid, I had a deep euphoria and there seemed to be other people around who were reassuring me (there was only me in the room).
During other DXM trips I had glimpsed a *place* or rather a feeling of a place akin to the *DMT Dome*. I never had a good view of the place until this trip. It's a strange place deep within myself that's very small and holds memories of things that i've never felt otherwise. A DXM trip is a very confusing experience in itself, but one can make sense of the confusion by letting go of the rules that rule our lives. I stumbled on this 'path' that takes me to that place. A word that describes the feeling you feel is 'groove'. It's a groove that, when you're *in it*, you are taken there. I actually saw it. This is a recurring feeling that i've had in previous dxm trips. I've used DXM about 40 times and had a glimmer of this feeling every time. Only now do I see it clearly.
Once inside this place I am faced with a wonderfully clear picture of the world as a very simplistic whole. As if I was an all knowing creature looking at the world for the first time. There are also other presences there that somehow know me. I know this sounds like the 'death experience' but I assure you I was very alive. The beings seemed only to be there to assure me I was in no danger and left when they conveyed that message. In this place I was free to move in what seemed to be a soup of conciousness. My inner self felt as if it had separated from my skin and body and was moving around loosely within me. I could do spins and move around without moving my body, only by thinking. I once thought that I turned over in bed to my other side to get a new CD and started reaching for my CDs only to find I had not moved at all!
There was a strange glow when I had my eyes closed and I could focus on the walls of this place as if my eyes were seeing a real image. The walls of the place seemed about 30 feet away from me, my room's ceiling and walls are never more than 15 feet away or 8 feet high... It had a gray-green color and was smooth and glowed slightly. I was either standing or floating in front of this wall and I could move freely. I was very focused and very relaxed as this was happening. The music I was listening to seemed to be coming in through far away speakers and not through the earphones I was wearing.
A true separation of mind/body had been achieved. The experience IMHO was more enlightening than an LSD trip. Neither is better than the other, both have pro's and con's but I needed something new this time. The next day I felt GREAT! I was expecting to have a sluggish, confused state of mind. Things seemed so peaceful and beautiful and I had a great appreciation to be alive. I also felt very good about myself and was very self assured. The enzyme that metabolizes DXM is also responsible for something serotonin related. This may explain the good mood the next day. A hell of a lot of that enzyme had to be released to metabolize a gram of pure DXM. I don't feel the urge to take more but I would do this again before I take any more acid when I want to trip. Acid is too much of a strain on me.
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.


{% load static %}
New to cryptocurrency? Get all your queries related to crypto cleared here! You can also contact us in case your query is not mentioned in the FAQ's listed below.
Cryptocurrency is a form of payment that can be exchanged online for goods and services. Many
companies have issued their own currencies, often called tokens, and these can be traded
specifically for the good or service that the company provides. Think of them as you would
arcade tokens or casino chips. You’ll need to exchange real currency for the cryptocurrency to
access the good or service.
Cryptocurrencies work using a technology called blockchain. Blockchain is a
decentralized technology spread across many computers that manages and records transactions.
Part of the appeal of this technology is its security.
More than 6,700 different cryptocurrencies are traded publicly, according to CoinMarketCap.com, a market research website. And cryptocurrencies continue to proliferate, raising money through initial coin offerings, or ICOs. The total value of all cryptocurrencies on Feb. 18, 2021, was more than $1.6 trillion, according to CoinMarketCap, and the total value of all bitcoins, the most popular digital currency, was pegged at about $969.6billion.
There’s no question that they’re legal in the United States, though China has essentially banned their use, and ultimately whether they’re legal depends on each individual country. Also be sure to consider how to protect yourself from fraudsters who see cryptocurrencies as an opportunity to bilk investors. As always, buyer beware.
Cryptocurrencies appeal to their supporters for a variety of reasons. Here are some of the most popular:
Let’s look at two aspects of cryptocurrency safety: investment and storage.
Of course, cryptocurrency carries risk like any other investment. However, the gains and losses
of cryptocurrency tend to occur much faster than with other currency investments. Successful
traders and investors have built digital fortunes thanks to the volatility of Bitcoin. However,
others who weren’t so lucky, lost their funds quickly.
Once you have acquired digital currency, you will want to keep it safe in a crypto
storage device called a wallet. The encryption technology that these storage devices use to keep
your currency safe continues to evolve to stay ahead of 21st-century digital thieves.


Honzi/Guides/Dungeon Siege 2/Farming
- When farming, your stat priorities become:
- Chance to Find Magic Items
- Gold Dropped
- The normal stat priority for your build
Walkthru:
- Southern Greilyn Jungle: use the lever at the bottom of the stairs to kill a guaranteed boss monster below.


Encode and decode HTML entities
var ent = require('ent');
console.log(ent.encode('©moo'))
console.log(ent.decode('π & ρ'));
©moo
π & ρ
var ent = require('ent');
var encode = require('ent/encode');
var decode = require('ent/decode');
Escape unsafe characters in str
with html entities.
By default, entities are encoded with numeric decimal codes.
If opts.numeric
is false or opts.named
is true, encoding will used named
codes like π
.
If opts.special
is set to an Object, the key names will be forced
to be encoded (defaults to forcing: <>'"&
). For example:
console.log(encode('hello', { special: { l: true } }));
hello
Convert html entities in str
back to raw text.
HTML entity tables shamelessly lifted from perl's HTML::Entities
With npm do:
npm install ent
MIT


Welcome to Used Car Price Prediction App!
This app helps predict used car prices in Germany and Czech Republic's market
Please enter the parameters of the car you wish to purchase:
Mileage
Engine Displacement
Engine Power
Door Count
Seat Count
Click to get the Price!
{{price}}


--- title: Seq2Seq keywords: fastai sidebar: home_sidebar summary: "Encoder/Decoder model" description: "Encoder/Decoder model" nb_path: "nbs/04_seq2seq.ipynb" ---
if torch.cuda.is_available():
torch.cuda.set_device(1)
print(torch.cuda.get_device_name())
In a GRU cell the outputs and hidden are the same, last output must be equal to last hidden.
cgru_cell = ConvGRUCell(16, 32, 3)
cgru_cell(torch.rand(1, 16, 16, 16)).shape
Let's check:
cgru = ConvGRU(16, 32, (3, 3), 2)
cgru
layer_output, last_state_list = cgru(torch.rand(8,10,16,6,6))
layer_output.shape, last_state_list.shape
layer_output, last_state_list = cgru(torch.rand(8,10,16,6,6), last_state_list)
dcgan_conv(1,10,1)
dcgan_upconv(1,10,1)
img_encoder = image_encoder()
img_decoder = image_decoder()
enc_img = img_encoder(torch.rand(1,1,64,64))
enc_img.shape
img_decoder(enc_img).shape
m = StackUnstack(Seq2Seq(5, 1, debug=True), dim=1).cuda()
imgs_list = [torch.rand(2,1,64,64).cuda() for _ in range(5)]
out, enc_imgs, enc_targets = m(imgs_list)
assert len(enc_imgs)==len(enc_targets)
len(out), out[0].shape, enc_imgs[0].shape, enc_targets[0].shape
mse_loss = StackLoss(MSELossFlat())
loss = mse_loss(out, [torch.zeros_like(o) for o in out]) + mse_loss(enc_imgs, enc_targets)
loss.backward()
m2 = StackUnstack(Seq2SeqPhy(5, 1, debug=True), dim=1).cuda()
m2.module.pr=1.
imgs_list = [torch.rand(2,1,64,64).cuda() for _ in range(5)]
img_targets = [torch.rand(2,1,64,64).cuda() for _ in range(5)]
out, enc_imgs, enc_targets = m2(imgs_list)
assert len(enc_imgs)==len(enc_targets)
len(out), out[0].shape, enc_imgs[0].shape, enc_targets[0].shape
mse_loss = StackLoss(MSELossFlat())
loss = mse_loss(out, [torch.zeros(2,1,64,64).cuda() for o in out]) #+ mse_loss(enc_imgs, enc_targets)
loss.backward()


Welcome to Booking.com
Sign Out
Please Placed your desired booking.
Enter Name:
Enter IBAN (VISA):
Check In Time:
Check Out Time:
Regent Hotel
Free BreakFast
Free Parking
Room Service
Available Rooms: 4
Rs 3000
Rooms:
Book it now
Cape Town Guest House Islamabad
3 Star Hotel
Free Wifi
Free Parking
Room Service
Available Rooms: 3
Rs 5500
Rooms:
Book it now
Islamabad Sernene Hotel
5 Star Hotel
Free Wifi , Free Parking
Air Conditioning
Fitness Center
Available Rooms: 2
Rs 8200
Rooms:
Book it now
Marriot Hotel
4 Star Hotel
Wifi - Free BreakFast - Indoor Pool
Free Parking
Room Service
Available Rooms: 2
Rs 28000
Rooms:
Book it now
HighLand Country Club and Resort
4 Star Hotel
Wifi - Free BreakFast - Indoor Pool
Free Parking - Airport Shuttle - Laundry Service
Room Service
Available Rooms: 2
Rs 13500
Rooms:
Book it now
Hotel Margala
4 Star Hotel
Wifi - Free BreakFast - Indoor Pool
Free Parking - Airport Shuttle - Laundry Service
Room Service
Available Rooms: 3
Rs 12750
Rooms:
Book it now


Content (for chosen language/market)
Tags (for all languages/markets, it will create Category - manage in Categories)
{{category.titleUrl}}
{{ tag }} x
Images (for all languages/markets)
{{ 'Main_image_url' | translate | async }}
Upload Images from file or url
Add Image Url
X
X
Full Description (for chosen language/market)


Simple-colors is a method for managing colors. It includes a
custom element, shared styles, and more.
The styles can be used to set specific colors, or to have the
colors dynamically adapt based on the attributes of a custom element.
Try adjusting the parent-element below to see this in action.
My background color is always light but the color changes based on my parent's element's accent-color.
My background color is always light amber.
My background color is always red, but the shade changes based on whether or not my parent is light or dark.


Id: 363
Name: Trandor
Status: Alive
Species: Alien
Type: Krootabulan
Gender: Male
OriginName: Krootabulon
OriginUrl: https://rickandmortyapi.com/api/location/45
LocationName: Earth (Replacement Dimension)
LocationUrl: https://rickandmortyapi.com/api/location/20
Image: https://rickandmortyapi.com/api/character/avatar/363.jpeg
Episode: ['https://rickandmortyapi.com/api/episode/30']
Url: https://rickandmortyapi.com/api/character/363
Created: 2018-01-10T18:54:36.578Z


MapStore2 fully embraces both ReactJS and Redux concepts, enhancing them with the plugin concept.
A plugin in MapStore2 is a smart ReactJS component that is:
In addition a plugin:
To use plugins you need to:
Create a plugins.js file where you declare all the needed plugins:
plugins.js:
module.exports = {
plugins: {
MyPlugin: require('../plugins/My')
},
requires: {}
};
Use pluginsConfig.json to configure your plugins.
pluginsConfig.json:
{
...
"standard": [
{
"name": "Map",
"cfg": {
"zoomControl": false,
"tools": ["locate"]
}
},
...
],
...
}
Create a store that properly initializes plugins reducers and epics (see standardStore.js) :
store.js:
const {combineReducers} = require('../utils/PluginsUtils');
const {createDebugStore} = require('../utils/DebugUtils');
module.exports = (plugins) => {
const allReducers = combineReducers(plugins, {
...
});
return createDebugStore(allReducers, {});
};
In the root application component require plugins declaration and configuration and use them to initialize both the store and a PluginsContainer (see our PluginContainer.jsx):
App.jsx:
const {pluginsDef} = require('./plugins.js');
const pluginsCfg = require('./pluginsConfig.json');
const store = require('./store')(pluginsDef);
const plugins = PluginsUtils.getPlugins(pluginsDef);
ReactDOM.render(<PluginsContainer plugins={plugins} mode="standard" pluginsConfig={pluginsCfg}/>, ...container...);
An example is better than a thousand words:
My.jsx:
// this is a dumb component
const MyComponent = require('../components/MyComponent');
const {connect} = require('../utils/PluginsUtils');
// let's wire it to state and actions
const MyPlugin = connect((state) => ({
myproperty: state.myreducer.property
}), {
myaction
})(MyComponent);
// let's export the plugin and a set of required reducers
const myreducer = require('../reducers/myreducer');
module.exports = {
MyPlugin,
reducers: {myreducer}
};
The example shows the plugins infrastructure power in an interactive way.
The UI allows to add / remove plugins from the base applications, and to configure them using a JSON object with plugins configuration properties.


About Us
Farmer can be helped using this technology
CM Views
A very helpful and eaisly available app to all farmer and a great success
Mission & Vission
This will help farmers to beaware of all the things happining in marketFarmer views
this is helping to us to grow in market
Farmer's per capita increased
farmers Sales incresed without any middleman
Storage benifits
Wastage reduced
farmer's family income increased
Our Services
Services provided are high quality
Latest News
All farmer's schemes would be updated here
Rashtriya Krishi Vikas Yojana
Feb , 2014
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.
Read MoreNational Project on Management of Soil Health and Fertility.
Aug , 2014
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.
Read MoreOur Honorable Partner
Who helped us to make this possible
Contact With Us
You can contact us in case of emergency and doubts


| # | Who | = | Penalty | * | A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | cveto4ik | 7 | 140 | + 00:02 | + 00:05 | + 00:10 | + 00:14 | + 00:17 | + 00:27 | +2 00:45 | |
| 1 | dzgod1905 | 7 | 140 | + 00:05 | + 00:10 | +1 00:19 | + 00:25 | + 00:36 | + 00:23 | + 00:12 | |
| 3 | ElragolEl3enab | 7 | 184 | + 00:04 | + 00:06 | + 00:11 | + 00:17 | + 00:46 | +1 00:31 | + 00:59 | |
| 4 | A.Kaan42 | 7 | 210 | + 00:03 | + 00:05 | + 00:09 | +1 00:23 | + 01:15 | + 00:37 | + 00:48 | |
| 5 | comotbannucute | 7 | 231 | + 00:03 | + 00:13 | + 00:17 | + 00:30 | + 00:53 | + 00:46 | + 01:09 | |
| 6 | Traduttore | 7 | 242 | + 00:02 | + 00:07 | + 00:11 | + 00:16 | + 00:46 | + 00:55 | +1 01:35 | |
| 7 | Mei_Misaki | 7 | 250 | + 00:04 | + 00:09 | + 00:15 | + 00:23 | + 00:33 | +1 01:12 | + 01:24 | |
| 8 | SeuIgi | 7 | 267 | + 00:03 | + 00:08 | + 00:14 | +3 00:37 | + 00:44 | + 00:59 | + 01:12 | |
| 8 | Sub-Sub-Zaher | 7 | 267 | + 00:03 | + 00:08 | + 00:14 | + 00:19 | + 01:14 | + 00:39 | +1 01:40 | |
| 10 | pjych1 | 7 | 282 | + 00:04 | + 00:07 | +1 00:16 | + 00:23 | + 00:28 | +1 01:57 | + 01:07 | |
| 11 | Scatman | 7 | 289 | + 00:06 | + 00:12 | + 00:18 | + 00:28 | + 01:11 | +1 01:05 | + 01:19 | |
| 12 | StyxHelix | 7 | 308 | + 00:03 | + 00:07 | + 00:20 | + 00:27 | + 00:42 | + 01:33 | + 01:56 | |
| 13 | _dipu | 7 | 317 | + 00:04 | + 00:08 | + 00:18 | + 00:24 | + 01:57 | +3 00:48 | + 01:08 | |
| 14 | youyou2005 | 7 | 323 | + 00:03 | + 00:07 | +1 00:15 | + 00:23 | + 01:04 | + 01:30 | + 01:51 | |
| 15 | temporary_account | 7 | 335 | + 00:03 | + 00:09 | + 00:12 | + 00:28 | + 01:03 | +1 01:33 | + 01:57 | |
| 16 | Taberu | 7 | 375 | + 00:11 | + 00:16 | + 00:30 | + 00:37 | + 01:06 | + 01:44 | +2 01:31 | |
| 17 | Yamauchi | 7 | 379 | + 00:03 | + 00:11 | + 00:20 | + 00:25 | + 01:29 | + 01:16 | +4 01:55 | |
| 18 | pussydestroyer1337 | 6 | 97 | + 00:02 | + 00:06 | + 00:09 | + 00:14 | + 00:23 | -1 | + 00:43 | |
| 19 | TyllOu | 6 | 148 | -1 | + 00:03 | + 00:02 | +1 00:10 | + 00:10 | + 00:31 | -1 | + 01:22 |
| 19 | secretul | 6 | 148 | + 00:03 | + 00:06 | + 00:12 | + 00:18 | + 00:25 | + 01:24 | ||
| 19 | its_me_ss | 6 | 148 | + 00:05 | + 00:09 | + 00:16 | + 00:22 | + 00:37 | + 00:59 | ||
| 22 | aihay | 6 | 153 | + 00:03 | + 00:06 | + 00:12 | + 00:17 | +1 00:45 | + 01:00 | ||
| 23 | ArpitKhatri | 6 | 155 | + 00:04 | + 00:10 | + 00:16 | + 00:22 | + 00:35 | + 01:08 | -2 | |
| 24 | IngaleAnkur10 | 6 | 157 | + 00:02 | + 00:05 | + 00:12 | + 00:23 | + 00:34 | + 01:21 | ||
| 25 | adikiytrg27667435 | 6 | 166 | + 00:05 | + 00:12 | + 00:19 | + 00:30 | + 00:40 | + 01:00 | -1 | |
| 26 | abhaypatro | 6 | 167 | + 00:02 | + 00:07 | + 00:12 | + 00:24 | + 00:39 | + 01:23 | ||
| 27 | aashi_patel | 6 | 169 | + 00:07 | + 00:13 | +1 00:19 | + 00:27 | + 00:40 | + 00:53 | -3 | |
| 28 | mrs_jcw | 6 | 173 | + 00:06 | + 00:12 | + 00:20 | + 00:30 | + 00:39 | + 01:06 | ||
| 29 | demon.machine | 6 | 175 | + 00:03 | + 00:06 | + 00:11 | +1 00:25 | + 00:30 | +1 01:20 | -1 | |
| 30 | cpt | 6 | 178 | + 00:03 | + 00:06 | + 00:12 | + 00:20 | + 00:31 | -1 | +1 01:36 | |
| 30 | Cardinale | 6 | 178 | + 00:04 | + 00:09 | +1 00:17 | + 00:23 | + 00:26 | -1 | +1 01:19 | |
| 32 | sajith | 6 | 179 | + 00:07 | + 00:11 | + 00:18 | + 00:26 | + 00:35 | -1 | + 01:22 | |
| 32 | void3102 | 6 | 179 | + 00:09 | + 00:11 | + 00:17 | + 00:25 | + 00:34 | +1 01:13 | ||
| 34 | FedeNQ | 6 | 183 | + 00:05 | + 00:11 | + 00:18 | + 00:25 | + 00:38 | + 01:26 | ||
| 34 | TudorStefan | 6 | 183 | + 00:04 | + 00:09 | + 00:17 | + 00:25 | + 00:42 | + 01:26 | ||
| 36 | Nik_1927 | 6 | 186 | + 00:03 | + 00:08 | + 00:23 | + 00:36 | + 00:52 | + 01:04 | ||
| 36 | yatharth77 | 6 | 186 | + 00:03 | + 00:04 | + 00:17 | +1 00:21 | + 00:29 | -2 | + 01:42 | |
| 38 | zeda_ | 6 | 193 | + 00:07 | + 00:12 | + 00:21 | + 00:29 | + 00:48 | + 01:16 | ||
| 38 | ConfusedBerzerk | 6 | 193 | + 00:04 | + 00:09 | + 00:17 | + 00:28 | + 00:39 | + 01:36 | ||
| 38 | Akagami-no-Shanks | 6 | 193 | + 00:05 | + 00:16 | + 00:23 | + 00:34 | + 00:55 | +1 00:50 | -1 | |
| 41 | Young.FQ | 6 | 196 | + 00:04 | + 00:07 | +1 00:17 | + 00:30 | + 00:39 | -1 | + 01:29 | |
| 42 | trainharder | 6 | 199 | +1 00:07 | + 00:13 | + 00:21 | + 00:26 | + 00:36 | -1 | + 01:26 | |
| 43 | fangshaofen | 6 | 200 | + 00:07 | + 00:09 | + 00:18 | + 00:27 | + 00:41 | + 01:38 | ||
| 44 | prasannabhat018 | 6 | 201 | + 00:04 | + 00:10 | + 00:18 | + 00:32 | + 00:43 | + 01:34 | ||
| 45 | Shokersss | 6 | 202 | + 00:02 | + 00:07 | +1 00:15 | + 00:27 | + 00:43 | + 01:38 | ||
| 45 | clueless100 | 6 | 202 | + 00:03 | + 00:09 | + 00:16 | + 00:29 | + 00:56 | + 01:29 | ||
| 47 | AquaMoon | 6 | 204 | + 00:03 | + 00:07 | + 00:45 | + 00:26 | + 00:35 | + 01:28 | ||
| 48 | CodeInRed | 6 | 206 | + 00:06 | + 00:10 | + 00:18 | + 00:26 | + 00:48 | + 01:38 | ||
| 49 | shibaka | 6 | 207 | + 00:05 | + 00:15 | + 00:24 | + 00:33 | + 00:42 | + 01:28 | ||
| 49 | c_k_r | 6 | 207 | + 00:08 | + 00:15 | + 00:22 | + 00:31 | + 00:49 | + 01:22 | ||
| 49 | DinoMax00 | 6 | 207 | + 00:04 | + 00:09 | + 00:15 | + 00:26 | + 00:43 | + 01:50 | ||
| 52 | Z_Blast | 6 | 209 | + 00:03 | + 00:07 | + 00:13 | + 00:18 | + 01:25 | +1 01:13 | ||
| 53 | shiftyblock | 6 | 212 | -1 | + 00:03 | + 00:09 | + 00:17 | + 00:24 | + 00:49 | + 01:50 | |
| 54 | NeverAskMyHandle | 6 | 214 | + 00:04 | + 00:09 | + 00:19 | +1 00:30 | + 00:41 | +1 01:31 | ||
| 55 | LMasalsky | 6 | 215 | + 00:04 | + 00:09 | + 00:16 | + 00:25 | +1 00:37 | + 01:54 | ||
| 56 | o2c | 6 | 216 | + 00:05 | + 00:09 | + 00:15 | + 00:26 | +1 00:36 | -1 | +1 01:45 | |
| 57 | lijunhan | 6 | 217 | + 00:06 | + 00:11 | + 00:18 | + 00:25 | + 00:40 | +2 01:37 | ||
| 58 | eniacding | 6 | 218 | + 00:08 | + 00:14 | +1 00:29 | + 00:40 | + 00:51 | + 01:06 | ||
| 59 | ggdwbg | 6 | 219 | + 00:05 | + 00:23 | + 00:31 | + 00:38 | + 00:51 | + 01:11 | ||
| 60 | abhishek945 | 6 | 223 | + 00:04 | + 00:11 | + 00:22 | + 00:33 | + 00:47 | + 01:46 | ||
| 61 | stubbornpm | 6 | 225 | + 00:05 | + 00:11 | + 00:19 | + 00:33 | + 01:09 | + 01:28 | ||
| 62 | mahadi97 | 6 | 226 | + 00:05 | + 00:10 | + 00:17 | + 00:28 | + 01:40 | + 01:06 | ||
| 63 | broomstick | 6 | 231 | + 00:04 | + 00:12 | + 00:28 | + 00:46 | + 01:01 | + 01:20 | ||
| 64 | olexandryermilov | 6 | 235 | + 00:04 | + 00:07 | + 00:20 | + 00:28 | + 00:38 | +4 01:38 | ||
| 64 | hhhhaura | 6 | 235 | + 00:03 | + 00:08 | +1 00:18 | + 00:29 | + 00:49 | + 01:58 | ||
| 66 | Eddagdeg | 6 | 237 | + 00:08 | + 00:17 | + 00:23 | + 00:34 | + 01:00 | + 01:35 | -1 | |
| 67 | mayank_992 | 6 | 238 | + 00:06 | + 00:13 | + 00:22 | + 00:34 | + 00:51 | + 01:52 | ||
| 67 | kreiniger | 6 | 238 | + 00:04 | + 00:09 | + 00:18 | + 00:32 | + 00:47 | +1 01:58 | ||
| 69 | Dragonisss | 6 | 239 | + 00:08 | + 00:13 | + 00:23 | + 00:34 | + 00:43 | +1 01:48 | ||
| 70 |<PHONE_NUMBER>DangTH | 6 | 240 | + 00:02 | + 00:05 | + 00:26 | +2 00:21 | + 00:48 | -1 | + 01:58 | |
| 71 | hamap | 6 | 242 | + 00:03 | + 00:07 | + 00:19 | + 00:42 | + 01:07 | + 01:44 | ||
| 71 | Tahseen | 6 | 242 | + 00:06 | +1 00:16 | + 00:24 | + 00:32 | + 01:29 | + 01:05 | ||
| 73 | djh | 6 | 245 | + 00:07 | + 00:15 | + 00:28 | + 00:40 | + 01:03 | + 01:32 | ||
| 74 | gibberish | 6 | 247 | + 00:10 | + 00:14 | + 00:21 | + 00:33 | + 00:59 | +1 01:40 | ||
| 75 | H4Wk3ye | 6 | 248 | + 00:10 | + 00:14 | + 00:19 | +1 00:43 | + 00:59 | + 01:33 | ||
| 75 | sutekine | 6 | 248 | + 00:06 | + 00:11 | + 00:16 | + 00:29 | + 01:46 | +1 01:10 | ||
| 77 | Its_Easy | 6 | 251 | + 00:03 | + 00:07 | +1 00:14 | +3 00:30 | + 00:37 | +1 01:50 | ||
| 78 | Alfeh1 | 6 | 252 | + 00:10 | + 00:15 | + 00:23 | + 01:04 | + 00:54 | + 01:26 | ||
| 79 | Arpan_Bhowmik | 6 | 253 | -9 | + 00:06 | + 00:31 | + 00:20 | + 00:46 | + 00:57 | + 01:33 | |
| 80 | Abdelrahman_K | 6 | 255 | + 00:07 | + 00:14 | + 00:21 | + 00:33 | + 01:17 | + 01:43 | ||
| 81 | akifpathan | 6 | 264 | + 00:07 | + 00:13 | + 00:18 | + 00:25 | + 01:37 | + 01:44 | ||
| 81 | 1234 | 6 | 264 | +1 | + 00:04 | +2 00:14 | +1 00:19 | +1 00:30 | + 00:39 | +1 01:48 | |
| 81 | sharaelong | 6 | 264 | + 00:02 | + 00:08 | + 00:24 | +1 01:33 | + 00:41 | + 01:26 | ||
| 84 | 3agwa | 6 | 265 | + 00:03 | + 00:08 | + 00:18 | + 00:37 | + 01:28 | + 01:51 | ||
| 84 | NguyenQuangHung | 6 | 265 | + 00:17 | + 00:23 | + 00:32 | + 00:43 | + 01:04 | + 01:26 | ||
| 86 | oneluckyday | 6 | 266 | + 00:03 | + 00:10 | + 00:15 | +1 00:46 | + 00:57 | +1 01:55 | ||
| 87 | Ayalla | 6 | 267 | + 00:03 | + 00:08 | + 00:15 | +2 00:36 | + 01:07 | + 01:58 | ||
| 87 | Siannochan | 6 | 267 | + 00:09 | + 00:10 | +1 00:33 | + 00:42 | + 00:46 | + 01:57 | ||
| 89 | gameface_123 | 6 | 268 | + 00:03 | + 00:08 | + 00:19 | + 00:49 | + 01:19 | + 01:50 | ||
| 90 | jacksonf09 | 6 | 270 | + 00:05 | + 00:12 | + 00:33 | + 00:53 | + 01:06 | + 01:41 | ||
| 91 | bao0er234 | 6 | 273 | + 00:04 | + 00:11 | +2 00:48 | + 00:34 | + 01:04 | -1 | + 01:32 | |
| 92 | may_007 | 6 | 276 | + 00:07 | + 00:14 | + 00:21 | + 00:40 | + 01:50 | + 01:24 | ||
| 92 | Hossam | 6 | 276 | + 00:08 | + 00:17 | + 00:24 | + 00:36 | + 01:18 | + 01:53 | ||
| 92 | syzf2222 | 6 | 276 | + 00:06 | + 00:14 | + 00:25 | + 01:38 | + 00:45 | -1 | + 01:28 | |
| 95 | kunal_skycoder1 | 6 | 277 | + 00:07 | + 00:14 | + 00:42 | + 00:31 | +1 01:14 | + 01:39 | ||
| 95 | Makash147 | 6 | 277 | + 00:06 | + 00:11 | +1 00:45 | + 00:38 | + 01:00 | +1 01:37 | ||
| 97 | use_me | 6 | 282 | + 00:04 | + 00:26 | + 00:36 | + 00:53 | + 01:03 | + 01:40 | ||
| 98 | andrewjeremy | 6 | 283 | + 00:09 | + 00:17 | + 00:23 | + 00:34 | + 01:23 | -1 | + 01:57 | |
| 98 | Ku_Top | 6 | 283 | + 00:04 | + 00:22 | + 00:15 | + 00:38 | + 01:48 | + 01:36 | ||
| 100 | DougNobrega | 6 | 285 | + 00:05 | + 00:10 | + 00:18 | +1 00:32 | + 01:52 | + 01:38 | ||
| 101 | maghrabyJr_ | 6 | 286 | + 00:04 | + 00:09 | +1 00:35 | + 00:43 | + 01:55 | + 01:10 | ||
| 102 | czswez | 6 | 287 | + 00:08 | + 00:17 | + 00:28 | + 00:50 | + 01:10 | + 01:54 | ||
| 103 | QAZZY | 6 | 292 | + 00:02 | +1 00:23 | + 00:27 | + 00:40 | + 01:22 | + 01:48 | ||
| 104 | th__turns | 6 | 293 | + 00:27 | + 00:31 | + 00:37 | + 00:46 | + 01:02 | + 01:30 | ||
| 105 | gola | 6 | 295 | + 00:04 | + 00:13 | + 00:29 | +1 00:43 | + 01:20 | + 01:56 | ||
| 105 | claudiovan | 6 | 295 | + 00:09 | + 00:14 | + 00:24 | + 00:43 | + 01:53 | + 01:32 | ||
| 107 | Dreaminger | 6 | 296 | + 00:05 | + 00:13 | + 00:30 | + 00:56 | + 01:13 | + 01:59 | ||
| 107 | ArtemGucci | 6 | 296 | + 00:09 | +1 00:18 | + 00:32 | + 00:41 | + 01:07 | + 01:59 | ||
| 109 | Tornado_2004 | 6 | 302 | + 00:04 | + 00:10 | + 00:16 | +2 00:33 | + 01:19 | +3 01:50 | ||
| 110 | Mr_Emrul | 6 | 306 | + 00:05 | + 00:11 | + 00:33 | +2 00:54 | + 01:37 | +1 01:16 | ||
| 111 | Antonov | 6 | 308 | + 00:03 | + 00:10 | + 00:18 | +1 01:51 | + 00:54 | + 01:42 | ||
| 112 | Touheed_SK | 6 | 309 | + 00:08 | + 00:16 | +1 00:32 | + 00:51 | + 01:17 | + 01:55 | ||
| 113 | shinre_tensei | 6 | 311 | + 00:06 | + 00:16 | + 00:26 | +2 00:49 | + 01:11 | +2 01:43 | ||
| 113 | Ean1zhi | 6 | 311 | + 00:05 | +2 00:19 | +1 00:30 | + 00:36 | + 00:52 | +2 01:59 | ||
| 115 | dick_feynman_1729_67 | 6 | 315 | + 00:05 | + 00:20 | +1 00:32 | +1 00:49 | + 01:11 | + 01:58 | ||
| 116 | a_void | 6 | 325 | + 00:06 | +1 01:18 | + 00:35 | + 00:42 | + 00:56 | + 01:38 | ||
| 117 | hiro18181 | 6 | 328 | + 00:08 | +2 00:28 | + 00:39 | + 00:56 | + 01:06 | + 01:51 | ||
| 118 | DR_Unicorn_ | 6 | 329 | + 00:23 | + 00:31 | + 00:54 | + 00:59 | + 01:52 | + 00:50 | ||
| 119 | -StrawBerry- | 6 | 334 | + 00:04 | + 00:08 | + 00:16 | +4 00:53 | + 01:30 | +1 01:53 | ||
| 120 | Bebest | 6 | 335 | + 01:27 | + 01:21 | + 00:20 | + 00:12 | + 00:46 | +2 01:09 | ||
| 121 | eZZZio | 6 | 338 | + 00:05 | + 00:35 | + 00:45 | + 01:02 | + 01:21 | + 01:50 | ||
| 122 | Vareal | 6 | 344 | + 00:04 | + 00:08 | +3 01:59 | + 00:29 | + 00:48 | + 01:46 | ||
| 123 | Moriartyaz | 6 | 346 | + 00:03 | + 00:09 | + 01:04 | + 01:29 | + 01:09 | + 01:52 | ||
| 123 | huyhoangk36chv | 6 | 346 | + 00:39 | + 00:42 | + 00:52 | + 00:45 | + 01:48 | + 01:00 | ||
| 125 | nguyenphuong | 6 | 348 | +1 | + 00:12 | +1 00:33 | + 00:42 | +1 00:55 | + 01:20 | + 01:46 | |
| 126 | maskey | 6 | 362 | + 00:06 | +2 00:32 | + 00:39 | +2 01:09 | + 01:15 | + 01:41 | ||
| 127 | saksham9575 | 6 | 373 | + 00:03 | + 00:09 | +4 01:02 | + 00:51 | + 01:25 | +1 01:53 | ||
| 128 | Dtectv_conan | 6 | 376 | + 00:35 | + 00:38 | +1 01:03 | + 01:14 | + 01:44 | + 00:52 | ||
| 129 | Saifurrahman | 6 | 394 | +1 : -1 | + 00:04 | + 00:11 | + 01:06 | +5 01:26 | + 01:11 | + 01:46 | |
| 130 | danielvitor23 | 6 | 426 | + 00:06 | + 00:23 | + 01:04 | +6 00:53 | + 01:55 | + 01:45 | ||
| 131 | clbclb | 6 | 429 | + 00:12 | + 00:20 | +1 01:54 | + 01:10 | + 01:35 | + 01:48 | ||
| 132 | MagicDrUnicron | 6 | 444 | + 01:03 | + 01:09 | + 01:17 | + 00:44 | + 01:47 | + 01:24 | ||
| 133 | AmiBiyeKorteChai | 6 | 487 | + 01:43 | + 01:36 | + 01:29 | + 01:23 | + 01:11 | + 00:45 | ||
| 134 | Java | 5 | 54 | + 00:03 | + 00:05 | + 00:08 | + 00:13 | + 00:25 | -1 | ||
| 135 | I_check | 5 | 61 | + 00:03 | + 00:06 | + 00:10 | + 00:15 | + 00:27 | |||
| 136 | TLEonTestCase04 | 5 | 74 | + 00:03 | + 00:09 | + 00:15 | + 00:30 | + 00:17 | |||
| 136 | vjudge018 | 5 | 74 | + 00:03 | + 00:06 | + 00:13 | + 00:22 | + 00:30 | -3 | ||
| 136 | sc0ut | 5 | 74 | + 00:04 | + 00:08 | + 00:12 | + 00:23 | + 00:27 | |||
| 139 | voroniy | 5 | 75 | -6 | + 00:03 | + 00:09 | + 00:14 | + 00:23 | + 00:26 | ||
| 140 | TheKingAleks | 5 | 76 | + 00:03 | + 00:06 | + 00:12 | + 00:22 | + 00:33 | |||
| 141 | taIant117408 | 5 | 77 | + 00:02 | + 00:15 | + 00:04 | + 00:11 | + 00:45 | |||
| 142 | Mike4235 | 5 | 78 | + 00:02 | + 00:05 | + 00:15 | + 00:32 | + 00:24 | |||
| 143 | dxt99 | 5 | 79 | + 00:03 | + 00:08 | + 00:16 | + 00:22 | + 00:30 | |||
| 143 | nubir345 | 5 | 79 | + 00:05 | + 00:09 | + 00:14 | + 00:19 | + 00:32 | |||
| 143 | hanguksaram | 5 | 79 | + 00:02 | + 00:09 | + 00:15 | + 00:23 | + 00:30 | |||
| 146 | shrrichto | 5 | 80 | + 00:02 | + 00:08 | + 00:13 | + 00:23 | + 00:34 | |||
| 147 | abhibhileliya | 5 | 81 | + 00:03 | + 00:09 | + 00:14 | + 00:21 | + 00:34 | |||
| 148 | djs100201 | 5 | 82 | + 00:05 | + 00:09 | + 00:16 | + 00:23 | + 00:29 | -1 | ||
| 148 | jmm2000 | 5 | 82 | -1 | + 00:03 | + 00:07 | + 00:14 | + 00:22 | + 00:36 | ||
| 150 | cfalas | 5 | 83 | + 00:03 | + 00:07 | + 00:14 | + 00:26 | + 00:33 | |||
| 150 | MvKaio | 5 | 83 | + 00:02 | + 00:10 | + 00:14 | + 00:23 | + 00:34 | |||
| 150 | saarang123 | 5 | 83 | + 00:05 | + 00:09 | + 00:14 | + 00:21 | + 00:34 | -1 | ||
| 153 | NaziOtter | 5 | 84 | + 00:03 | + 00:07 | + 00:14 | + 00:25 | + 00:35 | |||
| 153 | MeyCey | 5 | 84 | + 00:04 | + 00:08 | + 00:15 | + 00:23 | + 00:34 | -2 | ||
| 153 | neophyte_123 | 5 | 84 | + 00:04 | + 00:08 | + 00:15 | + 00:23 | + 00:34 | |||
| 156 | the-watcher | 5 | 86 | + 00:02 | + 00:07 | + 00:11 | + 00:22 | + 00:44 | |||
| 156 | Gats | 5 | 86 | + 00:04 | + 00:08 | + 00:14 | + 00:21 | + 00:39 | |||
| 158 | anuraagshankar | 5 | 87 | + 00:03 | + 00:07 | + 00:13 | + 00:22 | + 00:42 | |||
| 159 | Rrrrya | 5 | 89 | + 00:04 | + 00:08 | + 00:23 | + 00:39 | + 00:15 | |||
| 160 | ezdp | 5 | 90 | + 00:02 | + 00:06 | + 00:12 | + 00:23 | + 00:47 | |||
| 160 | code31 | 5 | 90 | + 00:03 | + 00:10 | + 00:17 | + 00:26 | + 00:34 | |||
| 160 | circle98 | 5 | 90 | + 00:04 | + 00:08 | + 00:15 | + 00:29 | + 00:34 | -5 | ||
| 160 | Nursikkkkkkarrrdashian | 5 | 90 | + 00:02 | + 00:05 | + 00:09 | +1 00:21 | + 00:43 | -4 | ||
| 160 | Evrse | 5 | 90 | + 00:04 | + 00:09 | + 00:17 | + 00:27 | + 00:33 | |||
| 165 | Amiton7 | 5 | 91 | + 00:03 | + 00:07 | + 00:14 | + 00:27 | + 00:40 | -7 | ||
| 166 | unwoundmouse | 5 | 92 | + 00:04 | + 00:09 | + 00:16 | + 00:25 | + 00:38 | -1 | ||
| 166 | Danielzxx | 5 | 92 | + 00:03 | + 00:07 | + 00:17 | + 00:28 | + 00:37 | |||
| 168 | automath | 5 | 93 | + 00:03 | + 00:07 | + 00:15 | + 00:31 | + 00:37 | |||
| 168 | prateek31 | 5 | 93 | + 00:03 | + 00:10 | + 00:18 | + 00:26 | + 00:36 | |||
| 168 | aka_lpavanvenkat | 5 | 93 | + 00:06 | + 00:10 | + 00:15 | + 00:26 | + 00:36 | -3 | ||
| 168 | I_am_Drew | 5 | 93 | + 00:02 | + 00:06 | +1 00:15 | + 00:35 | + 00:25 | -4 | ||
| 168 | Yogi79 | 5 | 93 | + 00:03 | + 00:06 | + 00:13 | + 00:26 | + 00:45 | |||
| 168 | ssense | 5 | 93 | + 00:02 | + 00:07 | + 00:13 | + 00:21 | + 00:50 | |||
| 174 | kisui_pari_na_ami | 5 | 94 | + 00:02 | + 00:07 | + 00:15 | + 00:30 | + 00:40 | -4 | ||
| 175 | Juras9 | 5 | 95 | + 00:04 | + 00:08 | + 00:14 | + 00:29 | + 00:40 | -13 | ||
| 175 | ghoshashis545 | 5 | 95 | +1 | + 00:03 | + 00:08 | + 00:16 | + 00:24 | + 00:44 | ||
| 175 | erikberter | 5 | 95 | + 00:03 | + 00:08 | + 00:19 | + 00:30 | + 00:35 | |||
| 178 | kostasanemozalis | 5 | 96 | +2 | + 00:05 | + 00:08 | + 00:17 | + 00:26 | + 00:40 | -4 | |
| 178 | esh_08 | 5 | 96 | + 00:05 | + 00:10 | + 00:19 | + 00:24 | + 00:38 | -4 | ||
| 178 | magi1999 | 5 | 96 | + 00:03 | + 00:08 | + 00:15 | +1 00:25 | + 00:35 | -5 | ||
| 178 | tiasmondal | 5 | 96 | + 00:05 | + 00:11 | + 00:17 | + 00:27 | + 00:36 | |||
| 178 | turkoarias | 5 | 96 | + 00:03 | + 00:11 | + 00:19 | + 00:27 | + 00:36 | |||
| 183 | Djoludi | 5 | 97 | + 00:07 | + 00:10 | + 00:16 | + 00:21 | + 00:43 | -2 | ||
| 183 | msgtoshubham | 5 | 97 | + 00:05 | + 00:11 | + 00:17 | + 00:29 | + 00:35 | -1 | ||
| 183 | Liberator187 | 5 | 97 | + 00:02 | + 00:07 | + 00:13 | + 00:25 | + 00:50 | |||
| 183 | errorfound | 5 | 97 | + 00:06 | + 00:10 | +1 00:16 | + 00:25 | + 00:30 | |||
| 187 | MasterChief410 | 5 | 98 | + 00:04 | + 00:09 | + 00:17 | + 00:27 | + 00:41 | |||
| 187 | pranavdv | 5 | 98 | + 00:03 | + 00:10 | + 00:18 | + 00:30 | + 00:37 | |||
| 187 | manav_06 | 5 | 98 | +1 | + 00:03 | + 00:07 | + 00:12 | + 00:26 | + 00:50 | ||
| 187 | hackerito | 5 | 98 | + 00:03 | + 00:10 | + 00:20 | + 00:29 | + 00:36 | |||
| 187 | akiyama-san | 5 | 98 | + 00:03 | + 00:09 | + 00:15 | + 00:31 | + 00:40 | |||
| 192 | pranavv3 | 5 | 99 | + 00:02 | + 00:10 | + 00:19 | + 00:28 | + 00:40 | |||
| 192 | baa_baa_blacksheep | 5 | 99 | + 00:04 | + 00:07 | + 00:15 | + 00:20 | + 00:53 | |||
| 192 | 011011 | 5 | 99 | + 00:06 | + 00:12 | + 00:20 | + 00:27 | + 00:34 | |||
| 192 | Ma3str0 | 5 | 99 | + 00:05 | + 00:09 | + 00:17 | + 00:25 | + 00:43 | |||
| 192 | porpoise | 5 | 99 | + 00:03 | + 00:09 | + 00:17 | + 00:31 | + 00:39 | |||
| 192 | baron_ | 5 | 99 | + 00:03 | + 00:08 | + 00:17 | + 00:26 | + 00:45 | -1 | ||
| 192 | littlemonk | 5 | 99 | + 00:02 | + 00:08 | + 00:15 | + 00:27 | + 00:47 | |||
| 192 | BuLatypov | 5 | 99 | + 00:04 | + 00:09 | + 00:15 | + 00:24 | + 00:47 | |||
| 192 | ujjwalsingh30 | 5 | 99 | -1 | + 00:02 | + 00:08 | + 00:15 | + 00:32 | + 00:42 | ||
|
Accepted
Tried |
10071 10102 |
9146 9467 |
7733 8517 |
4890 6013 |
3854 3974 |
121 481 |
49 87 |


This tutorial is a Hello World example of using CB4J. We will process a simple CSV file containing persons records and generate greetings. The input file named "persons.csv" has the following format:
sequence,name 1,Foo 2,Bar
Each record is composed of 2 fields :
The processing logic should generate a greeting message for each record.
For example, for the record 1,Foo
, the batch should generate and print to the console the following greeting message : Hi Foo! your sequence number is 1.
Finally, the first record is a header record that should be skipped from batch processing.
First, we need to configure CB4J with CSV parameters. By default, CB4J uses the comma ',' character as delimiter which is fine for this tutorial, so no configuration is needed for field delimiter.
Nevertheless, we have to specify the path of input file and the skipHeader parameters. This can be done using the BatchConfigurationBuilder
as follows :
BatchConfiguration batchConfiguration = new BatchConfigurationBuilder() .inputDataFile("/data/cb4j/cb4j-tutorials/src/main/resources/persons.csv") .skipHeader(true) .build();
When using CB4J, you work with an object view of CSV records, so we will create a simple POJO representing a greeting. The Greeting
class is defined as follows:
public class Greeting { private long sequence; private String name; // Getters and Setters omitted public String getGreetingMessage() { return "Hi " + name + "! Your sequence number is " + sequence; } }
To map CSV records to Greeting
objects, CB4J will use field names in header record to map data to fields in Greeting
class with the same name.
In this example, the first field sequence
in CSV record will be mapped to the field sequence
in Greeting
Object. This is the same for the name
field. The figure below shows how the default mapper works:
CB4J will also convert raw textual data in the CSV file to typed data according to field type of the domain object. For instance, sequence
values in CSV records will be converted to the type long
as defined in Greeting
Object.
It is time to define the business processing logic which consists in this tutorial of printing to the console a greeting message for each person. This can be done by implementing the RecordProcessor<T>
interface or extending the DefaultRecordProcessorImpl<T>
class as follows:
public class GreetingProcessor extends DefaultRecordProcessorImpl<Greeting> { @Override public void processRecord(Greeting greeting) throws RecordProcessingException { System.out.println(greeting.getGreetingMessage()); } }
Then, we have to register this implementation to be used by CB4J to process records :
batchConfiguration.registerRecordProcessor(new GreetingProcessor());
Finally, we can initialize a batch engine instance and run the batch as follows:
BatchEngine batchEngine = new DefaultBatchEngineImpl(batchConfiguration); BatchRunner batchRunner = new BatchRunner(batchEngine); batchRunner.run();
The complete source code of this tutorial is available here.
To run the tutorial with maven, launch the following command in the cb4j/cb4j-tutorials
directory :
mvn clean package exec:java -PrunHelloWorldTutorial
If everything is ok, you should see the something like the following output in the console :
[CB4J : INFO] Configuration started at : Sat Dec 01 21:21:17 CET 2012 [CB4J : INFO] Using 'UTF-8' encoding for input file reading [CB4J : INFO] Data input file : /data/cb4j/cb4j-tutorials/persons.csv [CB4J : INFO] Data qualifier property not specified, default to '' [CB4J : INFO] Record size property not specified, it will be calculated from the header record [CB4J : INFO] Record size : 2 [CB4J : INFO] Fields delimiter : ',' [CB4J : INFO] Data qualifier character : '' [CB4J : INFO] No log file specified for ignored records, using default : /data/cb4j/cb4j-tutorials/persons-ignored.log [CB4J : INFO] No log file specified for rejected records, using default : /data/cb4j/cb4j-tutorials/persons-rejected.log [CB4J : INFO] No log file specified for error records, using default : /data/cb4j/cb4j-tutorials/persons-errors.log [CB4J : INFO] CB4J JMX MBean registered successfully as: io.github.benas.cb4j.jmx:type=BatchMonitorMBean [CB4J : INFO] Configuration successful [CB4J : INFO] Initializing batch [CB4J : INFO] Total input records to process = 2 [CB4J : INFO] CB4J engine is running... Hi Foo! Your sequence number is 1 Hi Bar! Your sequence number is 2 [CB4J : INFO] finalizing batch [CB4J : INFO] CB4J report : [CB4J : INFO] Start time = Sat Dec 01 21:21:17 CET 2012 [CB4J : INFO] End time = Sat Dec 01 21:21:17 CET 2012 [CB4J : INFO] Batch duration = 2ms [CB4J : INFO] Total input records = 2 [CB4J : INFO] Total ignored records = 0 [CB4J : INFO] Total rejected records = 0 [CB4J : INFO] Total records processed successfully = 2 [CB4J : INFO] Total records processed with error = 0 [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.795s [INFO] Finished at: Mon Sep 03 22:29:07 CEST 2012 [INFO] Final Memory: 8M/19M [INFO] ------------------------------------------------------------------------
As expected, CB4J processed records in input CSV file and generated a greeting message for each person.
Conclusion As we have seen, it is very easy to process CSV files using CB4J. All we have done is :
CB4J has done all the plumbing for us such as reading and parsing records, mapping records to our domain POJO Greeting
and applying the business logic we provided for each record.


{% extends "layout.html" %} {% block title %} Documentation- {% endblock %} {% block head %} {{ super() }}{% endblock %} {% block content %}
The backup examples assume that you are using .pgpass file to store your
Postgres credentials. No passwords are needed on the command line.
Use the scratch file system to save a local copy of your database backup.
Create a new database/container with DB4SCI to be used for restoring into.
The examples utilize the PostgreSQL
command line tools. module load PostgreSQL/9.6.1
Create a full backup and save to a local file.
pg_dump -h mydb -p 320xx -d mydb_admin -U myrootuser -f mydb_backup_today.sql
Recover saved backup to a new database.
psql -h mydb --port=320xx -d recoverdb -U myrootuser -f mydb_backup_today.sql
Migrate data from one container to another.
pg_dump -h mydb -p 320xx -d prod_db -U myrootuser | psql -h mydb --port=320xx -d dev_db -U rootuser
DB4SCI creates a single Postgres container with a default database which has the same name. Additional databases can be created within the Postgres instance. If you want to choose an alternative database name for the recovery; create a new database on the recovery Postgres DB.
psql -h mydb -p 32034 -d db_name -U myrootuser -c "CREATE DATABASE recoverdb;"
Make a new entry in the .pgpass file for each "database". To recover from an existing database into the alternative database; just change the connection string.
pg_dump -h mydb -p 320xx -d db_name -U myrootuser | psql -h mydb --port=32034 -d recoverdb -U rootuser
pg_dump will not restore any changes you have made with ALTER SYSTEM. If you have system changes to Postgres you will have to reaplly the changes to the new container.