text:
Volume 12 Supplement 1
Breast cancer knowledge among women with learning disabilities and their experiences of breast mammography
© BioMed Central Ltd. 2010
Published: 18 May 2010
As the life expectancy of people with learning disabilities rises, so too do cancer prevalence rates in people with learning disabilities. Despite the efforts of government policies to ensure equal access to improve health screening, the uptake for breast mammography within this population still remains lower than that of the general population. The purpose of this study was to ascertain the knowledge of breast cancer among women with a learning disability and to explore their experiences of breast mammography.
A qualitative approach using four focus groups with women with learning disabilities was employed, and a semi-structured interview schedule aided the process.
Associated risks, preventative factors and signs and symptoms of breast cancer were extremely limited with their sources of knowledge primarily coming from carers or nursing staff. Positive attitudes towards breast mammography were reported; however, these women also described negative feelings of fear and anxiety, attributed to a lack of understanding about the screening process. Emotional support and information were seen to reduce negative feelings. A lack of information and embarrassment were identified as the main barriers to screening. Ongoing support from others such as family members and carers, accessible information and health promotion and education were considered to be main solutions for encouraging attendance for breast mammography.
This study highlights the need for health promotion and education for women with a learning disability, their family carers and staff working with this target group in order to enhance the knowledge and awareness of breast cancer and screening. This not only will aid in reducing the adverse affects of breast mammography but will ensure that informed decisions about breast screening are made. More accessible multiformat information for women with a learning disability is essential in order to facilitate health promotion and education.


text:
Now, you have the opportunity to explore an emerging technology through a new mobile 3D printing cart available to faculty and staff.
The 3D printing cart was created by and is managed by Lynn Klett, instructor in Engineering and Media Technologies, using a Mobile Fellows grant. Mobile Fellows provides grants to faculty and staff members to use mobile and emerging technologies to encourage student success.
"That type of teaching tool is invaluable," Klett says. "For someone who can't imagine what that space looks like, or who's trying to figure it out from looking at a two-dimensional drawing of an axis that's not two-dimensional, this can make all the difference in understanding a concept or not."
The portable cart comes equipped with a 3D printer called a "MakerBot" and with "3Doodlers," or 3D-printing pens. The pens allow users to draw in three-dimensional space by producing a plastic polymer rather than ink.
"I can't wait to see what art students can do with this technology when they can suddenly draw in three-dimensional space, or what Interior Design Technology students do when they can create 3D models rather than 2D renderings," Klett says. "That's what makes this technology so amazing: it's how we use it in all types of educational environments."
For more information about the 3D print cart, or to reserve its use, contact Klett at _EMAIL_.

source: openbmb/Ultra-FineWeb


QUOT, ENOSPC, ENOMEM, EMLINK]
 - UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY]
 - UnsupportedOperation The implementation does not support renaming in this situation. [EXDEV]
 - InappropriateType Either the destination path refers to an existing directory, or one of the parent segments in the destination path is not a directory. [ENOTDIR, EISDIR, EINVAL, EEXIST, ENOTEMPTY]
Since: directory-1.2.7.0
renameFile :: FilePath -> FilePath -> IO () #
renameFile old new changes the name of an existing file system object from old to new. If the new object already exists, it is atomically replaced by the old object. Neither path may refer to an existing directory. A conformant implementation need not support renaming files in all situations (e.g. renaming across different physical devices), but the constraints must be documented.
The operation may fail with:
 - HardwareFault A physical I/O error has occurred. [EIO]
 - InvalidArgument Either operand is not a valid file name. [ENAMETOOLONG, ELOOP]
 - isDoesNotExistError The original file does not exist, or there is no path to the target. [ENOENT, ENOTDIR]
 - isPermissionError The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
 - isFullError Insufficient resources are available to perform the operation. [EDQUOT, ENOSPC, ENOMEM, EMLINK]
 - UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY]
 - UnsupportedOperation The implementation does not support renaming in this situation. [EXDEV]
 - InappropriateType Either path refers to an existing directory. [ENOTDIR, EISDIR, EINVAL, EEXIST, ENOTEMPTY]
renameDirectory :: FilePath -> FilePath -> IO () #
renameDirectory old new changes the name of an existing directory from old to new. If the new directory already exists, it is atomically replaced by the old directory. If the new directory is neither the old directory nor an alias of the old directory, it is removed as if by removeDirectory. A conformant implementation need not support renaming directories in all situations (e.g. renaming to an existing directory, or across different physical devices), but the constraints must be documented.
On Win32 platforms, renameDirectory fails if the new directory already exists.
The operation may fail with:
 - HardwareFault A physical I/O error has occurred. [EIO]
 - InvalidArgument Either operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
 - isDoesNotExistError The original directory does not exist, or there is no path to the target. [ENOENT, ENOTDIR]
 - isPermissionError The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
 - isFullError Insufficient resources are available to perform the operation. [EDQUOT, ENOSPC, ENOMEM, EMLINK]
 - UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY, ENOTEMPTY, EEXIST]
 - UnsupportedOperation The implementation does not support renaming in this situation. [EINVAL, EXDEV]
 - InappropriateType Either path refers to an existing non-directory object. [ENOTDIR, EISDIR]
removeFile :: FilePath -> IO () #
removeFile file removes the directory entry for an existing file file, where file is not itself a directory. The implementation may specify additional constraints which must be satisfied before a file can be removed (e.g. the file may not be in use by other processes).
The operation may fail with:
 - HardwareFault A physical I/O error has occurred. [EIO]
 - InvalidArgument The operand is not a valid file name. [ENAMETOOLONG, ELOOP]
 - isDoesNotExistError The file does not exist. [ENOENT, ENOTDIR]
 - isPermissionError The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
 - UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY]
 - InappropriateType The operand refers to an existing directory. [EPERM, EINVAL]
removePathForcibly :: FilePath -> IO () #
Removes a file or directory at path together with its contents and subdirectories. Symbolic links are removed without affecting their targets. If the path does not exist, nothing happens.
Unlike other removal functions, this function will also attempt to delete files marked as read-only or otherwise made unremovable due to permissions. As a result, if the removal is incomplete, the permissions or attributes on the remaining files may be altered. If there are hard links in the directory, then permissions on all related hard links may be altered.
If an entry within the directory vanishes while removePathForcibly is running, it is silently ignored.
If an exception occurs while removing an entry, removePathForcibly will still try to remove as many entries as it can before failing with an exception. The first exception that it encountered is re-thrown.
Since: directory-1.2.7.0
removeDirectoryRecursive :: FilePath -> IO () #
removeDirectoryRecursive dir removes an existing directory dir together with its contents and subdirectories. Within this directory, symbolic links are removed without affecting their targets.
On Windows, the operation fails if dir is a directory symbolic link.
removeDirectory :: FilePath -> IO () #
removeDirectory dir removes an existing directory dir. The implementation may specify additional constraints which must be satisfied before a directory can be removed (e.g. the directory has to be empty, or may not be in use by other processes). It is not legal for an implementation to partially remove a directory unless the entire directory is removed. A conformant implementation need not support directory removal in all situations (e.g. removal of the root directory).
The operation may fail with:
 - HardwareFault A physical I/O error has occurred. [EIO]
 - InvalidArgument The operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
 - isDoesNotExistError The directory does not exist. [ENOENT, ENOTDIR]
 - isPermissionError The process has insufficient privileges to perform the operation. [EROFS, EACCES, EPERM]
 - UnsatisfiedConstraints Implementation-dependent constraints are not satisfied. [EBUSY, ENOTEMPTY, EEXIST]
 - UnsupportedOperation The implementation does not support removal in this situation. [EINVAL]
 - InappropriateType The operand refers to an existing non-directory object. [ENOTDIR]
createDirectoryIfMissing #
Arguments
:: Bool
Create its parents too?
-> FilePath
The path to the directory you want to make
-> IO ()
createDirectoryIfMissing parents dir creates a new directory dir if it doesn't exist. If the first argument is True the function will also create all parent directories if they are missing.
createDirectory :: FilePath -> IO () #
createDirectory dir creates a new directory dir which is initially empty, or as near to empty as the operating system allows.
The operation may fail with:
 - isPermissionError The process has insufficient privileges to perform the operation. [EROFS, EACCES]
 - isAlreadyExistsError The operand refers to a directory that already exists. [EEXIST]
 - HardwareFault A physical I/O error has occurred. [EIO]
 - InvalidArgument The operand is not a valid directory name. [ENAMETOOLONG, ELOOP]
 - isDoesNotExistError There is no path to the directory. [ENOENT, ENOTDIR]
 - isFullError Insufficient resources (virtual memory, process file descriptors, physical disk space, etc.) are available to perform the operation. [EDQUOT, ENOSPC, ENOMEM, EMLINK]
 - InappropriateType The path refers to an existing non-directory object. [EEXIST]
copyPermissions :: FilePath -> FilePath -> IO () #
Copy the permissions of one file to another. This reproduces the permissions more accurately than using getPermissions followed by setPermissions.
On Windows, this copies only the read-only attribute.
On POSIX systems, this is equivalent to stat followed by chmod.
setPermissions :: FilePath -> Permissions -> IO () #
Set the permissions of a file or directory.
On Windows, this is only capable of changing the writable permission, which corresponds to the "read-only" attribute. Changing the other permissions has no effect.
On PO


