This part of the documentation website is obsolete. Please see the new Solution Hub.
Capacity Planning
Author XAP Version Last Updated Reference Download
Shay Hassidim Feb 2014
Capacity Planning - Voodoo or Simple Math?
Planning the number of machines your application requires, is one of the most important tasks you need to do before moving into production and making your application available to your customers/users. Typically, this is a task you need to do in the early stages of the project in order to budget for hardware and relevant software products your system will use. At a minimum, this involves estimating the number of CPUs and cores plus the memory each machine must have.
Another important deployment decision is to calculate the maximum number of In-Memory-Data-Grid (IMDG) partitions the application requires. This deployment parameter determines how scalable your application IMDG is. Once the application is deployed, the number of IMDG partitions remains constant, but their physical location, their activation mode (primary or backup), and hosting containers are dynamic.
The IMDG instances could fail and relocate themselves to another machine automatically. They can relocate as a result of an SLA (Service-Level-Agreement) event (for example - CPU and memory utilization breach), or they can relocate, based on manual intervention by an administrator. This IMDG "mobility" is a critical capability that, beyond providing the application with the ability to scale dynamically and self-heal itself, can avoid over provisioning and unnecessary over budgeting of your hardware. You can start small, and grow as needed with your hardware utilization. The capacity planning should take this fact into consideration.
This article deals with the following capacity planning issues:
 1. How to calculate the footprint of your objects when stored within the IMDG?
 2. What is the balance between the amount of active clients, machine cores, and the IMDG process heap size?
 3. How should the number of IMDG Partitions be calculated? We demonstrate how this should be done using 2 examples.
Please note that there is no need to specify the maximum number of partitions for services that are not collocated with IMDG instances. These can be scaled dynamically without the need to specify maximum instances.
The Object Footprint within the IMDG
The object footprint within the IMDG is determined, based on:
 - The original object size - the number of object fields and their content size.
 - The JVM type (32 or 64 bit) - a 64 bit JVM might consume more memory due to the pointer address size.
 - The number of indexed fields - every indexed value means another copy of the value within the index list.
 - The number of different indexed values - more different values means a different index list.
 - The object UID size - the UID is a string-based field, and consumes about 35 characters. You might have the object UID based on your own unique ID.
The best way to determine the exact footprint is via a simple test that allows you to perform some extrapolation when running the application in production. Here is how you should calculate the footprint:
 1. Start a single IMDG instance.
 2. Take a measurement of the free memory.
 3. Write a sample number of objects into the IMDG (have a decent number of objects written - 100,000 is a good number).
 4. Measure the free memory again.
This test gives you a very good understanding of the object footprint within the IMDG. Don't forget that if you have a backup running, the amount of memory you need to accommodate your objects, is double.
See below an example of an object footprint using a 32 and 64 Bit JVM using different amount of indexes. The numbers below may vary based on the actual Object data and indexes values.
Indexes Footprint 32 Bit JVM - Windows Footprint 64 Bit JVM - Linux Footprint 64 Bit JVM - UseCompressedOops - Linux
0 331 306 308
1 - String 456 705 493
2 - String+Integer 493 989 671
3 - String+Integer+Long _PHONE_ 680
4 - String+Integer+Long+Double _PHONE_ 691
footprint_bench7.1.2.jpg
 - Test conducted using GigaSpaces XAP 7.1.2.
 - All objects values are different.
 - The Object has one String field, one Integer field, one Long field and one Double field.
 - Footprint measured in Bytes.
 - Basic Index type is used. An Extended Index type will have an additional footprint (20%) compared to a Basic Index type.
Tip
You may decrease the raw object footprint (not the indexes footprint) using the GigaSpaces Serialization API
Tip
You can reduce the JVM memory footprint using the -XX:+UseCompressedOops JVM option. It is part of the JDK6u14 and JDK7. See more details here: _URL_ It is highly recommended to use the latest JDK release when using this option.
Active Clients vs. Cores vs. Heap Size
Since the IMDG kernel is a highly multi-threaded process, it has a relatively large number of active threads handling incoming requests. These requests could come from remote clients or collocated clients. Here are a few examples:
 - any remote call involves a thread at the IMDG side that handles the request.
 - a notification delivery might involve multiple threads sending events to registered clients.
 - any destructive operation (write, update, take) also triggers a replication event that is handled via a dedicated replication channel, which is using a dedicated thread to handle the replication request to the backup IMDG instance.
 - there is some periodic background activity, used to monitor the relevant components that are using its own dedicated threads within the IMDG kernel.
A collocated client does not go through the network layer, and interacts with the IMDG kernel very fast. This means that the machine CPU core that has been assigned to deal with this thread activity is very busy, and it does not wait for the operating system to handle IO operations. Taking this fact into consideration means we can have less concurrent clients served by the same core when compared to remote clients activity.
The number of active threads and machine cores is important also for the maximum heap size allocated for the JVM running the GSC. You should have some "headroom" for the JVM garbage collection activity to deal with cleaning allocated resources and reclaiming unused memory. A large heap size means a potentially large number of temporary objects that might generate work for the garbage collection activity. So you should have some reasonable balance between the number of cores the machine is running, the number of GSCs/IMDG running, and the number of active clients/threads accessing the IMDG.
A machine running 4 quad-core cores with fast CPUs (3GHz clock) is able to handle 20-30 concurrent collocated clients without any special delay, and 100-150 concurrent remote clients without any special delay. Such a JVM should have at least a 2-3GB heap size to handle the IMDG data and additional resources utilizing memory. With the above we assume the application business logic is very simple and does not have any IO operations, and the IMDG persistency mode is asynchronous.
How should I Calculate the Number of IMDG Partitions?
The question is how to calculate the number of IMDG partitions required by an application. The calculation is essentially based on the maximum number of machines available. Theoretically, in an ideal world where you have an unlimited budget and unlimited resources, you might want to have a dedicated machine per IMDG instance hosted within a dedicated Grid Container (GSC). In the real world, in order to avoid a large budget for hardware, you can initially have multiple IMDG instances running on the same machine within a single GSC. This deployment topology can be modified later to move closer to the ideal of a dedicated GSC hosting a single IMDG instance (one IMDG instance per GSC).
The number of GSCs per machine you need initially, is calculated based on the machine's physical RAM and the amount of heap memory you would like to have for the JVM running the GSC. In many cases the heap size is determined based on the operating system: for a 32 bit OS, you would go for a 2G maximum heap size, and for a 64 bit OS, you would go for 6-10G maximum heap size (the JVM -Xmx argument). For performance optimization you should have the initial heap size the same as the maximum size. The next sections demonstrate capacity planning using a simple real life example.
Here are a few basic formulas you can use:
Amount of GSCs per Machine = Amount of Total Machine Cores/2
Total Amount of GSC = Amount of GSCs per Machine X Initial amount of Machines
GSC max heap Size = min (6, (Machine RAM Size * 0.8) / Amount of GSCs per Machine))
Amount of Data-Grid Partitions = Total Amount of GSC X Scaling Growth Rate / 2
Where:
 - Number of Total Machine Cores - the total number of cores the machine is running. For a quad-core with 2 CPUs (Duo) machine this value is 8.
 - Number of Data-Grid Partitions - this is the number of IMDG Partitions you need to set when deploying.
 - GSC max heap Size - JVM Xmx value
 - Number of GSCs per machine - the number of GSCs you run per machine. This is a GSA parameter.
 - Total amount of data in-memory


Intel gives away lip-reading speech recognition code
Lip service
Intel has released lip-reading visual speech recognition software under an open source licence.
Called Audio Visual Speech Recognition (AVSR), the software is part of Intel's OpenCV computer vision and facial recognition code library. Essentially, it tracks the speaker's mouth movements as individual character and syllable sounds are formed. Intel reckons the technique to be far more accurate than traditional speech recognition algorithms, which analyse sounds rather than images.
That's not to say the results are perfect, and Intel's announcement implies that the system works better when coupled with facial recognition to identify 'known' speakers. Indeed, Intel's web site shows that the best results can be achieved with a mix of video and audio recognition algorithms, the one giving weight to the choices made by the other, particularly as the levels of background noise increase.
The code was developed by Intel's Research subsidiary, part of whose remit is to develop applications that make the most of mainstream PCs' processing power. In other words, Intel is developing code that helps encourage users to upgrade to more powerful chips, ideally - and given chip makers' relative market shares, almost certainly - those made by Intel.
It's motives may not be entirely philanthropic, but at least Intel is giving the code away with a minimum of restrictions. ®
Related Links
Intel's AVSR page
Intel's OpenCV page
Sponsored: Are DLP and DTP still an issue?


a gallery wall of paintings on a dark purple wall
Transcendental Modernism
Drawn primarily from deCordova's permanent collection, Transcendental Modernism connects to the nearby exhibition Visionary New England, while focusing on artistic developments in Massachusetts from the 1940s through the 1990s. Veering away from dominant narratives of modern art as abstract, secular, and self-referential, Transcendental Modernism advances an understanding of vanguard art in Massachusetts based on intersectional social progress and interdisciplinary artistic pursuits. The exhibition examines the spiritual commitments of Boston Expressionists, the presence of Afrofuturism in Boston, and utopian collaborations between artists and scientists.
The exhibition was organized by Sam Adams, Curatorial Fellow.


Partisanen-/Bandenbekämpfung und Besetzung in der UdSSR; Frontkämpfer an der Ostfront; Nachkriegszeit Bewaffnete Organe.
Communist and Socialist Claims to the Frontkämpfer Legacy, _PHONE_
Matthew Bucholtz
Cultivated during the Third Reich, the Myth of the Frontkämpfer, or Front Fighter, as an ardent rightwing supporter, became a central pillar of National Socialist political life. However, there is ample evidence to show that German veterans of the First World War did not exhibit such political unity, before and especially after the war. This paper argues that the Frontkämpfer identity had remarkable political flexibility as reflected by Communist and Socialist claims to represent the community of Front Fighters.


