Constraint provides structured limitations on the versions that are admissible for a given project.
As with Version, it has a private method because the gps's internal implementation of the problem is complete, and the system relies on type magic to operate.
func Any
func Any() Constraint
Any returns a constraint that will match anything.
func NewSemverConstraint
func NewSemverConstraint(body string) (Constraint, error)
NewSemverConstraint attempts to construct a semver Constraint object from the input string.
If the input string cannot be made into a valid semver Constraint, an error is returned.
type CouldNotCreateLockError
type CouldNotCreateLockError struct {
 Path string
 Err error
}
CouldNotCreateLockError describe failure modes in which creating a SourceMgr did not succeed because there was an error while attempting to create the on-disk lock file.
func (CouldNotCreateLockError) Error
func (e CouldNotCreateLockError) Error() string
type Lock
type Lock interface {
 // The hash of inputs to gps that resulted in this lock data
 InputHash() []byte
 // Projects returns the list of LockedProjects contained in the lock data.
 Projects() []LockedProject
}
Lock represents data from a lock file (or however the implementing tool chooses to store it) at a particular version that is relevant to the satisfiability solving process.
In general, the information produced by gps on finding a successful solution is all that would be necessary to constitute a lock file, though tools can include whatever other information they want in their storage.
type LockDiff
type LockDiff struct {
 HashDiff *StringDiff
 Add []LockedProjectDiff
 Remove []LockedProjectDiff
 Modify []LockedProjectDiff
}
LockDiff is the set of differences between an existing lock file and an updated lock file. Fields are only populated when there is a difference, otherwise they are empty.
func DiffLocks
func DiffLocks(l1 Lock, l2 Lock) *LockDiff
DiffLocks compares two locks and identifies the differences between them. Returns nil if there are no differences.
type LockedProject
type LockedProject struct {
 // contains filtered or unexported fields
}
LockedProject is a single project entry from a lock file. It expresses the project's name, one or both of version and underlying revision, the network URI for accessing it, the path at which it should be placed within a vendor directory, and the packages that are used in it.
func NewLockedProject
func NewLockedProject(id ProjectIdentifier, v Version, pkgs []string) LockedProject
NewLockedProject creates a new LockedProject struct with a given ProjectIdentifier (name and optional upstream source URL), version. and list of packages required from the project.
Note that passing a nil version will cause a panic. This is a correctness measure to ensure that the solver is never exposed to a version-less lock entry. Such a case would be meaningless - the solver would have no choice but to simply dismiss that project. By creating a hard failure case via panic instead, we are trying to avoid inflicting the resulting pain on the user by instead forcing a decision on the Analyzer implementation.
func (LockedProject) Eq
func (lp LockedProject) Eq(lp2 LockedProject) bool
Eq checks if two LockedProject instances are equal.
func (LockedProject) Ident
func (lp LockedProject) Ident() ProjectIdentifier
Ident returns the identifier describing the project. This includes both the local name (the root name by which the project is referenced in import paths) and the network name, where the upstream source lives.
func (LockedProject) Packages
func (lp LockedProject) Packages() []string
Packages returns the list of packages from within the LockedProject that are actually used in the import graph. Some caveats:
* The names given are relative to the root import path for the project. If
 the root package itself is imported, it's represented as ".".
* Just because a package path isn't included in this list doesn't mean it's
 safe to remove - it could contain C files, or other assets, that can't be
 safely removed.
* The slice is not a copy. If you need to modify it, copy it first.
func (LockedProject) Version
func (lp LockedProject) Version() Version
Version assembles together whatever version and/or revision data is available into a single Version.
type LockedProjectDiff
type LockedProjectDiff struct {
 Name ProjectRoot
 Source *StringDiff
 Version *StringDiff
 Branch *StringDiff
 Revision *StringDiff
 Packages []StringDiff
}
LockedProjectDiff contains the before and after snapshot of a project reference. Fields are only populated when there is a difference, otherwise they are empty.
func DiffProjects
func DiffProjects(lp1 LockedProject, lp2 LockedProject) *LockedProjectDiff
DiffProjects compares two projects and identifies the differences between them. Returns nil if there are no differences
type Manifest
type Manifest interface {
 // Returns a list of project-level constraints.
 DependencyConstraints() ProjectConstraints
 // Returns a list of constraints applicable to test imports.
 //
 // These are applied only when tests are incorporated. Typically, that
 // will only be for root manifests.
 TestDependencyConstraints() ProjectConstraints
}
Manifest represents manifest-type data for a project at a particular version. That means dependency constraints, both for normal dependencies and for tests. The constraints expressed in a manifest determine the set of versions that are acceptable to try for a given project.
Expressing a constraint in a manifest does not guarantee that a particular dependency will be present. It only guarantees that if packages in the project specified by the dependency are discovered through static analysis of the (transitive) import graph, then they will conform to the constraint.
This does entail that manifests can express constraints on projects they do not themselves import. This is by design, but its implications are complex. See the gps docs for more information: _URL_
type PairedVersion
type PairedVersion interface {
 Version
 // Underlying returns the immutable Revision that identifies this Version.
 Underlying() Revision
 // Unpair returns the surface-level UnpairedVersion that half of the pair.
 //
 // It does NOT modify the original PairedVersion
 Unpair() UnpairedVersion
 // contains filtered or unexported methods
}
PairedVersion represents a normal Version, but paired with its corresponding, underlying Revision.
type ProjectAnalyzer
type ProjectAnalyzer interface {
 // Perform analysis of the filesystem tree rooted at path, with the
 // root import path importRoot, to determine the project's constraints, as
 // indicated by a Manifest and Lock.
 DeriveManifestAndLock(path string, importRoot ProjectRoot) (Manifest, Lock, error)
 // Report the name and version of this ProjectAnalyzer.
 Info() (name string, version int)
}
A ProjectAnalyzer is responsible for analyzing a given path for Manifest and Lock information. Tools relying on gps must implement one.
type ProjectConstraint
type ProjectConstraint struct {
 Ident ProjectIdentifier
 Constraint Constraint
}
A ProjectConstraint combines a ProjectIdentifier with a Constraint. It indicates that, if packages contained in the ProjectIdentifier enter the depgraph, they must do so at a version that is allowed by the Constraint.
type ProjectConstraints
type ProjectConstraints map[ProjectRoot]ProjectProperties
ProjectConstraints is a map of projects, as identified by their import path roots (ProjectRoots) to the corresponding ProjectProperties.
They are the standard form in which Manifests declare their required dependency properties - constraints and network locations - as well as the form in which RootManifests declare their overrides.
type ProjectIdentifier
type ProjectIdentifier struct {
 ProjectRoot ProjectRoot
 Source string
}
A ProjectIdentifier provides the name and source location of a dependency. It is related to, but differs in two keys ways from, an plain import path.
First, ProjectIdentifiers do not identify a single package. Rather, they encompasses the whole tree of packages, including tree's root - the ProjectRoot. In gps' current design, this ProjectRoot almost always corresponds to the root of a repository.
Second, ProjectIdentifiers can optionally carry a Source, which identifies where the underlying source code can be located on the network. These can be either a full URL, including protocol, or plain import paths. So, these are all valid data for Source:
_URL_
_URL_
_EMAIL_:sdboyer/gps
_URL_
With plain import paths, network addresses are derived purely through an algorithm. By having an explicit network name, it becomes possible to, for example, transparently substitute a fork for the original upstream source repository.
Note that gps makes no guarantees about