text:
The Bell Gothic™ font family was originally commissioned by the AT&T corporation for use in telephone books and other applications. It was created by typographer Chauncey H. Griffith in 1938 and was not available for general use until after 1978, when AT&T adopted the Bell Centennial™ font family instead.
Bell Gothic History
When the AT&T corporation commissioned Chauncey H. Griffith to create the Bell font, they were looking for a number of useful features for inclusion in the finished typeface. Attractiveness was an important factor: so too the ability to print the font at fairly high speed on thin paper without loss of clarity. The font also had to be legible at very small sizes, as it would be used in their telephone books. For the same reason, Bell Gothic also had to be spatially economical, given the constraints of the medium it was to be published on.
At the time of the font's creation, Griffith was heading the typographic development program at the Mergenthaler Linotype Company. Earlier in his career with Linotype, Griffith had been responsible for the production of a typeface known as the Excelsior™ font family, which had taken the newspaper industry by storm because of its impressive readability at tiny point sizes as well as its attractiveness.
When Bell Gothic was replaced by Bell Centennial in 1978, the original font was licensed for widespread use and released by Linotype. It later became very popular with the design community in publishing, logotype and informal use. Currently, the font is available in six variants including italic, bold and black.
Bell Gothic Usage
Aside from its commissioned usage in AT&T telephone books - a function it performed for four decades – Bell Gothic has found success in other arenas. After its release to the general populous in the late seventies, Bell Gothic became the subject of extensive experimentation in type at modern creative locations like the Cranbrook Academy of Art, RISD and the Design Academy Eindhoven. The usage of Bell Gothic in design has continued to be widely debated and slightly controversial, as creative artists utilize the face in increasingly unusual ways, straying from its "intended use." Nevertheless, the versatility of the font continues to inspire in the creation of corporate identities and published materials all over the world.

source: HuggingFaceFW/fineweb-edu


text:
By adopting the most advanced irrigation system to cut water consumption dramatically for irrigating plants, trees, and landscapes, the Ministry of Municipality and Environment (MME), represented by the Department of Public Parks, is achieving the nation's green drive goals.
"The modern irrigation technique helped greatly in reducing consumption of water. We conducted many experiments using advanced water-efficient irrigation techniques for example in the parks water consumption decreased to one fourth compared to the traditional method," said the Director of Public Parks Department Eng. Muhammad Ali Al Khouri. During a recent interview on Qatar TV, he explained that experiments are still ongoing to improve the efficiency of the irrigation system and to add some soil conditioners to further reduce water consumption.
"These experiments are being conducted by experts and agricultural engineers of irrigation programme to support the green drive of the country. The irrigation system consists of a central control unit located in the Public Parks Department. This unit creates irrigation programmes and sends them to all sites without the need to go to the site through a long-range radio communication system," said Al Khouri.
"A text message is sent to the mobile of the responsible engineer to warn that there is a problem in one of the sites and daily reports are issued on water flow and pressure values. We are keen to use the rationalisation programme in the consumption of irrigation water in parks using flow sensors, through which more than 60% of the sites have been rationalised," he said
He said that the system collects data from all places, analyses it, and then takes the appropriate actions. To reduce carbon dioxide emissions from vehicles, industries, and other sources, a large number of trees are being planted around the country.
"We targeted to plant a million trees under 'Plant Million Tree' initiative of MME. The drive focused on planting local trees such as Sidr, Al Ghaf, Al Samur, Al Awsaj, as they are available in the country and grow with seasonal rain and consume less water," said Al Khouri. Sidr, he added, has the largest number of trees being planted across the country as part of the green drive.

source: m-a-p/FineFineWeb


text:
Modeling and Control of the Open Plate Reactor
The focus of this thesis is on modeling and control of the Open Plate Reactor (OPR), a new heat exchange reactor being developed by Alfa Laval AB. It combines intensified mixing with enhanced heat transfer capacity into one operation. With the novel concept, highly exothermic reactions can be produced using more concentrated reactants, thus saving time and energy in the subsequent separation stage. To better utilize the reactor, reactants can be injected in multiple injection points and there are internal sensors for process monitoring and control. A flexible process configuration simplifies the adaptation of the reactor to new reactions in terms of residence time, cooling system, actuator and sensor locations. To take full advantage of the flexible configuration and the improved performance, a new process control system is presented. A nonlinear model of the reactor is derived from first principles. After steady-state and dynamic analyses of the OPR, suitable control variables are chosen to allow flexible and accurate control of the reactor temperature and concentration. A Model Predictive Controller (MPC) is designed to maximize the conversion under hard input and temperature constraints. An extended Kalman filter estimates unmeasured concentrations and parameters, to increase the robustness to process variations. The MPC sends reference signals to local feedback controllers within a cascade control structure. To remove the generated heat from the reaction, a cooling system is designed and experimentally verified. For temperature control, a mid-ranging control technique is implemented to increase the operating range of the hydraulic equipment and to increase the robustness to disturbances. Dynamic simulation and optimization show that the designed control system leads to high conversion and ensures that the temperature inside the reactor does not exceed a pre-defined safety limit.
Source Type:Master's Thesis
Keywords:TECHNOLOGY; process intensification; process control; heat exchange reactor; mid-ranging control; extended Kalman filter; model predictive control
Date of Publication:01/01/2005


text:
Environmental Due Diligence Minimises & Limits Transaction Risks
Since 1985, the number of company transactions has risen twentyfold. At the same time, the effort of negotiations before a transaction have also risen considerably. The process of investigating all facts, conditions, rules, laws, regulations, financial considerations, or any other such matters that would affect one's decision to purchase property is called due diligence assessment.
Although an environmental due diligence assessment (EDDA) is not legally required, anyone who acquires a company or a property from which environmental risks arise can also be made liable for this. Strict compliance guidelines and the more deliberate handling of money and assets do their utmost to ensure that the EDDA is becoming more and more important.
It is important to consider not only the actual situation but also to check whether the transaction corresponds to future laws and regulations.
- Environmental Liability Directive (2004/35/EC)
- ASTM 1527: Standard Practice for Environmental Site Assessment Process: Phase I Environmental Site Assessment Process
- ASTM 1528: Standard Practice for Limited Environmental Due Diligence: Transaction Screen Process
- ASTM 1903: Standard Practice for Environmental Site Assessments: Phase II Environmental Site Assessment Process
- ASTM E2107: Standard Practice for Environmental Regulatory Compliance Audits
- ASTM E2365: Standard Guide for Environmental Compliance Performance Assessment
You can rely on CDM Smith as a competent partner through all EDD phases.


Skip to content
Model and repository framework
Ruby
Find file
README.md
Curator
Build Status Gem Version
See Untangle Domain and Persistence Logic with Curator for the announcement blog post.
Curator is a model and repository framework for Ruby. It's an alternative to ActiveRecord-like libraries where models are tightly coupled to persistence. Curator allows you to write domain object that are persistence free, and then write repositories that persist these objects. These ideas are largely taken from the Repository section of Domain Driven Design.
Currently, curator supports Riak, MongoDB and an in-memory data store for persistence. If you are interested in enhancing curator to support other data stores, please let us know.
Usage
Domain objects should include the Curator::Model module:
class Note
 include Curator::Model
 attr_accessor :id, :title, :description, :user_id
end
These models can be intiatiated with hashes and used just like regular ruby objects:
note = Note.new(:title => "My Note", :description => "My description")
puts note.description
Repositories should include the Curator::Repository module:
class NoteRepository
 include Curator::Repository
 indexed_fields :user_id
end
Repositories have save, find_by_id, and find_by and find_first_by methods for indexed fields. find_by methods return an array of all matching records, while find_first_by only returns the first match (with no ordering):
note = Note.new(:user_id => "my_user")
NoteRepository.save(note)
note1 = NoteRepository.find_by_id(note.id)
note2 = NoteRepository.find_first_by_user_id("my_user")
my_notes = NoteRepository.find_by_user_id("my_user")
Fields included in indexed_fields are indexed in both Riak and MongoDB when persisted.
As persistence gets more complicated, repositories can implement their own serialize and deserialize methods to handle any case. For example, if our note contained a PDF, the repository might look like:
class NoteRepository
 include Curator::Repository
 indexed_fields :user_id
 def self.serialize(note)
 attributes = super(note)
 attributes[:pdf] = Base64.encode64(note.pdf) if note.pdf
 attributes
 end
 def self.deserialize(attributes)
 note = super(attributes)
 note.pdf = Base64.decode64(attributes[:pdf]) if attributes[:pdf]
 note
 end
end
Rails
See curator_rails_example for an example application using curator.
If you use curator within Rails, all you need is to add curator to your Gemfile and create a config/riak.yml with contents like:
development:
 :http_port: 8098
 :host: localhost
test:
 :http_port: 8098
 :host: localhost