The seven-year-old bloggers
Children as young as seven in one British school are using weblogs as part of their normal routine, and are doing better than non-webloggers as a result, their teacher says.
Weblogs, easy-to-use personal journals published on the internet, get children more interested in school work they might otherwise have disliked, says junior school teacher John Mills. —Giles TurnbullThe seven-year-old bloggers (BBC)


text:
LD Learning and Research
Since 1976, Shelton School has been serving intelligent students with learning differences (LD). The school serves the educational needs of children with dyslexia, attention deficit hyperactivity disorder (ADHD) or speech and language disorders. Each year Shelton opens its doors to more than 800 students, grades preschool through twelve. For over 35 years Shelton has been committed to providing the best education to its student community, gathering data and analysis in effective practices in the use of curriculum for those with LD, partnering with other recognized leaders in LD education, and sharing its findings, methods, successes and failures with the greater educational community.
The Shelton School is multidisciplinary in that it addresses several aspects about learning differences:
- Ongoing work in regards to the definitions of what constitutes a learning disability (LD) and appropriate measurement and tracking within current testing standards.
- Ongoing investigation of the successes and failures of newly created preventative and remedial interventions for students with reading difficulties using a multi disciplinary LD curriculum so that we can be sure we are using the best methods for our students.
- The neurobiological correlates of Learning Differences.
- Providing findings and materials to the greater Education Community.
- Collaborating with leading educational institutions for the development of successful strategies and practices that help people with Learning Differences succeed.
Shelton participates and supports research that leads to a more comprehensive classification of Learning Differences. Shelton continually strives to gather and provide data that will lead to a greater understanding of the educational demands that are required to support children with reading and learning challenges.
Currently, the Shelton Training Center is working with a public school system in Alabama. A project like this has not been done in any other state or by any other training course. Read about the successes of this program in the article, Shelton Outreach Provides Groundbreaking Statewide Training.

source: HuggingFaceFW/fineweb-edu


Quickstart: Schedule tasks using WinJS
Quickstart: Schedule tasks using WinJS
[This article is for Windows 8.x and Windows Phone 8.x developers writing Windows Runtime apps. If you're developing for Windows 10, see the latest documentation]
Applies to Windows and Windows Phone
The Scheduler allows your Windows Runtime app using JavaScript to perform background work without disrupting the app's foreground tasks (like animation). This helps minimize a seemingly unresponsive or 'stuttering' experience for users and can possibly shorten startup time. This quickstart explains how to schedule prioritized background tasks using the Scheduler object in the Windows Library for JavaScript.
Note For more examples and sample code that demonstrate how to use the Scheduler, see the HTML Scheduler sample.

Prerequisites
For this quickstart, you need to be able to create a basic Windows Runtime apps using JavaScript that uses WinJS in Windows 8.1 or Windows Phone 8.1. For help creating your first app, see Create your first Windows Runtime app using JavaScript.
Instructions
Create a new project by using the Blank App template
This article uses a basic Blank App template in Microsoft Visual Studio 2013. To create a new Blank App, do this:.
 1. Start Microsoft Visual Studio Express 2013 for Windows.
 2. From the Start Page tab, click New Project. The New Project dialog opens.
 3. In the Installed pane, expand Templates, JavaScript, and then Store Apps. Select the type of project (Windows, Windows Phone, or Universal) that you want to create. The available project templates forJavaScript are displayed in the center pane of the dialog.
 4. In the center pane, pick the Blank App project template.
 5. In the Name text box, type Scheduler demo.
 6. Click OK to create the project.
Add the HTML and CSS for the app
The sample app provided in this article uses a simple HTML interface that is laid out in a grid with two rows and two columns. To set up the HTML markup for the page and the Cascading Style Sheets (CSS) that are used to style the app, do this:
 1. Open default.html and insert the following HTML into the  element. This code should be a direct child of the  element. The HTML creates three
 elements, used to display output from the JavaScript code.

 <button id="getState">Get scheduler state</button>

Counter

Scheduler state

 <textarea id="stateResult"></textarea>

 2. Open the default.css file (css/default.css) and replace the contents with the following code. This CSS arranges the HTML in the app in a simple 2 × 2 grid.

 body {
 display: -ms-grid;
 -ms-grid-columns: 500px 1fr;
 -ms-grid-rows: 500px 1fr
 }
 body * {
 margin: 20px;
 }

 #scheduler {
 -ms-grid-column: 1;
 -ms-grid-row: 1
 }

 #state {
 -ms-grid-column: 2;
 -ms-grid-row: 2;
 }

 #state textarea {
 width: 400px;
 height: 200px;
 }

 #counter {
 -ms-grid-column: 1;
 -ms-grid-row: 2;
 }

 #counter div {
 font-size: 20pt;
 color: aqua;
 }

Add the code to schedule jobs on the Scheduler
The Scheduler object in Windows Library for JavaScript (WinJS) uses a single universal queue with a priority-based scheduling policy. This allows you to specify tasks at varying levels of priority. The tasks are then prioritized against other tasks within the system.
Using the Scheduler.schedule method, you can queue up jobs on the scheduler. The schedule method accepts four parameters: work, priority, thisArg, and name.
 - The work parameter accepts a function that defines the work to be done. When the function is called, it is passed a single argument—a IJobInfo object. The IJobInfo object includes members for managing the execution of the job. The shouldYield property specifies whether the job should be paused for other, higher-priority work. The setWork method allows the job to cooperatively yield. It can be rescheduled to finish its work in the future when the scheduler determines it to be the right time, without the job losing its spot within its current priority level. The IJobInfo object also includes a job property that returns an IJob object, which contains details about the job itself.
 - The priority parameter, as the name implies, sets the priority of the job. It accepts a value from the Priority enumeration. For example, a high priority job is executed before a normal priority job, which is executed before a belowNormal priority job (and so on).
 - You can use the thisArg parameter of the schedule method to specify a context to run the job on. When the job is running, the function passed in for the work parameter can access the context through the this keyword.
 - The fourth parameter, name, provides a means of identifying the job within the scheduler's queue. This parameter allows you to identify tasks running on the scheduler when you're debugging or logging events.
In this next procedure, you create a job to run on the scheduler. This code schedules a low-priority job that counts from 1 through 100,000, updating the user interface as it counts. A counter variable, contained in the parent's lexical scope, maintains the state of the job. When a higher-priority job enters the queue, this job exits and reschedules its work on the scheduler.
 1. Open default.js and add the following code to the handler for the app.onactivated event (after the call to args.setPromise).

 var scheduler = WinJS.Utilities.Scheduler;

 // Define a low-priority, time-consuming, job for the scheduler
 // to execute. This job counts from 1 to 100K, displaying each
 // number that it counts.
 var counter = 0;
 var counting = function (jobInfo) {

 while (counter < Math.pow(10, 5)) {

 counter++;
 counterOutput.innerText = counter;

 // Force the job to pause if a higher priority job
 // comes into the queue, and resume the job after
 // the other job is complete. Note that you need to
 // include the 'break' to exit the while block.
 if (jobInfo.shouldYield) {
 jobInfo.setWork(counting);
 break;
 }
 }
 }

 // Schedule the counting job at a low-level priority.
 scheduler.schedule(counting,
 scheduler.Priority.idle,
 null,
 "counting")

 2. Add the following code to the event handler for the app.onactivated, below the code that you added previously. This code adds an event handler to the click event of the button that is declared in the HTML. The event handler schedules a new job called gettingState on the scheduler with a normal priority. Since the counting job has a priority of idle, the gettingState job preempts it because it has a normal priority.

 // Get the state of the scheduler. While the counting job
 // is running, this will display two jobs: this 'getting state'
 // job and the 'counting' job.
 var gettingState = function (jobInfo) {
 var currentTime = new Date();
 currentTime = currentTime.toLocaleTimeString();

 var state = scheduler.retrieveState();
 stateResult.value = currentTime + "\n\n" + state;
 }

 // When the button is clicked, display the current state of
 // the scheduler to the user. This is scheduled as a
 // normal-priority job so that the 'counting' job will yield to it.
 getState.addEventListener("click", function () {

 scheduler.schedule(
 gettingState,
 scheduler.Priority.normal,
 null,
 "getting state");

 });

 3. Press F5 to run the sample and, with the counter running, click the Get scheduler state button. The output under Scheduler state looks something like this.
 9:11:52PM

 Jobs:
 *id: 3, priority: normal, name: getting state
 id: 2, priority: idle, name: counting
 Drain requests:
 None

 The output shows the jobs currently in the queue for the scheduler. The asterisk indicates the job that is currently running on the scheduler.
You can also preempt all other jobs on the scheduler by using the Scheduler.execHigh method. The execHigh method executes some code synchronously (it is done when execHigh returns) at the high priority level. This ensures that any asynchronous operations which are started


text:
hy cant i keep the parameters in the encrypt method as
private String encrypt(String word, int key)
Why do i have to use a new variable called str? I have kept the key variable the same why not the variable word?
I'm not sure I understand what you are asking.
You can give just about any name you want to the parameters received by a method:
private String encrypt(String theWordToWorkOn, int theKeyThatWillBeUsed)
It is usually better and less confusing if the variable names local to a method are unique to that method and NOT the same as class variables. If they have the same names, the class variables are "shadowed" and not used. This can be a problem if you forget which variable you are using. You could think you are setting a class variable but are really working with a local one. When the method exits, the class variable is unchanged.
Unique names prevents this problem.