text:
Liquor or liqueur. What is the difference?
The question seems simple enough and, in fact, there is a relatively simple answer…. sugar.
Both liquor and liqueur contain alcohol. Liquor is a distilled spirit made from a fermented mash of either grains, vegetables or fruits and is not sweet. Gin, vodka, tequila, rum and brandy are examples of liquor.
A liqueur begins with a base spirit such as brandy or rum, is sweetened with sugar, honey, syrup or beet and often infused with fruits, herbs, spices, flowers, seeds, and even roots and barks for flavor. Liqueurs generally have short aging periods (ie, they're ready to drink quite quickly), but may have resting periods during their production to allow flavors to blend. Examples of liqueurs are Chambord, Grand Marnier, Amaretto, creme de menthe, triple sec and Frangelico.
Points of interest:
- Liqueurs are generally thought to be descendants of herbal medicines often made by monks as early as the 13th century (Chartreuse, Benedictine). However, as early as 800 BC the Chinese were using crude distillation methods to produce fortified spirits from fermented rice wine, and Egyptians and Greeks were distilling grape wine in 400 BC that they sweetened with honey. So it's more likely that the brothers of yore simply introduced the art to Europe.
- In the USA, liqueur is generally pronounced lick-coor. Elsewhere the pronunciation is lik-yur.
- Liqueurs must contain at least 2.5% sugar by weight, though some have thirty five percent or more, to distinguish them from spirits. Creme liqueurs must have 40% sugar content.
- The term creme, when applied to a liqueur, refers to one flavor, not to any milk product. For instance, creme de menthe is flavored only with mint, creme de cacao with chocolate bean.
- Liqueurs may also contain dairy products, in which case they become cream liqueurs (not creme).
- Most liqueurs have a lower alcohol content than liquor, though that is not always the case.
- The term cordial is generally synonymous with the word liqueur although in Europe cordial can also refer to a sweet, non-alcoholic syrup such as Rose's lime juice cordial. Another, little-used term is ratafia.
Of course, we have to have a slight complication to throw in to the mix. Now-a-days there are many flavored liquors: vanilla vodka, saffron gin, for instance. These are not sweetened and the flavor is generally added by a steeping process after distillation.
OK, now you have all the information you need to confidently distinguish between a liquor or liqueur. So go out and use it.
Pick up some more hints – watch the video.

source: HuggingFaceFW/fineweb-edu


text: This feature article examines the potential of heterogeneous Pd species to mediate catalytic C-H bond functionalisation processes employing suitable substrates (e.g. aromatic/heteroaromatic compounds). A focus is placed on the reactivity of supported and non-supported Pd nanoparticle (PdNPs) catalysts, in addition to the re-appropriation of well-established heterogeneous Pd catalysts such as Pd/C. Where possible, reasonable comparisons are made between PdNPs and traditional 'homogeneous' Pd precatalyst sources (which form PdNPs). The involvement of higher order Pd species in traditional cross-coupling processes, such as Mizoroki-Heck, Sonogashira and Suzuki-Miyaura reactions, allows the exemplification of potential future topics for study in the area of catalytic C-H bond functionalisation processes.

source: openbmb/Ultra-FineWeb


_DIR
Here, LOG_DIR should be replaced with your log directory. If you are on Windows and
this is not working, make sure you are running the terminal from the same drive
where the log data is, and add a name to the log directory as follows in order to
bypass a bug in the way TensorBoard parses the path:
tensorboard --logdir=rnn_demo:LOG_DIR
TensorBoard allows us to assign names to individual log directories by putting a
colon between the name and the path, which may be useful when working with mul‐
tiple log directories. In such a case, we pass a comma-separated list of log directories
as follows:
Introduction to Recurrent Neural Networks | 79
tensorboard --logdir=rnn_demo1:LOG_DIR1, rnn_demo2:LOG_DIR2
In our example (with one log directory), once you have run the tensorboard com‐
mand, you should get something like the following, telling you where to navigate in
your browser:
Starting TensorBoard b'39' on port 6006
(You can navigate to http://10.100.102.4:6006)
If the address does not work, go to localhost:6006, which should always work.
TensorBoard recursively walks the directory tree rooted at LOG_DIR looking for sub‐
directories that contain tfevents log data. If you run this example multiple times,
make sure to either delete the LOG_DIR folder you created after each run, or write the
logs to separate subdirectories within LOG_DIR, such as LOG_DIR/run1/train, LOG_DIR/
run2/train, and so forth, to avoid issues with overwriting log files, which may lead to
some "funky" plots.
Lets take a look at some of the visualizations we can get. In the next section, we will
explore interactive visualization of high-dimensional data with TensorBoard—for
now, we focus on plotting training process summaries and trained weights.
First, in your browser, go to the Scalars tab. Here TensorBoard shows us summaries
of all scalars, including not only training and testing accuracy, which are usually most
interesting, but also some summary statistics we logged about variables (see
Figure 5-4). Hovering over the plots, we can see some numerical figures.
Figure 5-4. TensorBoard scalar summaries.
In the Graphs tab we can get an interactive visualization of our computation graph,
from a high-level view down to the basic ops, by zooming in (see Figure 5-5).
80 | Chapter 5: Text I: Working with Text and Sequences, and TensorBoard Visualization
Figure 5-5. Zooming in on the computation graph.
Finally, in the Histograms tab we see histograms of our weights across the training
process (see Figure 5-6). Of course, we had to explicitly add these histograms to our
logging in order to view them, with tf.summary.histogram().
Introduction to Recurrent Neural Networks | 81
Figure 5-6. Histograms of weights throughout the learning process.
TensorFlow Built-in RNN Functions
The preceding example taught us some of the fundamental and powerful ways we can
work with sequences, by implementing our graph pretty much from scratch. In prac‐
tice, it is of course a good idea to use built-in higher-level modules and functions.
This not only makes the code shorter and easier to write, but exploits many low-level
optimizations afforded by TensorFlow implementations.
In this section we first present a new, shorter version of the code in its entirety. Since
most of the overall details have not changed, we focus on the main new elements,
tf.contrib.rnn.BasicRNNCell and tf.nn.dynamic_rnn():
import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("/tmp/data/", one_hot=True)
element_size = 28;time_steps = 28;num_classes = 10
batch_size = 128;hidden_layer_size = 128
_inputs = tf.placeholder(tf.float32,shape=[None, time_steps,
element_size],
name='inputs')
y = tf.placeholder(tf.float32, shape=[None, num_classes],name='inputs')
# TensorFlow built-in functions
rnn_cell = tf.contrib.rnn.BasicRNNCell(hidden_layer_size)
outputs, _ = tf.nn.dynamic_rnn(rnn_cell, _inputs, dtype=tf.float32)
Wl = tf.Variable(tf.truncated_normal([hidden_layer_size, num_classes],
mean=0,stddev=.01))
bl = tf.Variable(tf.truncated_normal([num_classes],mean=0,stddev=.01))
def get_linear_layer(vector):
82 | Chapter 5: Text I: Working with Text and Sequences, and TensorBoard Visualization
return tf.matmul(vector, Wl) + bl
last_rnn_output = outputs[:,-1,:]
final_output = get_linear_layer(last_rnn_output)
softmax = tf.nn.softmax_cross_entropy_with_logits(logits=final_output,
labels=y)
cross_entropy = tf.reduce_mean(softmax)
train_step = tf.train.RMSPropOptimizer(0.001, 0.9).minimize(cross_entropy)
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(final_output,1))
accuracy = (tf.reduce_mean(tf.cast(correct_prediction, tf.float32)))*100
sess=tf.InteractiveSession()
sess.run(tf.global_variables_initializer())
test_data = mnist.test.images[:batch_size].reshape((-1,
time_steps, element_size))
test_label = mnist.test.labels[:batch_size]
for i in range(3001):
batch_x, batch_y = mnist.train.next_batch(batch_size)
batch_x = batch_x.reshape((batch_size, time_steps, element_size))
sess.run(train_step,feed_dict={_inputs:batch_x,
y:batch_y})
if i % 1000 == 0:
acc = sess.run(accuracy, feed_dict={_inputs: batch_x,
y: batch_y})
loss = sess.run(cross_entropy,feed_dict={_inputs:batch_x,
y:batch_y})
print ("Iter " + str(i) + ", Minibatch Loss= " + \
"{:.6f}".format(loss) + ", Training Accuracy= " + \
"{:.5f}".format(acc))
print ("Testing Accuracy:",
sess.run(accuracy, feed_dict={_inputs: test_data, y: test_label}))
tf.contrib.rnn.BasicRNNCell and tf.nn.dynamic_rnn()
TensorFlow's RNN cells are abstractions that represent the basic operations each
recurrent "cell" carries out (see Figure 5-2 at the start of this chapter for an illustra‐
tion), and its associated state. They are, in general terms, a "replacement" of the
rnn_step() function and the associated variables it required. Of course, there are
many variants and types of cells, each with many methods and properties. We will see
some more advanced cells toward the end of this chapter and later in the book.
Introduction to Recurrent Neural Networks | 83
Once we have created the rnn_cell, we feed it into tf.nn.dynamic_rnn(). This func‐
tion replaces tf.scan() in our vanilla implementation and creates an RNN specified
by rnn_cell.
As of this writing, in early 2017, TensorFlow includes a static and a dynamic function
for creating an RNN. What does this mean? The static version creates an unrolled
graph (as in Figure 5-2) of fixed length. The dynamic version uses a tf.While loop to
dynamically construct the graph at execution time, leading to faster graph creation,
which can be significant. This dynamic construction can also be very useful in other
ways, some of which we will touch on when we discuss variable-length sequences
toward the end of this chapter.
Note that contrib refers to the fact that code in this library is contributed and still
requires testing. We


Units of Study Outlines
ECOP2012 - Social Foundations of Modern Capitalism
Semester 2, 2011 | Credit Points: 6
Coordinator: Joy Paton
Economic activity is 'embedded' within a broader social structure, making the study of institutional and social forces a crucial element in understanding the historical fabric and functioning of the economy. This unit looks at the institutions, such as of capital, labour, the family and the state that channel economic activity and also at the importance of class and other social struggles in the historical transformations of those institutions. It examines how governments respond to the imperatives for economic and social order, including how the state acts to regulate institutions, and socio-economic relations, to establish stability and maintain capital accumulation. Several illustrative case studies and policy areas are studied.
1x2000wd research essay (40%), 1x1.5hr exam (40%), seminar presentation (10%) and seminar participation (10%)
2x1hr lectures/week, 1x1hr tutorial/week commencing week 2
ECOP1001 and (ECOP1002 or ECOP1003 or ECOP1004)
A timetable is not available for this session.


text:
A hair spray is a substance that is sprayed onto the hair to keep it stiff or in place. The spray dries quickly and can be used for different styling techniques. But there have been some myths revolving around the use of hairspray.
A myth stating how bad hairspray is for the health of your hair. There isn't a clear-cut yes or no to if this is true. Of course, overusing hair spray continuously would negate any potential health advantages. Just like the saying goes "Too much of any good thing is bad" this goes for hair spray too. This article will point out how hair spray use may go wrong for your hair.
What Does Hairspray Contain?
A polymer, a solvent, and a propellant are the three main ingredients in an aerosol hairspray. The solution is forced out of the can by the propellant and sprays as a fine mist. The solvent and propellant in this liquid evaporate when it is sprayed. When the polymer hardens on the hair, a rigid coating is left behind to hold the hair in place.
Hairspray propellants once contained CFCs, which are now prohibited due to their negative effects on the ozone layer. Nowadays, propellants used in hairsprays are more often hydrocarbons and compressed gasses which are not recorded to be harmful.
Right And Wrong Ways Of Applying Hair Spray
In this section, we will be looking at some dos and don'ts of applying hair spray to help you get the most out of your hair.
The Right way
- Do use a small amount of hair spray to avoid over-drying or damaging the strands of your hair.
- Do use a comb or brush before and after applying hair spray
- Do use hairspray in different areas of your head for more volume
- Do choose natural ingredients for the best product, like organic wheat protein and apple cider vinegar.
The Wrong Way
- Don't Spray too liberally because then you risk getting a sticky scalp or wet strands.
- Don't apply too much hairspray on one spot on your head
- If a hair spray contains alcohol or causes hair to be sticky, then it is not a good choice.
Advantage Of Using Hairspray The Right Way
Hairspray is a fine mist that is sprayed on the root area of the hair. Its primary purpose is to keep hair in place and prevent flyaways. Hairspray is used as a root touch-up spray by many women to cover graying hair. It usually has a formula of hair dye mixed with other solvents. There are many ways you can touch up your roots without having to dye your hair again. One way to remember is by using a gray root touch-up spray.
Hair loss is another issue for those who suffer from it. There are many products on the market today to help people who suffer from hair loss manage their hair. Spray to cover bald spots falls into this category of products.
Hair spray also can be used for root cover-up blonde style. This technique is done by applying a darker shade of blonde on the roots to give your hair some depth and warmth. The darker color is applied to the root area and then it's combed through with a fine-toothed comb or brush.
Other Advantage Of Using Hairspray?
- The color lasts for about three days and can be scented to leave you smelling fresh and clean.
- Hairspray can protect hair from water, dust, and other factors which cause hair damage.
- It can be used to make the hairstyle more stable and long-lasting.
- Hairspray can also be used as a styling product on its own instead of using it as a protective agent.
Problems That May Occur When Using Hair Spray Wrongly
Hair spray is used to create a hairstyle by locking in your style. Hair spray does not ruin your hair, rather it protects it from pollution and UV rays.
There is a risk of using hair spray wrongly as you may end up with unwanted sticky/greasy-looking strands and even have an allergic reaction.
The hair can get weighed down by the product which leads to lackluster locks that lack any bounce or movement.
The bottom line is, to use hair spray safely to avoid any damage and make sure you know what is used in the formulation of the product before buying it.
11 Things To Be Mindful Of When Using Hair Spray
So does hairspray damage hair? The answer is no. Nothing in hairspray has been proven to be harmful to the health of your hair. Although to maintain healthy hair, you need to be mindful of a few things when using hairspray.
- Pick The Right Kind Of Spray
You must be careful when choosing the proper type of hair spray because there are so many available. For example, heat protectant sprays must be applied before styling to reduce thermal damage to your hair.
A finishing spray, which is applied at the end of your routine and may or may not offer thermal protection benefits, cannot take the place of this. Check the labels to be sure you are purchasing exactly what is described, and then follow the instructions to the letter.
- For Incredible Hair Volume, Hold Your Head Downward
Holding your head upside down. And shake it while spraying on hair fiber close to the roots. This is a great trick for adding volume.
Once the product has been thoroughly worked into your hair while it is still upside down, shake it straight with your hands. You can repeat this process a few times to increase the volume until you achieve your touch of perfection.
- Reduce Product Accumulation
Your hair is vulnerable to product buildup if you frequently put styling products on it. Your hair will become weighed down by product buildup.
And since your products must penetrate multiple layers of old products, they will be less effective. Over time, hairspray can leave behind white particles on the hair that resemble dandruff.
Use a clarifying shampoo to fully remove any hairspray residue from the hair. To avoid product build-up.
- Lackluster Hair Might Result From Hairspray
Over time, your hair will start to seem dull if you regularly coat it in polymers. For healthy, lustrous hair, use a vitamin E-containing hairspray.
Your hair won't get damaged if you only use hairspray minimally. But if you use sprays a lot, your hair can start to lose some of its best qualities.
Applying additional products is essential to preserve moisture and gloss, avoid product accumulation, and prevent stains. Aside from that, always take good care of your hair. In this manner, you can profit from hairspray while preserving healthy hair.
- Steer Clear Of Ethanol-Containing Hairsprays
Alcohol of the type called ethanol can dry out hair. It can damage it, and irritate the scalp. Avoid using ethanol-based hair sprays as much as possible. Instead, choose non-drying fatty alcohols like stearyl, Cetearyl, or cetyl alcohol.
Use a nourishing hairspray, which contains argan oil. To promote hydration.
- Use Caution When Brushing
Brushing hair is one of the most typical ways to harm it. If you intend to brush through your coil afterward, stay away from super-hold hairsprays. Instead, choose a hairspray that has a softer hold. So it leaves your hair touchable.
- Always Spray A Few Inches Away From The Hair
Hold the hair spray at least 12 inches away from your hair at all times. Instead of concentrating on one area of your hair, spread the hair spray throughout.
The majority of hair sprays come with recommendations on how long to spray your hair. However, stop spraying if you see that your hair is starting to become stiff. Alcohol in some hair sprays can dry down your scalp. Therefore, avoid applying those products straight on your scalp
- Do Not Use Near Open Flame
Fire is an extreme danger, so people should do anything to avoid it. You should not use hair spray near a naked fire. This can lead to fire or explosion. Which may cause severe injury.
So ensure you are not near a fire when using the hair spray on your hair. Safety first.
- Watch Out For Allergic Effects
Hairspray contains chemicals that some people may be allergic to. This might itch your scalp and create inflammation. How to determine if you should or shouldn't use hairspray? Do a patch test first.
This is to see the effects it might have on your skin after applying the product. If you are allergic to the specific product, try and opt for another option. But don't forget to perform another patch test.
- Don't Leave In Your Hair Over The Night
The effects of sleeping with hairspray on may initially seem inconspicuous. But if you continue doing this, the filth will just gather. Your hair would appear lifeless and weighted down. Hair growth would be impacted by the accumulation.
Spraying your hair before bed can leave residues on your pillow and bed linens. Your face won't appreciate the practice, in addition to the impact, it has on the health of your hair.
- Establish The Proper Strength Of The Hair Spray Your Hair Needs
Hair sprays can offer a wide range of protection, hold, curl, and control. This is in addition to being designed to suit a variety of functions.
The haircut and the desired final appearance will determine the appropriate strength of a hair spray. For instance, there are three benefits to choosing a hair spray to hold your hairstyle:
Low-hold products are perfect for daily hair styling needs when the hair is down and requires a little hold and lots of mobility.
For easy updos like buns and textured braids, medium-hold is best. This is perfect for vacation and party hair styling needs.
Maximum-

source: m-a-p/FineFineWeb


text:
Revisiting Scheduling and User Association in Heterogeneous Networks When the Backhaul Links are of Limited Capacity
Speaker(s) : Catherine Rosenberg (U. Waterloo, Canada)
We present a study on the impact of the limited capacity of backhaul links on user scheduling, and user association in a heterogeneous cellular network. We show that the backhaul limitations have a critical impact on user scheduling, but a minor impact on user association. We propose backhaul-aware user scheduling schemes that are computationally simple and hence easy to implement, and yet can perform very well. We also propose online backhaul-unaware user association rules that are very efficient. These results are significant since they impact the way base stations and user equipment should be designed.
This work was done in collaboration with J. Ghimire
Bio: Catherine Rosenberg is a Professor in Electrical and Computer Engineering at the University of Waterloo. Since June 2010, she holds the Tier 1 Canada Research Chair in the Future Internet. From 1999 to 2004, Prof. Rosenberg was a Professor in the School of Electrical and Computer Engineering at Purdue University.
Prof. Rosenberg is the President of the Scientific Advisory Board of Orange.She was elected an IEEE Fellow for contributions to resource management in wireless and satellite networks on 2011 and a Fellow of the Canadian Academy of Engineering in 2013. Her research interests are mainly in three areas: the Internet, Wireless Networks, and Energy Systems.


text:
Energy is an emerging and expanding sector that encompasses all aspects of energy generation, distribution, and consumption, including research and development, design, construction, installation, and maintenance. Core industries in this sector include:
- Renewable and alternative energy such as wind, solar, and biomass
- Power generation and distribution
- Fossil fuels
- Energy efficiency
The Energy SHSM gives students an opportunity to specialize, gain qualifications, and plan a career pathway in various areas of the Energy sector while still in high school. The SHSM Program has a number of required components, designed to give students a "leg-up" to pursue post-secondary opportunities in each of the identified sectors, valuing apprenticeship, college, community, university and the workplace.
Check out: Green Collar Careers
This major is offered at :
Resurrection | St. Benedict | St. Mary's
Required Components :
- Provided to students FREE of charge, certifications, trainings and workshops led by industry professionals, help students develop their skills and discover more information about their future career.
- Six certifications/training/workshops related to the industry
- 3 Compulsory, 3 Elective
- Examples include: Basic Electrical Safety, Confined Space Awareness, Solar Panel/Energy Efficiency Training, Customer Service Training, Health & Safety, Land Surveying Basics, Scaffold Safety, Standard First Aid & CPR-C, WHMIS, Working at Heights and more!
- View all Certification & Training topics for Energy SHSM Here
- A bundle of nine credits in Grade 11 and Grade 12 which students earn:
- Four Energy major credits
- One English credit,
- One Math credit
- One Other credit in either Business, Science or World Studies
- Two Co-operative Education credits to gain workplace experience that enables students to refine, extend and practice sector-specific knowledge and skills.
Course Information: Resurrection | St. Benedict | St. Mary's
- Co-operative Education (Co-op) provides students with workplace experience that enables students to refine, extend and practice sector-specific knowledge and skills.
- Examples of Energy Co-op Placements:
Architecture and Engineering firms, City Planning, Home Renovation & Inspection Services, Demolition Services, Energy Auditing Companies and more!
- Examples of Energy Co-op Placements:
- Construction Millwright & Industrial Mechanic
- Contractor & Supervisor, Electrical Trades & Telecommunications
- Electrical Mechanic
- Electrical Power Line & Cable Worker
- Industrial Electrician
- Power Systems Electrician
- Power Systems and Power Station Operator
- Biological Technologist & Technician
- Civil Engineering Technologist
- Construction Electrician
- Energy Guide & Quality Control Manager
- Geological & Mineral Technologist
- Geothermal Installer
- Geothermal System Designer
- Land Surveyor
- Mapping and Related Technologist/Technician
- Chemical Engineer
- Electrical Engineer
- Geological Engineer
- Mechanical Engineer
- Assembler, Fabricator, Inspector & Tester of Transformers & Electrical Appliances
- Electronic Service Technicians
- Gas Maintenance Workers
- Home Energy Evaluator
- Renewable Energy Products Salesperson
- Residential/Commercial Installer/Servicer
- Solar Panel Technician
- Wind Turbine Material Controller
For more information, speak to the guidance counselor at your school
Students in a Specialist High Skills Major program complete learning activities that are contextualized to the knowledge and skills relevant to the economic sector of the SHSM. Contextualized Learning Activities (CLA's) enhance your learning in your English, Math, Science and Business classes. They connect your interest in your chosen sector to your learning in these classes.
CLA's will be delivered by your classroom teacher. It is not additional work to be completed – it may replace the work being done by non-SHSM students or the teacher may choose to have the entire class complete the CLA.
- Building An Electric Vehicle (video)- format not supported
- Canadian and World Issues CGW4U – Independent Study
- Regional Geography CGG3O – Sustainable Tourism in Developing Countries
- Canadian Law CLU3E – Mock Trials – Energy and the Environment
- English ENG4U – ISU – Novel Study
- Math MBF3CI – Chevy Volt
- Science SVN3E – Conserving Energy and Saving You Money


text:
STUDY OF AERODYNAMIC DRAG REDUCTION ON A FULL-SCALE TRACTOR-TRAILER
Aerodynamic drag tests were performed on a tractor-trailer combination using the coast-down method on a smooth, nearly level runway. The tests included an investigation of drag reduction obtained with add-on devices that are commercially available or under development. The tests covered tractor-trailer speeds ranging from approximately 35 to 65 miles per hour and included fuel consumption measurements. The study shows the effects of the various add-on devices on the aerodynamic drag, and for some devices on the fuel consumption. Results from a simulation of fuel consumption tests using a computer program are also included.
National Aeronautics and Space AdministrationFlight Research Center
Edwards AFB, CA United States 93523
Transportation Systems Center55 Broadway, Kendall Square
Cambridge, MA United States 02142
- Steers, L L
- Montoya, L C
- Publication Date: 1976-4
- Pagination: 57 p.
- TRT Terms: Aerodynamics; Airport runways; Data collection; Drag; Dynamic tests; Fuel consumption; Motor vehicles; Simulation; Speed; Tractor trailer combinations; Trailers; Truck tractors; Velocity
- Old TRIS Terms: Aerodynamic configurations
- Subject Areas: Energy; Highways; Motor Carriers; Pavements; Safety and Human Factors;
- Accession Number: 00137310
- Record Type: Publication
- Source Agency: National Technical Information Service
- Report/Paper Numbers: DOT-TSC-OST-76-13 Final Rpt.
- Contract Numbers: DOT/TSC-RA-74-31
- Files: TRIS
- Created Date: Sep 16 1977 12:00AM


text:
How to Use jconsole to Access MBeans (Windows)
MBeans provide potentially important properties and operations to the Apache Tomcat administrator. In this topic, we'll explore how to access MBeans using the jconsole application that is provided in the JDK.
To learn how to use MBeans in Windows follow these steps:
- You'll need to activate MBeans in Tomcat. For instructions for configuring Tomcat to use MBeans, click here.
- Start the Tomcat server.
- Open a command prompt.
- At the command prompt, type
jconsoleand hit Enter.
- Select the Catalina JVM and then click Connect:
Since the connection is not through SSL, a warning will be displayed. Click the button labelled Insecure connection. In practice, you'll want to secure access to the MBeans. For more information on securing the JMX port visit the Oracle documentation at _URL_
- The main page will now be displayed. Click the MBeans tab.
- The MBeans main page will be displayed. We will look at the Catalina MBeans. Click the + sign adjacent to Catalina in the left hand
- Let's follow one branch of the tree to give you an idea of the what can be accomplished using MBeans. We'll locate the operations available
examplesweb application that is shipped with Tomcat. Open WebModule -> //localhost/examples -> none -> none -> Operations -> start as illustrated below:
startoperation will start the
examplesweb application. To invoke the operation, click the start button. Note that a
stopoperation is also available on the list of operations, and this action will stop the web application (attempts to access a stopped web application will result in Tomcat sending an HTTP status of 404 to the browser).


text:
Earl May Garden Center
Earl May Garden Center was posted on July 14, 2017 at 9:02 pm. It is posted on the Garden category. Earl May Garden Center is tagged with Earl May Garden Center, Earl, May, Garden, Center..
Earlearl (ûrl),USA pronunciation n.
- a British nobleman of a rank below that of marquis and above that of viscount: called count for a time after the Norman conquest. The wife of an earl is a countess.
- (in Anglo-Saxon England) a governor of one of the great divisions of England, including East Anglia, Mercia, Northumbria, and Wessex.
Maymay1 (mā),USA pronunciation auxiliary v., pres. sing. 1st pers. may, 2nd may or ([Archaic]) may•est or mayst, 3rd may;
pres. pl. may;
- (used to express possibility): It may rain.
- (used to express opportunity or permission): You may enter.
- (used to express contingency, esp. in clauses indicating condition, concession, purpose, result, etc.): I may be wrong but I think you would be wise to go. Times may change but human nature stays the same.
- (used to express wish or prayer): May you live to an old age.
- [Archaic.](used to express ability or power.) Cf. might1.
Gardengar•den (gär′dn),USA pronunciation n.
- a plot of ground, usually near a house, where flowers, shrubs, vegetables, fruits, or herbs are cultivated.
- a piece of ground or other space, commonly with ornamental plants, trees, etc., used as a park or other public recreation area: a public garden.
- a fertile and delightful spot or region.
- [Brit.]yard2 (def. 1).
- pertaining to, produced in, or suitable for cultivation or use in a garden: fresh garden vegetables; garden furniture.
- lead up or down the garden path, to deceive or mislead in an enticing way;
delude: The voters had been led up the garden path too often to take a candidate's promises seriously.
- to lay out, cultivate, or tend a garden.
- to cultivate as a garden.
Centercen•ter (sen′tər),USA pronunciation n.
- [Geom.]the middle point, as the point within a circle or sphere equally distant from all points of the circumference or surface, or the point within a regular polygon equally distant from the vertices.
- a point, pivot, axis, etc., around which anything rotates or revolves: The sun is the center of the solar system.
- the source of an influence, action, force, etc.: the center of a problem.
- a point, place, person, etc., upon which interest, emotion, etc., focuses: His family is the center of his life.
- a principal point, place, or object: a shipping center.
- a building or part of a building used as a meeting place for a particular group or having facilities for certain activities: a youth center; The company has a complete recreation center in the basement.
- an office or other facility providing a specific service or dealing with a particular emergency: a flood-relief center; a crisis center.
- a person, thing, group, etc., occupying the middle position, esp. a body of troops.
- the core or middle of anything: chocolate candies with fruit centers.
- a store or establishment devoted to a particular subject or hobby, carrying supplies, materials, tools, and books as well as offering guidance and advice: a garden center; a nutrition center.
- See shopping center.
- (usually cap.)
- the part of a legislative assembly, esp. in continental Europe, that sits in the center of the chamber, a position customarily assigned to members of the legislature who hold political views intermediate between those of the Right and Left.
- the members of such an assembly who sit in the Center.
- the political position of persons who hold moderate views.
- politically moderate persons, taken collectively;
middle-of-the-roaders: Unfortunately, his homeland has always lacked a responsible Center.
- a lineman who occupies a position in the middle of the line and who puts the ball into play by tossing it between his legs to a back.
- the position played by this lineman.
- a player who participates in a center jump.
- the position of the player in the center of the court, where the center jump takes place at the beginning of play.
- [Ice Hockey.]a player who participates in a face-off at the beginning of play.
- [Baseball.]See center field.
- a cluster of nerve cells governing a specific organic process: the vasomotor center.
- the mean position of a figure or system.
- the set of elements of a group that commute with every element of the group.
- a tapered rod, mounted in the headstock spindle(live center) or the tailstock spindle (dead center) of a lathe, upon which the work to be turned is placed.
- one of two similar points on some other machine, as a planing machine, enabling an object to be turned on its axis.
- a tapered indentation, in a piece to be turned on a lathe, into which a center is fitted.
- on center, from the centerline or midpoint of a structural member, an area of a plan, etc., to that of a similar member, area, etc.: The studs are set 30 inches on center. Abbr.:o.c.
- to place in or on a center: She centered the clock on the mantelpiece.
- to collect to or around a center;
focus: He centered his novel on the Civil War.
- to determine or mark the center of: A small brass star centered the tabletop.
- to adjust, shape, or modify (an object, part, etc.) so that its axis or the like is in a central or normal position: to center the lens of a telescope; to center the work on a lathe.
- to place (an object, part, etc.) so as to be equidistant from all bordering or adjacent areas.
- [Football.]snap (def. 20).
- to pass (a basketball, hockey puck, etc.) from any place along the periphery toward the middle of the playing area.
Also,[esp. Brit.,] centre. cen′ter•a•ble, adj.
- to be at or come to a center.
- to come to a focus;
concentrate (fol. by at, about, around, in, or on): The interest of the book centers specifically on the character of the eccentric hero. Political power in the town centers in the position of mayor.
- to gather or accumulate in a cluster* collect (fol. by at, about, around, in, or on): Shops and municipal buildings center around the city square.
Earl May Garden Center have 10 pictures it's including Business Profile: Earl May Nursery And Garden Center - Waukee, IA Patch, Earl May Garden Center - Turbo Spreader Sticker, Ankeny Earl May Storefront, Des Moines Earl May Storefront, Lincoln Earl May Storefront, Shawnee Earl May Storefront, West Des Moines Earl May Storefront, Earl May Garden Center How To Plant Vegetables In Containers, St Josephs Earl May Storefront, Iowa City Earl May Storefront. Following are the attachments:
Contrast of Substantial Note Statue by Breadth area. The purpose continues to be the same thing using the place that is second: you to definitely be more flexible in looking at the sculpture. In cases like this, the distance involving the statue of the room, decide the most limit sculpture that is high. For example, if the length between your statue having a rooftop merely 3 yards away, an effort to ensure that at the most only 1 meter statue that is high.
Adjust the size of the statue's placement by Place. In cases like this, a tiny sculpture could be located in between your plants or around the edge of the garden that was footpath. Meanwhile, greater sculptures can be put into the park's center or the spot
With carvings such as the sculpture is an aspect that will sort the classic style inside and outside the chamber, Earl May Garden Center is loaded, is not any exemption to backyard. The location of statue in the playground was actually emblematic and is usually only made of jewel. But combined with the progress of contemporary statue, then a works of sculpture becomes progressively varied, both shape along with the materials utilized in point using the growth of engineering and advent of fresh supplies, including white cement.


Sunday, June 30, 2013
Precision and Accuracy: Changes to the Aiming System in 8.6
This post was supposed to come out a while ago, but with WoT NA servers down at the moment and the continuing arguments over just how 8.6 effected accuracy, I wanted to take some time to show you just what changed.
In 8.6, the aiming mechanism's RNG was changed to produce a tighter shot distribution. The details of this have been gone over multiple times, particularly in WG's own announcement and this article on (blog now located at
The gist of it simple pretty simple: Where once the outside of the aim circle represented 1.3 standard deviations from the aim point and any number >1.3 SDs generated by the RNG flew off to edge of the aim circle, this was being tweaked to be 3 standard deviations instead. Now that the patch is out, I'm fairly certain that the aim circle is still at 1.3-2 SDs in size as it appears smaller than it used to, but now the RNG will allow shots out to 3 SDs, which is the new definition of the gun's accuracy stat.
What does this mean practically? Well, take a look at a standard normal distribution:
The numbers along the bottom are distances in Standard Deviations and from the chart you can see that 68% of your shots will land within 1 SD of the aim point, 95% within 2 SDs and 99.7% within 3 SDs. For reasons unknown to players and statisticians the world around (programmers likely have a theory about system resources), Wargaming decided to set a hard limit on their random number generator at 1.3 SDs, which coincidently means that 1 in every 5 shots went straight to the edge of your aiming circle. By changing this value to 3 SDs, now only 3 in 1000 shots land directly on the edge of the aim circle. But that's not the only effect. The change "squeezes" the distribution, concentrating the shots towards the middle of the aim circle as can be seen by comparing the 8.5 (Red) and 8.6 (Blue) distributions in the image below:
Red represents, effectively, 8.5, and Blue represents 8.6. The wiki saves me the trouble of making an image again!
Now, it's all well and good to show you in the abstract what will change, but that's not how we experience shooting in game. Fortunately, someone already beat me to this part and made a couple of images illustrating how we can expect to see a set of individual shots:
Taifuuni's illustration of the change in shot distribution
So basically, more of your shots are going to be near the center of the circle, more closely concentrated at your point of aim. I would expect that everyone's first response is "Guns guns are getting more accurate!" Unfortunately, at this point I must put on my pendant pants. In my engineering education, someone put me through a big discussion on the difference between precision and accuracy and it stuck.
Guns in WoT have always been perfectly accurate. What they are not, however, is precise. Shots always average hitting the aim point. However, they do not always hit the target, rather they disperse over a rather large area. What this change will do is make all the guns in the game more precise as they will hit closer to center of the aim point.
Now, just how much more precise are we getting?
To measure precision, we probably want to compute something that tells us how far from the aim point we hit. I am going to use the average miss distance as our measure of precision, since direction doesn't change anything. That means (since we're only dealing with distances from the aim point) that our distribution is the half-normal distribution, the absolute value of a normal distribution.
The wiki says that gun accuracy is a 2 SD measure, but the FTR article suggests that shots will only deviate up to 1.3. I suspect that both may be right in that their way, so that while tanks have an accuracy given as the 2 SD measure, shots will never miss by that much.
Calculating it out, in 8.5, the average shot misses by 0.707 Standard Deviations, while those in 8.6 will miss, on average, by 0.79712 Standard Deviations. But I thought our guns were getting more precise?
They are, but not due to the change in the RNG. The precision is coming from the change in the definition of the Accuracy stat: Where once it was 2 SDs, it is now 3 SDs. So each Standard Deviation is 2/3rds the size of the old ones. Net Result is more precision. How much more?
Changes in the hit probability of the feared 183mm gun. Don't worry, it still hurts just as much.
It could be considered equivalent to giving everyone a 33% buff to accuracy along with the bonus of dealing with fewer shots hitting the edges of the circle. Except they didn't buff everyone, now did they?
One of the things WG said they wanted to do was leave the accuracy of artillery mostly unaffected. To do this they nerfed most artillery's accuracy value by 50%, which happens to just leave artillery with the same Standard Deviations as before.
The 261's 180mm gun will still hit just as often, it'll just miss by more when it misses.
Except that I just showed above that tanks will end up hitting further away, standard deviation wise, than before. Thus the change in the RNG is, in some ways, a nerf to Artillery, about 12%. Each shot will, on average, hit 12.7% further away from the Aim Point than before.
1. All non-artillery pieces will have improved hit probability and miss their aim-point by smaller distances
2. Non-Artillery will have a small (~5%) chance of missing further from the aim-point than it used to
3. Artillery has the EXACT SAME chance to hit a target as it used to
4. Artillery will, however, miss it's aim-point by a bit more than it used to, meaning a little less splash damage on average
Hopefully this helps you better understand the 8.6 changes.
Wednesday, March 13, 2013
Special Thank You To
In a nice little deal with, we have expanded our collection of replays nearly five-fold to nearly 60k. That means that will have their replays backed up for future contingencies, while we get humongous extra set of data!
Friday, February 15, 2013
Up we go!
Since we now have a model, however mediocre it may be, of tier one battles, let's extending it to add in tier two tanks. This shouldn't be too hard, tier one and tier two tanks fight each other a lot, so I went ahead and pulled a data-set of all battles featuring exclusively tier 1 and 2 tanks. That, by the way, is over 8000 battles
The first thing to look at is the Match Maker. First let's look at the distribution of numbers of tier 1s and 2s:
It's symmetric, which means I didn't mess up this time
First things to notice: There are no battles where tier 1s participate with less than 12 total tier 2s, 6 for each side. Second, it is MUCH rarer for a tier 2 tank to get into an all tier 2 battle than for tier 1s to be in all tier 1 battles, just as we would expect. Third, battles where there are more tier 2s on one side than the other don't occur infrequently, but they are rarer than equal numbers on each side (look at the odd numbers).
So, that's interesting, but what about the distribution of battles that Tier 1 tanks get? Let's count the number of Tier 2 tanks and see what we find:
I have more charts where that came from!
So, firstly, ~43% of the time a Tier 1 goes into battle, it will only see tier 1 tanks. The rest of the time at least a third of the tanks in the battle will be Tier 2 tanks. Now, as I mentioned above, the teams aren't always 'fair', in fact 26% of the time, there will be more Tier 2s on one side than the other. That's not terrible, most of it can likely be attributed to platoons.
Another interesting item I found, which at first confused me, is that Tier 2 Artillery can get into battles where all the tanks are Tier 2. In all 1308 battles where there are only tier 2 tanks present, this happened only 4 times. The obvious answer is that these are actually battle tier 3 battles which happen to be missing tier 3 tanks, but the amusing part is that it can happen.
To continue on down the road, I'm going to use the tier one model we put together last post to get a first look and see how well it matches our data. If you don't remember, this is what that model looked like:
TankOdds Ratio
T1 Cunningham1
Renault NC-_PHONE_
Renault FT-_PHONE_
Vickers Med. Mk. 10.8563
Unsurprisingly, this model doesn't perform all that great


text:
You are invited to an online webinar to learn about FMC's Grower Stewardship Training for Overwatch® Herbicide.
When: 10am to 11am (AEST), Friday, 8 April 2022
With this year's cropping program gearing-up, this online event will help provide growers with an accurate understanding of the key stewardship considerations for using Overwatch® Herbicide which is also relevant to many other and pre-emergent herbicides. This training will be provided by FMC representatives who will also answer questions from participants.
Grain Producers Australia is hosting the webinar to ensure growers have access to timely, accurate information on how to apply the product correctly, in accordance with the registered label. Growers can also engage openly with FMC representatives at the event and ask questions relevant to the topic.
Questions can be sent in advance to CLICK HERE
This stewardship training program will also be provided online in a new GPA Training online learning program in coming weeks, for Silver Members. A recording of the webinar will also be provided in this GPA Training course package. This will be a key source of information and reference point, to support good stewardship outcomes, such as steps to avoid spray blockages and steps to minimise spray drift.
This work forms part of GPA's strategic objectives, through the GPA Pesticides and Technology Sub-committee, to ensure growers have access to pesticides that are safe and effective, when used appropriately, backed by scientific evidence. It also supports our work to improve farm safety, and industry skills and professionalism, through the delivery of online training programs, in GPA Training.


from a member.
 3. Retrieve attributes of a single type from multiple members.
Retrieving A Single Attribute From A Member
To access attribute information:
 1. Declare an instance of the attribute type.
 2. Use the Attribute.GetCustomAttribute(type, typeof) method to read the attribute into the instance.
 3. Use the properties of the instance to read the values.
The example code below declares a class ExampleClass with a QualityCheck attribute. The GetSingleAttribute method accepts a target member type and the type of attribute you're looking for. The Attribute.GetCustomAttribute method retrieves the attribute information into the attr object, from which we can read the all-important IsApproved property:
[QualityCheck("Scott Baker", "02/04/2006", IsApproved = false)]
public class ExampleClass
{
 public static void Main()
 {
 GetSingleAttribute(typeof(ExampleClass), typeof(QualityCheck))
 }

 public static void GetSingleAttribute(Type targetType, Type attrType)
 {
 typeof(attrType) attr = (attrType)Attribute.GetCustomAttribute(targetType, typeof(attrType));

 if (attr == null)
 { //... }
 else
 {
 Console.Writeline(attr.IsApproved);
 }
 }
An important factor to keep in mind is that the GetCustomAttribute method is designed to read one and only one attribute. GetCustomAttribute actually checks to see if more than one attribute matches - if there is no match it returns null, but if there is more than one match it will throw an AmbiguousMatchException. When checking for attributes the only time it is safe to use GetCustomAttribute is when the attribute's definition states [AttributeUsage(AllowMultiple=false)].
Retrieving Multiple Attributes From A Member
Reading multiple instances of an attribute on a member isn't much different than reading one; to read multiple attributes use the plural GetCustomAttributes, which returns an array of attributes. You can then iterate through the resultant array and read the values:
QualityCheck[] attrArray = (QualityCheck[])Attribute.GetCustomAttributes(t, typeof(QualityCheck));
foreach (QualityCheck attr in attrArray)
{
 Console.Writeline(attr.IsApproved);
}
Retrieving A Single Attribute Type From Multiple Members
What if you want to do something a little more complex, like checking each method in a class for a QualityCheck attribute? Thanks to the System.Reflection namespace, we don't have to even break a sweat. Simply read all the members (methods, in this instance) into a MemberInfo array and iterate through them:
using System.Reflection
public class ExampleClass
{
 public static void Main()
 {
 RetrieveAttributes(typeof(ExampleClass));
 }
 public void RetrieveAttributes(Type t)
 {
 MemberInfo[] methodList = t.GetMethods();
 foreach (MemberInfo m in methodList)
 {
 QualityCheck[] attrArray = (QualityCheck[])Attribute.GetCustomAttributes(m, typeof(QualityCheck));
 foreach (QualityCheck attr in attrArray)
 {
 Console.Writeline(attr.IsApproved);
 }
 }
 }
}
External links


text: Venture capital investment is a critical component of hightechnology economic growth. Although investment is perhaps the most important dimension of venture capital activity, there is virtually no literature on it. The academic literature has generally focused on the concentration and distribution of venture capital resources and firms, largely because of unavailable or unreliable data. While most studies assert that venture capitalists tend to invest within 200 miles of the home office, none have systematically reviewed many of the considerations that make geography such an important factor in a venture capitalist's investment decision. This may stem from the fact that most academic studies suffer from overaggregation, convey only regional totals or state-wide aggregates, which prevents an in-depth analysis of state or metropolitan level flows of venture capital.


NON SMOKING CONFIRMED AT 52 WEEKS
An indicator of whether non-smoking status has been confirmed, was attempted but not confirmed, or confirmation was not attempted, by carbon monoxide (CO) validation at 52 weeks follow-up after the QUIT DATE.
A machine called a carbon monoxide monitor or Smokelyser is used to detect the amount of carbon monoxide in the breath and therefore to detect whether someone is still smoking. For the purposes of CO validation, any CO reading of less than 10 ppm should be taken as an indication that the client is not smoking at the time.
Classification:
a. Non-smoking status confirmed by CO validation
b. Not confirmed - CO validation attempted
c. Not confirmed - CO validation not attempted

This attribute is also known by these names:
Context Alias
plural NON SMOKING CONFIRMED AT 52 WEEKS


seals of yeovil borough
Common seals of Yeovil
Examples of Portreeve's Seal 1815 and Borough Seal 1877
Yeovil was officially designated as a Borough in 1854 and at left is an example of the Seal of the Borough of Yeovil used by the Corporation. It is from a document in my collection dated 1877 and is based on the original fourteenth century town seal used by the town's Lord and his Portreeve.
The main shield depicts Saint John the Baptist, standing beneath an arch with trees either side. He is holding a shield with a representation of the Agnus Dei, the Lamb of God.
The seal is a device for making an impression in wax, or other medium, and is also the impression thus made. The purpose was to authenticate the document.
The sealing process is essentially that of a mould, with the final image represented on the device for making the impression by a mirror-image design, incised in sunken relief, or intaglio. The seal-making device is also referred to as the seal matrix or die; the imprint it creates as the seal impression.
The seal impression in this photograph measures three inches (75mm) across and is reproduced here almost actual size (depending on your screen resolution). Impressed into red candle wax, it was placed on a bright green silk square attached to the vellum (calfskin) document.
The Portreeve's Seal photographed below, is from a document of 1815.
From my collection


text: Purpose: This study examined the effects of a five-week intervention combining vigorous interval training (VIT) with diet among twenty-four obese adolescents. Fourteen girls and ten boys (aged 14–15) schooled in a pediatric rehabilitation center participated. Methods: The VIT intensity was targeted and remained above 80% of maximal heart rate (HR) and over six kilocalories per minute. Pre-and postintervention measures were body composition (BMI, weight, body fat percentage), physical self-perceptions (PSP), physical fitness (6-min walking distance and work) and its associated physiological responses (HR peak and blood lactate concentration). A series of two-way analyses of variance or covariance controlling for weight loss were used to examine the changes. Results: Significant improvements were found in body composition, physical fitness and PSP (endurance, activity level, sport competence, global physical self-concept and appearance). In addition, boys presented higher levels of perceived strength and global physical self-concept than girls. Finally, there was a significant increase in perceived endurance, sport competence, and global physical self-concept in girls only. Conclusion: This five-week VIT program combined with diet represents an effective means for improving body composition, physical fitness, and PSP in obese adolescents, the effects on PSP being larger among girls.


text:
More Consistent and Timely Tribal Recognition Process Needed
GAO-02-415T, Feb 7, 2002
- Accessible Text:
In 1978, the Bureau of Indian Affairs (BIA) established a regulatory process for recognizing tribes. The process requires tribes that are petitioning for recognition to submit evidence that they have continuously existed as an Indian tribe since historic times. Recognition establishes a formal government-to-government relationship between the United States and a tribe. The quasi-sovereign status created by this relationship exempts some tribal lands from most state and local laws and regulations, including those that regulate gambling. GAO found that the basis for BIA's tribal recognition decisions is not always clear. Although petitioning tribes must meet set criteria to be granted recognition, no guidance exists to clearly explain how to interpret key aspects of the criteria. This lack of guidance creates controversy and uncertainty for all parties about the basis for decisions. The recognition process is also hampered by limited resources; a lack of time; and ineffective procedures for providing information to interested third parties, such as local municipalities and other Indian tribes. As a result, the number of completed petitions waiting to be considered is growing. BIA estimates that it may take up to 15 years before all currently completed petitions are resolved; the process for evaluating a petition was supposed to take about two years. This testimony summarizes a November report (GAO-02-49).


text:
Deep Value Investing: The Capital Cycle Approach
Course Fee: $350* / *Early bird price valid until 31 August 2019 (U.P. $400)
Everyone needs an investment philosophy. In this workshop, we will discuss on these 2 major strategies and how you can use this knowledge to begin constructing a market beating share portfolio.
Key Learning Outcomes:
1) Understand the key concepts and investment mindset required with long-term investing
2) Understand the theory of the capital cycle approach, looking at cycles using demand and supply forces
3) Understand the history of the property and banking industry in Singapore
4) Use the concepts of the theory of capital cycle to explain the cycles seen in the property and banking industry
5) Learn how to construct a portfolio
6) Uncover some common mistakes made by investors when starting out their own portfolios
Section A – What is Value Investing
1. Understanding the philosophy behind value investing
2. How value investing works
3. Key concepts when it comes to value investing
Section B – Market Psychology
1. To beat the market, we have to first understand ourselves; hence, the study of psychology
2. Understand the intricacies between the market and volatility
Section C – Focusing on Deep Value Investing
1. What is deep value investing
2. Deep value investing strategy
3. Case studies of stocks matching the deep value investing strategy that worked
4. Case studies of stocks matching the deep value investing strategy that did not worked and why it did not work
Section D – The Capital Cycle Approach
1. What does the theory of the capital cycle mean
2. Understanding the history of the Singapore property industry
3. How do we apply the capital cycle approach to the Singapore property industry
4. Case study on how we analysed a Singapore property developer
5. Understanding the history of the Singapore banking industry
6. How do we apply the capital cycle approach to the Singapore banking industry
7. Case study on how we analysed Singapore banks
8. How do we apply the capital cycle approach to the retail industry
9. Case study on how we analysed the retail industry
Section E – Portfolio Construction
1. What is portfolio construction
2. Importance of having an investment checklist
3. What are some good checks to have in terms of your own investment checklist
4. Commonly asked questions when investors are first starting out a portfolio
Goh Tee Leng
Goh Tee Leng is the Portfolio Manager of Heritage Global Capital Fund, having over five years of experience in the financial markets and author of InvestingNook.com. He is also the Director at Tat Hwa Group, a privately-held, family-owned investment holding and management company, serving as the foundation of the Group's umbrella of companies and subsidiaries. Additionally, he is a frequent speaker at investment conferences held by SGX, RHB and CIMB, and his investment-related articles have been published internationally. Tee Leng graduated with a BSc (Hons.) Economics degree from University College London (UCL).
For further enquiries, please email _EMAIL_ or call 6327-5438.
(Operating Hours: 9.00am to 5.00pm)
Terms and Conditions
Singapore Exchange reserves the right to make changes to the time, date, syllabus, speakers, venue or cancel the course if warranted by circumstances beyond its control.
Cancellation and Transfer Policy
Cancellation for a registration must be made in writing at least 10 business days before the event and a refund (less a 10% administrative fee of total course fee) will be made. No refunds will be given for cancellations received less than 10 business days prior to the event. All requests for replacement must be made in writing at least 3 business days prior to the event.
Register online and make payment via credit card by clicking on the "Register" button.
Alternatively, you may wish to make payment by cheque, made payable to "SGX Academy Secretariat". Please mail your cheque to the following address:
SGX Academy Secretariat
160 Robinson Road
Please provide your name, email, contact number, event title and date on the reverse side of the cheque. Enrolment is contingent upon receipt by Singapore Exchange of full payment and availability of space in the event. A confirmation note will be sent via email 10 business days before the seminar/course commences.