We recommend putting your models in app/models and your repositories in app/repositories. If you do this, don't forget to add app/repositories to the list of autoload paths:
# config/application.rb
config.autoload_paths += %W(#{config.root}/app/repositories)
You can also use Rails form builder with curator models:
<%= form_for @note, :url => { :action => "create" } do |f| %>

<%= f.label :title %>

<%= f.text_field :title %>

<%= f.label :description %>

<%= f.text_area :description, :size => "60x12" %>

 <%= f.submit "Create" %>
Without Rails
If you are not using Rails, you can configure curator manually:
Curator.configure(:riak) do |config|
 config.bucket_prefix = "my_app"
 config.environment = "development"
 config.migrations_path = File.expand_path(File.dirname(__FILE__) + "/../db/migrate")
 config.riak_config_file = File.expand_path(File.dirname(__FILE__) + "/config/riak.yml")
end
Alternatively, instead of using a YAML file to configure the client you can set it manually.
Curator.configure(:riak) do |config|
 config.bucket_prefix = "my_app"
 config.environment = "development"
 config.migrations_path = File.expand_path(File.dirname(__FILE__) + "/../db/migrate")
 config.client = Riak::Client.new
end
Testing
If you are writing tests using curator, it's likely that you will want a way to clean up your data in Riak between tests. Riak does not provide an easy way to clear out all data, so curator takes care of it for you. You can use the following methods if you change your backend from :riak to :resettable_riak:
 - remove_all_keys - remove everything in Riak under the current bucket_prefix and environment
 - reset! - remove all keys since the last reset!
For example, our spec_helper.rb file looks like this for our rspec test suite:
Curator.configure(:resettable_riak) do |config|
 config.bucket_prefix = "curator"
 config.environment = "test"
 config.migrations_path = File.expand_path(File.dirname(__FILE__) + "/../db/migrate")
 config.riak_config_file = File.expand_path(File.dirname(__FILE__) + "/../config/riak.yml")
end
RSpec.configure do |config|
 config.before(:suite) do
 Curator.data_store.remove_all_keys
 end
 config.after(:each) do
 Curator.data_store.reset!
 end
end
This ensures that our tests start with an empty Riak, and the data gets removed in between tests.
Data Migrations
See Data migrations for NoSQL with Curator for an overview of data migrations. They have also been implemented in the curator_rails_example.
Each model instance has an associated version that is persisted along with the object. By default, all instances start at version 0. You can change the default by specifying the current_version in the model class:
class Note
 current_version 1
end
note = Note.new
note.version #=> 1
When the repository reads from the data store, it compares the stored version number to all available migrations for that collection. If any migrations are found with a higher version number, the attributes for the instance are run through each migration in turn and then used to instantiate the object. This means that migrations are lazy, and objects will get migrated as they are used, rather than requiring downtime while all migrations run.
In order to write a migration, create a folder with the collection name under the migrations_path that was configured in the Curator.configure block.
mkdir db/migrate/notes/
Then, create a file with a filename that matches #{version}_#{class_name}.rb:
# db/migrate/notes/0001_update_description.rb
class UpdateDescription < Curator::Migration
 def migrate(attributes)
 attributes.merge(:description => attributes[:description].to_s + " -- Passed through migration 1")
 end
end
Now, all Note objects that are read with a version lower than 1 will have their description ammended. Migrations are free to do what they want with the attributes. They can add, edit or delete attributes in any combination desired. All that matters is that the resulting attributes hash will be used to instantiate the model.
Since migrations merely accept and return a hash, they are easy to unit test. They do not affect the data store directly (like ActiveRecord migrations), so there is no harm in calling them in tests:
require 'spec_helper'
require 'db/migrate/notes/0001_update_description'
describe UpdateDescription do
 describe "migrate" do
 it "appends to the description" do
 attributes = {:description => "blah"}
 UpdateDescription.new(1).migrate(attributes)[:description].should == "blah -- Passed through migration 1
 end
 end
end
Repository configuration
Repositories allow their default collection properties to be configured through a syntax similar to Sinatra's configuration interface. Configurable properties are data store


Certificate of Analysis (COA)
A Certificate of Analysis (COA) is a document that provides detailed information about the quality and composition of a cannabis product. It typically includes data on potency, terpene profile, residual solvents, pesticides, heavy metals, and microbial contaminants. COAs are crucial in ensuring transparency and safety in the cannabis industry, allowing consumers to make informed decisions about the products they use. These certificates are often issued by third-party testing laboratories that conduct comprehensive analysis and adhere to regulatory standards. By reviewing the COA, consumers can verify the safety and potency of the cannabis product they are considering purchasing.
Subscribe our Newsletter
Scroll to Top


text:
Sonny Bono was a multitalented entertainer and politician who became famous as a singer, songwriter, and actor. Born Salvatore Phillip in 1935, he died in 1998 at the age of 62 following a ski accident. Before his passing, he had already stamped his name in almost all aspects of his life thanks to his talent and hard work.
The late American is still remembered more than years after his death as a result of his many achievements including being the only member of the U.S Congress to have ever hit the number-one spot on the US Billboard Hot 100 chart for pop. More than his career, he is also remembered for marrying 4 women during his lifetime, including Cher.
The Early Life of Sonny Bono
Although he was better known as Sonny Bono, it was as Salvatore Phillip that the celebrated American singer was born. He was born on February 16, 1935, in Detroit Michigan to his parents, Zena Jean DiMercurio and Sanato Bono.
Of American nationality and Italian ethnicity, his parents were originally from Italy. His father was born in Montelepre, Palermo, Italy. He was raised as the youngest of three kids alongside his two older sisters, Fran and Betty. The early life of Bono was stable until after he was 7 when the marriage between his parents came to an end.
For his education, he went to Inglewood High School where he studied for a while before later opting to drop out so he could concentrate on what he felt was his real-life calling, music. Before finally making it as a musician, he took several jobs including with a butcher house where he worked as a butcher assistant. He was also a truck driver, construction laborer, and waiter at different points.
He Was A Multitalented Singer And Actor
Sonny was still just a child when he fell in love with music and decided he wanted to become a singer. He started writing songs as a young teenager and before taking the mic himself, he started out as a songwriter.
Although he recorded some successes as a solo artist, his real fame was thanks to the group, Sonny & Cher which he formed with his wife, Cher.
They began as backup singers before later forming their band which gained attention with the 1965 song, Baby Don't Go. The band lasted until 1977 during which they released several albums including Look at Us (1965), The Wondrous World of Sonny & Chér (1966), In Case You're in Love (1967), and All I Ever Need Is You (1972).
Before the band ended, the pair sold more than 40 million records all over the world and had several awards and nominations including two Grammy Awards.
Sonny Bono is also an actor He has had TV and film roles in works including The Man From U.N.C.L.E., Murder on Flight 502, Airplane II: The Sequel, and P.S. I Luv U.
The Best Songs of Sonny Bono
The musical career of Sonny Bono lasted from 1963 until his death in 1998. During is active years, he released many songs that were acclaimed but his best include the following:
- I Got You Babe (1965)
- The Beat Goes On (1967)
- All I Ever Need Is You (1979)
- A Cowboy's Work is Never Done (1972)
- Baby Dont Go (1965)
- What Now My Love (1966)
- But You're Mine (1965)
- Just You (1965)
- When You Say Love (1972)
- It's The Little Things (1967)
He Was Also A Politician
Sonny Bono was not only an entertainer, he was also a politician who was in the Republican party. He started politics in the late 1980s when he first bid and succeeded in becoming the 16th Mayor of Palm Springs from 1988 to 1992.
He vied for the United States Senate in 1992 but did not secure his party's nomination. Three years later, he was elected into Congress in 1994 and served as a Member of the U.S. House of Representatives from California's 44th district from January 1995 to January 1998 when he tragically passed away.
Meet The Wives of Sonny Bono
5 feet 5 inches tall, Sonny Bono was married four times during his lifetime. His first marriage was to Donna Rankin and it lasted for only a few years from from 1954 to 1962 when they divorced. Their union was blessed with a daughter, Christine Bono who was born on 24 June 1958.
After his first marriage came to an end, the next woman that became Sonny Bono's wife was Cher. Born Cherilyn Sarkisian, Cher got married to Bono in 1964 and they had a relationship that went from personal to professional thanks to their joint musical and TV careers. The union was blessed with a son, Chaz Bono who was born on March 4, 1969. Sadly, the marriage ended in divorce in 1975.
Sonny did not get married again until 1981 when he walked down the aisle with TV personality, author, and businesswoman, Susie Coelho. The pair got married in 1981 but after only 3 years, they walked their separate ways in divorce.
Sonny tried marriage for yet another time two years after his divorce when he married Mary Whitaker in 1986. This marriage remained his longest and Mary Bono remained his wife until 1998 when he died. Their marriage was blessed with two children Chesare Bono and Chianna Bono.
How Sonny Bono Died
Sonny Bono lost his life on January 5, 1998, after he had an accident while skiing in California. The avid skier was said to have gone missing while skiing before his body was later found by a search and rescue team.
According to reports, he was going between 20 and 30 miles per hour when he hit a tree, leading to his passing. He was laid to rest at Desert Memorial Park in Cathedral City, California


text:
Using segway-like balancing technology, these incredible robots can climb a pole while balancing, hop like a pogo stick, and even climb up stairs. These outstanding creations and more are the product of University of Southern Cal's robotics lab.
The first robot is called the iLean. It's basically two wheels attached to a pole which it plants on the ground and balances upon. It then turns its wheels inward and climbs up the pole while maintaining perfect balance.
Next is the iHop which is essentially a self balancing pogo stick. It also has wheels to help it balance and move freely. The pogo-stick like abilities are demonstrated later in the video.


text:
Rolled zinc is a durable material
Rolled zinc products in building applications have a very long life due to the self-protecting property of zinc. In Europe, there are numerous examples of zinc roofs renovated after about 100 years of continuous service.
The reasons for such a long service time are now well understood :
|Stage 1||Stage 2|
The metallic zinc surface reacts with atmospheric oxygen (O2) in the presence of water (H2O) to form zinc hydroxide (Zn(OH)2).
The zinc hydroxide reacts with atmospheric carbon dioxide (CO2) to form zinc hydroxicarbonate (2ZnCO3.3Zn(OH)2) which is the main component of the patina.
The patina forms a layer which is compact, adhesive, insoluble in rainwater, and which will hinder any further exchanges between oxygen and zinc, thereby controlling the corrosion rate of rolled zinc and maintaining it at a low level.
Nevertheless, the durability of zinc can be reduced by some acid pollutants, which increase the corrosion rate. The main pollutant is sulphur dioxide (SO2). Sulphur dioxide reacts with the patina to form zinc sulphate (ZnSO3 + ZnSO4), which is soluble in water and is washed away by rain.
Sulphur dioxide is produced by some industrial plants, oil-fired central heating installations and road traffic. As a result, the corrosion rate is greater in an urban or industrialised area than in a rural environment.
Fortunately, since the 1970's, SO2 pollution of the atmosphere has been considered as a major environmental problem. Therefore, European and other legislators have strengthened legislation against this type of pollution. This has resulted in a general reduction of the concentration of SO2 in the atmosphere and an even more drastic reduction in particularly polluted sites such as cities or industrial areas.
As a result, the corrosion rate of rolled zinc was greatly reduced during the second half of the 20th century.
Today, the corrosion rate of rolled zinc is generally 1(¹) µm/year. With a typical initial thickness of 0.7 mm and a main corrosion rate of 1(¹) µm/an, we see that the life expectancy for rolled zinc is higher than a hundred years. The life expectancy of rolled zinc has increased over the last decades and will continue to increase over the years to come.
(¹)"Environmental effects of zinc run-off from roofing materials of different ages as a result of atmospheric corrosion" - I.Odnevall Wallinder, P.Verbiest, C.R.Janssen and C.Leygraf - 14th International Corrosion Congress, 16 sept - 1 Oct 1999, Cape town, South Africa.


text:
The new AP Chemistry curriculum is in the second year of use. Photoelectron spectroscopy (PES) is a topic that generated much discussion because it is an addition to the curriculum. Jamie Benigna of Michigan teaches AP Chemistry, is an AP reader and recently wrote an article about PES for the Journal of Chemistry Education Special Issue. The article discusses the rationale for including PES in the course, explains some background of PES and provides strategies for including PES in your own course. This article is offered as a free preview of the AP Special Issue.
Check out the article: Photoelectron Spectroscopy in Advanced Placement Chemistry
The JCE web subscription; including online access to over 90 years of history, commentary, and 100 classroom activities; starts at just $60 - a great value and resource for teachers of all grade levels.


Calling 911
What to Expect When You Call 911
The Jefferson County E-911 Communications Center stands ready to assist the citizens of Jefferson County. The following information is designed to help you understand the processes involved in making reports, giving descriptions and what to expect when you call 911.
When you call a friend or family member, you usually know what you are going to say. But when you need a response from the public safety personnel, it's hard to know what to say. Our Telecommunicators will ask you a lot of questions that you may think are unnecessary.
Those questions are asked for a good reason. Telecommunicators are not with you, physically, and can't see what is happening. We need to ask those questions so that we can get all the information for the public safety personnel. It will help tremendously if you answer the questions as they are asked, avoiding any temptation to anticipate questions or interrupt the Telecommunicator. Telecommunicators and public safety personnel depend on you to be their eyes and ears.
Describing a Person
Example of a Good Description:
Telecommunicators will ask many questions, but some of the most important relate to descriptions. We can't see or hear what you, the caller, can. We need you to paint a picture with words; a picture that we can relay to the public safety personnel.
When describing a person, always remember to start with race, sex and approximate age of the person. For example, "White Male, about 30." Then describe the person's height and weight. For example, "Approximately six foot, 200 pounds." Then describe the person's clothing from the head and go to the feet.
Description Items
Head-to-Toe Survey
This is sometimes referred to as the "Head-to-Toe" survey. Start with the hair color, or if the person is wearing a hat describe the hat. Next describe the person's eye color. Then describe the person's complexion. For example, "Fair" or "Dark" etc. Then lastly, describe the person's distinguishing marks, such as scars, marks or tattoos.
Describing a Vehicle
There are certain questions that a Telecommunicator will ask regarding vehicle descriptions. These descriptions are then passed on to the public safety personnel so that they can identify the vehicle should it leave the scene of a crime.
We use the acronym CYMBOLS when describing a vehicle.
 - Color (blue, or if two-tone, white top color over red the bottom color)
 - Year (1996)
 - Make (Dodge)
 - Body style (2 door, 4 door, pick up truck, extended cab)
 - Other attributes (this would include damage or other marks that make the vehicle unique)
 - License plate (CCC-9111)
 - State (Georgia)
Reporting a Fire
When you should call for assistance:
 1. When you smell natural gas
 2. You see a trash can or dumpster on fire
 3. You see a house on fire
 4. There is a person trapped in an elevator
 5. You see grass or woods on fire
 6. You see a vehicle accident
Fire Fighters
Telecommunicator may ask these questions when you call:
 1. Where is the fire?
 2. What is on fire?
 3. Is there anyone trapped or injured?
 4. How close is the fire to another building or structure?
 5. How fast is the fire burning?
 6. What size is the fire?
 7. Did you see anyone start the fire on purpose?
 8. What did they look like?
 9. Are they still there?
 10. Which direction did they leave?
Fire Department/EMS Cooperation
Some fire departments also respond to calls with EMS. An example of this would be someone having a heart attack. Those fire departments that are dispatched to medical calls have specific training and equipment to help citizens in an emergency medical situation. Sometimes the fire department response time may be several minutes faster than the EMS because they are usually closer. This can make a difference in life or death!
Gold Cross Ambulance
Telecommunicator Questions & Instructions
Please remember to listen for the Telecommunicator's questions and answer them as accurately as possible. Also, remember to listen for and act on any instructions the Telecommunicators may give you, such as "Evacuate the building!"
Telecommunicators routinely handle hundreds of calls for service each day. Their dedication, professionalism, and experience provide them with the background to render aid and comfort callers from our community. Each and every call for service is important.
Call Process & System
The Jefferson County E-911 Communications Center uses the Emergency Medical Dispatch (EMD) system that was developed by Dr. Jeff Clawson in the 1980s. You may have seen this system being used on the TV show "Rescue 911."
After the initial 911 call-taking process discussed earlier, the Telecommunicator will ask other questions to obtain more information.
911 Telecommunication System
By using the EMD system to prioritize medical calls, the Telecommunicators have to ask a series of questions according to information that you tell us (what's wrong with the person).
This system also provides the Telecommunicators with the instructions that will be given to you so that you can provide emergency medical assistance to the victim of a medical emergency until the public safety personnel can arrive. For example, the Telecommunicators can give you instructions in CPR, childbirth, choking, etc.


text:
Silver Spring, Maryland (PRWEB) April 24, 2013
RFID Revolution, provider of online education for organizations exploring or adopting radio frequency identification technology (RFID), announced that Lockheed Martin Corporation, #58 in the Fortune 500 and a leading global provider of aeronautics, information, and space systems and services, has selected its RFID Essentials interactive Web-based course to educate Lockheed employees on RFID fundamentals.
RFID is an automatic identification and data capture (AIDC) technology with the potential to drive substantial improvements in operations like manufacturing, supply chain, and asset tracking. RFID Essentials is an interactive RFID e-learning tool designed to help professionals understand the technology, how to apply it, and how to measure the return on investment. Users learn to identify the most promising applications in their enterprise and jumpstart projects. They complete the course in about eight hours, at their own pace, from any Internet connection.
Lockheed Martin has begun using RFID in everything from insuring the authenticity of parts and subassemblies in its supply chain; to tracking components for timely repair of customer equipment; to increasing the accuracy and safety of its missile defense systems. "By improving visibility of objects and reducing human error through automation, RFID technology can positively impact a vast array of operations and products," said Denton Clark, Corporate AIT Manager for Lockheed. "With the data capture aspect of the technology maturing, companies like Lockheed can concentrate on processing the large volumes of data received from RFID systems, to make better business decisions."
"But incorporating a new technology into operations can be disruptive," said Clark. "Lockheed turned to RFID Essentials to get hundreds of employees up to speed, so they feel comfortable. The more people understand, the more they can envision how to use RFID in our company and even across the industry. We need to take full advantage of our human capital in order to achieve our goal of mainstreaming RFID."
"What makes RFID Essentials really effective is that the user is actively involved," said Leslie Downey, Principal and Founder of RFID Revolution. Instead of passively listening, watching, or reading, users apply what they're learning in challenging, real-world scenarios. "They're not spoon fed--they form their own conclusions, so they remember."
Both RFID Revolution and its partner the RFID Journal, the premiere RFID publishing company, offer RFID Essentials. Individuals can purchase 60-day subscriptions. Organizations wanting to educate groups of people can purchase one-year licenses featuring group rates.
For more information about RFID Essentials, contact RFID Revolution, at _PHONE_, or visit our website at _URL_. Or visit RFID Journal at _URL_; and look for RFID Essentials Training under "Tools & Resources" on the left side of the home page.
About RFID Revolution
Based in the Washington, D.C. area, RFID Revolution, LLC provides radio frequency identification (RFID) education and consulting services. Its RFID Essentials interactive online training provides professionals in end-user organizations with RFID working knowledge quickly and conveniently, so they can advance their organizations' RFID initiatives. Developed in collaboration with three top industry experts, RFID Essentials contains "hands-on" case studies that challenge the user to identify the key variables affecting an application's payback. It also contains 25 real-life use cases from a variety of industries with actual ROI figures. Eight Fortune 500 companies have chosen RFID Essentials to educate employees and accelerate deployment. A woman-owned small business (WOSB), RFID Revolution co-founded and administered the first RFID industry awards event in North America, the RFID Excellence in Business Awards, at RFID World 2007 and 2008.


text:
Minute and second of arc
A minute of arc, arc minute, or minute arc is a unit of angular measurement equal to 1/60 of one degree. Since one degree is 1/360 of a turn, one minute of arc is 1/21600 of a turn, a second of arc, arcsecond, or arc second is 1/60 of an arcminute, 1/3600 of a degree, 1/_PHONE_ of a turn, and π/648000 of a radian. To express even smaller angles, standard SI prefixes can be employed, the number of square arcminutes in a complete sphere is 4 π2 =466560000 π ≈148510660 square arcminutes. The standard symbol for marking the arcminute is the prime, though a single quote is used where only ASCII characters are permitted. One arcminute is thus written 1′ and it is abbreviated as arcmin or amin or, less commonly, the prime with a circumflex over it. The standard symbol for the arcsecond is the prime, though a double quote is commonly used where only ASCII characters are permitted. One arcsecond is thus written 1″ and it is abbreviated as arcsec or asec. In celestial navigation, seconds of arc are used in calculations.
This notation has been carried over into marine GPS receivers, which normally display latitude and longitude in the format by default. An arcsecond is approximately the angle subtended by a U. S. dime coin at a distance of 4 kilometres, a milliarcsecond is about the size of a dime atop the Eiffel Tower as seen from New York City. A microarcsecond is about the size of a period at the end of a sentence in the Apollo mission manuals left on the Moon as seen from Earth, since antiquity the arcminute and arcsecond have been used in astronomy. The principal exception is Right ascension in equatorial coordinates, which is measured in units of hours, minutes. These small angles may be written in milliarcseconds, or thousandths of an arcsecond, the unit of distance, the parsec, named from the parallax of one arcsecond, was developed for such parallax measurements. It is the distance at which the radius of the Earths orbit would subtend an angle of one arcsecond. The ESA astrometric space probe Gaia is hoped to measure star positions to 20 microarcseconds when it begins producing catalog positions sometime after 2016, there are about 1.3 trillion µas in a turn.
Currently the best catalog positions of stars actually measured are in terms of milliarcseconds, apart from the Sun, the star with the largest angular diameter from Earth is R Doradus, a red supergiant with a diameter of 0.05 arcsecond. The dwarf planet Pluto has proven difficult to resolve because its angular diameter is about 0.1 arcsecond, space telescopes are not affected by the Earths atmosphere but are diffraction limited. For example, the Hubble space telescope can reach a size of stars down to about 0. 1″
The components of proper motion in the equatorial coordinate system are measured in seconds of time for right ascension and seconds of arc in declination. Their combined value is computed as the proper motion, which is expressed in seconds of arc per year or per century. Knowledge of the motion and radial velocity allow approximate calculations of a stars true motion in space in respect to the Sun. Proper motion is not entirely proper, because it includes a component due to the motion of the Solar System itself, over the course of centuries, stars appear to maintain nearly fixed positions with respect to each other, so that they form the same constellations over historical time. Ursa Major or Crux, for example, looks nearly the same now as they did hundreds of years ago, precise long-term observations show that the constellations change shape, albeit very slowly, and that each star has an independent motion. This motion is caused by the movement of the relative to the Sun. The proper motion is a vector and is thus defined by two quantities, its position angle and its magnitude.
The first quantity indicates the direction of the motion on the celestial sphere. Proper motion may alternatively be defined by the changes per year in the stars right ascension and declination. The components of motion by convention are arrived at as follows. Suppose in a year an object moves from coordinates to coordinates, the changes of angle in seconds of arc per year are, The magnitude of the proper motion μ is given by vector addition of its components, where δ is the declination. The factor in cos δ accounts for the fact that the radius from the axis of the sphere to its surface varies as cos δ, for example, zero at the pole. Thus, the component of velocity parallel to the corresponding to a given angular change in α is smaller the further north the objects location. The change μα, which must be multiplied by cos δ to become a component of the motion, is sometimes called the proper motion in right ascension. Hence, the proper motions in right ascension and declination are made equivalent for straightforward calculations of various other stellar motions.
Position angle θ is related to these components by, Motions in equatorial coordinates can be converted to motions in galactic coordinates, for the majority of stars seen in the sky, the observed proper motions are usually small and unremarkable. Such stars are either faint or are significantly distant, have changes of below 10 milliarcseconds per year. A few do have significant motions, and are usually called high-proper motion stars, Motions can be in almost seemingly random directions
A constellation is formally defined as a region of the celestial sphere, with boundaries laid down by the International Astronomical Union. The constellation areas mostly had their origins in Western-traditional patterns of stars from which the constellations take their names, in 1922, the International Astronomical Union officially recognized the 88 modern constellations, which cover the entire sky. They began as the 48 classical Greek constellations laid down by Ptolemy in the Almagest, Constellations in the far southern sky are late 16th- and mid 18th-century constructions. 12 of the 88 constellations compose the zodiac signs, though the positions of the constellations only loosely match the dates assigned to them in astrology. The term constellation can refer to the stars within the boundaries of that constellation. Notable groupings of stars that do not form a constellation are called asterisms, when astronomers say something is "in" a given constellation they mean it is within those official boundaries.
Any given point in a coordinate system can unambiguously be assigned to a single constellation. Many astronomical naming systems give the constellation in which an object is found along with a designation in order to convey a rough idea in which part of the sky it is located. For example, the Flamsteed designation for bright stars consists of a number, the word constellation seems to come from the Late Latin term cōnstellātiō, which can be translated as set of stars, and came into use in English during the 14th century. It denotes 88 named groups of stars in the shape of stellar-patterns, the Ancient Greek word for constellation was ἄστρον. Colloquial usage does not draw a distinction between constellation in the sense of an asterism and constellation in the sense of an area surrounding an asterism. The modern system of constellations used in astronomy employs the latter concept, the term circumpolar constellation is used for any constellation that, from a particular latitude on Earth, never sets below the horizon.
From the North Pole or South Pole, all constellations south or north of the equator are circumpolar constellations. In the equatorial or temperate latitudes, the term equatorial constellation has sometimes been used for constellations that lie to the opposite the circumpolar constellations. They generally include all constellations that intersect the celestial equator or part of the zodiac, usually the only thing the stars in a constellation have in common is that they appear near each other in the sky when viewed from the Earth. In galactic space, the stars of a constellation usually lie at a variety of distances, since stars travel on their own orbits through the Milky Way, the star patterns of the constellations change slowly over time. After tens to hundreds of thousands of years, their familiar outlines will become unrecognisable, the terms chosen for the constellation themselves, together with the appearance of a constellation, may reveal where and when its constellation makers lived.
The earliest direct evidence for the constellations comes from inscribed stones and it seems that the bulk of the Mesopotamian constellations were created within a relatively short interval from around 1300 to 1000 BC
The apparent magnitude of a celestial object is a number that is a measure of its brightness as seen by an observer on Earth. The brighter an object appears, the lower its magnitude value, the Sun, at apparent magnitude of −27, is the brightest object in the sky. It is adjusted to the value it would have in the absence of the atmosphere, the magnitude scale is logarithmic, a difference of one in magnitude corresponds to a change in brightness by a factor of 5√100, or about 2.512. The measurement of apparent magnitudes or brightnesses of celestial objects is known as photometry, apparent magnitudes are used to quantify the brightness of sources at ultraviolet and infrared wavelengths. An apparent magnitude is measured in a specific passband corresponding to some photometric system such as the UBV system. In standard astronomical notation, an apparent magnitude in the V filter band would be denoted either as mV or often simply as V, the scale used to indicate magnitude


text:
Published on November 17, 2011
Contact: Joe Schramm
Phone: _PHONE_, ext. 7445
National Marrow Donor Program Accepts CAP Accreditation
Northfield, IL.—The National Marrow Donor Program (NMDP) now recognizes the College of American Pathologists (CAP) Laboratory Accreditation Program for laboratories that need to meet the human leukocyte antigen (HLA) typing accreditation requirement included in the NMDP's Donor Center Participation Criteria.
HLA, protein markers that are found on most of the body's cells, are important in matching patients and donors for a bone marrow, peripheral blood cell, or cord blood transplant. When a transplant center looks at matching, it compares how alike the HLA tissue types of the patient and the donor are to each other.
"CAP Accreditation is first and foremost in the interest of patient care," said Frank R. Rudy, MD, FCAP, Chair, CAP Commission on Laboratory Accreditation. "To deliver the best patient care, we collaborate with many organizations to provide the highest quality standards in laboratory testing and strive to offer our gold standard program to organizations, like NMDP, that establish specialized laboratory-testing criteria."
As part of the CAP accreditation process, inspectors examine the laboratory's records and quality control procedures for the preceding two years. CAP inspectors examine the entire staff's qualifications, equipment, facilities, safety program and record, and overall laboratory management. The inspection program is designed to ensure the highest standard of care for the laboratory's patients.
In addition to CAP Accreditation, the NMDP accepts accreditation for HLA typing from the American Society for Histocompatibility and Immunogenetics (ASHI) and the European Federation for Immunogenetics (EFI). In 2006, the United Network for Organ Sharing (UNOS) recognized the CAP Accreditation Program as an approved accrediting body for laboratories in its Organ Procurement and Transplantation Network. UNOS recognizes ASHI, too.
The Centers for Medicare and Medicaid Services (CMS), which granted the CAP deeming authority, recognizes CAP Laboratory Accreditation Program as being equal to or more stringent than the government's own inspection program. The Joint Commission also recognizes the CAP program that can be used to meet many state certification requirements. The CAP also provides laboratory accreditation to forensic drug testing and reproductive laboratories, co-sponsored with the American Society for Reproductive Medicine (ASRM).
"The spirit of these co-sponsorships and collaborations is to apply scientific knowledge and advice from our health care colleagues to enhance the accreditation process," said Stanley J. Robboy, MD, FCAP, CAP President. "The CAP will continue to reach out to other organizations as it enhances current accreditation programs and develops new ones."
The College of American Pathologists (CAP), celebrating 50 years as the gold standard in laboratory accreditation, is a medical society serving more than 17,000 physician members and the global laboratory community. It is the world's largest association composed exclusively of board-certified pathologists and is the worldwide leader in laboratory quality assurance. The College advocates accountable, high-quality, and cost-effective patient care.


text: INCLINE VILLAGE, Nev. - For the past 17 years, North Lake Tahoe Fire Protection District and Tahoe Nordic Search & Rescue have collaborated together to teach the fourth-graders at Incline Elementary School about Winter Wilderness Survival, better known as the "Hug-A-Tree" program.The program focuses on teaching children what to do should they ever find themselves lost in the wilderness. This year the program will be held at the Incline Elementary School on Wednesday, Feb. 6The program starts with an indoor assembly reviewing the purpose and outline of the curriculum, followed by outdoor teaching stations covering how to dress properly, food and fuel and the "3 Ws" (Where am I going, Who am I going with, When will I be back?). The outdoor stations are interactive, encouraging the students to learn hands on about each survival topic. The first station is the "S.T.O.P" station, standing for Stop, Think, Observe and Plan. Stop to take a minute and pause, don't panic. Next, Think. Use your head to gather information, for example, does anyone know where you are, what do you have with you? What time is it? Next, Observe - use your eyes and ears. Pay attention to the weather (wind, snow, sun, and clouds) and particular landmarks such as hills, streams, roads and rocks. Are you with anyone? How are they feeling - tired or cold, weak or strong? Can you hear dogs, cars, people - signs of civilization? The second station focuses on shelters. The goal of this station is to stay warm and dry. The kids learn how to build a shelter with any available materials such as branches, surrounding trees, rocks, and/or ski equipment they may have with them.The third station teaches the children about using signals and how to make one. Once a shelter has been built, it is important make an effective signal to get attention. What can be used and what can they do to let people know where they are? Making themselves big and obvious, using a whistle and making an "x" in the snow with skis or rocks and branches are some ideas to create an obvious appearance that calls for attention."Hug-a-Tree" started in San Diego after a search for a nine-year old boy ended in a tragic death. In March of 1981, just one month following the incident, a group of people that were involved in the search, put together an assembly program for children focusing on winter wilderness survival tips, targeted to children ages 5-12.The Tahoe Nordic Search & Rescue Team has been teaching Winter Wilderness Survival since 1976 and collaborating with North Lake Tahoe Fire Protection District since 1996. For more information on this life-saving program, log onto _URL_.


text:
Some quick facts about Tirupati Laddu
- Around 150,000 laddus are made daily.
- One laddu is given free to each devotee; the number of daily devotees that visit the temple is around 50,000.
- A devotee can buy extra two laddus – a small laddu costs 25 rupees and big laddu costs 100 rupees.
- The revenue from the sale of laddu annually is more than 11 million rupees.
- Each laddu weighs around 100gms and is huge when compared with the normal laddu found in shops.
- There is a super huge Tirupati Laddu known as Kalyana Laddu and it weighs around 500gms – ½ a kilogram.
- Single largest laddu made is said to have weighed 32 kg.
- The tradition of Tirupati Laddu is nearly 300 years old.
- It is prepared by special hereditary priests known as archakas in special temple kitchen known as 'potu'.
- Ingredients used in Tirupati Laddu are Besan flour (kadalai mavu), Sugar, Cashew nuts, Cardamom, Ghee, Oil, Sugar candy, Raisins and Almonds.
On a day around 5000 kg of Besan flour is used.
Sugar around 10000 kg.
Cashew nuts around 600 kg.
Cardamom 150 kg
Ghee 300 liters
Sugar candy 400 kg
Raisins 540 kg
- The ingredients are bought at the auction at the Commodities and Spices Exchange in
Tirumala Tirupati Devasthanams (TTDs) the administrating body of the temple is planning to patent the Tirupati Laddu to stop counterfeits.


I want to edit Ruby files using Python scripts and I need to
 1. Check if a function call exists within a class, add if not present, check function call args if present and change accordingly
 2. Check if a function def exists and if not insert a function definition inside a class
 3. Points 1 and 2 for blocks (and also for classes and modules)
 4. When rebuilding the edited file comments should be intact
Suggest me a Ruby/Rails parser written in Python. Also, tell me if it is a lot easier in Ruby itself rather than finding a library in Python, and if that would give me a lot more flexibility and even more abilities to control the Ruby files.
Are you trying to edit the ruby files while the ruby application is running?
Or are you using the python scripts to generate a project, like cookiecutter?
Ruby does support reflection and metaprogramming so you can:
 1. check if a method exists using respond_to?
 2. define a method using define_method.
If it were me, I'd do everything in ruby, but it depends on your usecase.
 - I am trying to generate a project just like cookiecutter. And you are right, I later realized I will have to end up having a full fledge ruby parser in one way or the other written wholly in Python, and it makes more sense to use Ruby's own reflection and meta api to change things in ruby files for checking if the function exists or not, or to add new ones. But it would still fall short when it comes to adding an assignment statement and function calls in an existing function or blocks. (Or would it? do we have methods for that as well?) – Saravanabalagi Ramachandran Nov 14 '18 at 12:52
Your Answer


Aug 25 2009
What Are Unbalanced Data Providers And Why Should I Care?
Categories: Full Client, Report Techniques, Web Intelligence Dave Rathbun @ 9:31 am
One of the more powerful features of Web Intelligence (Desktop Intelligence as well) is the ability to combine data from more than one source into one document. This is done by creating multiple data providers, linking them up, and using the combined results in a report block. However, everything has to work out just right. Sometimes it doesn't. :)
Merging Data Providers in Web Intelligence
Dimensions are the "keys" of a data provider. When two database tables are linked in a universe, certain columns are used to join them together. Dimensions serve this role in linking two data providers. When two (or more) data providers are built in Web Intelligence from the same universe they are automatically linked together using any common dimension objects. What happens when two different data sources are used? In that case, the report writer has to merge the information manually. And if the dimensions from each data provider are not identical, the report has what I call "unbalanced" data providers. That's what I want to describe in this blog post.
For my sample I will join two data providers from the Island Resorts Marketing universe. I am going to structure my queries in such a way that they will result in an unbalanced scenario. For my first query I will return Resort + Year + Revenue. For the second query I will return Region + Year + Number of Guests. Resort, Year, and Region are all dimension objects, of course, and Revenue and Number of Guests are my measures. Here are the raw results from each individual data provider. (I am using Web Intelligence XI 3.0 for this demonstration.)
Raw Data
I have one common dimension. I also have two dimensions that are unique, one from each data provider. Since both data providers come from the same universe, the common or shared dimension value (Year) has already been linked, as shown here.
Merged Years
Because the Year object was already merged, I can create a report block that contains Year, Revenue, and Number of Guests. I can also do local variable calculations like Revenue per Guest using simple division.
Merged Block
This is what happens when everything works. :) What if something doesn't work?
Mixing Dimensions Generates Unexpected Results
This block shows what happens when I add Resort to the block shown previously.
Unbalanced Block
Notice anything interesting about the data? About the Number of Guests column specifically?
When the year repeats, the Number of Guests repeats. The Revenue measure seems fine. Before I explain this, let me exchange the Region object for the Resort object and show what happens.
Unbalanced Block
In this case, the Revenue column is strange and the Number of Guests looks okay. To make matters even more confusing, here's what I get if I apply a Sum() to the Revenue column after doing a break on the Year…
Unbalanced Block with Sum
The sum on the footer is identical to the values displayed in the block! Any idea what's going on? :shock:
Measures Do Not Sum, They Project
The secret is that Web Intelligence does not sum a column of values like Excel does. A few weeks ago I discussed the difference between SQL Aggregation and Report Projection which helps explain this. Simply put: when a measure is combined with a set of dimension values in a block, the measure will project (roll up) based on the structure of the block. This is also called the context of the measure within the block. (Please note: The use of the word "context" in this case should not be confused with the concept of a context — set of joins — in a universe design.)
Because of the way I structured my queries, the Revenue context is determined by combinations of the Resort and Year objects. The context of the Number of Guests was set by Region and Year. The Year value is the only common dimension between the two data providers, which is why the block with only the Year dimension object showed valid data. However, if I include a dimension that is not part of a measure context, a problem occurs. When Region was added to the block the Revenue was wrong. When Resort was added the Number of Guests was wrong. In each case, the measure was out of context for at least one dimension.
To repeat: When I created the block with Year as the only dimension everything was fine. Each measure includes Year as part of its context. When I added Resort, the Revenue measure was still in context (and therefore showed the correct results) but the Number of Guests object was out of context. As a result, it used the only context it could (Year) and rolled up to that value, then repeated that value each time the year appeared on the block.
What about that weird behavior of the Sum() function? It turns out that a Sum() doesn't really add up the column values. It does a projection instead. When the block included both Year and Region, the Revenue measure was valid for only the Year therefore it projected to that value. As a result, the measure value is repeated for each different Region in the body of the block as long as the Year is the same. Adding a break on Year created a footer for the block. Since the context for the footer was Year only, that made the Revenue projection (total) for the Year the same on the footer as it was for the body.
Unbalanced Dimensions
Now that I have been through all of that, let me finally explain what I mean by "unbalanced dimensions" as used in the title of this blog post. In my data providers I have Year as a common dimension and Resort hanging off of one side and Region hanging off of the other. Web Intelligence will prevent me from adding both Resort and Region to the block at the same time, but it will allow me to add one of them. Assuming I do that (add an extra dimension) I will have two dimensions from one data provider and one from the other. Two against one is unbalanced.
Resort, Year <-> Year
 Year <-> Year, Region
It doesn't matter which side the extra dimension comes from either.
If you have more than one data provider the following rules apply.
 1. All common dimension values should be linked
 2. Measure context is defined by the dimensions in their source data provider
 3. A block with linked dimensions and measures works fine
 4. Unlinked dimensions from one data provider can be used; others will be designated as incompatible
 5. Measures from the data provider that includes the extra unlinked dimension will be fine
 6. Measures from the other data provider will repeat for each unlinked dimension value because they are at least partially out of context
With all of these complications, Web Intelligence does what it can to show the data properly, even to the point of having the footer totals be correct despite the presense of an unlinked dimension. It's better to manage your data providers to avoid this challenge, but it's nice to know how things work if you can't do that. There are other techniques that can help (like creating variables to demote a dimension to a detail object, if that action is appropriate) but this post is long enough already. 8-)
16 Responses to "What Are Unbalanced Data Providers And Why Should I Care?"
 1. Comment by Marek
 In some cases, the magic DeskI function Multicube() can be used to solve some problems. But it does not solve all problems.
 Unfortunately, the function is not available in WebI.
 2. Comment by Dave Rathbun
 Marek, the MultiCube() function will help if data providers are unbalanced "upwards" but not "downwards" as I have discussed in this post. There is no fix for the situation as I outlined it here because the data simply does not exist. There isn't enough information. With an "upwards" unbalanced situation you can force the data down to the lower level, do the join, then roll it up. That's what MultiCube() does.
 Also, XI 3.x introduced the ForceMerge() function to provide this functionality in Web Intelligence. I have a draft of a post talking about that which will hopefully be done. Someday. :)
 3. Comment by Krishnak
 Hi Dave,
 The information what you posted is, help's me a lot
 4. Comment by Dave Rathbun
 Marek, I realized tonight that my comment is hard to understand as far as the distinction I was making. So I guess my follow-up post needs to be written sooner rather than later in order to explain what I meant. :)
 5. Comment by Dave Rathbun
 The next post is essentially done. I usually let a post marinate for a few days and go back and review it before publishing it, so expect it out sometime next week. It does a much better job of explaining that MultiCube() would not fix the scenario outlined in this post, and why.
 6. Comment by Chris
 Dave, so what is the best solution to fix the issue? Creating details can be useful as an extra piece of info on the report, but what if you want to project to that level? The measures only project to dimensions. Is the only way to graft the unbalanced dimensions into one provider or the other?
 The biggest issue I have with details is that once you have the report defined, the data should be available at that level. Meaning, if you add a detail to a report and it is listed as a field it should be available to project as an aggregate. I realize today that the engine is only working with the base, separate Data Providers


