the rune of planning, waiting, and seeing your plans comes to fruition. Like the oncoming harvest, a lot of what this rune tells you depends on your actions and plans. It is a positive rune in many cases, but it can be very frustrating because it advises waiting.
In Anglo-Saxon, Jera is spelled Ger or Ior, and in Old Norse it is Ar. Jera is the rune of good harvest. As with a harvest, there must be preparations to the fields, seeds planted, and crops tended. But Jera suggests that the harvest will be good, and you just have to be patient.
Like Isa, this rune requires waiting, but like the harvest, it promises good things in abundance. Our Northern ancestors were primarily farmers and understood that they had to wait to receive the bounty of their harvest. Harvest didn't happen in a day or a week. It started after the last harvest with plans for the next season. Farmers had to save seeds from the current harvest to replant their vegetables and grain crops. They had to prepare their fields to lie fallow over the winter. And then, they had to wait until the ground thawed after a long winter so they could plow and plant their seeds. With each planting, the farmer hoped for a good crop without pests and diseases. But Jera is a rune of good harvest, which means droughts, hailstorms, and damaging weather, as well as pests and diseases, aren't a factor for this harvest. It means there will be plenty and good times are ahead.
Divination with Jera
When you get this rune in a casting, it informs you that good things will happen, but you must wait. Because Jera is derived from the proto-Germanic word meaning "year" (jēr) and the Old Norse word for year is Ar, it suggests that your waiting for good news may take a long time, quite possibly a year or longer. Jera tells you that all your preparation and plans will come to pass. That good times are ahead, and that you will reap a bountiful harvest. But it advises patience as well. Good things don't happen all at once. It takes time and planning for you to succeed in whatever endeavor you are asking the runes about.
Should you get this rune in your castings, you're going to enjoy good things coming your way, but you must be patient. If other runes around it are negative and it is drawn in the future spot, it means that all your trials and travails will end with something good heading your way. If it is in a past spot, it suggests that you are coming off a time of harvest and new situations may arise. A present spot may suggest you moving into harvest, or maybe a cycle that will bring you towards the good things. Above all, just be patient. Good things come to those who wait.
Some Final Thoughts on Jera
When Jera appears in a spread, you may find that the outcome you are waiting for depends on your preparation and work. Nothing is ever easy with the runes, just as nothing was ever easy for our ancestors. Jera is a signal in many ways to work towards your goal, and if you are willing to work hard, you'll enjoy the fruits of your success. As always, the position where Jera appears as well as the runes around it will dictate how successful your endeavors are. Good luck!
The Elder Futhark: Isa
The Elder Futhark: Isa
The eleventh, and third rune of Heimdallr's ætt, is Isa, which corresponds to the "I" sound in the Latin alphabet (the alphabet we use). This is considered a negative rune, whenever it comes up. It does occasionally have positive sides, but I'll talk about that later. It is the rune of ice, winter, standstill, and waiting. If you get this rune, you're going to be frustrated, because it means that everything is at a standstill. Like an ice dam, something is being blocked until you or something else can remove it. It can also point to a river covered with ice: nothing seems to be moving, but there may be an underlying current beneath the ice.
In Anglo-Saxon, Isa is spelled Is, and in Old Norse it is Isa. Isa is the rune of standstill, winter, and waiting. Our Northern ancestors were no strangers to the long, harsh northern winters, and the prevailing ice that accompanied them.
Winter was a time of waiting. Sure, there were feasts, such as Yule, and winter activities such as skiing and ice skating. But our ancestors were waiting for spring, when the animals gave birth, and when the crops could be sowed.
Winter was a time when people had to live off their food harvested in the fall. It was often a time of scarcity and hunger, especially if the crops failed. Sometimes people hunted and fished to bring in food, but often the prevailing ice and snow prevented such activites. Game migrated when the snows got too deep, making it difficult to hunt. So, people waited–and hoped for–an early spring.
Divination with Isa
When you get this rune in a casting, it informs you that you must wait for an answer. The amount of time is indeterminate but finite, meaning that you could be waiting a long, long time. This is why Isa is considered a negative rune. Most of the time, we can deal with a "yes" or "no" when it comes to an answer. Isa tells us we must be patient and wait.
Isa is an interesting rune, though, because although it suggests everything is at a standstill, there is a finite amount of time before everything frees up again. It may suggest something is blocking your forward progression. You can break through that ice dam, but it may be a serious challenge ahead of you. Then again, Isa may be telling you that nothing appears to be happening, only something really is. Whatever is happening may be hidden from you. In this case, it's important to pay attention to the underlying motion.
Should you get this rune in your castings, you are more likely to be frustrated in whatever answer you seek. It's telling you either to wait, or that everything is at a standstill. Either way, you're going to have a hard time achieving your goal. You may have something blocking you from your goal that you must overcome, or something else is going on behind the scenes that you don't know about. Or maybe you simply have to wait until something changes before you know the answer.
Some Final Thoughts on Isa
When Isa appears in a spread, you may find that your circumstance tells you to wait. That can be a real source of frustration. After all, you may find yourself at what appears to be an unyielding block to your goal. At this point, you need to decide whether to try to break through or wait it out. Sometimes the best thing to do is to wait. Like an ice dam, it may be holding back a torrent. Then again, that block may be insurmountable, and you may need to wait.
Why Bad Things Happen — a Heathen's Perspective
Why Bad Things Happen — a Heathen's Perspective
The Year of Hell
Yeah, it's that kind of year.
No, the Gods Are Not Punishing Us
Bad Things Happen Randomly
Why We Look to the Gods when Bad Things Happen
Why Bad Things Happen
What Can We Do When Bad Things Happen?
Did Our Ancestors Celebrate the Fall Equinox?
Did Our Ancestors Celebrate the Fall Equinox?
Did our ancestors celebrate the fall equinox? The question is an interesting one, and left for much interpretation. Certainly, some of our ancestors did pay attention to the equinox, as marked by many paleolithic stone circles. However, if we're talking about those ancestors in the Viking Age, the idea gets a bit more muddled. I'll explain.
What Exactly is the Fall Equinox?
For those of you who don't know, the equinox is the time when the sun shines directly on the equator. To explain how that happens, we'll have to refresh our basic astronomy.
Our planet, Earth, revolves around the sun. One circuit around the sun equals one year. The Earth spins around its axis as well, and the length of time it takes to make one full revolution is approximately 24 hours. With me so far?
But the Earth's axis is tilted compared to the plane of its path around the sun. The Earth is tilted because it "spins" similar to a top. But unlike a top, the Earth's wobble occurs over millions of years, and not seconds, like the toy. Because the Earth is in a tilt, it stays in the tilt as it revolves around the sun. So, winter occurs in our hemisphere when our hemisphere is furthest away from the sun. That is the winter solstice. The equinox occurs midway between winter and summer solstice when the sun is equal distant between the North and South poles.
Did Our Ancestors Recognize the Equinox?
So, the equinox occurs when the sun crosses the equator, giving us a near equal day and night. Hence the name, Equinox, meaning "equal night." But did our ancestors recognize the equinox, and did it have any special meaning to them? Did they celebrate the fall equinox? (Or spring equinox, for that matter?)
We can look at various archaeological digs and find that yes, our ancestors did know about the equinox, and in some cultures, it must have had a religious significance. Stonehenge and Newgrange are two archaeological sites that keep


text:
INTERNATIONAL TRADE UNION CONFEDERATION (ITUC)
Workers' Rights Endangered in Greece
Brussels, 7 February 2012 (ITUC OnLine): The ITUC has condemned the attacks on workers' rights in the current demands being made of the Greek government by the European Union and the IMF . The international trade union movement has urged all parties to engage instead in a genuine dialogue that could build a consensus-based economic recovery in Greece.
The IMF and the European Union are pressuring, among other conditions, for deregulation of labour rights in the private sector, enhanced wage flexibility including reductions in the minimum wage, legislative changes to facilitate employment reductions and other forms of interference in freely determined collective bargaining processes.
"This is totally unacceptable for the ITUC," stated Sharan Burrow, ITUC General Secretary. "Legitimate social dialogue and internationally recognised workers' rights have been cast aside. Far from achieving a jobs recovery, this is going to condemn Greece to years more austerity accompanied by a rise in unemployment, informality and insecurity in the workplace."
In a letter sent to the IMF, the ILO and the Greek authorities, the ITUC Is asking the organisations involved and the government to cease attempting to impose the current reforms and to seek instead a productive dialogue based upon a pro-growth strategy to build a consensus-based recovery in Greece.
"The international institutions and the Greek Government are destroying social dialogue, collective agreements and job and income security," added Sharan Burrow. "They are destroying the base of democracy. The ITUC stands with workers in Greece and everywhere where workers' rights are under attack."
To see the letter, please go to _URL_
The ITUC represents 175 million workers in 153 countries and territories and has 308 national affiliates.
Website: _URL_ and _URL_
For more information, please contact the ITUC Press Department on: +32 2 _PHONE_ or +32 476 62 10 18.

source: m-a-p/FineFineWeb


Average Weather Data for Logansport, Louisiana
Monthly Averages
January February March April May June July August September October November December
Average Monthly high in °F: 57° 61° 69° 76° 83° 89° 92° 92° 88° 78° 67° 58°
Average Monthly low in °F: 35° 38° 44° 53° 62° 69° 71° 70° 64° 53° 44° 36°
Yearly Averages
What's The Average High Temp in Logansport? 75.8 °F
What's the Average Low in Logansport? 53.3 °F
What's the Average Temperature in Logansport? 64.55 °F
How Many Inches of Rain per year does Logansport get? 51.96 inches
How Many Rainy Days a year are there in Logansport? N/A
How Much Sunshine each year is there in Logansport (in hours)? N/A
How much, if any, snow falls each year in Logansport? N/A
Logansport Temperature and Rain Graphs
Average high in °F
Average low in °F
Average precipitation in inches