Importing an image into SwiftUI using UIImagePickerController
Paul Hudson _USER_
In order to bring this project to life, we need to let the user select a photo from their library, then display it in ContentView. I've already shown you how this all works, so now it's just a matter of putting it into our app – hopefully it will make a little more sense this time!
Start by making a new Swift file called ImagePicker.swift, replace its "Foundation" import with "SwiftUI", then give it this basic struct:
struct ImagePicker: UIViewControllerRepresentable {
 _USER_(\.presentationMode) var presentationMode
 _USER_ var image: UIImage?
 func makeUIViewController(context: UIViewControllerRepresentableContext) -> UIImagePickerController {
 let picker = UIImagePickerController()
 return picker
 func updateUIViewController(_ uiViewController: UIImagePickerController, context: UIViewControllerRepresentableContext) {
If you recall, using UIViewControllerRepresentable means that ImagePicker is already a SwiftUI view that we can place inside our view hierarchy. In this instance we're wrapping UIKit's UIImagePickerController, which lets the user select something from their photo library.
When that ImagePicker struct is created, SwiftUI will automatically call its makeUIViewController() method, which is what goes on to create and send back a UIImagePickerController. However, our code doesn't actually respond to any events inside the image picker – the user can search for an image and select it to dismiss the view, but we don't then do anything with it.
Rather than making us create a subclass of UIImagePickerController, UIKit instead uses a system of delegation: we create a custom class that will be told when something interesting happened. Each delegate class will usually need to conform to one or more protocols, and in our case that means UINavigationControllerDelegate and UIImagePickerControllerDelegate. The delegates work much like real-life delegates – if you delegate work to someone else, it means you're giving it to them to complete.
SwiftUI handles these delegate classes by letting us define a coordinator that belongs to the struct. This class can do anything we need, including acting as the delegate for UIKit components, and we can then pass any relevant information back up to the ImagePicker that owns it.
Start by adding this as a nested class inside ImagePicker:
class Coordinator: NSObject, UINavigationControllerDelegate, UIImagePickerControllerDelegate {
 let parent: ImagePicker
 init(_ parent: ImagePicker) {
 self.parent = parent
You can see that conforms to the two protocols we need to use for working with UIKit's image picker, and also inherits from NSObject which is the base class for most types that come from UIKit.
Because our coordinator class conforms to the UIImagePickerControllerDelegate protocol, we can make it the delegate of the UIKit image picker by modifying makeUIViewController() to this:
 let picker = UIImagePickerController()
 picker.delegate = context.coordinator
 return picker
We need to make two more changes to ImagePicker to make it useful. The first is to add a makeCoordinator() method that tells SwiftUI to use the Coordinator class for the ImagePicker coordinator. From our perspective this is obvious, because we created a class called Coordinator that was inside the ImagePicker struct, but this makeCoordinator() method lets us control how the coordinator is made.
If you recall, we gave the Coordinator class a single property: let parent: ImagePicker. This means we need to create it with a reference to the image picker that owns it, so the coordinator can forward on interesting events. So, inside our makeCoordinator() method we'll create a Coordinator object and pass in self.
Add this method to the ImagePicker struct now:
func makeCoordinator() -> Coordinator {
The final step for ImagePicker is to give the coordinator some sort of functionality. The UIImagePickerController class looks for two methods, but here we're only going to use one: didFinishPickingMediaWithInfo. This will be called when the user has selected an image, and will be given a dictionary of information about the selected image.
To make ImagePicker useful we need to implement that method inside Coordinator, make it set the image property of its parent ImagePicker, then dismiss the view.
UIKit's method name is long and complex, so it's best written using code completion. Make some space inside the Coordinator class and type "didFinishPicking", then press return to have Xcode fill in the whole method for you. Now modify it to have this code:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]) {
 if let uiImage = info[.originalImage] as? UIImage {
 parent.image = uiImage
That completes ImagePicker.swift, so please head back to ContentView.swift so we can make use of it.
First we need an _USER_ Boolean to track whether our image picker is being shown or not, so start by adding this to ContentView:
_USER_ private var showingImagePicker = false
Second, we need to set that Boolean to true when the big gray rectangle is tapped, so replace the // select an image comment with this:
self.showingImagePicker = true
Third, we need a property that will store the image the user selected. We gave the ImagePicker struct an _USER_ property attached to a UIImage, which means when we create the image picker we need to pass in a UIImage for it to link to. When the _USER_ property changes, the external value changes as well, which lets us read the value.
So, add this property to ContentView:
_USER_ private var inputImage: UIImage?
Fourth, we need a method that will be called when the ImagePicker view has been dismissed. For now this will just place the selected image directly into the UI, so please add this method to ContentView now:
func loadImage() {
 guard let inputImage = inputImage else { return }
 image = Image(uiImage: inputImage)
And finally, we need to add a sheet() modifier somewhere in ContentView. This will use showingImagePicker as its condition, will reference loadImage as its onDismiss parameter, and present an ImagePicker bound to inputImage as its contents.
So, add this directly below the existing navigationBarTitle() modifier:
.sheet(isPresented: $showingImagePicker, onDismiss: loadImage) {
 ImagePicker(image: self.$inputImage)
That completes all the steps required to wrap a UIKit view controller for use inside SwiftUI. We went over it a little faster this time but hopefully it still all made sense!
Go ahead and run the app again, and you should be able to tap the gray rectangle to import a picture, and when you've found one it will appear inside our UI.
Tip: The ImagePicker view we just made is completely reusable – you can put that Swift file to one side and use it on other projects easily. If you think about it, all the complexity of wrapping the view is contained inside ImagePicker.swift, which means if you do choose to use it elsewhere it's just a matter of showing a sheet and binding an image.
Hacking with Swift is sponsored by Essential Developer
Save your spot now
Sponsor Hacking with Swift and reach the world's largest Swift community!
Was this page useful? Let us know!
Average rating: 4.4/5
Unknown user
You are not logged in
Log in or create account
Link copied to your pasteboard.


text:
Podcasts & RSS Feeds
Most Active Stories
That's What They Say
Sun June 24, 2012
Ever wonder what LOL means?
Laugh out loud, or lots of love?
LOL might not actually mean what you think it does. Anne Curzan is a professor of English at the University of Michigan. She told Michigan Radio's Rina Miller that students tell her they use LOL as a listening noise.
"A listening noise is what we do in face to face conversation when we show people we're paying attention, and we make little noises like, 'uh huh, uh huh, yeah,'" Curzan said.
"And what's happening when speakers are now texting or doing online chatting, they need to show people that they're there, and LOL has become an online listening noise or a back channel...the other thing it can do is show that you're kidding. So if you send a message, and you want to make sure that you're showing that you are being sarcastic or ironic or just kidding you can put LOL at the end," said Curzan.
Miller said, "Some of us might think that our language is on the skids, and it's all children's fault (LOL)."
Curzan disagrees. "I think what we see happening is that speakers are taking the English language and adapting it to the new needs that they have. And online, the communication is so fast that we need the written language now to do things that the spoken language can do for us, so we're using LOL as a listening noise, or we're doing things like using those winky faces to say, 'I'm kidding,' or 'I'm smiling right now' to help the people who are reading our messages understand."


text:
Welcome to Planet Clicker, a simple and addictive clicker game where your mission is to increase energy production and colonize new planets! Get ready to click your way to intergalactic domination as you buy and upgrade various energy sources and witness the units flowing in!
Planet Clicker is proudly developed by Coltroc from Scratch, a talented game developer dedicated to creating fun and exciting games.
Start your journey on Earth, where you'll have access to a range of energy upgrades. Boost your energy production by enhancing your clicking power and constructing farms, power plants, and more.
Once you've amassed enough energy on Earth, you can expand your reach to Mars through interplanetary energy unit transfer. Mars brings a fresh set of upgrades, including solar oil, coal, nuclear power, and even alien technology.
But the adventure doesn't stop there! The final planet awaiting your colonization is Venus. It comes with a hefty price tag of 1 trillion energy units. Unlock advanced technologies like iron, lava, and a mysterious upgrade called "future technology" that lies at the bottom of the list.
To generate energy, simply left-click on the planets. Click away and watch your energy production soar!
If you're hooked on clicker and idle games, you're in luck! There's a wide selection of addictive titles to explore. Once you've conquered the solar system in Planet Clicker, consider checking out other classics like Candy Clicker, Cookie Clicker, and Money Clicker.


Cutaneous Larva Currens
A Roundworm Infection
Magnified Strongyloides stercoralis
Strongyloides stercoralis in human stool. Cultura Science/Michael J. Klein, M.D. / Getty Images
What is cutaneous larva currens?
Cutaneous larva currens is a disease caused by Strongyloides stercoralis, and thus a type of strongyloidiasis. Strongyloides stercoralis is a roundworm parasitic to humans. S. stercoralis is endemic to places such as Southeast Asia, Africa, and Central America and is most often encountered in fecally-contaminated soil or water and in tropical and subtropical regions.
This skin disease is characterized by itch of the skin as well as the appearance of snake-like, mottled hives around the waist and buttocks. It should be noted that cutaneous larva currens is not the same as the more well-versed skin condition cutaneous larva migrans (CLM).
How does cutaneous larva currens develop?
Each larva of this parasite enters the human by penetrating the skin, usually upon the host's contact with contaminated soil. The larva then enters the bloodstream which takes it to the lungs and, ultimately, the pharynx, where it is then swallowed into the gut. Upon reaching maturation in the small intestine, female members of the species will lay eggs into the intestine's mucosal layer. These eggs hatch into larvae that re-perpetuate the cycle within the host's body.
As the number of S. stercoralis increases in the host, they can spread to various other body parts. If these roundworms migrate to the skin, this can result in the dermatological condition known as cutaneous larva currens.
What are signs of cutaneous larva currens in the skin?
Signs of cutaneous larva currans generally begin within two weeks following larvae entry. The raised "track lines" that are characteristic of the disease highlight the trail of the larvae as they migrate through the top layer of the skin. The rate of migration may vary from 5 to 15 cm per hour.
As the disease progresses, red, inflamed skin marks can appear, as well as raised hives and occasional blisters. Fever is also sometimes present. Hive-like marks may last for several hours. In severe infection, bruising may be present around the umbilicus (belly button).
How can I prevent cutaneous larva currens?
Cutaneous larva currens can be prevented by avoiding contact with the Strongyloides larvae. One should avoid moist soil contaminated with animal feces, especially in a tropical or endemic country. Since beaches are common culprits for cutaneous larva currens infection, footwear should be worn on the sand, and a towel should be used if one is sitting on the ground.
How is cutaneous larva currens diagnosed?
Diagnosis is usually made by the dermatologist upon physical examination of the affected areas. If necessary, microscopy can also be used to identify the larva.
How is cutaneous larva currens treated?
The most effective treatments for cutaneous larva currens are antiparasitic drugs, such as ivermectin, albendazole, and thiabendazole.
Ivermectin (drug names: Heartgard, Sklice, and Stromectol, among others) is what is known as a broad-spectrum antiparasitic agent and is perhaps the most popular choice when it comes to cutaneous larva currens. It works by activating nonvertebrate-specific chloride channels and interferes with the parasites' nervous system, effectively killing adult S. stercoralis. However, multiple doses may be needed in order to completely eradicate the roundworms as it does not target S. stercoralis in its larval form.
Albendazole (drug name: Albenza) kills S. stercoralis by causing the destruction of cells in the parasite's intestines. Thiabendazole works by restricting specific enzymes within the worm. Notably, however, thiabendazole is known to have a higher level of toxicity than other antiparasitic drugs. This may be especially dangerous for patients with hepatitis or GI intolerance. Complete eradication of the parasite may take up to several years, as there is a tendency for strongyloidiasis to become chronic.
1) Smith, James D., Detlef K. Goette, and Richard B. Odom. "Larva Currens: Cutaneous Stronglyloidiasis." Archives of dermatology 112, no. 8 (1976): _PHONE_.
2) Stone, Orville J., Gordon B. Newell, and J. Fred Mullins. "Cutaneous strongyloidiasis: larva currens." Archives of dermatology 106, no. 5 (1972): 734-736.
3) Jelinek, T., H. Maiwald, H. D. Nothdurft, and T. Löscher. "Cutaneous larva migrans in travelers: synopsis of histories, symptoms, and treatment of 98 patients." Clinical infectious diseases 19, no. 6 (1994): _PHONE_.
4) Blackwell, V., and F. Vega‐Lopez. "Cutaneous larva migrans: clinical features and management of 44 cases presenting in the returning traveller." British Journal of Dermatology 145, no. 3 (2001): 434-437.
Continue Reading


LpR Article | Jun 10, 2016
Potting Processes as a Part of LED-Based Lighting Module Manufacturing Methods by ViscoTec Pumpen and Dosiertechnik GmbH
Many manufacturing processes need very accurate dosing. One such dosing process concerns the potting of LED-modules. Numerous parameters affect the potting quality. Willi Huber from the Business Unit Adhesives & Chemicals at ViscoTec Pumpen- u. Dosiertechnik GmbH explains casting equipment, critical parameters and appropriate potting methods.
The specific objective of the potting of LED-modules is to protect the unit against environmental influences. The goal is to encapsulate the functional area for stable operating conditions. Surrounding factors which may affect the functionality or lifetime of the LED-assemblies and which need to be kept away are humidity, water (spray, condensation), oils/oil mist, chemicals, environment dirt, weathering, dust or mechanical stress from the outside. The protective function of LED modules using the potting approach is realized through the so-called casting compounds, of which there are a large variety.
Short Introduction to Common Potting Concepts
Fully potted with complete encapsulation of a module: The potting level is above upper component level.
Figure 1: Complete module encapsulation
Partially potted with partial encapsulation of a module: The potting level is between lower and upper component level:
Figure 2: Partial module encapsulation
Selective encapsulation: Only a section/partial area of a module is encapsulated above the upper component level.
Figure 3: Selective encapsulation
Potting compounds are applied in viscous consistency and cure to definable hardness values according to the set hardness mechanism. Potting materials are available in 1-component as well as 2-component types.
There is a significant number of process parameters that can influence the quality of a potting process in terms of a repeatable unit production. As a major aspect, the dosing volumes are relatively large in relation to the component or module size. The nature of a potting process is to fill a module completely with compound compared to bonding applications with dot or bead dosing shapes and related smaller dosing volumes. Consequently, LED-potting processes generate two basic requirements with respect to the process design.
Two basic requirements to the LED-potting process design:
 - High precision of a selected dosing system to keep the accuracy in the full range up to high dosing volumes
 - High material flow rates in order to keep acceptable cycle times for the production set-up
Figure 4: Buffer container of material conditioning systems
Potting Applications Realized by Industrial Production Processes
The process can be realized, in general, by two different process concepts. They come along with significant differences in their system configurations of the potting cell.
Process concept number one concerns the so-called atmospheric casting concept, also referred to as open casting concept. The reconstituted casting compound is introduced at atmospheric pressure from top into the LED-module (casting mold), using the force of gravity. Alternatively, it can be applied upward from the module bottom side by a respective dosing pressure. Appropriate dosing systems are capable of generating so-called dosing profiles, by means of which the molding process is controlled by varying flow rates and activation times. Dosing profiles help to control the compound flow with the result of reduction of air pockets on encapsulated LED-modules. Air pockets on unprocessed units can also be eliminated before or during the atmospheric casting process by further measures. Effective methods are suitable component designs (avoidance of dead space areas) or a well-chosen component position (e.g. skew) during the potting sequence.
In case the atmospheric casting approach cannot guarantee a bubble-free process, the alternative is the switch to a vacuum based potting technology. In this method, an assembly is cast in a vacuum chamber under process vacuum down to a few mbar. In particular, enclosed air pockets at an assembly, which cannot be edged out during atmospheric potting, are removed (sucked-put) by the evacuation step of the process. But this article will only consider the atmospheric casting as a common concept for encapsulating of LED-assemblies.
System Technologies of Casting Equipment
This section introduces dosing technology for industrial, fully automated potting lines only. A potting cell within a process environment for industrial volume production includes a material supply unit, a material conditioning system and the dispensing unit. Handling systems (automation systems) are required in addition, in case of automated component handling. The following chapters describe the system components of the dosing unit (without the handling equipment) in detail and highlight the relevant influencing variables for an optimized process design.
Material supply system
Potting materials are generally self-leveling fluids. They can be filled into storage containers manually, transferred into a storage tank by a vacuum system and suction lance or can be handled by a bin emptying device/pump. Pressure vessel systems increase the risk of air injection into the fluid and do not offer significant process advantages. The requirement of batch handling of filled materials in order to keep the ratio liquid and filler is a minor aspect of LED-casting applications. Casting compounds for LED-products are quite limited in terms of filling components due to the required optical material properties. 2-component casting system configurations require a duplication of the system components in order to handle the respective A/B material components.
Material treatment systems
The material conditioning technology represents an essential process area for the composition of reliable production processes within potting cells. The material treatment system implements the functionality of material buffer, material conditioning and material feed to the downstream dosing system. The material buffer function is realized by a buffer container/tank that includes the functional components for the material conditioning process as well.
The storage tank can be filled manually by the operator or automatically using a vacuum system and suction lance. Filled casting materials require a transfer of the entire container volume into the buffer container at once in order to keep the mixing ratio of fluid and filler. The lower fluid level monitoring/display ("refilling necessary") is usually carried out by the system itself. For manual filling, the compliance with the upper filling level ("container full") must be controlled by the operator itself. The upper material filling level is monitored and controlled in contrary by the process monitoring system within an automatic process set-up. The material preparation technique is composed of the process steps stirring/homogenization, degassing, recirculation and temperature control.
The requirements of the individual process components are as follows:
Stirring/homogenization:
The stirring/homogenization process is to maintain a balanced distribution of the material components within the fluid and thus to ensure the material homogeneity and properties. The requirement for this process step is given due to the separation behavior of fluids. The effect of material separation of dispensed materials is reinforced by the tendency to lower viscosity of casting compounds. A homogenization step is also required in case the compounds with a strong tendency for material separation are transferred into the fluid buffer without a prior mixing process inside the delivery container. Otherwise, the homogeneity and correct distribution of the ingredients of the material is given only in the case that the entire container/batch volume is transferred into the buffer at once.
Figure 5: Air bubbles in non-degassed casting compounds
Material degassing:
The approach of material degassing ensures that the applied casting material is free of air bubbles. The presence of air bubbles in finished assemblies or module sections can lead to a significant reduction of the functionality or product lifetime; in the worst cases, even to an overall product failure. It should be referred to the fact again, that module encapsulation is considered here in the context of a protective function and that this function is no longer given with air inclusions. Equal critical for LED-modules is the major reduction of the optical quality of casted units caused by air bubbles.
Process and product quality are only ensured of absolutely properly conditioned material. Multiple, strong requirements are combined with the quality of the degassing process.
Requirements to support the quality of the degassing process:
 - The level of the process vacuum must be sufficient in order to ensure the functionality and quality of the degassing process
 - In the case of a vacuum casting approach it is required that the level of the degassing vacuum is lower than the level of the chamber vacuum of the potting cell. Otherwise the casting material would be exposed to an additional degassing process in the potting vacuum chamber
 - The process vacuum cannot generally be set low without any limitations. There is a risk to remove gaseous constituents from the fluid at a too low degassing vacuum level. The vacuum level is to be kept reliable by the equipment in a narrow process window
The majority of material conditioning systems is based on the concept of batch processing. These systems can be used as single process system with one process chamber or as a dual process system with the need for two process chambers. The single process system handles the process steps material filling, conditioning and material feed sequentially. The system is not available for material supply during the filling/degassing process and vice versa. Dual process systems are capable for material filling/ conditioning in one process chamber while the second process chamber supplies the dosing station with pre-prepared compound in parallel. However, these systems require two separate process chambers with doubled efforts for system components and system maintenance.
However, these limitations can be eliminated by a full in-line processing system. This system provides an in-line process, in which the functions of material filling, material stirring/homogenization, especially the degassing process and then material feed towards a downstream dosing unit can be realized in a fully parallel,


text:
What trade-offs are involved in shifting from a traditional operations system to a lean system for:
a. A manufacturing firm
b. A service firm
Shifting from a traditional operations system to a lean operations system in a manufacturing firm means a paradigm shift. The basic philosophy of manufacturing which involves the perceived safety of holding warehoused finished goods and inputs, to a philosophy of ordering Just in Time, requires confidence in the abilities of workers to produce on demand, equipment to be ready and operational, the market has some predictability, and suppliers to be reliable. Any one of these variable, not producing as anticipated can result in the collapse of the lean operating system because the leanness is in the...
The pros and cons of the transitional process are explained in 402 words.


text:
A Finite Elements 3D analysis including the soil interaction has been developed. The analysis includes a modal analysis studying the soil (lowest frequencies of the system) and residual (modes resulting from perturbations at the nodes of application in the directions of the forces).
A study of the forced vibration in the frequency domain has also been performed, applying the rotating components centrifugal forces depending on their operating speed.
Peak stress results in concrete have been obtained as well as the stress increase in the reinforcement bars. Finally, the velocity amplitudes of the bearing supports have been compared to the recommended values by the original designers of the foundation and the reference standards.
Rotors masses: 180 - 166.4 kN/g (turbine & generator)
Balance grade: Gr 6.3
Operating frequency: 50 Hz
Other Geotechnical Projects