text:
Boca Dam (LBAO)
Reclamation has initiated a Corrective Action Study to identify and develop alternatives to strengthen Boca Dam and reduce the risk of earthquake damage. The dam is located in Nevada County, California, about 5 miles northeast of the City of Truckee, on the confluence with the Truckee River.
Boca Dam is located in a seismically active area. Exploration and analyses indicate that foundation materials beneath the dam may be susceptible to loss of strength during a major earthquake. The loss of strength, known as liquefaction, could result in substantial consequences, although the possibility of dam failure is remote. Analyses also indicate the dam's concrete spillway may have seismic deficiencies.
Boca Dam was completed in 1939 and has a structural height of 116 feet and a crest length of 1,630 feet. The dam provides flood protection for Reno and Sparks, Nevada. The dam impounds Boca Reservoir, which has a storage capacity of 41,141 acre-feet at water surface elevation 5605. The reservoir is used to regulate the Truckee River and provide water for irrigation, recreation, fish and wildlife benefits, and drought supplies for municipal and industrial users in the Reno metropolitan area. The dam is owned by Reclamation and operated and maintained by the Washoe County Water Conservation District.
Status: Field investigations to characterize the foundation materials were completed in 2013. Borrow material investigations will be completed in 2014. The corrective action study will be completed in the spring of 2014 followed by final design of the preferred alternative. A modification of the dam, dike, and spillway is not expected until 2018 or later.
For additional information, please contact MP Region Safety of Dams or call _PHONE_.Note: Documents in Portable Document Format (PDF) require Adobe Acrobat Reader 5.0 or higher to view, download Adobe Acrobat Reader