(Result_, Params_...) {
 alias Result = Result_; /// the type of the object to be provided.
 alias Params = Params_; /// the type of provider parameters.
 /// Call the provider.
 final const(Result) opCall(Params params) {
 return delegate_(params);
 /// Call it with a structure or class as the argument (expanding its members into arguments
 /// in order).
 final const(Result) call(S)(S s) const {
 return callMemberFunctionWithParamsStruct!(this, "opCall", S)(s);
 /// The abstract virtual function used to create the provided object.
 abstract const(Result) delegate_(Params params);
 alias DelegateType = const(Result) delegate (Params params);
 /// Returns 'delegate_' as a delegate.
 final _USER_ DelegateType provider() {
 return &delegate_;
So Provider is a class template with type arguments Result_ and Params_ which specify correspondingly the provided object type and provider's parameter types list.
The most important member function is opCall() which returns the provided object. It can be called like object = provider.opCall(3, 7.2, otherObject) where provider is the provider object. opCall is a special method name in D, so it can be called instead with this syntax: object = provider(3, 7.2, otherObject) (that is object provider is a callable object).
The actual creation (or retrieval) of the provided object is accomplished by the delegate_() method. (It is called this way because delegate is a keyword in D.) This method has the same signature as our opCall method, that is receives some parameters and returns the object.
The property provider returns a reference ("delegate" in D terms, don't confuse with delegate providers in the Python library) to the delegate_ method (note that the delegate also contains a reference to the provider object). Not sure how to use it, but I provide it for completeness. Example: provider.provider.
The call method template can be used to call the provider with a struct (or class) as its only argument. The members of the struct are "expanded" in order of their declaration and passed to opCall method. This uses my struct-params library. Example:
struct Params {
 int x;
 float y;
MyProvider provider;
Params theParams = {x: 3, y: 7.4};
MyObject obj = provider.call(theParams); // suppose MyProvider has (int, float) Params argument.
ReferenceProvider is the same as Provider except it uses a reference type (ref keyword) for methods returning the provided object.
Callable and ReferenceCallable
Callable is probably the most often used kind of providers. It simply calls an user-specified function to obtain the provided object. This is useful mainly for non-singleton objects (or singleton objects provided by some other library or an OS).
class Callable(alias Function) : Provider!(ReturnType!Function, Parameters!Function) {
 override const(ReturnType!Function) delegate_(Params params) {
 return Function(params);
So, it is a class template receiving a function as its template argument. It is inherited from Provider with the function return type as the provider type and function parameters as the provider arguments.
Note it uses the templates ReturnType and Parameters from the module std.traits of D standard library.
struct Complex {
 float real, imaginary;
Complex polarForm(float radius, float angle) {
 Complex result = {real: radius * cos(angle), imaginary: radius * sin(angle)};
 return result;
PolarFormProvider provider = new Callable!polarForm; // not necessary to use a provider in this simple example, but that's just an example
Complex ourComplex = provider(3.2, 1.24);
ReferenceCallable is similar except that it returns the provided object by reference.
Singletons are objects which are created (in our case by our singleton provider) only once. If the provider is called again, the same object is returned. It is useful in such situations as to read and parse a configuration file only once, to create no more than one dialog window per document window, to do some complex computations only once, etc.
BaseGeneralSingleton and ReferenceBaseGeneralSingleton
class BaseGeneralSingleton(Base) : Provider!(Base.Result, Base.Params) {
 private Base _base;
 /// Create the singleton with given base provider.
 this(Base base) {
 _base = base;
 /// Get the base provider.
 _USER_ Base base() { return _base; }
BaseGeneralSingleton is a class template with an argument Base which should be another provider class.
The abstract delegate_() method is supposed to create an object by calling Base provider (but do it only once).
The constructor of BaseGeneralSingleton receives a provider of class Base. This provider is returned by base property of our singleton provider like singletonProvider.base.
ReferenceBaseGeneralSingleton is analogous.
In this version of the library all singleton provider classes are inherited from BaseGeneralSingleton or ReferenceBaseGeneralSingleton, but this is not the most efficient implementation and may change in a future version. A patch is welcome.
Three kinds of singletons
There are three kinds of singletons in my library:
 - thread-unsafe singletons (You must not call one such a provider simultaneously in more than one thread of a multi-threaded program to avoid hard to debug bugs, but if you use it properly it is probably the most efficient of the three kinds);
 - thread-safe singletons (You can call it in multi-threaded programs);
 - thread-local singletons (thread safe and also creates/obtains a single provided object per thread a provider is called in, instead of single object per provider, also efficient).
Below I will describe only thread-safe singletons, as API of the two other kinds is quite analogous.
ThreadSafeSingleton and ReferenceThreadSafeSingleton
class ThreadSafeSingleton(Base) : BaseGeneralSingleton!Base {
 this(Base base) { super(base); }
 override const(Result) delegate_(Params params) {
 return synchroizedMemoizeMember!(const(Base), "delegate_")(base, params);
This class just overrides the abstract delegate_() method with an appropriate implementation for a thread-safe singleton. The implementation uses my memoize library.
ThreadSafeCallableSingleton and ReferenceThreadSafeCallableSingleton
class ThreadSafeCallableSingleton(alias Function) : ThreadSafeSingleton!(Callable!Function) {
 this() {
 super(new Callable!Function);
It is a thread-safe singleton provider with the same API as Callable provider (but singleton).
FixedObject and ReferenceFixedObject
These provider classes return some already existing object (or reference to an object).
class FixedObject(alias obj) : Provider!(typeof(obj)) {
 override const(Result) delegate_() const {
 return obj;
float obj = 3.2;
auto provider = new FixedObject!obj;
auto referenceProvider = new ReferenceFixedObject!obj;
assert(provider() == obj);
assert(&referenceProvider() == &obj);
It is recommended to use pure-dependency-injector together with struct-params library which allows to specify just a subset of (for example provider's) parameters and use default values for the rest.
import struct_params;
mixin StructParams!("S", int, "x", float, "y"); // declare parameters x of type int and y of type float
float calc(int x, float y) { // some example float object creator
 return x * y;
immutable S.Regular myDefaults = { x: 3, y: 2.1 }; // default values
alias MyProvider = ProviderWithDefaults!(Callable!calc, S, myDefaults); // modify Callable!calc to have default values
immutable S.WithDefaults providerParams = { x: 2 }; // set value for x
auto provider = new MyProvider;
assert(provider.callWithDefaults(providerParams) - 4.2 < 1e-6); // check that 2*2.1 == 4.2 (2 is an explicit parameter x, 2.1 is y default)
Note that because of a deficiency of the current version of D, it uses struct declarations to define default and particular arguments, not "inline" literals. See about struct-params for more details.
Why I can't call new from a template
In this blog post (TODO: link) it is explained why we can't call operator new from a template (provider template class in our case) to create an object of a specified type.
Use this workaround to create a provider which constructs objects with new:
class C {
 int v;
 this(int a, int b) { v = a + b; }
auto cFactory = new Callable!((int a, int b) => new C(a, b));
assert(cFactory(1, 2).v == 3);
Here we use the above described Callable provider together with lambda function (int a, int b) => new C(a, b) which constructs objects of class C using operator new.
Leave a Reply
WordPress.com Logo
Google photo
Twitter picture
Facebook photo
Connecting to %s


Red Hat Training
A Red Hat training course is available for Red Hat Ceph Storage
Chapter 2. Storage Cluster Quick Start
This Quick Start sets up a Red Hat Ceph Storage cluster using ceph-deploy on your Calamari admin node. Create a small Ceph cluster so you can explore Ceph functionality. As a first exercise, create a Ceph Storage Cluster with one Ceph Monitor and some Ceph OSD Daemons, each on separate nodes. Once the cluster reaches an active + clean state, you can use the cluster.
diag 0d7740404b62e85311f1350a7c5e0eba
2.1. Executing ceph-deploy
When executing ceph-deploy to install the Red Hat Ceph Storage, ceph-deploy retrieves Ceph packages from the /opt/calamari/ directory on the Calamari administration host. To do so, ceph-deploy needs to read the .cephdeploy.conf file created by the ice_setup utility. Therefore, ensure to execute ceph-deploy in the local working directory created in the Create a Working Directory section, for example ~/ceph-config/:
cd ~/ceph-config
Important
Execute ceph-deploy commands as a regular user not as root or by using sudo. The Create a Ceph Deploy User and Enable Password-less SSH steps enable ceph-deploy to execute as root without sudo and without connecting to Ceph nodes as the root user. You might still need to execute ceph CLI commands as root or by using sudo.
2.2. Create a Cluster
If at any point you run into trouble and you want to start over, execute the following to purge the configuration:
ceph-deploy purge <ceph-node> [<ceph-node>]
ceph-deploy purgedata <ceph-node> [<ceph-node>]
ceph-deploy forgetkeys
If you execute the foregoing procedure, you must re-install Ceph.
On your Calamari admin node from the directory you created for holding your configuration details, perform the following steps using ceph-deploy.
 1. Create the cluster:
 ceph-deploy new <initial-monitor-node(s)>
 For example:
 ceph-deploy new node1
 Check the output of ceph-deploy with ls and cat in the current directory. You should see a Ceph configuration file, a monitor secret keyring, and a log file of the ceph-deploy procedures.
2.3. Modify the Ceph Configuration File
At this stage, you may begin editing your Ceph configuration file (ceph.conf).
Note
If you choose not to use ceph-deploy you will have to deploy Ceph manually or configure a deployment tool (e.g., Chef, Juju, Puppet, etc.) to perform each operation that ceph-deploy performs for you. To deploy Ceph manually, please see our Knowledgebase article.
 1. Add the public_network and cluster_network settings under the [global] section of your Ceph configuration file.
 public_network = <ip-address>/<netmask>
 cluster_network = <ip-address>/<netmask>
 These settings distinguish which network is public (front-side) and which network is for the cluster (back-side). Ensure that your nodes have interfaces configured for these networks. We do not recommend using the same NIC for the public and cluster networks. Please see the Network Configuration Settings for details on the public and cluster networks.
 2. Turn on IPv6 if you intend to use it.
 ms_bind_ipv6 = true
 Please see Bind for more details.
 3. Add or adjust the osd journal size setting under the [global] section of your Ceph configuration file.
 osd_journal_size = 10000
 We recommend a general setting of 10GB. Ceph's default osd_journal_size is 0, so you will need to set this in your ceph.conf file. A journal size should be the product of the filestore_max_sync_interval option and the expected throughput, and then multiply the resulting product by two. The expected throughput number should include the expected disk throughput (i.e., sustained data transfer rate), and network throughput. For example, a 7200 RPM disk will likely have approximately 100 MB/s. Taking the min() of the disk and network throughput should provide a reasonable expected throughput. Please see Journal Settings for more details.
 4. Set the number of copies to store (default is 3) and the default minimum required to write data when in a degraded state (default is 2) under the [global] section of your Ceph configuration file. We recommend the default values for production clusters.
 osd_pool_default_size = 3
 osd_pool_default_min_size = 2
 For a quick start, you may wish to set osd_pool_default_size to 2, and the osd_pool_default_min_size to 1 so that you can achieve and active+clean state with only two OSDs.
 These settings establish the networking bandwidth requirements for the cluster network, and the ability to write data with eventual consistency (i.e., you can write data to a cluster in a degraded state if it has min_size copies of the data already). Please see Settings for more details.
 5. Set a CRUSH leaf type to the largest serviceable failure domain for your replicas under the [global] section of your Ceph configuration file. The default value is 1, or host, which means that CRUSH will map replicas to OSDs on separate separate hosts. For example, if you want to make three object replicas, and you have three racks of chassis/hosts, you can set osd_crush_chooseleaf_type to 3, and CRUSH will place each copy of an object on OSDs in different racks.
 osd_crush_chooseleaf_type = 3
 The default CRUSH hierarchy types are:
 - type 0 osd
 - type 1 host
 - type 2 chassis
 - type 3 rack
 - type 4 row
 - type 5 pdu
 - type 6 pod
 - type 7 room
 - type 8 datacenter
 - type 9 region
 - type 10 root
 Please see Settings for more details.
 6. Set max_open_files so that Ceph will set the maximum open file descriptors at the OS level to help prevent Ceph OSD Daemons from running out of file descriptors.
 max_open_files = 131072
 Please see the General Configuration Reference for more details.
In summary, your initial Ceph configuration file should have at least the following settings with appropriate values assigned after the = sign:
[global]
fsid = <cluster-id>
mon_initial_members = <hostname>[, <hostname>]
mon_host = <ip-address>[, <ip-address>]
public_network = <network>[, <network>]
cluster_network = <network>[, <network>]
ms_bind_ipv6 = [true | false]
max_open_files = 131072
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
osd_journal_size = <n>
filestore_xattr_use_omap = true
osd_pool_default_size = <n> # Write an object n times.
osd_pool_default_min_size = <n> # Allow writing n copy in a degraded state.
osd_crush_chooseleaf_type = <n>
2.4. Install Ceph with the ISO
To install Ceph from a local repository, use the --repo argument first to ensure that ceph-deploy is pointing to the .cephdeploy.conf file generated by ice_setup (e.g., in the exemplary ~/ceph-config directory, the /root directory, or ~). Otherwise, you may not receive packages from the local repository. Specify --release=<daemon-name> to specify the daemon package you wish to install. Then, install the packages. Ideally, you should run ceph-deploy from the directory where you keep your configuration (e.g., the exemplary ~/ceph-config) so that you can maintain a {cluster-name}.log file with all the commands you have executed with ceph-deploy.
ceph-deploy install --repo --release=[ceph-mon|ceph-osd] <ceph-node> [<ceph-node> ...]
ceph-deploy install --<daemon> <ceph-node> [<ceph-node> ...]
For example:
ceph-deploy install --repo --release=ceph-mon monitor1 monitor2 monitor3
ceph-deploy install --mon monitor1 monitor2 monitor3
ceph-deploy install --repo --release=ceph-osd srv1 srv2 srv3
ceph-deploy install --osd srv1 srv2 srv3
The ceph-deploy utility will install the appropriate Ceph daemon on each node.
Note
If you use ceph-deploy purge, you must re-execute this step to re-install


text: PACE (Project Association for Computer and Electronics) is a Computer Club of Advanced College of Engineering and Management founded in 2013 with the intension of providing everything that the students need to explore their ideas, develop new skills related to the field of computer. The main vision of the club is to expose the students to the latest advancements in computer technology and give individuals an opportunity for sharing and extending ideas, views and knowledge in the field of computers and fast changing technology. The club comprises a team of passionate and organized youths who are interested in learning about the advanced technology of the 21st century. We also help in building confidence in students with the help of various programs such as seminars, events and competitions. This Club consists of computer enthusiasts and technically minded hobbyists as the executive members. PACE provides a strong platform for the engineering students to practically implement their innovative ideas in computer for different applications. The Club offers indispensable guidance, workshops and organizes various events for students to explore their full potential.


text:
UK technology providers Sentec have won a grant for research and development (formerly SMART award) from the Department of Trade and Industry for the development of an accurate, solid-state water meter for residential applications. The DTI's grants aim to support research and development that produces techno-logically innovative and commercially attractive products and processes. Sentec has created a new electromagnetic (magflow) sensor which uses a number of innovations in the sensing element and associated electronics to break unit cost and power consumption barriers in magflow metering.
The sensor will allow magflow meters to break into the residential market in high volumes and bring a number of benefits to water utilities, including higher accuracy at low flows and over the whole lifetime of the meter. Inherent reliability, continuous flow measurement, long lifetime, affordable AMR and more meter 'intelli-gence'.
A patent has been applied for, and the sensor is already the subject of licence discussions with several prominent water meter manufacturers. The meter will have very low power consumption, allowing a minimum battery life of ten years. The project funded by the grant will demonstrate this, and the required levels of accuracy, and that the technology can meet the aggressive manufacturing cost targets that will be needed to enter the residential market.


text:
Team Ghilotti was selected as the contractor for this project. A contract for Team Ghilotti will be going to the Board of Public Utilities for award on November 5, 2020. Work in the field is anticipated to start in December or January, depending on weather conditions. Notifications will be sent prior to a specific start date. The project will make major improvements to the North Trunk Sewer Main, a pipeline which collects sewer flows from homes and businesses in the area of Chanate Road and Mendocino Avenue.
This project, expected to continue for about two years, involves the North Trunk Sewer Main which is a major pipeline that collects sewer flows from smaller sewer collector mains serving the Chanate/Mendocino area of northeast Santa Rosa. These aging pipelines, many of which are reaching the end of their useable life, are subject to cracks and blockages that can cause overflows and allow stormwater into the system. Replacing these pipelines, as well as several sections of water pipelines, will:
- Reduce the potential for sewer overflows and protect Paulin Creek and its riparian habitat
- Prevent stormwater from entering the sewer system, which unnecessarily escalates flows to the wastewater treatment plant, increasing energy use and costs
- Provide improved and safer access for routine inspection and maintenance of the pipeline system
- Improve water pressure and flows
- Ensure homes and businesses can depend on a safe, reliable sewer system
Generally, this project work will take place on portions of the following streets or intersections: Chanate Road, Mendocino Avenue, Plum Drive, Lomitas Avenue, Lomitas Lane, Strawberry Drive, as well as on certain easements in the area which are not within roadways. Affected neighbors and businesses will be notified of scheduled work which may specifically affect their properties. Traffic control plans take into account the potential for evacuation due to wildfire or other emergency, and potential Public Safety Power Shutoffs (PSPS).

source: openbmb/Ultra-FineWeb


text:
|CDX Constant Name:||kCDXProp_Bond_BeginAttach|
|CDX Constant Value:||0x0608|
|Property of objects:||kCDXObj_Bond|
|First written/read in:||ChemDraw 4.0|
Indicates where within the Bond_Begin node a bond is attached.
The value stored is the zero-based character offset from the beginning of the text representing the label. This value assumes that all characters in the label are single-byte. For example, if a bond attaches to the fifth character of a Japanese label, this value would be 8, not 4.
See also kCDXProp_Bond_EndAttach.
If this property is absent:
The bond is assumed to be attached to the first character in the label.


text:
Crib Point Satellite Earth Station: celebrating 20 years of service
30 November 2012
Crib Point Satellite Earth Station is the only dedicated weather-related Satellite Earth Station (SES) in Australia, forming a critical part of the Bureau's operations. Located at the HMAS Cerberus Naval Training Base on Westernport Bay in Victoria, the station is now celebrating 20 years of distinguished service.
Essential weather information
The station houses sophisticated communications equipment for receiving satellite data and has extended Australia's access to satellite images over the Indian Ocean.
It provides essential information for forecasting and climate services, for Australian industries such as defence, aviation and shipping, as well as emergency services.
Crib Point Satellite Earth Station.
Crib Point exemplifies 20 years of international cooperation between the Bureau, the China Meteorological Administration and Japan Meteorological Agency. Jointly, we have contributed to the World Weather Watch program of the World Meteorological Organization.
The station currently receives data for:
- Japan's Multi-functional Transport Satellites (MTSAT) geostationary series
- China's FengYun-2 geostationary satellite series
- National Oceanic and Atmospheric Administration (NOAA) polar-orbiting satellites
- NASA's AQUA, TERRA and Suomi NPP satellites.
Important part of the satellite infrastructure
The station at Crib Point is an important part of the meteorological satellite infrastructure, which includes:
- Geostationary satellites: located over the equator, providing hourly satellite coverage of the Australian region
- Polar-orbiting satellites: providing higher resolution coverage of the Australian region every six hours
- NOAA polar-orbiting satellites: carrying many instruments for imaging and'sounding' the atmosphere as well as telemetry for Data Collection Platform (DCP) operations. These instruments play an important role in:
- monitoring the atmosphere for severe weather events such as severe thunderstorms and tropical cyclones
- monitoring for search and rescue beacons, capsized vessels or planes lost at sea
- tracking and locating herds of migratory animals and birds
- fighting international piracy through tracking transmitters previously housed in 20 and 40 ft containers.
Built in 1991
Crib Point Satellite Earth Station was built in 1991 to host a Chinese Turn Around Ranging Station (C-TARS) to track and maintain the position of China's first geostationary meteorological satellite, Feng Yun 2. It 'turns around', or receives and retransmits signals sent via the Feng Yun satellite from the Central Control Station in China.
In 1994, the service was upgraded for Japan's GMS-4 and GMS-5 satellites (J-TARS).
Since then, Crib Point Satellite Earth Station has been providing a range of services outlined above.
Origins of Australia's role
Australia's role began just before the Japan Meteorological Agency's launch of GMS-1 (Himawari) in 1977. This was the first geostationary meteorological satellite that covered the Asia-Pacific area, including Australia. It brought a quantum leap in meteorological analysis and forecasting, providing the Bureau with satellite data every three hours. Before this, we received non-corrected satellite data every 12 hours from the polar-orbiting satellites.
Our first Turn Around Ranging Station (known as TARS 1) was set up at the request of the Japanese Government. It ensured their GMS satellite could be located accurately above the earth's surface at all times. In 1985, the Australian and Japanese governments signed an agreement on the operation of Japan's current and future geostationary meteorological satellites. We received satellite data from their GMS satellites, and operated the TARS 2 in return.


Welcome to KunShan Acumen Precision Machinery Co.,LtdOfficial Website
KunShan Acumen Precision Machinery Co.,Ltd
Home > News > Enterprise News
Causes damage to die-casting molds
Causes of damage to die-casting molds:
 In die-casting production, the most common form of mold damage is cracking and cracking. Stress is the main cause of mold damage. Thermal, mechanical, chemical, and operational shocks are sources of stress, including mechanical stress and thermal stress. Stress is generated in:
 (1) In the process of mold manufacturing and manufacturing
 , the quality of rough forging. Some molds produce cracks only when they are produced in a few hundred pieces, and cracks develop rapidly. It is possible that only the outer dimensions are ensured during forging, and the loose defects such as dendrites, inclusions, shrinkage cavities, and bubbles in the steel are stretched and elongated along the processing method to form a streamline, and this streamline is for the future. The final quenching deformation, cracking, brittle fracture during use, and failure tendency have a great impact.
 2. The cutting stress generated during the final machining of the car, milling, planing, etc., which can be eliminated by intermediate annealing.
 3. The grinding stress is generated during the grinding of the hardened steel. The friction heat is generated during the grinding, and the softening layer and the decarburization layer are generated, which reduces the thermal fatigue strength and easily leads to thermal cracking and early cracking. After the fine grinding of h13 steel, it can be heated to 510-570 ° C, and the thickness is maintained every 25 mm for one hour for stress relief annealing.
 4. EDM produces stress. The surface of the mold produces a white bright layer rich in electrode elements and dielectric elements, which is hard and brittle. This layer itself has cracks and stress. EDM should use a high frequency to minimize the white layer. It must be removed by polishing and tempered. The tempering is carried out at the tertiary tempering temperature.
 Improper heat treatment during the mold processing process will cause the mold to crack and be prematurely scrapped. In particular, only quenching and tempering, no quenching, and surface nitriding will occur, and surface cracking will occur after several thousand die castings. Cracking. The stress generated when the steel is quenched is the result of the superposition of the thermal stress during the cooling process and the structural stress during the phase change. The quenching stress is the cause of the deformation and cracking, and the solid must be tempered to eliminate the stress.
 (3) in the process of die casting production
 The mold should be preheated to a certain temperature before production. Otherwise, when the high temperature molten metal is filled, chilling occurs, which causes the temperature gradient of the inner and outer layers of the mold to increase, forming thermal stress, causing the surface of the mold to crack or even crack. During the production process, the mold temperature is continuously increased. When the mold temperature is overheated, the mold is easily generated, and the moving parts are broken, resulting in damage to the mold surface. The cooling temperature control system should be set to keep the working temperature of the mold within a certain range.


text:
Delft University of Technology
Aggressive technology scaling has led to a significant reduction of device reliability. As a consequence Integrated Circuits (ICs) reliability became a major issue and Dynamic Reliability Management (DRM) schemes have been proposed to assure ICs' lifetime reliability. Though, up to date, various aging sensors have been proposed, few of them can provide real quantitative aging measurements. In this paper, the authors propose a direct measuring scheme by using the drain current as aging indicator. They designed a novel on-chip aging sensor able to detect the amalgamated aging effects of ICs caused by joint failure mechanisms.


text:
In the Republic of Estonia, the Ministry of Defence and the Minister of Defence as its head are responsible for organising national defence.
In general, the functions of the Ministry include making proposals for planning national defence politics, implementing the planned activities, and the organisation of national defence, which comprises the following:
- to determine the overall guidelines for national defence
- to organise international co-operation in the sphere of national defence
- to arrange the preparation and implementation of mobilisation
- to implement the subsequent record management and training of reservists
- to arrange and finance the activities of the Defence Forces and the Defence League
- to develop the defence industry
- to supervise the activities of the Defence Forces and the Defence League
- to draft subsequent legislation
Structure-wise, the Ministry of Defence is divided into areas of responsibility of three Deputy Undersecretaries.
Figuratively speaking, it can be said that the departments, subordinate to the Deputy Undersecretary for Defence Policy, are developing the vision of the future of Estonian national defence; the area of responsibility of the Deputy Undersecretary for Defence Planning will 'translate' the vision into the language of capabilities and budget. The departments that are subordinate to the Deputy Undersecretary for Legal and Administrative Affairs will support all the processes, which take place within the Ministry. The Ministry shall co-ordinate its activities with the Defence Forces and other divisions and the sub-office concerned at the decision-making stage.
The Ministry's area of responsibility includes:
- the Defence Forces
- the Centre for Defence Investments
- the Defence Resources Agency, which organises recruitment and conscription issues
- the Estonian Foreign Intelligence Service
- the educational institutions of the Defence Forces; the Estonian War Museum - General Laidoner Museum, which showcases military history
- Seli Health Centre, which provides rehabilitation services to military personnel.
The authority of the Minister includes supervision over all the divisions and offices for the purposes of lawfulness and expedience.


text:
MADE IN ITALY
Awning the Italian way: this is our mission, transmitting the core values of Made in Italy, research and passion for what we do.
Find out more about BAT internal production chain: components and systems for awnings designed, engineered and produced entirely in the Noventa di Piave plant, near Venice, Italy.
The first step concerns the creation of the mold, that is, the result of a preliminary stage of study and engineering. In fact, the company, in order to get a component, deals with the design and self-creation of molds that return the raw product ready for subsequent machining. The company has a 3D printer for prototyping the details and their verification before the components are manufactured.
The next step involves machining components in special machines for removing small blemishes on the surface of the component, sandblasting and sanding of each piece. This approach ensures total control over the output standardization and conformation of output components and the removal of production errors.
PRE-TREATMENT and PAINTING
Pre-treatment involves 5 stages of washing and chemical treatments before painting. Thanks to this phase, a painted component after 5 years is not scattered even in challenging environmental situations, for example in seaside locations. The test of time is on the part of products leaving the BAT Group plants.
BAT Group's industrial coating is a refined process for decades that makes the product eye-catching and durable over time. The coating is therefore of a high level, requires many steps and several drying steps to ensure a great effect and functionality.
Assembly is the final part of the process. This phase benefits from the know-how BAT Group has since its founding in engineering and engineering. In fact, BAT Group designs every single piece internally and engineers the way it is done with which machines and technologies and materials. Consequently, each complex product system is made up of components that have no differences or imperfections, but their design consistency ensures optimum operation during assembly.


text:
A joint inspection of services for children and young people at risk of harm in Highland
The Chief Executives of Highland Council and NHS Highland, the Commander for Police Scotland, Highlands and Islands, and the Chair of the Child Protection Committee, welcome the Care Inspectorate's findings.
Collectively, they wish to highlight the key strengths in relation to the partnerships prompt and effective responses when children were at risk of harm.
The Care Inspectorate also found that the partnerships response remained a strength throughout the pandemic.
The Care Inspectorate noted that the partnerships were robustly sharing information and working together in making decisions that ultimately ensured that children at risk of harm were safe.
The inspectors also identified a number of key areas for improvement, which are fully accepted to ensure continuous improvement of services across Highland.
The improvement journey commenced prior to inspection. The findings of the inspection will enable the partnership to continue its journey relentlessly focusing on the best possible outcomes for children and families across the Highlands.
The full report can be read here.


text:
A museum's 3,500-year-old disposable cup shows the desire to avoid dishwashing is ancientBreaking News
tags: museums, ancient history, culture history, dishes
About 3,500 years separate the two humble cups that will sit next to each other at the heart of a new exhibit in London's British Museum.
One is a paper discard from the 1990s. Researchers believe the other, made from clay, may have held wine before it was thrown out after an ancient party on the island of Crete.
They're united, experts say, by a long history of humans churning out items meant to be tossed after a single use — and apparently a few millennia-long aversion to doing the dishes.
"Just like us, they didn't want to wash up," curator Julia Farley said of the Minoans who dumped thousands of the clay vessels as they built an advanced Bronze Age civilization marked by palaces, written language and lavish art.
Staff at the British Museum hope the cup display, which opens later this week, will leave visitors thinking about the growing consequences of our love for the disposable.
comments powered by Disqus
- What Happens When SCOTUS is This Unpopular?
- Eve Babitz's Archive Reveals the Person Behind the Persona
- Making a Uranium Ghost Town
- Choosing History—A Rejoinder to William Baude on The Use of History at SCOTUS
- Alexandria, VA Freedom House Museum Reopens, Making Key Site of Slave Trade a Center for Black History
- Primary Source: Winning World War 1 By Fighting Waste at the Grocery Counter
- The Presidential Records Act Explains How the FBI Knew What to Search For at Mar-a-Lago
- Theocracy Now! The Forgotten Influence of L. Brent Bozell on the Right
- Janice Longone, Chronicler of American Food Traditions
- Revisiting Lady Rochford and Her Alleged Betrayal of Anne Boleyn


text:
In November, voters in California will vote on Proposition 2, which seeks to increase cage sizes for egg laying hens, pregnant pigs and veal calves. The new regulations, which would go into effect in 2015, would require cages to be large enough to allow these animals to be able to stand up, lie down, turn around and to be able to fully extend their limbs without touching the side of an enclosure or other egg-laying hens.
To show the size of some animals' quarters in large-scale farm operations, Oprah stands with replicas of cages and crates for each animal affected by Proposition 2. In an egg-laying hen cage, five to six hens could be in a single cage. The typical crate for a young male calf being raised for veal has enough room for him to stick his head out. Pregnant pigs—which can weigh more than 500 pounds—are about 5 to 6 feet long, while the cages they live in are about 7 feet long.
Those who support Proposition 2 say these animals have the right to more space during their lives. Opponents of Proposition 2, including farmers and industry representatives, say the new law would drive up costs, put farmers out of business and end the egg industry in California, and deny consumers the right to choose less-expensive food.

source: HuggingFaceFW/fineweb-edu


text:
Analysis on Level of Safety Performance and Occupants' Satisfaction in Low Cost Housing
The general building conditions in low cost housing are part of human's quality indicator. However, there are rising issues on the safety performance of the housing since the occupants are inclined to perceive safety hazards. Therefore, this paper explores the concept of Post Occupancy Evaluation (POE) as safety performance tool. This research conducted a survey on safety performance and occupants' satisfaction to 24 numbers of low cost housing at Kuala Lumpur, Malaysia. The correlation result shows that safety performance has a significant relationship with occupants' satisfaction. The findings supported the application of POE as the tool for safety performance.
Keywords: Post Occupancy Evaluation; Low Cost Housing; Safety Performance;Occupants' Satisfaction;
eISSN 2514-751X © 2018. The Authors. Published for AMER ABRA cE-Bs by e-International Publishing House, Ltd., UK. This is an open-access article under the CC BY-NC-ND license (_URL_ Peer–review under responsibility of AMER (Association of Malaysian Environment-Behaviour Researchers), ABRA (Association of Behavioural Researchers on Asians) and cE-Bs (Centre for Environment-Behaviour Studies), Faculty of Architecture, Planning & Surveying, Universiti Teknologi MARA, Malaysia.


text:
The Onions are the nests of the Pikmin. Olimar named them so because of their resemblance to a vegetable native to his home planet. These bulbous plant-hives have brightly colored bodies with a black and white band across the midsection. At the spots the Onions land at the start of each day, there are concentric circles on the ground, which are never referred to in-game. Three stilt-like legs suspend the Onions out of the reach of hungry predators, and provide access to the inside for Pikmin. In Pikmin, Olimar states that he inspected the Onion's legs, and saw they were covered with tiny little hairs. There are three known types of Onion, each with unique coloration corresponding to either Red, Yellow or Blue Pikmin, and only one of each has ever been seen. Subterranean Pikmin species such as Purple Pikmin, White Pikmin and Bulbmin do not have Onions, or at least none that have yet been discovered.
During the daytime, Pikmin hunt and bring food, such as pellets or slain beasts, to the Onion, which in turn produces new Pikmin seeds. If there are fewer than 100 Pikmin on the field, the seeds are ejected and take root in the ground; if not, they are stored inside the Onion, along with any other Pikmin not on the field. When night falls and all the Pikmin have returned, the Onion folds its legs and lifts off from the ground, presumably using its flower petals like rotor blades to propel itself into the low atmosphere, where it hovers until daybreak. If an Onion loses all its Pikmin, it will produce a single seed the following day to prevent extinction.
When the Onions are first discovered in Pikmin, they are dormant. They have a dark grayish color, are flowerless, and their legs are buried in the ground until Olimar comes upon them, at which point they spring to life and spit out a single seed. It is not known exactly what triggers this hibernation.
In Pikmin 3, a mechanical spherical object with legs that resembles an Onion is shown. However, it isn't confirmed what this object does.
 Red Onion
The Red Onion is the first Onion to be discovered in both games. In Pikmin, the Red Onion is found at The Impact Site, dormant in the ground not far from where the S.S. Dolphin crashed. Once awakened, it will release a single Red Pikmin seed which Olimar can use to harvest nearby red Pellet Posies and spawn enough Pikmin to retrieve the Main Engine. In Pikmin 2, Louie finds this Onion in the Valley of Repose when he falls out of the Ship's cockpit and gets lost.
 Yellow Onion
The second Onion the player will come across in both games. In Pikmin, it is found dormant in The Forest of Hope amidst several yellow Pellet Posies and free-standing yellow pellets. In Pikmin 2, the Yellow Onion is located in the Perplexing Pool behind a poison gate protected by a Fiery Bulblax, so White Pikmin and Red Pikmin are required to reach it. There are a few yellow Pellet Posies nearby which will not regrow once they've been harvested.
 Blue Onion
In Pikmin, it can be found in The Forest Navel in a pool near the landing site, and is the third Onion the player discovers. Several blue Pellet Posies are in the immediate vicinity, as well as a free-standing blue 5 pellet. In Pikmin 2, the Blue Onion is located in the Awakening Wood; although it can be seen relatively early in the game, it lies behind an electric gate, meaning that Yellow Pikmin from the Perplexing Pool are required to access it. A small pool blocks the only direct path up to the gate, so the Pikmin must be thrown onto a nearby ledge (while taking care not to disturb the Cloaking Burrow-nit lying in wait there). The Captain can then walk around through some water to reach them, and order them to defeat the beast and demolish the gate, allowing him to find the game's first 5 Blue Pikmin.
For some unknown reason, when landing on an area, the Blue Onion seems to hover a bit before landing, therefore landing slower than the Red Onion and Yellow Onion.
At the end of Pikmin, there is a rather confusing part where fourteen Onions, of colors that have not appeared in a Pikmin game so far, fly above the Planet of the Pikmin. It is unknown whether they are trying to follow Captain Olimar or merely hovering for the night. This could mean that more colors may yet be introduced in Pikmin 3. Interestingly, one of the Onions seen is purple, and Purple Pikmin were indeed introduced in Pikmin 2, but without an Onion.
 In Super Smash Bros. Brawl
In Brawl, the three Onions appear as a trophy and on the "Distant Planet" stage. Here, when a pellet is thrown into one, an item is ejected. The number on the pellet thrown is the amount of items that will appear. More items will appear if the pellet and Onion have the same color, similar to the way it works in the Pikmin games. The Onions can also be hit, and will eventually fly away.
 Brawl Trophy Description
"Items considered to be the places where Pikmin are born. As to the actual biology of the process, much is still unclear. Onions absorb the prey that Pikmin capture and use it to produce new Pikmin. In addition, Onions can take in Pikmin and later release them. These organisms are crowned with distinctive propeller-like sets of leaves that spin around, enabling them to fly."
- For the music in the Forest of Hope, at some points, the propeller petals of an Onion can be heard.
- When Olimar first came upon the Red Onion in Pikmin, he was knocked over by one of the legs as it sprang out of the ground. When he finds the other two later on in the game, he is a little more cautious and backs away.
- If, on a day where Olimar or Louie finds an Onion, and enters a cave after whistling the wild Pikmin, the Onion will be at the landing site when the cave is left.


text:
Toba Samuel Olaoye
University of Tasmania
Measurement of water vapour resistivity of typical Australian building membranes
Since 2010, concern has been raised about wet buildings in Australia. As of May 2019, regulatory performance requirements necessitate condensation risk analysis for new buildings in some climate types.
It is internationally recognised that the use of hygrothermal simulation is a key method to inform water vapour transport through the built fabric. A key component for hygrothermal simulation is material vapour resistivity. In 2018, different methods for establishing vapour resistivity of building materials were presented and discussed.
This presentation will explore the establishment of test facilities and show experiments conducted to obtain pliable membrane vapour resistivity properties.
Until recently Olaoye studied, practised and taught within the fields of architecture and civil engineering. This cross-disciplinary approach has exposed him to the diversities and practical challenges facing the design and construction of new buildings.
Olaoye is currently pursuing PhD studies at the University of Tasmania, with a co-funded scholarship from CSIRO, focusing on "the empirical evaluation of the vapour permeability of Australian building components". This involves the exploration and completion of experiments to establish the vapour resistance/permeability properties of materials, paints and membranes – providing critical data to inform condensation risk analysis in Australia.


{-# LANGUAGE OverloadedStrings, TypeSynonymInstances, FlexibleInstances #-} {- | Module : Data.GraphViz.Printing Description : Helper functions for converting to Dot format. Copyright : (c) Ivan Lazar Miljenovic License : 3-Clause BSD-style Maintainer : _EMAIL_ This module defines simple helper functions for use with "Text.PrettyPrint". It also re-exports all the pretty-printing combinators from that module. Note that the 'PrintDot' instances for 'Bool', etc. match those specified for use with Graphviz. You should only be using this module if you are writing custom node types for use with "Data.GraphViz.Types". For actual printing of code, use @'Data.GraphViz.Types.printDotGraph'@ (which produces a 'Text' value). The Dot language specification specifies that any identifier is in one of four forms: * Any string of alphabetic ([a-zA-Z\\200-\\377]) characters, underscores ('_') or digits ([0-9]), not beginning with a digit; * a number [-]?(.[0-9]+ | [0-9]+(.[0-9]*)? ); * any double-quoted string (\"...\") possibly containing escaped quotes (\\\"); * an HTML string (\<...\>). (Note that the first restriction is referring to a byte-by-byte comparison using octal values; when using UTF-8 this corresponds to all characters @c@ where @ord c >= 128@.) Due to these restrictions, you should only use 'text' when you are sure that the 'Text' in question is static and quotes are definitely needed/unneeded; it is better to use the 'Text' instance for 'PrintDot'. For more information, see the specification page: -} module Data.GraphViz.Printing ( module Text.PrettyPrint.Leijen.Text.Monadic , DotCode , renderDot -- Exported for Data.GraphViz.Types.printSGID , PrintDot(..) , unqtText , dotText , printIt , addQuotes , unqtEscaped , printEscaped , wrap , commaDel , printField , angled , fslash , printColorScheme ) where import Data.GraphViz.Util import Data.GraphViz.State -- To avoid orphan instances and cyclic imports import Data.GraphViz.Attributes.ColorScheme -- Only implicitly import and re-export combinators. import Text.PrettyPrint.Leijen.Text.Monadic hiding ( SimpleDoc(..) , renderPretty , renderCompact , displayT , displayIO , putDoc , hPutDoc , Pretty(..) , bool , string) import qualified Text.PrettyPrint.Leijen.Text.Monadic as PP import qualified Data.Text.Lazy as T import Data.Text.Lazy(Text) import Data.Char(toLower) import qualified Data.Set as Set import Data.Word(Word8, Word16) import Control.Monad(ap, when) import Control.Monad.Trans.State -- ----------------------------------------------------------------------------- -- | A type alias to indicate what is being produced. type DotCode = State GraphvizState Doc instance Show DotCode where showsPrec d = showsPrec d . renderDot -- | Correctly render Graphviz output. renderDot :: DotCode -> Text renderDot = PP.displayT . PP.renderPretty 0.4 80 . flip evalState initialState -- | A class used to correctly print parts of the Graphviz Dot language. -- Minimal implementation is 'unqtDot'. class PrintDot a where -- | The unquoted representation, for use when composing values to -- produce a larger printing value. unqtDot :: a -> DotCode -- | The actual quoted representation; this should be quoted if it -- contains characters not permitted a plain ID String, a number -- or it is not an HTML string. Defaults to 'unqtDot'. toDot :: a -> DotCode toDot = unqtDot -- | The correct way of representing a list of this value when -- printed; not all Dot values require this to be implemented. -- Defaults to Haskell-like list representation. unqtListToDot :: [a] -> DotCode unqtListToDot = list . mapM unqtDot -- | The quoted form of 'unqtListToDot'; defaults to wrapping double -- quotes around the result of 'unqtListToDot' (since the default -- implementation has characters that must be quoted). listToDot :: [a] -> DotCode listToDot = dquotes . unqtListToDot -- | Convert to DotCode; note that this has no indentation, as we can -- only have one of indentation and (possibly) infinite line lengths. printIt :: (PrintDot a) => a -> Text printIt = renderDot . toDot instance PrintDot Int where unqtDot = int instance PrintDot Integer where unqtDot = text . T.pack . show instance PrintDot Word8 where unqtDot = int . fromIntegral instance PrintDot Word16 where unqtDot = int . fromIntegral instance PrintDot Double where -- If it's an "integral" double, then print as an integer. This -- seems to match how Graphviz apps use Dot. unqtDot d = if d == fromIntegral di then int di else double d where di = round d toDot d = if any ((==) 'e' . toLower) $ show d then dquotes ud else ud where ud = unqtDot d unqtListToDot = hcat . punctuate colon . mapM unqtDot listToDot [d] = toDot d listToDot ds = dquotes $ unqtListToDot ds instance PrintDot Bool where unqtDot True = text "true" unqtDot False = text "false" instance PrintDot Char where unqtDot = char toDot = qtChar unqtListToDot = unqtDot . T.pack listToDot = toDot . T.pack instance PrintDot Text where unqtDot = unqtString toDot = qtString -- | For use with @OverloadedStrings@ to avoid ambiguous type variable errors. unqtText :: Text -> DotCode unqtText = unqtDot -- | For use with @OverloadedStrings@ to avoid ambiguous type variable errors. dotText :: Text -> DotCode dotText = toDot -- | Check to see if this 'Char' needs to be quoted or not. qtChar :: Char -> DotCode qtChar c | restIDString c = char c -- Could be a number as well. | otherwise = dquotes $ char c needsQuotes :: Text -> Bool needsQuotes str | T.null str = True | isKeyword str = True | isIDString str = False | isNumString str = False | otherwise = True addQuotes :: Text -> DotCode -> DotCode addQuotes = bool id dquotes . needsQuotes -- | Escape quotes in Strings that need them. unqtString :: Text -> DotCode unqtString "" = empty unqtString str = unqtEscaped [] str -- no quotes? no worries! -- | Escape quotes and quote Texts that need them (including keywords). qtString :: Text -> DotCode qtString = printEscaped [] instance (PrintDot a) => PrintDot [a] where unqtDot = unqtListToDot toDot = listToDot wrap :: DotCode -> DotCode -> DotCode -> DotCode wrap b a d = b <> d <> a commaDel :: (PrintDot a, PrintDot b) => a -> b -> DotCode commaDel a b = unqtDot a <> comma <> unqtDot b printField :: (PrintDot a) => Text -> a -> DotCode printField f v = text f <> equals <> toDot v -- | Escape the specified chars as well as @\


Big Figure
DEFINITION of 'Big Figure'
The stem, or whole dollar price, of a price quote. The term "big figure" is most often used in international currency markets, where it is often abbreviated to "big fig." In the U.S., big figure is also referred to as the "handle." The big figure is generally omitted when traders provide quotations in very fast-paced markets, such as the interbank currency market, because the assumption is that it is common knowledge and does not need to be specified.
For example, assume that the Japanese yen is trading versus the US dollar in the interbank spot market at 85.50 (bid) / 85.55 (offered). While the big figure here is 85, interbank traders will quote the price as 50 / 55.
While omitting the big figure is accepted practice in interbank and institutional markets, it is seldom done when dealing with retail investors. Even in the interbank markets, traders may need clarification on the big figure in cases where the exchange rate is moving very rapidly, as for instance, during currency intervention by central banks. The big figure may also need to be clarified when the exchange rate approaches round numbers, such as 86.00 yen or 1.3500 euros to the US dollar.
 1. Pip
 The smallest price change that a given exchange rate can make....
 2. Interbank Market
 3. Forex - FX
 4. Interbank Rate
 5. Handle
 The whole number part of a price quote. In a quote the handle...
 6. Dead Cat Bounce
Related Articles
 1. Options & Futures
 A Primer On The Forex Market
 2. Investing
 In Search of the Rate-Proof Portfolio
 3. Investing
 Time to Bring Active Back into a Portfolio?
 4. Investing
 Where the Price is Right for Dividends
 5. Professionals
 Top 3 Misconceptions About Financial Analysts
 6. Investing Basics
 What is Equity?
 7. Investing Basics
 The Dangers Of Share Dilution
 8. Investing Basics
 Valuation Of A Preferred Stock
 9. Economics
 5 Ways to Play the Stock Market after an Interest Rate Hike
 When the Fed will raises rates is still the unknown, but if it happens investors can benefit. Financials, consumer and growth stocks should do well.
 10. Investing Basics
 What's a Benchmark?
 1. Where do penny stocks trade?
 2. Where can I buy penny stocks?
 6. What are the requirements for being a Public Limited Company?
You May Also Like
Hot Definitions
 1. Take A Bath
 2. Black Friday
 3. Turkey
 4. Barefoot Pilgrim
 5. Quick Ratio
 6. Black Tuesday
Trading Center


text:
Industrial Maintenance Paint
Definition - What does Industrial Maintenance Paint mean?
Industrial maintenance paint refers to a paint or coating that is used for the protection of industrial structures and components. These paints are primarily chosen considering their protective attributes rather than their aesthetic properties, though they can provide both.
High-performance epoxy coatings, acrylic primers, enamels and finishes can be used to produce industrial maintenance paint.
An industrial maintenance paint may also be referred to as a maintenance paint.
Corrosionpedia explains Industrial Maintenance Paint
Industrial maintenance paints are specially produced paints to protect industrial structures and components. These paints are commonly used to control the corrosion of steel structures of industrial plants; their roofs, platforms and underground pipelines. These coatings are also used as intumescent coatings for the fire resistance of industrial equipment and structures.
The environments of industries are not similar, so different types of coatings with different attributes are needed to meet the specific needs of each environment.
High-performance polymers, acrylic and primers are mainly used to produce industrial paints. Polyurethane, epoxy, moisture-cure urethane and fluoropolymer are commonly used polymers that also produce these paints. The coating produces a polymer film on the coating surface, which acts as a physical barrier between the steel substrate and the industrial corrosive environment. This polymer film protects the industrial structure and components.
As an industrial maintenance coating, high-performance epoxy coatings are ideal for structural steel, piping, tanks and equipment in chemicals, fertilizers, power plants, petroleum refineries, pulp and paper mills, and mining operations. They are also used as a filler for concrete blocks. Various waterborne acrylic coatings are also a good choice for industrial finishes.


phrases, sayings, proverbs and idioms at
Home button Home | Search the website Search | Phrase Dictionary | Dollars to doughnuts
The meaning and origin of the expression: Dollars to doughnuts
Browse phrases beginning with:
Dollars to doughnuts
Other phrases about:
What's the meaning of the phrase 'Dollars to doughnuts'?
An outcome that is almost assured; a certainty.
What's the origin of the phrase 'Dollars to doughnuts'?
Dollars to doughnuts'Dollars to doughnuts' is one of several 'dollars to...' phrases, like 'dollars to buttons' and 'dollars to cobwebs', which date from 1884 (in G. W. Peck's Boss Book) and 1904 (in The Boston Herald) respectively. Buttons and cobwebs were presumably chosen for their obvious lack of value, but the expressions failed to catch on as they lacked the perky alliteration of 'dollars to doughnuts'.
This is, of course, an American phrase. It is occasionally spelled as 'dollars to donuts', which only emphasis its US origin as, outside the USA, a donut is most definitely a doughnut.
'Dollars to doughnuts' is a pseudo betting term, pseudo in that it didn't originate with actual betting involving doughnuts, but just as a pleasant-sounding alliterative phrase which indicated short odds - dollars are valuable but doughnuts aren't. The phrase parallels the earlier English betting expression 'a pound to a penny'.
The phrase appears to have originated in mid 19th century USA. The earliest citation I can find for it is in the newspaper The Daily Nevada State Journal, February 1876:
Whenever you hear any resident of a community attempting to decry the local paper... it's dollars to doughnuts that such a person is either mad at the editor or is owing the office for subscription or advertising.
It doesn't crop up again in print until some years later, apart from a similar citation in a March edition of the Nevada State Journal, which suggests that the (unnamed) author of those pieces either coined the term himself or appropriated some street slang that he had heard.


Freight Brokers
It has often been asked here at this site, what exactly are freight brokers and what role they play in the industry as a whole.
Freight brokers are basically the go betweens acting for the persons requiring goods to be transported and the freight forwarders and transportation companies themselves. A freight brokerage could also be known as that which is legally termed a Property Broker. It is this term that has been established in the US by the FMCSA (Federal Motor Carrier Safety Administration). The FMCSA is a division of the Department of Transportation in the US.
A freight broker or property broker is therefore a term which is used to describe a licensed individual, or a corporation acting to assist in facilitating the successful transportation of goods undertaken by a freight shipper or authorized motor carrier and the customer.
Brokers are not, by law required to carry cargo or liability insurance. However, these entities are required to hold several legal documents which include:
 - A Broker's Authority
 - Surety Bond or Trust Fund
 - Processing Agent
A Broker's Authority is obtained for a $300 fee (currently) through the FMCSA upon filing out the form OP-1 and filing for authority.
A Surety Bond or Trust Fund is obtained from either a bank or a bonding company. The form that is required to be filed with this is known as the BMC-84 or BMC-85. Each brokerage company or individual entity is required to prove they are able to pay the various truck lines, airlines, railroads, or any other entity being used by the broker. Before a bond is issued, the individual's credit and/or financial capacity is thoroughly investigated. This is because for some reason if the brokerage fails to pay the freight forwarder or transport company, the bonding company must instead pay.For this reason the bonding company is extremely cautious about who they decide to insure.
The Processing Agent is obtained by filling out form BOC-3 and costs $50.
This type of entity does not require a lawyer or other professional entity in order to file for a motor carrier or property broker authority. As for certification, there is actually only one level of brokerage, which is the Property Broker, or more commonly called the Freight Broker. The FMCSA does not recognize any other title.
That concludes this article, which we trust you found informative and useful.
Copyright 2014 forwardersins.comPrivacyTermsCompensation Disclosure


text:
Showing Collections: 1 - 3 of 3
A collection of 625 Indian ink and 19 watercolour drawings of churches and buildings in Oxfordshire by J.C. Buckler, _PHONE_.
Extents: 6 shelfmarks
Collection of Indian ink drawings of buildings in Oxford by J.C. Buckler.
Extents: 2 shelfmarks
Drawings, with some engravings and lithographs, mainly of buildings and objects in Oxfordshire and Wiltshire
Drawings, with some engravings and lithographs, mainly of buildings and objects in Oxfordshire and Wiltshire, 19th century.
Shelfmark: MS. Top. Oxon. c. 532
Extents: 82 Leaves
Dates: 19th century
- Indexed subjects
- 18th century 1
- Architecture -- England -- Oxfordshire 2
- Church buildings 1
- Church buildings -- England -- Oxfordshire 1
- Drawing 1
- Drawings 1
- Oxford (England) 1
- Wiltshire (England) 1
- Indexed names
- Benson | Robert | _PHONE_ | judge and local historian of Salisbury 1
- Phillipps | Sir | Thomas | _PHONE_ | Baronet | Antiquary, and Collector of MSS and Books 1


text:
Preparing for the hearing
If you made a submission and indicated that you wished to speak to it, then make sure you reinforce your case by presenting to the hearing.
The hearing report
Before the hearing, Environment Southland compiled a hearing report – a 700-page document (called the section 42A report), which provides the Hearing Commissioners with a summary and analysis of submissions, and makes recommendations on possible amendments to the proposed plan.
The Hearing Commissioners don't have to agree with the recommendations contained in the s42A report, but it is still a useful tool to help understand how the submissions have affected council's thinking.
Can B+LNZ help me prepare for the hearing?
We ran eight workshops, to help farmers prepare. These covered:
- What you can expect at the hearing
- What makes a powerful farmer hearing statement
- How to gain traction with the decision makers
- A refresh on the key issues and a heads up on where council thinking is changing
- What to include in your hearing statement.
What if I missed the workshops?
The workshop resources included a booklet and videos, which you can download on this page. View the powerpoint presentation to pick up tips on how to be as effective as possible on the day.
Key areas to consider
We have created a summary of key areas you may which to address called "The Song Sheet". It covers:
- The policy/rule to consider
- What the notified plan said
- What B+LNZ submitted
- Environment Southland's recommendations to the hearing panel (s42A report)
- Some ideas for farmers to consider in their hearing statement
The eight key areas summarised in the song sheet are:
- Physiographic zones
- Pre-empting limit setting process
- Dairy conversion
- Intensive winter grazing
- Stock exclusion
- Cultivation setbacks
- Tile drains
- Farm Environment Plans


Yes, lent is a Scrabble word!
Lent is a valid Scrabble word.
Table of Contents
Dictionary definitions of the word 'lent'
The meaning of lent
4 definitions of the word 'lent'.
 1. Bestow a quality on
 2. Give temporarily; let have for a limited time
 1. A period of 40 weekdays from Ash Wednesday to Holy Saturday
What Scrabble words can I make with the letters in lent?
3 Letter Words
2 Letter Words
Words that can be created with an extra letter added to lent:
Unscramble the letters in lent
There are 6 words that can be made by adding another letter to 'lent'.
More words that can be made using the letters in lent


Water Tank Mixing Systems
water tank mixing
The Pulsair's water tank mixing systems are the best solution for drinking water storage tanks actively mixed to avoid thermal stratification, reduce the formation of nitrates and lower disinfection by-products (DBP). Pulsair Systems offers the fastest, most effective low energy cost solution for actively mixing large potable water storage tanks. Our proven sanitary mixing process is up to 80-90% more energy efficient than traditional mixing methods and addresses all the major challenges of potable water storage tank mixing.Our water tank mixing equipment can be fitted into any underground or above ground water storage tank including standpipe water towers, ground storage tanks and elevated storage tanks. Pulsair mixing systems are NSF/ANSI 61 certified.
How the water tank mixing process works:
The Pulsair mixing process works by producing sequentially timed pulses of compressed air to generate large bubbles at the tank bottom. The rising bubbles create an immediate vertical circulation pattern in the tank that stirs and blends 100% of the water in the tank. The Pulsair tank mixing process is the fastest and most energy efficient because it uses gravity to do the work of mixing. The only energy consumed is during the process of compressing the air. Once the bubbles are released at the tank bottom, no more energy is consumed. The water in the tank continues to move long after the bubbles reach the water surface.
Eliminates thermal stratification
Pulsair systems uses a vertical active mixing process to quickly break up stagnant layers of water and reduce the formation of thermoclines and thermal stratification in potable water storage tanks. The rising bubbles create immediate vertical mixing circulation pulling colder water up into the tank to achieve uniform water temperature.
Reduces nitrification
Active mixing of potable water with the Pulsair mixing process helps to eliminate nitrification that may occur where chloramine is used to disinfect drinking water. The Pulsair mixing process quickly mixes multi-million gallon water tanks to achieve uniform water temperature reducing the occurrence of nitrification. This saves time, money and conserves water because operators no longer having take tanks off-line or deep-cycle tanks.
Protect against trihalomethanes (THM)
Potable water tank mixing with Pulsair helps protect against trihalomethanes (THMs) and helps ensure EPA Stage 2 DBP Rule compliance. Thermal stratification and thermoclines are eliminated which can elevate THM levels.
Prevent ice formation
Intermittent rising air bubbles from the Pulsair mixing process creates vertical in the tank and increased agitation at the water surface keeping the water in motion which greatly reduces the formation of ice or freezing in the tank.
Fast mixing
Potable water tank mixing should happen fast and the mixer should be responsive to unforeseen events that require immediate mixing to occur. Unlike small mechanical mixers that can take up to a week to completely mix a potable water tank or passive duckbill nozzle can only mix when the tank is being filled, the Pulsair mixing process can mix 100% of the water in a multi-million gallon tank on demand.
Custom water tan mixing systems designed for any tank size
Pulsair custom engineers each potable water tank mixing system to fit all types and capacity tanks. Whether the tank is 3,000 gallons or 3 million, elevated, ground, standpipe or an underground reservoir, the Pulsair mixing system can be custom designed to meet every need. Additionally, the Pulsair water tank mixing system can operate at any water level.
Why to choose Pulsair water tank mixing systems?
 1. The Pulsair mixing process is an 'Active' mixing process and ensures that all the water is mixed whereas 'Passive' mixers only work when the tank is being filled which can result in higher costs.
 2. Water can be 100% mixed at ANY liquid level and in any tank geometry. Other systems require their mixers taken offline when the water falls below a certain level.
 3. Uniform temperature can be achieved in a matter of minutes. Mechanical technologies can take days to completely mix a tank.
 4. No maintenance needed inside the tank after installations. Other suppliers guarantee their product for up to two-years – whereas Pulsair mixing systems have a history of over 25 years without any maintenance issues inside the tank.
 5. Efficiently mixing large multi-million gallon tanks is done easily and quickly with the Pulsair mixing process. It is the most efficient and fastest type of water tank mixing.
Benefits of the Pulsair water tank mixing systems:
 - 25-years of proven mixing technology
 - Efficiently mixes entire contents of the tank
 - No moving parts installed inside tanks
 - Promotes aggressive bottom up vertical fluid mixing
 - Installed in any size or style of tank
 - Solves temperature inversion issues
 - Improves water quality
 - Quickly mixes in any added disinfectants to achieve equal distribution
Challenges in water tank storage that the Pulsair tank mixing system solves:
 - Prevents thermocline that can lead to thermal stratification
 - Reduces accumulation of sediment buildup that can lead to microbial growth and contamination
 - Provides uniform temperature distribution and consistent water quality without any deadzones.
 - Helps reduce amount of chlorination and disinfectants needed thus reducing overall disinfection by-products (DBP) production
 - Reduces the formation of nitrates and nitrites (nitrification)
 - Prevents freezing and ice formation inside tanks that can lead to costly replacements
Types of installations:
 - Ground water tanks
 - Elevated water tanks
 - Standpipe water tanks
 - Reservoirs
Points of consideration for other water tank mixers:
 - Duck dill type eductor systems only "mix" water when tank is being filled
 - Typically cost much more to purchase and install
 - Does not provide 100% mixing of water in the tank
 - Cannot lower THMs other disinfectant byproducts
Mechanical mixers
 - Electric motors and water don't play well – the water always wins.
 - Electric motors = more maintenance. Guaranteed.
 - Installation costs should be considered in addition to the mixer itself.
 - Cost for labor and replacement of broken should be considered as well.
 - Mixes water too slowly for effective mixing to take place & cannot respond to critical events fast enough to provide uniform distribution of disinfectants
 - Mechanical mixers have been known to take over a week to mix 1 MG tanks
 - Must run 24/7
Contact Pulsair to learn more


text:
Skip to main content
Correlation between collagen solubility and skin optical clearing using sugars.
- Author(s): Hirshburg, Jason;
- Choi, Bernard;
- Nelson, J Stuart;
- Yeh, Alvin T
- et al.
Published Web Locationhttps://doi.org/10.1002/lsm.20417
Background and objectiveLight scattering from collagen within skin limits light-based therapeutics while increasing the risk of epidermal thermal injury. Specific chemicals show the ability to reduce light scattering by reversibly altering the optical properties of skin. This study examines the correlation between collagen solubility and the optical clearing potential (OCP) of sugars and sugar-alcohols using in vitro rodent skin.
Materials and methodsCollagen solubility in dextrose, fructose, sucrose, and sorbitol was measured using near-UV spectroscopy. Light transmittance, reflectance, and rodent skin thickness were measured (giving skin reduced scattering coefficient) before and after exposure of the dermal surface to sugars and sugar-alcohols. OCP was calculated as the ratio of reduced scattering coefficients before and after exposures.
ResultsDextrose, fructose, sucrose, and sorbitol had at least twice the collagen solubility and twice the OCP as compared to glycerol. In general, collagen solubility correlated with each agent's ability to optically clear rodent skin.
ConclusionThese results demonstrate that sugar and sugar-alcohol interaction with collagen are a primary event in tissue optical clearing.
For improved accessibility of PDF content, download the file to your device.


text:
Trends in Direct-to-Consumer Advertising of Prescription Contraceptives
CitationWu, Min. 2016. Trends in Direct-to-Consumer Advertising of Prescription Contraceptives. Doctoral dissertation, Harvard Medical School.
AbstractObjective: Despite much speculation about the role of direct-to-consumer advertising (DTCA) in increasing demand for prescription contraceptives in the United States, there is little published research on this topic. We sought to quantify the prevalence and magnitude of DTCA for prescription contraceptives over the last decade.
Methods: Using cross-sectional data from January 2005 through December 2014, we performed descriptive analyses on trends in DTCA expenditure for prescription contraceptives. We quantified the amount of DTCA by contraceptive method category and individual brand.
Results: During the study period, pharmaceutical companies spent a total of $1.57 billion in the United States on DTCA of prescription contraceptives. Annual expenditure for contraceptive DTCA reached a peak of $260 million in 2008, with a progressive decline to a nadir of $69 million by 2013. Of the contraceptive methods, oral contraceptive pills (OCPs) have been the most heavily promoted, with Yaz – the most advertised brand – accounting for $347 million of DTCA expenditure. However, DTCA spending on OCPs peaked in 2007 and was overtaken in 2012 by the DTCA of long-acting reversible contraceptives (LARCs), the method now receiving the largest amount of DTCA promotion.
Conclusions: Direct-to-consumer advertising is a major form of promotion for prescription contraceptives. Recent trends in DTCA expenditure indicate a shift from promotion of the OCPs to the LARCs. Direct-to-consumer advertising's effect on provider and patient utilization of various contraceptive methods has yet to be determined.
Citable link to this pagehttp://nrs.harvard.edu/urn-3:HUL.InstRepos:40620273


text:
Prevent image to repeat itself, tiling or get stuck on scroll.
Are your images behaving strangely? Tiling, getting stuck or repeating on scroll?
Prevent image to repeat itself, tiling & get stuck on scroll.
Are you having problems with normal images repeating themselves, tiling, getting stuck and making strange lines all over your website when scrolling up and down? This might be because you have another background image set to repeat!? Follow these steps to prevent image to repeat itself, tiling or get stuck on scroll.
Steps to prevent image from repeat itself, tiling & getting stuck:
- Start by checking if this image problem is occurrin in every browser: Chrome / Safari, Explorer or Firefox. Good to know.
- Validate you code to make sure there are no obvious errors, for example unclosed elements or wrongly nested elements. Validate your website here: _URL_
- Correct all errors (if any) above.
- If you are floating elements or images, use class.clearfix to clear any floats after the element containing floats has ended. Clearfix CSS class might look something like this:
content: " ";
Simply add class.clearfix to any elements containing floats.
- Try to set the background to no-repeat on the element causing problems or the parent of the element causing problems.
- If none of the above works? Are you using several layers of background images on top of eachother? Some fixed, some repeated and so on. Try to remove the backgrounds one by one to see if this fixes the problem, or leads you in the right direction…
(Firefox browser have been having similar problems with images and icons tiling or repeating when this article is written)


Red Hat Training
A Red Hat training course is available for Red Hat Directory Server
18.16. Advanced Access Control: Using Macro ACIs
In organizations that use repeating directory tree structures, it is possible to optimize the number of ACIs used in the directory by using macros. Reducing the number of ACIs in your directory tree makes it easier to manage your access control policy and improves the efficiency of ACI memory usage.
Macros are placeholders that are used to represent a DN, or a portion of a DN, in an ACI. You can use a macro to represent a DN in the target portion of the ACI or in the bind rule portion, or both. In practice, when Directory Server gets an incoming LDAP operation, the ACI macros are matched against the resource targeted by the LDAP operation. If there is a match, the macro is replaced by the value of the DN of the targeted resource. Directory Server then evaluates the ACI normally.
18.16.1. Macro ACI Example
Figure 18.1, "Example Directory Tree for Macro ACIs" shows a directory tree which uses macro ACIs to effectively reduce the overall number of ACIs. This illustration uses repeating pattern of subdomains with the same tree structure (ou=groups, ou=people). This pattern is also repeated across the tree because the Example Corp. directory tree stores the suffixes dc=hostedCompany2,dc=example,dc=com and dc=hostedCompany3,dc=example,dc=com.
The ACIs that apply in the directory tree also have a repeating pattern. For example, the following ACI is located on the dc=hostedCompany1,dc=example,dc=com node:
aci: (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,dc=hostedCompany1,dc=example,dc=com";)
This ACI grants read and search rights to the DomainAdmins group to any entry in the dc=hostedCompany1,dc=example,dc=com tree.
Example Directory Tree for Macro ACIs
Figure 18.1. Example Directory Tree for Macro ACIs
The following ACI is located on the dc=hostedCompany1,dc=example,dc=com node:
aci: (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,dc=hostedCompany1,dc=example,dc=com";)
The following ACI is located on the dc=subdomain1,dc=hostedCompany1,dc=example,dc=com node:
aci: (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,dc=subdomain1,dc=hostedCompany1,dc=example,dc=com";)
The following ACI is located on the dc=hostedCompany2,dc=example,dc=com node:
aci: (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,dc=hostedCompany2,dc=example,dc=com";)
The following ACI is located on the dc=subdomain1,dc=hostedCompany2,dc=example,dc=com node:
aci: (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,dc=subdomain1,dc=hostedCompany2,dc=example,dc=com";)
In the four ACIs shown above, the only differentiator is the DN specified in the groupdn keyword. By using a macro for the DN, it is possible to replace these ACIs by a single ACI at the root of the tree, on the dc=example,dc=com node. This ACI reads as follows:
aci: (target="ldap:///ou=Groups,($dn),dc=example,dc=com")
 (targetattr="*")(targetfilter=(objectClass=nsManagedDomain))
 (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,[$dn],dc=example,dc=com";)
The target keyword, which was not previously used, is utilized in the new ACI.
In this example, the number of ACIs is reduced from four to one. The real benefit is a factor of how many repeating patterns you have down and across your directory tree.
18.16.2. Macro ACI Syntax
Macro ACIs include the following types of expressions to replace a DN or part of a DN:
 - ($dn)
 - [$dn]
 - ($attr.attrName), where attrName represents an attribute contained in the target entry
In this section, the ACI keywords used to provide bind credentials, such as userdn, roledn, groupdn, and userattr, are collectively called the subject, as opposed to the target, of the ACI. Macro ACIs can be used in the target part or the subject part of an ACI.
Table 18.5, "Macros in ACI Keywords" shows in what parts of the ACI you can use DN macros:
Table 18.5. Macros in ACI Keywords
Macro ACI Keyword
($dn) target, targetfilter, userdn, roledn, groupdn, userattr
[$dn] targetfilter, userdn, roledn, groupdn, userattr
($attr.attrName) userdn, roledn, groupdn, userattr
The following restrictions apply:
 - If you use ($dn) in targetfilter, userdn, roledn, groupdn, userattr, you must define a target that contains ($dn).
 - If you use [$dn] in targetfilter, userdn, roledn, groupdn, userattr, you must define a target that contains ($dn).
Note
When using any macro, you always need a target definition that contains the ($dn) macro.
You can combine the ($dn) macro and the ($attr.attrName) macro.
18.16.2.1. Macro Matching for ($dn)
The ($dn) macro is replaced by the matching part of the resource targeted in an LDAP request. For example, you have an LDAP request targeted at the cn=all,ou=groups,dc=subdomain1,dc=hostedCompany1,dc=example,dc=com entry and an ACI that defines the target as follows:
(target="ldap:///ou=Groups,($dn),dc=example,dc=com")
The ($dn) macro matches with dc=subdomain1,dc=hostedCompany1.
When the subject of the ACI also uses ($dn), the substring that matches the target is used to expand the subject. For example:
aci: (target="ldap:///ou=*,($dn),dc=example,dc=com")
 (targetattr = "*") (version 3.0; acl "Domain access"; allow (read,search)
 groupdn="ldap:///cn=DomainAdmins,ou=Groups,($dn),dc=example,dc=com";)
In this case, if the string matching ($dn) in the target is dc=subdomain1,dc=hostedCompany1, then the same string is used in the subject. The ACI is then expanded as follows:
aci: (target="ldap:///ou=Groups,dc=subdomain1,dc=hostedCompany1,
 dc=example,dc=com") (targetattr = "*") (version 3.0; acl "Domain
 access"


text:
Definition Virtual Circuit
Virtual Circuit is a connection oriented mean of transporting the data packets virtually by giving an impact of a physical link between the sources and destinations over the packed switched computer networks.
In Virtual Circuits, first of all a pathway is defined and a link is established between the source and required destinations before initializing the transportation call. After establishing the connection, call for sending data is being generated and all data packets are routed and dropped on their destination points on the basis of short addresses stored in those packets along with their data. Virtual Circuits also eliminate the need for storing full unique addresses in those packets as it is a connection oriented approach and it pre-locates all the destinations before initializing the call for data transfer. All the packets are delivered in proper order as path is generated on the basis of data packets placed in a queue.