source: openbmb/Ultra-FineWeb


Arielle Busetto, JAPAN Forward
You might have heard the mantra, "We don't have time to develop something new, let's use medicines we already have."
Many academics in Japan and around the world have called for further investigation into drugs currently on the market which could help fight COVID-19. In Japan, some drugs were even approved in May, and plenty of research is currently underway.
Here, we explain the various drugs currently being researched in Japan in the fight against the virus.
What are some key characteristics of the drugs currently being researched?
Many of the drugs gaining attention in Japan now were developed to tackle a virus with genetic structures similar to the novel coronavirus, namely viruses with RNA genetic material, such as Ebola or earlier strains of the virus.
Many of the researched drugs are trying to tackle the process of virus multiplication by COVID-19 inside the human body.
Which drugs are showing promise in the course of treatment in Japan?
Remdesivir, produced by the American company Gilead Sciences, is a drug that had previously failed against Ebola, but has shown promising research results in the case of COVID-10, in Japan and abroad. It was formally approved for treatment against COVID-19 in Japan on May 7 through an unusually quick process, which sought to bypass the normal channels without sacrificing research quality.
Kaletra (or Lopinavir), produced by American company Abbvie, was developed as a treatment for HIV. It is designed to act using the proteins used by the virus to multiply in the body and is currently being researched at Gunma University.
Finally, a drug normally used against bronchial asthma, Obesco, is showing promise and currently undergoing research at Center Hospital, a part of the National Center for Global Health and Medicine.
By - Ben K.