text:
How would you like to MASTER graphic design by next week?
Click here to find out how
Featured Photoshop templates - professional ready to use designs for your next project
View all templates
40+ Best Adobe Fireworks Tutorials For Designers - Fireworks tutorial
Adobe fireworks have gained popularity in web designers with the passage of time as the use of Adobe Fireworks gives the developers ample space to exercise their talent. Web designers can have a lot of fun while using different techniques with Adobe Fireworks.
More cool Fireworks tutorials:
the lufurticous digital artwork. Learn how I created the image combining 5 unique artworks into 1 impressive design. It also discusses some fireworks techniques and more
Numerically Scaling An Image In Fireworks
This video tutorial shows how to numerically scale an image in fireworks using the main menu.
Old Photograhic style effect in fireworks
this tutorial will take you through the making color photo and graphic picture giving an old photographic style effect in fire works.
Here I will show you how to create some fun and colorful zooming text using eyecandy filters in Fireworks.
Learn: Using type in fireworks, Setting up text blocks, Adjusting and refining characters.


text:
This rare example of a medieval yoroi is characterized by a cuirass that wraps around the body and is closed by a separate panel (waidate) on the right side and by a deep four-sided skirt. In use from around the tenth to the fourteenth century, yoroi were generally worn by warriors on horseback.
This armor was originally laced in white silk and had diagonal bands of multicolored lacings at the edges of the skirt and the now-missing sode (shoulder guards). The colored lacings symbolized the rainbow, which represented both good fortune and fleeting beauty. The breastplate is covered with stenciled leather bearing the image of the powerful Buddhist deity Fudo Myo-o, whose fierce mien and attributes of calmness and inner strength were highly prized by samurai. The helmet, long associated with this armor, dates from the mid-fourteenth century.
This yoroi" is traditionally believed to have been donated to the Shinomura Hachimangu, a shrine near Kyoto, by Ashikaga Takauji (1305–1358), founder of the Ashikaga shogunate.


text:
Conference | Faculty of Technical Sciences Čačak | TIE 2022 | 16th - 18th September 2022
Faculty of Technical
Sciences in Čačak has the honour to invite you to participate in
International scientific conference Technics and Informatics in Education – TIE 2022
The Conference follows the tradition of gathering teachers, researchers and professionals engaged in various levels of technical, technological and IT education. Over the past 50 years, these gatherings have been organized in numerous forms (conferences, seminars, consultations, etc.) in Serbia and the region. From 2006 to 2014 the conference Technics and Informatics in Education – TIE was organised biennially at the Faculty of Technical Sciences as a national conference with international participation. As of 2018 TIE has a form of an international conference. The TIE conferences have had a huge impact on the development of IT, technical and scientific subjects in both primary and secondary education. The significant impact has also been perceived in diverse fields related to technical and IT education at university level. However, the new circumstances necessitate organising scientific assemblies in the field of technics and the related technologies.
The TIE 2022 conference aims to improve the exchange of knowledge and experience between experts, professionals, researchers and teachers from Serbia and the region. The conference is expected to provide an analytical review of technical, technological and IT education, focusing on teacher training, terminology in the related fields, as well as the achievements regarding teaching aids, student books, educational assistive technology, technology supporting the enhancement of mental health and well-being, etc.
The Conference involves all the levels of technical, technological and IT education: from preschool institutions, primary and secondary schools over higher and university education, to various forms of lifelong learning.
Furthermore, the special emphasis is given to the importance and role of informatics and computer science in technical education, as well as the correlation between technical education and other natural, social and education sciences. The thematic field of ESP, encompassing foreign/second and professional languages in the realm of technics, technology and informatics, is the new aspect of the Conference.
The results of the conference are anticipated to contribute to planning the development of education in the fields of technics, technology, engineering, IT and computer sciences. The results are also expected to support the exchange of educational patterns and the alignment with regional, EU and global trends in fields in the focus. We hope that experience gained at the Conference will be very useful both for the participants and for the development of technical and technological education.
The thematic fields of the 9th international scientific conference Technics and Informatics in Education include:
- Technics and Informatics in Education,
- Educational Technology,
- Teacher Professional Development in TIE,
- IT Education and Practice,
- Engineering Education and Practice,
- ESP in Technics and Informatics: challenges and perspectives,
- Symposium "Technics and Informatics in Education: School Teachers for Teachers",
- Framework for network support for psychological and digital resilience – Concept and results of ERASMUS+ DigiPsyRes Project.
The official language of the conference is English, while the Symposium Technics and Informatics in Education: School Teachers for Teachers is realized in Serbian.