Wikia
Icarus Verilog
Verilog Portability Notes
46pages on
this wiki
Talk1
Here we document Verilog language details that may be different from common Verilog tools, or standard, baseline Verilog. These are issues that may effect portability with other Verilog compilers, or may just be clarifications where the LRM allows some latitude.
Unsized Numeric Constants are Not Limited to 32 Bits Edit
The Verilog standard allows Verilog implementations to limit the size of unsized constants to a bit width of at least 32. That means that a constant _PHONE_ (36'h3_ffff_ffff) may overflow some compilers. In fact, it is common to limit these values to 32bits. However, a compiler may just as easily choose another width limit, for example 64bits. That value is equally good.
However, it is not required that an implementation truncate at 32 bits, and in fact Icarus Verilog does not truncate at all. It will make the unsized constant as big as it needs to be to hold the value accurately. This is especially useful in situations like this;
reg [width-1:0] foo = _PHONE_;
The programmer wants the constant to take on the width of the reg, which in this example is parameterized. Since constant sizes cannot be parameterized, the programmer ideally gives an unsized constant, which the compiler then expands/contracts to match the l-value.
Also, by choosing to not ever truncate, Icarus Verilog can handle code written for a 64bit compiler as easily as for a 32bit compiler. In particular, any constants that the user does not expect to be arbitrarily truncated by his compiler will also not be truncated by Icarus Verilog, no matter what that other compiler chooses as a truncation point.
Unsized Expressions Edit
Icarus Verilog classes any expression containing an unsized numeric constant or unsized parameter value that is not part of a self-determined operand as an unsized expression. When calculating the bit width of an unsized expression, it extends the width of the expression to avoid arithmetic overflow or underflow; in other words, the expression width will be made large enough to represent any possible arithmetic result of the expression. If the expression contains operations that do not follow the normal rules of arithmetic (e.g. an explicit or implicit cast between signed and unsigned values), the expression width will be extended to at least the width of an integer.
An exception to the above is made if the expression contains a shift or power operator with a right hand operand that is a non-constant unsized expression. In this case any expansion of the expression width due to that operation is limited to the width of an integer, to avoid excessive expression widths (without this, an expression such as 2**(i-1), where i is an integer, would be expanded to 2**33 bits).
The above behaviour is a deviation from the Verilog standard, which states that when calculating an expression width, the width of an unsized constant number is the same as the width of an integer. If you need strict standard compliance (for compatibility with other EDA tools), then, starting with v0.10 (currently in development), the compiler has a command line option, -gstrict-expr-width, which disables the special treatment of unsized expressions. With this option, the compiler will output a warning message if an unsized numeric constant is encountered that cannot be represented in integer-width bits and will truncate the value.
If you are simulating synthesisable code, it is recommended that the -gstrict-expr-width option is used, as this eliminates a potential source of synthesis vs. simulation mismatches.
Unsized Parameters Edit
Icarus Verilog classes any parameter declaration that has no explicit or implicit range specification as an unsized parameter declaration. When calculating the bit width of the final value expression for the parameter, it follows the same rules as it does for unsized expressions, regardless of whether or not the expression contains any unsized numeric constants.
If the final value expression for an unsized parameter is an unsized expression (i.e. does contain unsized numeric constants), any subsequent use of that parameter will be treated as if it was an unsized numeric constant. If not, it will be treated as if it was a numeric constant of the appropriate size. For example, with the declarations:
localparam Value1 = 'd3 + 'd2;
localparam Value2 = 2'd3 + 2'd2;
any subsequent use of Value1 will be treated as if the programmer had written 'd5, and any subsequent use of Value2 will be treated as if the programmer had written 3'd5. In particular, note that Value2 can be used as a concatenation operand, but Value1 cannot.
The above behaviour is a deviation from the Verilog standard. As for unsized expressions, if you need strict standard compliance. use the -gstrict-expr-width compiler option.
Unsized Expressions as Arguments to Concatenation Edit
The Verilog standard clearly states in 4.1.14:
"Unsized constant numbers shall not be allowed in
concatenations. This is because the size of each
operand in the concatenation is needed to calculate
the complete size of the concatenation."
So for example the expression {1'b0, 16} is clearly illegal. It also stands to reason that {1'b0, 15+1} is illegal, for exactly the same justification. What is the size of the expression (15+1)? Furthermore, it is reasonable to expect that (16) and (15+1) are exactly the same so far as the compiler is concerned.
Unfortunately, Cadence seems to feel otherwise. In particular, it has been reported that although {1'b0, 16} causes an error, {1'b0, 15+1} is accepted. Further testing shows that any expression other then a simple unsized constant is accepted there, even if all the operands of all the operators that make up the expression are unsized integers.
This is a semantic problem. Icarus Verilog doesn't limit the size of integer constants. This is valid as stated in 2.5.1 Note 3:
"The number of bits that make up an unsized number (which is a simple decimal number or a number without the size specification) shall be at least 32." [emphasis added]
Icarus Verilog will hold any integer constant, so the size will be as large as it needs to be, whether that is 64bits, 128bits, or more. With this in mind, what is the value of these expressions?
{'h1_00_00_00_00}
{'h1 << 32}
{'h0_00_00_00_01 << 32}
{'h5_00_00_00_00 + 1}
These examples show that the standard is justified in requiring that the operands of concatenation have size. The dispute is what it takes to cause an expression to have a size, and what that size is. Verilog-XL claims that (16) does not have a size, but (15+1) does. The size of the expression (15+1) is the size of the adder that is created, but how wide is the adder when adding unsized constants?
One might note that the quote from section 4.1.14 says "Unsized constant numbers shall not be allowed." It does not say "Unsized expressions...", so arguably accepting (15+1) or even (16+0) as an operand to a concatenation is not a violation of the letter of the law. However, the very next sentence of the quote expresses the intent, and accepting (15+1) as having a more defined size then (16) seems to be a violation of that intent.
Whatever a compiler decides the size is, the user has no way to predict it, and the compiler should not have the right to treat (15+1) any differently then (16). Therefore, Icarus Verilog takes the position that such expressions are unsized and are not allowed as operands to concatenations. Icarus Verilog will in general assume that operations on unsized numbers produce unsized results. There are exceptions when the operator itself does define a size, such as the comparison operators or the reduction operators. Icarus Verilog will generate appropriate error messages.
Scope of macro defines doesn't extend into libraries Edit
Icarus Verilog does preprocess modules that are loaded from libraries via the -y mechanism to substitute macros and load includes. However, the only macros defined during compilation of an automatically loaded library module file are those that it defines itself (or includes) or that are defined on the command line or in the command file.
Specifically, macros defined in the non-library source files are not remembered when the library module is loaded, and macros defined in a library module do not escape into the rest of the design. This is intentional. If it were otherwise, then compilation results might vary depending


text:
St Andrew's Church of England Primary School An intelligent heart acquires knowledge and the ear of the wise seeks knowledge. Proverbs 18:15
To identify features of a biography
In this lesson, we will introduce what a biography is, we will look at the features of a biography and we will find examples of features in a biography.
Examples of Biography with highlighted features

source: m-a-p/FineFineWeb


text:
What they needed
The Cornell High Energy Synchrotron Source (CHESS) is a high-intensity X-ray source primarily supported by the National Science Foundation, which provides state-of-the-art synchrotron radiation facilities for research in various physical sciences.
CHESS needed a complex online reporting and management system for accepting and reviewing proposals from users around the world, as well as scheduling beamtime and tracking user visits.
Our custom software solution
GORGES created a custom web application using the Yii PHP framework, which incorporates several key features:
- User registration and profile editing, to track demographics and changing institutional affiliations
- Proposal submission interface for users – including detailed information on scientific approach, funding sources, and related publications
- Tools for CHESS staff to review and approve proposals based on scientific merit and safety concerns
- Interactive scheduling tools to coordinate availability of beamline stations and other resources
- Check-in interface to allow operators to track user visits and radiation safety badges
- Tools to support CHESS's reporting requirements to its various funding agencies
We are continually adding features and refactoring the application to meet CHESS's needs, while also keeping it compatible with current web standards. The application has been in production use for more than five years – which is an eternity in Internet Time. One of our major upgrades was adding responsive layout via the Bootstrap CSS framework, to support mobile devices.


text:
|Department of Engineering|
|University of Cambridge > Engineering Department > News & Features|
1 August 2007
The Department's Nanoscience Centre
Teenagers from across the UK were offered a rare insight into the exciting and dynamic field of Nanotechnology.
Thirty school pupils came to the Department's Nanoscience Centre at West Cambridge for a four-day residential course organised by The Smallpeice Trust, an independent charity which promotes engineering as a career.
Cutting across many scientific disciplines, nanotechnology explores the manipulation of atoms and molecules to produce innovative products like cars that never need polishing or self-adjusting sunscreen.
Through a combination of compelling lectures, challenging workshops, stimulating, hands-on projects and site visits, experts in the field introduced students to the extraordinary concepts and practical applications of this rapidly expanding technology.
Students explored the nano-world using powerful electron microscopes, creating macro-scale molecular models and conducting surface science experiments.
The teenagers were also able to visit TWI, a world centre for joining technologies where they were able to see nanotechnology in practice and observe the way other industries have benefited from a range of joining techniques.
Cambridge is widely seen as a leader in nanotechnology research with successes across the University in nanoelectronics, novel materials and coatings, biologically inspired nanostructures and advanced characterization tools.
Spokesperson for The Smallpeice Trust, Gemma Murphy commented, "It is a real privilige to be working with this international research centre and being able to give students a insight into how this has the potential to revolutionise our lives."
Mark Welland, Professor of Nanotechnology and Director of the IRC in Nanotechnology, reflected, "The Smallpeice residential course is an important element of our nanotechnology outreach programme that engages with schools in the UK as part of FRONTIERS, an EU funded Network of Excellence".
The Nanotechnology course is run by The Smallpeice Trust as part of an ongoing programme of residential courses designed to help young people aged 13 – 18 learn and develop skills in engineering, design and management. Through these courses and STEM enrichment sessions, The Trust has reached out to more than 8,000 students across the UK in the past year – a 20 fold increase over a 6 year period.
The Trust's new course timetable for 2008 will be launched in September this year. To find out more, visit the website _URL_
|| Search | CUED | Cambridge University ||
© Department of Engineering at the University of Cambridge
Information provided by web-editor


have named this class anything I wanted. Since it's the home page of the application, I could have, for example, simply named it Home. What makes this class a page definition is that Tapestry is mixed-in with it. Including Tapestry in the class means that the Veilus class is treated as a special kind of class with some extra functionality. So essentially what you do is turn a generic Ruby class into a Tapestry-specific class.
What those expectations are showing you is that the page instance is "a kind of" Tapestry. But the page instance itself is an instance of Veilus, which is the class of the page definition. Let's look at what we're dealing with here. Add the following to your script:
These will provide the following identical output:
#<Watir::Browser:0x2e9e36c7934b06f6 url="_URL_ title="Veilus">
#<Watir::Browser:0x2e9e36c7934b06f6 url="_URL_ title="Veilus">
This shows you that the browser object for Tapestry and the browser object for the page are one and the same. So Watir has been proxied to the page definition. Now try this:
That will give you this:
#<Veilus:0x007f95f84aeaf8
 @browser=#<Watir::Browser:0xceed71548bdba0
 url="_URL_
 title="Veilus">>
Here you'll see how the browser object that we just looked at is contained in an instance variable called @browser. This is an instance variable on the page object. One of my core points here is that it's very important for the mechanics of your micro-framework to be exposed such that people can see how to extend your framework if they want to.
So you should note that while there is a @browser instance behind the scenes, you do have to refer to it in the context of Tapestry. This is important in case you have other test frameworks that similarly create a @browser instance variable. In other words, this is what allows Tapestry to play nicely with other tools you may be using. Details are encapsulated in the Tapestry namespace. You might also notice how I can retain access to the driver library — Watir — and also the underlying driver for it — Selenium. This means I can access any methods that exist on those libraries.
The thing to understand is that a @browser reference is passed in to the page definition. Where does the @browser come from? The call to set_browser is what created the @browser instance. Passing that @browser instance to the page definition means that a Tapestry controlled page object will be wrapped around the driver.
The Tapestry API
Let's investigate a bit more into Tapestry. Try this:
The following will tell you the above along with everything that Tapestry provides to a page instance. This is effectively giving you some insight into the Tapestry API, which is attached to a page definition. You can also do this:
Right now that's not going to provide you with much. In fact, it will provide you with exactly nothing. I'll come back to that at another point in another post.
Using Tapestry, Using Watir, Using Selenium
Let's add a few checks to your script. Here's a version of the script with the two lines you should try out:
These delegate down to the @browser instance (see title and url). So note that Tapestry's API is matching that of the library it wraps, Watir, when it makes sense to do so. This means someone doesn't have to learn a new API just to use Tapestry, but rather can leverage one they know (Watir). And if you look at the Watir source (title and url) you'll see that these just delegate down to @driver, which as we saw earlier was Selenium.
So That's an Initial Look
This is probably a good place to stop for now. It's always easy to go way too overboard and show everything at once. What I wanted to do here was introduce you to Tapestry and show you a little bit about it, including a delegation pattern that I think is very important; namely, wrapping an API (Selenium) around layers that allow to provide your own API, consistent with that which you are wrapping, but that also allows you to provide a certain style of presentation.
What I think you also saw here was that Tapestry exposed various aspects of itself in a fairly easy way for you to consume. And all of this was done without a lot of apparent moving parts. There is more to show with Tapestry, of course, but this gentle introduction here is how I believe the development of micro-frameworks should start in a test automation context.
The next post will further dig into the API that I started with here.
Share
This article was written by Jeff Nyman
Anything I put here is an approximation of the truth. You're getting a particular view of myself ... and it's the view I'm choosing to present to you. If you've never met me before in person, please realize I'm not the same in person as I am in writing. That's because I can only put part of myself down into words. If you have met me before in person then I'd ask you to consider that the view you've formed that way and the view you come to by reading what I say here may, in fact, both be true. I'd advise that you not automatically discard either viewpoint when they conflict or accept either as truth when they agree.
Leave a Reply
Your email address will not be published. Required fields are marked *
This site uses Akismet to reduce spam. Learn how your comment data is processed.


Time Zones Give an Advantage to West Coast Sports Teams
A new study could make some east coast sports teams consider moving west. The research, conducted in Canada, found that NFL, NBA and NHL teams traveling from west to east had a higher winning percentage compared to teams traveling in the opposite direction.
The results of this study highlight the importance of the direction of the circadian disadvantage on the probability of success.
"These results highlight the importance of circadian rhythms in sport performance. They also raise concerns about well-established practices such as early training sessions and late-night athletic competitions and the possible negative effects on performance and health," said co-author, Geneviève Forest, PhD, Université du Québec en Outaouais (UQO). "These results show that the effect of the circadian disadvantage transcends the type of sport being played and needs to be addressed for greater equity among the western and eastern teams in professional sports."
The study reviewed the past 5 years of regular season games in the NBA, NFL and NHL and noted the winning percentage of the visiting team depending on the direction of travel (east vs same time zone vs west), and the number of time zones crossed for every game. T-tests and ANOVAs were performed to study the effect of the circadian disadvantage and its direction on winning percentage.
Source: News Release


text:
This application note describes the benefits of using the new CellKey™ Small Sample 96W microplate for investigating endogenous receptor function in non-adherent cell lines and primary cells. The Small Sample microplate was designed to use significantly fewer cells per well while maintaining the same reliability and robustness as the CellKey™ Standard 96W microplate.
Analyzing endogenous receptors in non-adherent cell lines and primary cells with the CellKey™ Small Sample 96W Microplate
Primary cells provide the most biologically, and disease relevant context to study endogenous receptor function making them an attractive in vitro model system for drug discovery. However, primary cells can be prohibitively expensive for use in early stages of drug discovery. The CellKey™ Small Sample 96W microplate has a well-bottom area 1/20 the area of the CellKey™ Standard 96W microplate and uses a reduced assay volume. This enables pharmacological analysis of endogenous receptors in the context of primary cells at a significantly reduced cell number per well. In the following case study, data obtained using the Small Sample microplate was directly compared to data generated using the Standard microplate. The results demonstrate that the Small Sample microplate is ideal for cell-based secondary screening assays utilizing primary cells.
Company websiteMolecular Devices®


text:
Study shows yoga is effective at reducing anger, decreasing violence and producing strong, self-confident students.
Bullying and violence are a major problem in schools and among youth. This interview focuses on how yoga-based techniques are proving effective in bully proofing our children and classrooms.
Dee Marie, of Calming Kids Yoga, will share her ground-breaking program that teaches yoga and conflict management skills to youth giving them the skills needed to be calm and compassionate, strong and resilient. We'll also discuss the Harvard study results of the program. Also joining us is Cheryl Crawford (Grounded), with the program Quest for Elevation which is used in schools to teach yoga based techniques to combat bullying.
Find out how yoga can empower your children and stop bullying.
Enjoy this Shanti Generation video of teens talking about how yoga helps counter bullying.
Thanks to all who work to bring yoga based techniques into schools. As Dee mentions the number one anti-bullying skill yoga teaches youth is awareness. As children/teens become more aware of their body, their emotions, their words and their environment, they can make decisions and take action based on the yoga principle of Ahimsa: kindness to self and others.
Editor: Brianna Bemel
Like enlightened society on Facebook


text:
Inspection Control - Focus on Stamp Warranty
After completing this course, the student should be familiar with the basics and importance of the stamp warranty inspection control. The student should completely understand the procedures required for implementing and maintaining an inspection control program with a stamp warranty focus.
Why Learn about Stamp Warranty?
Aerospace projects consist of complex systems of interdependent components. To ensure that the entire system works properly, it is of utmost importance that all of its components are functional and integrated seamlessly. To guarantee this, it is necessary that the system and its components be inspected at different points throughout the project life. Inspection control and the uses of stamps allows you to keep track of the inspections that different components of the system have undergone. While this course describes the methods used by NASA, for academic payload projects you could adopt simpler versions of the inspection control procedures. The main purpose of proof of inspection is still valid for your project.
- What is Inspection Control?
- Personal Warranty in Inspection Control
- Inspection Control System
- Stamps and Marking Materials
- Stamp Designs
This course's structure is strongly based on NASA's SMA Technical Excellence Program (STEP) - "Inspection Control and Personal Warranty", SMA-QE-WBT-252 and "Inspection", SMA-QE-WBT-251, courses, images and content are courtesy of the NASA STEP program.


text:
Paging, or pagination, is the process of splitting a dataset into pages, reading one page at a time. This is useful for optimizing bandwidth traffic, optimizing hardware usage, or just because no user can handle huge amounts of data at once anyway.
RavenDB makes it very easy to work with paging. In fact, with large data sets, it makes it mandatory (see: Safe By Default).
It is as simple as specifying a page size and passing a starting point. Using Linq from the Client API, it looks like this:
// Assuming a page size of 10, this is how will retrieve the 3rd page: var results = session.Query().Skip(20) // skip 2 pages worth of posts.Take(10) // Take posts in the page size.ToArray(); // execute the query
Finding the total results count when paging
While paging you sometimes need to know the exact number of results returned from the query. The Client API supports this explicitly:
RavenQueryStatistics stats; var results = session.Query().Statistics(out stats).Where(x => x.Category == "RavenDB").Take(10).ToArray(); var totalResults = stats.TotalResults;
While the query will return with just 10 results,
totalResults will hold the total number of matching documents.
Paging through tampered results
For some queries, RavenDB will skip over some results internally, and by that invalidate the
TotalResults value. For example when executing a Distinct query,
TotalResults will contain the total count of matching documents found, but will not take into account results that were skipped as a result of the
SkippedResults is greater than 0 it implies that we skipped over some results in the index.
In order to do proper paging in those scenarios, you should use the
SkippedResults when telling RavenDB how many documents to skip. In other words, for each page the starting point should be
.Skip(currentPage * pageSize + SkippedResults).
For example, assuming a page size of 10:
RavenQueryStatistics stats; // get the first page var results = session.Query().Statistics(out stats).Skip(0 * 10) // retrieve results for the first page.Take(10) // page size is 10.Where(x => x.Category == "RavenDB").Distinct().ToArray(); var totalResults = stats.TotalResults; var skippedResults = stats.SkippedResults; // get the second page results = session.Query().Statistics(out stats).Skip((1 * 10) + skippedResults) // retrieve results for the second page, taking into account skipped results.Take(10) // page size is 10.Where(x => x.Category == "RavenDB").Distinct().ToArray(); // and so on...


text:
Fellowship / research funding
Competitive Scholarships and Awards
Descriptions of Laurier's competitive scholarships and awards opportunities are listed on the Student Awards Search Engine. Each description will indicate if it is an award or a scholarship as well as the eligibility criteria for each.
What are Competitive Scholarships and Awards?
Competitive awards are granted to students who submit their student profile on LORIS and who best meet the specific eligibility criteria for each award opportunity. Competitive scholarships are available to all students in any year of study including numerous opportunities available to first-year students.
A competitive scholarship is granted for outstanding academic achievement and factors such as extracurricular activities or volunteer work may also be considered.
An award is granted on a competitive basis for a combination of academic achievement and participation in extracurricular activities such as volunteer work or involvement in sports or clubs. Recipients of awards must always demonstrate financial need.
The online general student profile to apply for competitive scholarships and awards is made available each year in the summer (check your Laurier email for notices). The application deadline is typically late September of each year.
An endowed scholarship is granted from investment income generated by the original gift to the university. An annual scholarship is paid directly by the donor to the university on an annual basis.
The university reserves the right not to grant a specific scholarship if no eligible applicants are identified.
The stated value of scholarships is subject to change.
Scholarships offered by the university are tenable only at Laurier.
Opportunities which are listed on the website that are identified as being "endowed" (see under the description of each opportunity) are financed by investment income generated by gifts to the university. The university will grant up to a maximum of 4% of the value of these endowments depending upon the amount of interest income generated on an annual basis.
Consequently, these opportunities may or may not be available during any particular academic year due to the nature of financial markets. Any values which may quoted for these opportunities on the website represent the maximum amounts that may be available, not the actual amounts that will ultimately be granted.
Pauline Spencer Award for Community-Building at Laurier
This award is for a full-time senior undergraduate student who is actively working for the betterment of the university community through meaningful involvement in campus activities. The award can be granted to a student in any program at the Waterloo campus who is a Canadian citizen, permanent resident (landed immigrant) or protected person and who is also a long-term resident of Ontario. The student must have a minimum cumulative GPA of 8.0 and proven financial need.
Brantford Campus Office


text:
When importing tables into Cartographica using File > Import Table Data… Cartographica uses a sampling of the file to help determine the types of the data.
If the imported file is a DBF file, field information (name, length, and type) are taken directly from the schema in the file.
The process is as follows:
- First it scans the beginning of the file looking for delimiters to determine the end of line, field break, and field escape characters. Line breaks are expected to be either CR, LF, or CRLF.
- If you have marked the first line as containing the field names, they are taken as the field names and the line is skipped.
- A series of lines (usually 30) are read by Cartographica to sample the data for type information. All fields are originally presumed to be string (text) fields, but each of the fields in each of the lines is tested to see if they could also be another format, such as date or number.
- Once the lines are read and the testing is done, Cartographica makes a determination based on the data in the fields as to the type. If all read lines contain valid numbers, the field is presumed to be numeric; if all lines contain valid dates, the field is presumed to be dates; otherwise, it is taken as a string.
In versions prior to 1.4, if you encounter a situation where a field is mistakenly recognized as a date or number field, it is possible to remedy this by moving a line (or lines) that does not comply with that to the top of the file.


text:
Figure 8-6 Logger
The pressure sensor measurement line is indicated by the machined line around the logger body, just above the pressure access holes (Figure 8-6).
The pressure transducer is oriented in a plane normal to the long axis of the body, and detects pressure directed along the plane of the long axis. In vertical orientations, the sensor detects pressure above the pressure transducer line. In non-vertical orientations, the pressure zero point is proportional to the angle of inclination.


Porsbjär Nature Reserve
Porsbjär's nature alternates between heather-clad hills, foggy marshes, rugged cliffs and dark valleys in one of southern Sweden's few unspoiled wetland areas. It's wet, even in the summer, so make sure you are wearing waterproof shoes.
At the northern car park, a trail starts that takes you around the marsh. In summer, the fields light up in yellow from the bog asphodel and later on the marsh gentian turns it blue. In the wetlands you can, with some luck, see cranes, European golden plover or the Northern goshawk. If you head into the pine forest look for the boreal owl, capercaillie, grouse or the spotted nutcracker.
At the southern parking lot, you will find Laängen. Here, the low growing dwarf birch and moor rush are examples of plants that usually are only found in northern Sweden. The dwarf birch has survived here since the tundra vegetation of the ice age, but Porsbjär's high position over the sea and the abundant rainfall make it thrive.
From Route 25 go towards Ljungby. At Esmared, turn left towards the sign towards the nature reserve. Follow the signs which eventually leads you to Porsbjär's south parking. After about 8 kilometers there is a parking space along the road.
The northern parking lot can be found on the map above, as road signs are missing.


text:
iHeartRadio Intricacies: Avast Blocking Login Woes
Start by addressing any rule violations privately with those involved and attempt mediation if possible – sometimes all it takes is open communication and understanding among conflicting parties for harmony to be restored.
In situations where multiple similar channels exist, consolidation might be necessary to streamline your server's organization. However, deleting channels without proper planning can lead to confusion and frustration among members who were actively using them. To avoid this dilemma, consider merging similar channels into one or creating a new channel that encompasses the topics covered by the ones you plan to delete. This way, users won't lose access to ongoing discussions or feel left out.
Lastly, it is crucial to remember that deleting text channels should always be done with caution and consideration for your community's needs. Before making any decisions, take the time to evaluate whether deletion is truly necessary or if there are alternative solutions available.
Seek feedback from your community members through polls or open discussions – their input can provide valuable insights and help you make informed choices.
In conclusion, handling Discord dilemmas related to deleting text channels requires finesiHeartRadio Intricacies: Avast Blocking Login Woes
In today's digital age, music streaming platforms have become an integral part of our lives. One such platform that has gained immense popularity is iHeartRadio. With its vast collection of radio stations and personalized playlists, it offers a seamless listening experience to millions of users worldwide. can't login to iheartradio avast However, recently some users have been facing login issues with iHeartRadio due to Avast blocking the website. Let's delve into the intricacies of this problem and explore possible solutions.
Avast is a well-known antivirus software that provides protection against various online threats. It uses advanced algorithms to detect potentially harmful websites and prevent users from accessing them. While this feature is crucial for maintaining cybersecurity, sometimes it can lead to false positives where safe websites are mistakenly blocked.
Several iHeartRadio users have reported encountering login problems when trying to access the website or app while using Avast antivirus software.
This issue arises because Avast flags certain elements on the iHeartRadio platform as potential security risks, preventing users from logging in or accessing their accounts.
The reasons behind these false positives can be attributed to several factors like outdated virus definitions or conflicts between Avast and specific components used by iHeartRadio for authentication purposes. Regardless of the cause, being unable to log in can be frustrating for avid music lovers who rely on iHeartRadio for their daily dose of entertainment.
So what can you do if you're facing this issue? The first step is identifying whether your login woes are indeed caused by Avast blocking iHeartRadio. You can try disabling your antivirus temporarily and see if you're able to log in successfully without any error messages popping up.
If disabling Avast resolves the problem, then it confirms that your antivirus software was causing the blockage. In such cases, updating your virus definitions might help resolve any compatibility issues between Avast and iHeartRadio's authentication system.
Another solution could be adding iHeartRadio to the list of exceptions or exclusions in Avast's settings.


5 Key Points About the E/M History Component
When evaluating documentation for the history component of an evaluation and management (E/M) service, keep in mind:
2017-code-book-bundles-728x90-01
 1. A chief complaint is a medically necessary reason for the patient to be meeting with the physician. A readily identifiable chief complaint is the first step in establishing medical necessity. Without a chief complaint, the service is preventive.
 2. If documentation substantiates that the provider is unable to obtain a history from the patient or other source (e.g., the patient is unconscious), the provider is not penalized, nor are the overall level of medical necessity and/or provider work discounted automatically.
 3. When additional history is supplied by a family member or a caregiver and documented by the provider, this can be credited toward the medical decision-making (MDM) component of the service.
 4. A review of systems (ROS) and past family and social history (PFSH) taken from an earlier encounter may be cited without re-documentation for most payers. The provider should indicate the new status of the history and note where the original documentation may be found.
 5. The history component includes many subjective terms. For example, auditor A may argue that an element of the history of present illness (HPI) is a "quality," while auditor B may feel it is an "associated sign and symptom or other element." Auditors may differ as to whether "no known drug allergies" constitutes an element of ROS, or an element of PFSH. Because accurate coding relies on counting subjective elements, the correct interpretation requires consistency, verifiable references, a logical argument, and ultimately, medical necessity.
John Verhovshek
John Verhovshek
John Verhovshek, MA, CPC, is Managing Editor at AAPC. He has covered medical coding and billing, healthcare policy, and the business of medicine since 1999. He is an alumnus of York College of Pennsylvania and Clemson University, and a member of the Asheville-Hendersonville AAPC Local Chapter.
John Verhovshek
Latest posts by John Verhovshek (see all)
About Has 393 Posts
John Verhovshek, MA, CPC, is Managing Editor at AAPC. He has covered medical coding and billing, healthcare policy, and the business of medicine since 1999. He is an alumnus of York College of Pennsylvania and Clemson University, and a member of the Asheville-Hendersonville AAPC Local Chapter.
15 Responses to "5 Key Points About the E/M History Component"
 1. Joan Gilhooly says:
 1 (a) Don't forget that the chief complaint can be described by the provider's documentation of the history of present illness (HPI). It does not need to be a separate statement. The "DG" in the Medicare Documentation Guidelines simply states that "the medical record must clearly reflect the chief complaint".
 1 (b) Don't forget that a patient can still be asymptomatic but still have a medical complaint. A patient who is "feeling fine" or who has "no complaints" is not receiving a preventive service if the reason the physician wanted the patient to make this appointment was so that the status of their chronic medical problems could be evaluated.
 1 (c) It would probably be more accurate to say that there will be "no history of present illness" when the patient is receiving a preventive service — for the simple reason that if the reason for the visit is to provide a screening/preventive service, there is no medical problem to evaluate. Yes, that's the same as "no chief complaint". I just didn't want readers to misunderstand what the author was saying and "assume" that if there was no chief complaint STATEMENT, that the evaluation was automatically a preventive service.
 (2) Don't forget, though, that the provider is responsible for documenting that he/she has attempted to obtain information from other sources, though. You can't automatically credit the "unable to obtain history" because the PATIENT is unable to give it if the provider hasn't documented what the HAVE been able to obtain from family members, other caregivers, the patient's historical medical record, EMS staff, nursing home staff, etc.
 (3) While the Marshfield "points" system does allow one additional "point" for Amt/Complexity of data towards the overall complexity of MDM when history information is obtained by family members, realistically, this rarely IF EVER results in a higher level of service for the encounter. Go ahead and "count" it. But REALLY be cautious about reporting the higher level of service if this is the SOLE FACTOR on which the higher level of service hinges. Chances are if/when that happens, the lower level of service (the one you would have had without that extra "point") is generally the right level of service for the TRUE clinical complexity of the encounter.
 (4) In the office setting, a complete ROS and PFSH obtained from an earlier encounter is ONLY required, coding-wise, when the encounter otherwise should be reported with 99215. 99214 only requires a minimum of 2 ROS and 1 PFSH (which you'll get if the office checks the patient's meds at each office visit. As coders and auditors, we should discourage the physician from automatically referring to previously obtained ROS and have them focus on documenting only that ROS that was medically necessary for them to obtain for today's encounter.
 (5) (a) "No known allergies" is NEVER ROS for the "Allergic System". Look at the CPT manual. It tells you that ROS is an inventory of *signs* and/or "symptoms", which the statement "no known drug allergies" certainly is NOT!! "No know drug allergies" is ALWAYS part of the patient's past medical history (ie, it's a PFSH element).
 5 (b) Re: HPI elements, I've got a problem with this, too. 99.9% of the time when I see auditors classifying the same phrase as different HPI elements, what I'm seeing is people who don't understand the clinical context of what they're reading. A "quality" statement is always going to be stated as an adjective like "burning", "stabbing" "dark", "green", clear". There is absolutely no way that one auditor would call a piece of HPI information as "quality" when another would call it "associated signs/symptoms" unless one (or both??) of them didn't know the clinical significance of the information they were looking at. I've been teaching E/M since the codes came out in 1992 and auditing (and teaching auditors) for more than 15 years. And I can say with absolute certainty that there's only a couple of HPI elements where — from a clinical perspective – on a particular record there might be some debate. Quality vs severity is one and quality vs timing is another — and that's simply because severity statements and timing statements are sometimes expressed with adjectives too.
 That said, though, I agree with the author's final statement that accurate E/M coding relies on "… the correct interpretation requires consistency, verifiable references, a logical argument, and ultimately, medical necessity".
 2. Amanda says:
 I diasgree with "(b) Don't forget that a patient can still be asymptomatic but still have a medical complaint. A patient who is "feeling fine" or who has "no complaints" is not receiving a preventive service if the reason the physician wanted the patient to make this appointment was so that the status of their chronic medical problems could be evaluated."
 We just had a Panacea audit where we were told that even IF they have chronic problems without complaints, and they've scheduled a px, it is preventive, BUT you can charge an E/M along with the preventive if they're prescribing meds for those chronic problems that may be addressed….
 3. Pam says:
 I think that the issue you encountered with your audit may have to do with the way that the provider worded their note. For example, if you have a patient who has diabetes and is being seen for their diabetes but states they are feeling fine and have no complaints, that does not automatically make that visit preventive. If it were not for the fact that the patient has diabetes they would not be in the office today. Therefore, this is not a preventive visit and would not warrant the use of codes 99381-993957. Codes 99201-99215 would be the appropriate codes in this situation.
 4. Kathy says:
 Joan,
 Thank you for your comprhensive response. I had a lot of the same thoughts when I first read this article. I have one question for you regarding counting allergies in ROS vs. PMH. I agree with your statement regarding the "NKDA" and have never counted that as part of the ROS. My question is, when is it appropriate to count an allergy in ROS? Is it when the patient has an allergy to a drug or other substance such as pollen, cat/dog dander, etc.? Or does it need to be related to the HPI in some way, such as patient presents with runny nose, itchy eyes, sneezing,


text:
Drug Sentece Context
Table 1. Analysis of context sentence of guanfacine gene in 1 abstracts.
|33229969||Brian's developmental pediatrician initiated guanfacine (eventually adding a small dose of aripiprazole) and referred the family to psychology for weekly telehealth behavioral parent training to address behavioral concerns using the Research Units in Behavioral Intervention curriculum.1Brian's behavioral problems decreased during the initial weeks of the COVID-19 crisis, when he no longer had to leave home or attend special education. […] The developmental pediatrician continued to modify the medication regimen over the summer, transitioning Brian from guanfacine to clonidine and increasing his aripiprazole incrementally (with clear increased benefit); hydroxyzine was also used as needed during the episodes of highest intensity.Despite the availability of best-practice guidelines for children with Brian's presenting concerns,2 a confluence of barriers (geographic, economic, ABA work force, global pandemic, etc.) present serious questions for his family and care team related to the next steps in Brian's care.|


text:
Table of Contents
Discover which farm animals can survive better outdoors. Learn about the hardy breeds and their natural adaptations to different climates.
When it comes to raising farm animals, many people often wonder which ones can survive outside better. Whether you're a seasoned farmer or just starting out, it's essential to know which animals can thrive in outdoor conditions. From chickens to goats and pigs, there are various creatures that can withstand different weather conditions. However, some animals are more adaptable than others. So, if you're considering raising farm animals, you must understand the key factors that determine which ones can survive outside better.
While not all farm animals are suited to outdoor living, many can easily survive and even thrive outside with the proper care and attention. By providing appropriate shelter and access to food and water, farmers can help their animals live happy, healthy lives in the great outdoors.When it comes to outdoor farming, there are certain animals that are better suited for survival than others. Some hard-hooved herd animals like the bison can handle extreme weather conditions with ease. Their ability to walk through deep snow, swim in freezing water, and withstand harsh wind chill make them a formidable force in the wild. Another furry and fierce animal that thrives in sub-zero temperatures is the yak. With their thick fur coats and fierce attitude, they are well-equipped to fight off predators and survive in harsh environments. Heat-tolerant hoofstock animals like the impala are unique creatures that thrive in hot, arid environments. They have specialized adaptations like elongated snouts that allow them to regulate their body temperature and maintain hydration. Desert dwellers like the camel are also well-suited for outdoor farming. Their distinctive humps store fats that provide energy and hydration, while their specialized kidneys allow them to retain more water in their bodies. Foragers extraordinaire like the goats are expert scavengers that can survive in a variety of outdoor environments. Their strong digestive system allows them to eat almost anything, making them a great choice for farmers with limited resources. Flighty and free animals like the chicken may not be able to fly very well, but in the wild, they can soar to great heights, allowing them to evade predators. Their compact size also enables them to find hiding spots in difficult terrain. The spirit of the tundra, the reindeer, are members of the deer family that are well-adapted to life in the cold. Their thick fur coats, large hooves, and ability to dig through snow give them an edge in harsh winter conditions. Aquatic avians like ducks are excellent swimmers that can survive in almost any water body. They are also comfortable on land, making them a versatile animal for outdoor farming. Mighty mammals like the sheep are hardy animals that can survive in a range of outdoor environments. Their thick wool provides insulation, making them well-suited for colder climates, while their tough hooves and resilience make them great at handling unpredictable weather. Finally, the runner-up, the ostrich, is a flightless bird that can run up to 40 miles per hour. They are more agile than most other farm animals and can go without water for extended periods, allowing them to stay alive in harsh, dry regions.
Once upon a time, there was a farmer who had a vast farm filled with different kinds of animals. He loved his animals dearly and always made sure they were well taken care of. However, as the winter season approached, he became concerned about which farm animals could survive outside better.
As he pondered on this, he realized that some animals were more adapted to living in cold weather conditions than others. Here are some of the animals he discovered could survive outside better:
- Cows: Cows are very hardy animals and can withstand cold temperatures as low as -40 degrees Fahrenheit. They have thick hides and layers of fat that help insulate them from the cold. They also have the ability to generate heat through their rumen (stomach) fermentation.
- Sheep: Sheep are also hardy animals that can survive in cold temperatures. They have thick woolen coats that insulate them from the cold and keep them warm. They also have the ability to generate heat through their metabolism.
- Goats: Goats are very adaptable animals that can survive in different weather conditions. They have thick fur coats that keep them warm in the winter. They also have the ability to regulate their body temperature by panting or sweating.
- Pigs: Pigs have a thick layer of fat that helps insulate them from the cold. They also have a thick skin that protects them from the harsh winter weather. However, they do require shelter from extreme cold and wind.
On the other hand, some farm animals may not be able to survive outside in harsh winter conditions. These include:
- Chickens: Chickens are vulnerable to the cold and can suffer from frostbite and hypothermia. They need to be kept in a warm and dry environment during the winter season.
- Ducks: Although ducks are water birds, they are not adapted to living in cold temperatures. They need a warm and dry shelter to protect them from the cold.
- Rabbits: Rabbits are not adapted to living in cold temperatures and can suffer from hypothermia. They need to be kept in a warm and dry environment during the winter season.
- Horses: Horses have a thin skin that makes them vulnerable to the cold. They also require more food to generate heat in cold weather conditions. They need to be kept in a warm and dry shelter during the winter season.
As the farmer continued to learn about which farm animals could survive outside better, he made sure to provide his animals with the proper care and shelter they needed to stay healthy and happy throughout the winter season.
Well, that's all for now folks! I hope you enjoyed learning about the different farm animals that can survive better outside. It's always fascinating to know how nature has equipped these creatures to thrive in their environment. From thick woolly coats to strong hooves, each animal has unique adaptations that make them resilient to the elements.
One thing we learned is that not all farm animals are built the same. Some like the pig and the chicken are not well suited for outdoor living. They need a controlled environment to thrive. On the other hand, animals like the goat and the cow are much more adaptive and can handle harsh weather conditions. It's essential to understand which animals can survive outside so that we can provide them with proper care and housing.
Finally, it's worth mentioning that while some animals can survive better outside, they still need our help to stay healthy and happy. Proper nutrition, shelter, and veterinary care are crucial components of animal welfare. As responsible caretakers, we must ensure that our animals are well taken care of, whether they live inside or outside.
Thank you for reading, and I hope you gained some valuable insights into the world of farm animals. Remember, every creature deserves respect and kindness, no matter where they live.
People also ask about what farm animals can survive outside better, and the answer is quite simple. There are several types of farm animals that are better suited to live outdoors and thrive in different climates. Here are some of the most common:
- Chickens – Chickens are one of the most adaptable farm animals and can survive in a wide range of temperatures. They are great foragers and can find their own food, making them ideal for free-range farming.
- Goats – Goats are hardy animals that can thrive in hot or cold environments. They are excellent climbers and can graze on rough terrain, making them ideal for grazing land.
- Pigs – Pigs are tough animals that can handle cold temperatures. They are good foragers and can eat a variety of foods, including grass, vegetables, and fruits. They are also very adaptable and can be raised in a variety of environments.
- Cows – Cows are well-suited for outdoor living and can graze on grass and other vegetation. They are also very hardy and can withstand cold temperatures and harsh weather conditions.
- Sheep – Sheep are adaptable animals that can survive in a variety of environments. They are excellent grazers and can eat a variety of plants, making them ideal for pasture-based farming.
It's important to note that while these animals can survive outdoors, they still require proper care and shelter to stay healthy and comfortable. Farmers should provide adequate food, water, and shelter to ensure their animals are well-cared for and able to thrive.


Dynamic response of a buried pipeline, under the action of the fall of rocks on the soil
Safety assessment of a buried pipeline potentially subject to rockfalls
ABSTRACT
Oil or gas pipelines that cover long distances pose complex design challenges. Every environment the pipeline crosses is characterized by different potential geohazards. One of the most dangerous for a pipeline is a rockfall. This specific geological hazard, therefore, requires detailed analysis, particularly for the design of onshore pipelines. The virtual representation of the phenomenon has to be as realistic as possible; it is best approached with Finite Element Analysis which allows engineers to accurately analyse problems with high-speed, highly nonlinear dynamics. This article describes how the engineers simulated different types and impacts of rockfalls to measure their effect on different configurations of the soil and the buried pipeline below it to find the optimal burial depth and composition for the backfill soil to ensure the pipeline's safety.

Safety assessment of a buried pipeline potentially subject to rockfalls

Safety assessment of a buried pipeline potentially subject to rockfalls
The construction of an oil pipeline or a gas pipeline over a long distance is an activity that requires a complex design. The several environments it may cross can be characterized by different geohazards to which the pipeline is subject. Among geological Hazards, rock fall is one of the most dangerous to be analyzed during onshore pipeline design. Therefore, the possibility to virtually replicate this phenomenon in a realistic way is of fundamental importance. This type of phenomena can be well simulated by means of finite elements explicit analysis, since it allows to analyze the problems of highly non-linear fast dynamics.
The aim of this activity is to investigate the dynamic response of the buried pipeline, under the action due to the fall of rocks on the soil. The objective is to evaluate the pipeline stress values considering different impact conditions: rock kinetic energy, weight and angle of impact. ANSYS WB has been adopted for model generation and AUTODYN has been used as solver. The main demand is that, in different configurations, the state of tension on the pipeline is less than the yield stress.
The investigation concerns integrity check of the pipeline, considering possible falling scenarios as a result of the geohazard risk assessment. Information related to possible scenarios of falling rocks have been provided by SAIPEM and are summarized here below:
 - Size of the boulders as a function to the temporal probability of fall.
 - Kinematic data of each boulder:
 - The position of altitude and distance from the pipeline.
 - Kinetic energy as a function of the position.
 - Height of bounce.
On the basis of such information, it has been possible to define a sensitivity study so to verify the pipeline safety conditions, in relation to the scenarios, varying the following parameters:
 - Boulder speed.
 - Angle of impact on the ground.
 - Weight of the rock.
Fig. 3 - Geometry isometric view
Fig. 4 - Geometry - Section view
Fig. 5 - Mesh

A parametric 3D CAD model has been elaborated. The model consists of a primary volume that represents the ground where the steel pipe buried is buried and backfilled and protected at the top by a concrete slab. The model is completed by a cubic boulder close to the ground surface. In Figure 3 and Figure 4 two images shown the environment that has been simulated, while Figure 5 show the mesh. In agreement with Saipem, a completely parametric model was generated, so to be able to quickly modify, the boulder size, pipeline burial depth and the backfilling soil mechanical characteristics, with the aim of identifying the most critical conditions. In addition the impact configuration is the most burdensome possible; as it can be seen from the images (Figure 3), the rock impacts on the long edge, so to investigate the worst impact conditions. In the initial phase the parameterization was used to define the length and the minimum width of the simulation environment, which is necessary not to have edge effects. In the subsequent phases, the geometrical parameterization was used to verify the improvements on the results, due to the variation of the pipeline burial depth.
The materials used to model the soil and the concrete have been obtained from ANSYS Autodyn database. For the pipeline the StE 445.7 TM has been adopted. Materials used are listed in the following table:
Tab. 1 – Materials and materials colour legend
The Figures 3 and Table 1 clearly describe how the materials have been assigned to the single components of the model. Each color refers to a single material as shown in Table1. For the fall line 7, 8 and 9 the concrete layer is not present, the material of this layer is switched into "soil landstone" as for the remaining soil around the pipeline. The rock is modeled as rigid.
Boundary Conditions
A fixed constraint is applied around and under the assembly (blue color in Figures 6); furthermore on the same faces (red color in the Figures 7), the impedance boundary condition has been applied; this setting permits to avoid the birth of reflected waves at the borders of the model; in other words the continuous waves beyond the constraint without being reflected. The contacts between each components are frictional with friction coefficient equal to 0.3.
In each analysis the Standard Earth gravity acceleration is applied and the rock has an initial velocity derived from the energy provided by the geohazard risk assesment report and a specific impact angle (Figures 8).
Fig. 6 – Fixed surfaces loads
Fig. 7– Impedance boundary
Fig. 8 - initial velocity applied to the rock
Fig. 9 - Total Deformation environment section 1
Fig. 10 - Total Deformation environment section 2
Fig. 11 - Equivalent Von Mises stress on the pipeline
Results
27 simulations were carried out; for each fall line, the total deformation of the entire assembly and the equivalent Von Mises Stress on the pipeline at the time, at which the worst condition occurs, are shown. In the following images are showed the basic output values that have been calculated.
Conclusions
In this study the behaviour of a buried pipeline under the action of indirect loads due to falling rocks was analyzed, by means of simulations with the explicit code AUTODYN. The impact conditions were taken from the geohazard risk assessment report provided by SAIPEM.
The results have shown the behaviour of the soil-pipeline system in different configurations and the related values of stress of the pipe. Such information allowed Saipem to investigate how pipeline burial depth influences the structural behaviour of the pipe subject to ground surface rock fall impacts.
Table 2 summarizes the results for each line of drop, considering the worst impact configuration, therefore more conservative one.
Downstream of these simulations, it could be taken into account the creation of response surface, using modeFRONTIER, as a function of the parameters of the rock (speed, size, angle of impact) and the soil (thickness above the pipeline), in order to assess in a fast and efficient way to other possible critical configurations.
Newsletter EnginSoft Year 13 n°3
Massimo Tomasi | EnginSoft

Fig. 1 - Fall lines

Fig 2 Profile of fall - kinematic quantities boulders

Tab. 2 - Kinematic configuration, safety conditions, Added thikness soil in order to improve the safety, safety conditions after Added soil thikness
Find out more:
software
Ansys
Explore Pervasive Engineering Simulation
Ansys offers a comprehensive software suite that spans the entire range of physics, providing access to virtually any field of engineering simulation that a design process requires
ansys
Read More
NEWSROOM
Stay connected with our news, analysis and trends from our experts

Read More
MEDIA CENTER
Scroll through our Media Center to view all the videos, video-tutorials and recorded webinars
Media Center
CASE STUDY
Treating residual stresses and deformations in die castings
Virtual simulation during product and process design improves time to market and cost efficiency
This technical article illustrates the advantages of using virtual simulation to evaluate the thermal processes of die casting to reduce the formation of residual stresses and deformations in the components produced.
metal-process-simulation mechanics magma
Read More


text:
Powered by Science
Funded by NSF, the Powered by Science project is a serious game designed as a useful classroom tool for supporting instruction in science, math, and reading comprehension. The SGES game challenges students in seven regionally prominent energy sources built around fictional cities. The final application will be built for desktop computers and tablet mobile devices.
The game includes an instructional management tool that gives the teacher the ability to set which energy sources and which cities the students investigate, and in what order. This allows the teacher to prioritize instruction to the relevancy of the students' environment or a topic that is new to the student. Additionally the SGES teacher management tool provides classroom management in the form of "rostering" and "grade-booking" tools for the teacher to support assessment of the students' time on task, progress, and skill development. Teachers can produce reports (grade books) on individual students or an entire class.


text:
If propane vapor contains too much water vapor, cooling upon pressure reduction can lead to ice formation in valves and regulators, a situation that can cause operational problems for the fuel user. It has long been known that the addition of methanol to propane can reduce or eliminate fuel freezing problems. This document discusses the physical behavior of LP gas, methanol, and water, and methods of measuring the concentrations of water and methanol, as well as possible implications for fuel tank corrosion and fuel vaporization.
For a condensed look at the report's findings, simply download the fact sheet here.
You can also download the guide for treating propane with methanol to prevent freezing of valves and regulators.


Monday, July 25, 2016
Transmission of Classified Information
This article continues the series covering the Self-Inspection Handbook For NISP Contractors and guidance found in the National Industrial Security Program Operating Manual (NISPOM) Incorporating Change 2.
The transmission of classified information is an important concern. Classified information should be controlled as it enters and leaves each facility. Each facility that has a CAGE Code should have it's own transmission process meeting NISPOM requirements. How is yours doing? Lets find out.
Are procedures established for proper receipt and inspection of classified transmittals?
Here's what NISPOM says on the subject. Our narrative follows:
5-202. Receiving Classified Material. Procedures shall be established to ensure that classified material, regardless of delivery method, is received directly by authorized personnel. The material shall be examined for evidence of tampering and the classified contents shall be checked against the receipt. Discrepancies in the contents of a package or absence of a receipt for TOP SECRET and SECRET material shall be reported promptly to the sender.
How to apply the NISPOM (some of this article is from the book DoD Security Clearance and Contracts Guidebook)
Receipt by authorized personnel
The FSO should ensure all arriving classified information is inspected and received into accountability by authorized personnel. Many cleared contractors establish a centralized classified information holding where all classified is processed in and out of the facility and is managed like a library. Others have classified information dispersed throughout the facility where needed. Either way works depending on how it is managed. Regardless of where classified information is stored, it must be properly received by the authorized cleared employees.
Classified information should arrive in the same condition it was shipped in and contain the exact information as it left with. Due diligence is necessary to ensure that classified information has not been compromised, is related to a contract, and is properly marked.
Inspecting or examining the received material begins with looking at the outside package and looking for condition. Regardless of transmission methods of physical items (mail, courier, overnight, hand carry and etc.) classified material should be double wrapped. Each layer serves to protect the classified material from inadvertent and unauthorized disclosure and should be properly addressed. Anything ripped or seemingly re-taped should be further investigated.
Detailed Inspection Requirements
Regardless of transmission methods, the recipient should examine the outer wrapping for evidence of tampering or to compromise of classified material. Classified material should be double wrapped with two independent layers of protection. Each layer should consists of opaque material such as an envelope, paper, box or other strong wrapping material.
The receiver should look for evidence of tearing, ripping, re-wrapping or some other means of unauthorized access to the material. Then review the shipping label for a classified mailing address and return address. There should be no classification markings on the outer layer of the item as classification markings on the outside of a package are a security violation.
The inner layer should be inspected the same way as the outer layer for evidence of tampering or unauthorized disclosure (Figure 1). However, the inside wrapping should contain the full address of the recipient as well as classification markings on the top, bottom, front and back, and sides (Figure 2). TOP SECRET and SECRET material should have a packing list or receipt. Receipts are not necessary with the shipment of CONFIDENTIAL material. If a receipt is included, the receiver should sign it and return it to the sender.
Figure 1 Torn outer cover of classified package
The receiver should then check the receipt against the contents to ensure the items are listed correctly and accounted for. The properly filled out receipt should list the sender, the addressee, and correctly identify the contents by an unclassified title and appropriate quantity. Since the receipt may be filed for administrative and compliance purposes, the inspector should ensure it contains no classified information.
Figure 2 Properly marked classified package (inner wrapper)
The receiver should compare the classification marking on the contents with the wrapper and the receipt to once again verify the classification level and prevent unauthorized disclosure.
Any problems resulting from the examination and inspection should be addressed with the sender. Both should determine whether or not a security incident exists or other explanation. Sometimes packages are ripped, poorly wrapped, or damaged during shipment. The parties should make that determination.
If the shipment is in order, the receipt shall be signed and returned to the sender. If a receipt is included with CONFIDENTIAL material, it shall be signed and returned to the sender.
Once all the checks and verifications are complete, the receiver can then sign a copy of the receipt and return to the sender, thus closing the loop on the sender's accounting responsibilities.
Capture names of employees authorized to inspect and transmit classified information.
Record of authorized employee securitytraining.
Keep a pedigree of all transmitted classified information from receipt to final disposition. This is a receipt log that explains the lifecycle of classified information as received, stored, transmitted or destroyed.
Present classified transmission procedures if written.
Jeffrey W. Bennett, ISP is the owner of Red Bike Publishing Red Bike Publishing. He regularly consults, presents security training, and recommends export compliance and intellectual property protection countermeasures. He is an accomplished writer of non-fiction books, novels and periodicals. Jeff is an expert in security and has written many security books including: "Insider's Guide to Security Clearances" and "DoD Security Clearances and Contracts Guidebook", "ISP Certification-The Industrial Security Professional Exam Manual", and NISPOM/FSO Training".
No comments:


Programming Field
'>>' (Append redirection) - DOS/Command Prompt Reference
Appends output of the command, specified on the left side of the symbol, to the end of the file, specified on the right side.
Syntax
<command> [<num>]>> <file-name>
<command> [<num>]>>&<num>
<command> Specifies the command line to send output to the file.
<file-name> Specifies the file name for output.
[<num>] [Windows NT series] Specifies the handle number of redirection source. The handle number can be '1' (standard output (STDOUT)) or '2' (standard error (STDERR)), and those output will be redirected. If the handle number is not specified, '1' (STDOUT) will be used.
&<num>
[Windows NT series] Specifies the handle number of redirection target. The handle number can be '1' (standard output (STDOUT)) or '2' (standard error (STDERR)), and output will be written to those target. For example, Echo command usually prints strings to standard output, but if you specify '>>&2' at the end of the command line, you can print strings to standard error.
The above syntaxes are the same as '>'.
Details
Usage of '>>'
Append redirection is similar to output redirection, but different that append redirection will write the data to the end of the file (not overwrite the file). Append redirection will not reset the file, so if you want to reset, you should use normal output redirection.
Samples
Sample
echo First Line> out.txt
echo Second Line>> out.txt
Make the contents of 'out.txt' to 'First Line(newline)Second Line(newline)'.