text:
Mitsubishi Integrates Inverter With EV Motor System
Mitsubishi Electric Corp developed a motor system whose output power is more than 70kW for electric vehicles (EVs) by integrating an inverter and a motor on the same axis.
The volume of the new system is only half that of the company's motor system whose inverter and motor are separated, which was exhibited at the 42nd Tokyo Motor Show 2011. The integration enabled to shorten electric lines between the inverter and motor as well as to integrate pipes for water cooling that are required for each of the inverter and motor in the old system.
The mass of the new system is about 10% less than that of the old one. And the total efficiency of the new system is 3-5 points higher than that of the old system under the JC08 test mode.
"(To integrate the inverter and motor,) the most difficult challenge was to prevent heat generation," Mitsubishi Electric said.
Because the motor and inverter generate a large amount of heat, the company not only increased cooling capability but also made improvements to each of the motor and inverter to reduce heat generation. Specifically, it changed the magnetic design of the motor and employed a silicon carbide (SiC)-based power device for the inverter. With the SiC-based power device, the loss of the inverter was reduced by half, compared with the inverter of the old system that uses a silicon (Si)-based power device.
This time, Mitsubishi Electric used a motor containing a permanent magnet. Also, it improved output power per unit volume by 5% by employing a concentrated winding method to increase coil space factor and using magnetic design technologies to optimize the shape of the motor.
Currently, the motor system can be used for rotating tires and for simulated driving based on actual driving patterns in a laboratory. To commercialize the system, it is necessary to improve its structure for volume production, fine-tune it and further reduce its weight by 10 to 20%, Mitsubishi Electric said.
The company aims to commercialize the system in 2017. And it plans to commercialize an EV motor system whose inverter using a Si-based power device and motor are separated in 2014.


How can I allow a student to take unlimited classes?
If you have the need to allow a specific set of students to take unlimited classes, you can configure a tuition option to allow for this. You need to create a new person tag called "Unlimited Classes", affiliate the tag with the students that receive free tuition, and set the tuition to zero for students that have the "Unlimited Classes" tag.
Here are the steps to accomplish unlimited classes:
 1. Log into Studioware and click on Administration | Person Tags
 2. Click on "Add Person Tag" in the toolbar, and enter "Unlimited Classes". You can name the new tag any value you wish, such as "Free Classes", or "No tuition"
 3. Search for the students that will have "Unlimited Classes" tag. Edit the student record, and select the tag you created in step 2. For example, here is a student with the new tag:
 4. Create new tuition for each class. Set the tuition amount as "No Tuition for this class", and make sure you have Student and the new tag from step 2 selected. For example, here is a new tuition item for free tuition:
 5. When the student Drew Boeing enrolls in the class that has the tuition specified above, there will be no tuition applied to the student's financial account.
Add Feedback


- Color$ - HTML Color Code of BR Color Attribute to color the Progress Bar. Defaults to Green.
 - ProgressAfter - This value can be used to prevent the progress bar from loading when the job takes only a short time.
 - ProgressThreshhold - This value can be used to prevent the progress bar from loading when the job takes only a short time.
 - UpdateThreshhold - This value can be used to prevent the progress bar from loading when the job takes only a short time.
 - Caption$ - Optional message to display above the progress bar.
 - MessageRow$ - Optional message to display on the progress bar.
fnCloseBar
fnCloseBar
Call this function to close the progress bar window when your task is done running.
fnCopyFile
fnCopyFile(FromFile$*255,ToFile$*255)
 - FromFile$ - The file to copy.
 - ToFile$ - The destination file name including path.
This function copies any file, by opening it as an external file and reading and writing the data to the destination file. The advantage of this technique, over using the BR copy command, is this routine is more reliable when run on client server where you may be transferring large files from one side to the other over the internet.
This fnCopyFile also has a progress bar that displays as the file is transferred, so the user knows your software is busy.
This function works over Client Server. Under Client Server, specify @: at the beginning of your filename, to specify that the file is on the client. If the file is on the server, simply leave the @: off. See the chapter on using BR's copy command under Client Server for more details on the "@:".
This function's parameters and syntax are modeled off of the built in BR copy command, and like that one, this should work for local transfers, LAN transfers, or even internet transfers. This function will work better for internet transfers then the built in BR Copy Command, however.
fnCopyDataFiles
fnCopyDataFiles(DestinationFolder$*255)
 - DestinationFolder$ - the folder to copy your data files to.
This function reads your file layouts and makes a copy of every data file (and key file) in your system to the destination folder, utilizing fnCopyFile above, for better performance and reliability when running over the internet, as well as a progress bar for each individual file.
It also displays a listview while its copying so you can watch the progress while its transferring your data files.
This can be used for making backups of your BR data, or for transferring the latest data onto a laptop for access to it while you're on the road away from the internet.
fnReIndex
This function reindexes a single data file
fnReIndex(DataFile$*255;CallingProgram$*255,IndexNum,Path$*25)
 - Datafile$ - the file layout of the file to index
 - CallingProgram$ - used for logging, pass Program$ in here
 - IndexNum - The index to rebuild - if not given, rebuilds all indexes
 - Path$ - the optional alternate path to use for rebuilding the data file.
fnReIndexAllFiles
This function reindexes all your data files. It doesn't require any parameters.
fnReIndexAllFiles
fnUpdateFile
This function checks and Updates a data file if it needs to be updated, by opening and then closing the data file.
fnUpdateFile(FileLayout$)
 - FileLayout$ - The name of the file to update
fnRemoveDeletes
This function, written by Susan Smith, removes deleted records by copying the file with the -D option.
fnRemoveDeletes(LayoutName$*255;Path$*255,CallingProgram$*255)
 - LayoutName$ - the file layout
 - Path$ - Optional Alternate Path
 - CallingPRogram$ - used for logging, pass Program$ in here
Layout Interrogation
Layout interrogation functions are provided for convenience and to enable future dictionary changes without disrupting any programs that interrogate it.
fnMakeSubProc
This function obtains the subscript assignments that were assigned by fnOpen according to the file layout. The fnMakeSubProc$ routine obtains the subscript assignments without actually opening the file. This is useful when a file record is passed as arrays into a library function in another program, or when you chained to another program and you need to know how to reach the data in the arrays without actually reopening the file.
fnMakeSubProc(filelay$;mat Subscripts$)
 - FileLay$ - The name of the file layout from which to read the subscripts.
 - mat Subscripts$ - If you give this optional array, fnMakeSubProc passes the subscripts back in this array rather then in the subs.$$$ file. This is much faster and helps avoid sharing conflicts.
When this routine returns, you can set the subscripts in your program by executing every element of the Subscripts$ array in a for/next loop.
If you did not pass in a subscripts array, then the a procedure file named subs.$$$ is created. If you proc that file, the proper subscripts will be set.
fnReadLayoutArrays
This function reads the fields in a file layout into arrays. You call it like the following
fnReadLayoutArrays(filelay$,&prefix$;mat SSubs$, mat NSubs$, mat SSpec$, mat NSpec$,mat SDescription$, mat NDescription$,Mat Spos,Mat Npos)
 - filelay$ - the name of the layout to read
 - prefix$ - the return value for the prefix for the file
 - mat SSubs$ - the return value for all the string subscripts in the layout
 - mat NSubs$ - the return value for the numeric subscripts in the layout
 - mat SSpec$ - the return value for the string fields specs
 - mat NSpec$ - the return value for the numeric fields specs
 - mat SDescription$ - the return value for the Descriptions of the String Specs
 - mat NDescription$ - the return value for the Descriptions of the Numeric Specs
 - mat SPos - the return value for the starting positions of the String Specs
 - mat NPos - the return value for the starting positions of the Numeric Specs
This function call would read the fields from the layout in filelay$, and it would return the prefix to prefix$. The Subs would be returned in mat SSubs$ and mat NSubs$.
The Spec statements are returned in mat SSpec$ and mat NSpec$ and the Descriptions are returned in mat SDescription$ and mat NDescription$. The start positions on disk of each element are returned in mat SPos and mat NPos.
All the arrays are optional. If you don't pass them the information they are supposed to record is simply not returned.
fnReadLayoutHeader
This function reads the header for a given file layout.
fnReadLayoutHeader(Layoutname$*255;&Filename$,Mat Keys$,Mat KeyDescription$)
 - LayoutName$ - Name of the layout to read
 - Filename$ - The file name read from the layout
 - Mat Keys$ - Array to be populated with the list of keys for the file
 - Mat KeyDescription$ - Key Description String returned from the file
fnReadEntireLayout
This function reads the entire layout by calling fnReadLayoutHeader and fnReadLayoutArrays.
fnReadEntireLayout(Layoutname$*255;&Filename$,&Prefix$,Mat Keys$,Mat KeyDescription$,Mat Ssubs$,Mat Nsubs$,Mat Sspec$,Mat Nspec$,Mat Sdescription$,Mat Ndescription$,Mat Spos,Mat Npos)
 - LayoutName$ - Name of the layout to read
 - Filename$ - The file name read from the layout
 - prefix$ - the return value for the prefix for the file
 - Mat Keys$ - Array to be populated with the list of keys for the file
 - Mat KeyDescription$ - Key Description String returned from the file
 - mat SSubs$ - the return value for all the string subscripts in the layout
 - mat NSubs$ - the return value for the numeric subscripts in the layout
 - mat SSpec$ - the return value for the string fields specs
 - mat NSpec$ - the return value for the numeric fields specs
 - mat SDescription$ - the return value for the Descriptions of the String Specs
 - mat NDescription$ - the return value for the Descriptions of the Numeric Specs
 - mat SPos - the return value for the starting positions of the String Specs
 - mat NPos - the return value for the starting positions of the Numeric Specs
fnReadSubs
This function reads the subscripts from a layout into Subs arrays.
fnReadSubs(Layout$,mat SSubs$,mat NSubs