[libvirt] [RFC] Memory controller exploitation in libvirt
 Subject: [RFC] Memory controller exploitation in libvirt
 Memory CGroup is a kernel feature that can be exploited effectively in the
 current libvirt/qemu driver. Here is a shot at that.
 At present, QEmu uses memory ballooning feature, where the memory can be
 inflated/deflated as and when needed, co-operatively between the host and
 the guest. There should be some mechanism where the host can have more
 control over the guests memory usage. Memory CGroup provides features such
 as hard-limit and soft-limit for memory, and hard-limit for swap area.
 Design 1: Provide new API and XML changes for resource management
 All the memory controller tunables are not supported with the current
 abstractions provided by the libvirt API. libvirt works on various OS. This
 new API will support GNU/Linux initially and as and when other platforms
 starts supporting memory tunables, the interface could be enabled for
 them. Adding following two function pointer to the virDriver interface.
 1) domainSetMemoryParameters: which would take one or more name-value
 pairs. This makes the API extensible, and agnostic to the kind of
 parameters supported by various Hypervisors.
 2) domainGetMemoryParameters: For getting current memory parameters
 Corresponding libvirt public API:
 int virDomainSetMemoryParamters (virDomainPtr domain,
 virMemoryParamterPtr params,
 unsigned int nparams);
 int virDomainGetMemoryParamters (virDomainPtr domain,
 virMemoryParamterPtr params,
 unsigned int nparams);
 Parameter list supported:
 MemoryHardLimits (memory.limits_in_bytes) - Maximum memory
 MemorySoftLimits (memory.softlimit_in_bytes) - Desired memory
 MemoryMinimumGaurantee - Minimum memory required (without this amount of
 memory, VM should not be started)
 SwapHardLimits (memory.memsw_limit_in_bytes) - Maximum swap
 SwapSoftLimits (Currently not supported by kernel) - Desired swap space
 Tunables memory.limit_in_bytes, memory.softlimit_in_bytes and
 memory.memsw_limit_in_bytes are provided by the memory controller in the
 Linux kernel.
 I am not an expert here, so just listing what new elements need to be added
 to the XML schema:

 * Support all the tunables exported by the kernel
 * More tunables can be added as and when required
 * Code changes would touch various levels
 * Might need to redefine(changing the scope) of existing memory
 API. Currently, domainSetMemory is used to set limit_in_bytes in LXC and
 memory ballooning in QEmu. While the domainSetMaxMemory is not defined in
 QEmu and in case of LXC it is setting the internal object's maxmem
 * Later on, CPU/IO/Network controllers related tunables can be
 added/enhanced along with the APIs/XML elements:
 * libvirt-cim support for resource management
 Design 2: Reuse the current memory APIs in libvirt
 Use memory.limit_in_bytes to tweak memory hard limits
 Init - Set the memory.limit_in_bytes to maximum mem.
 Claiming memory from guest:
 a) Reduce balloon size
 b) If the guest does not co-operate(How do we know?), reduce
 Allocating memory more than max memory: How to solve this? As we have
 already set the max balloon size. We can only play within this!
 * Few changes
 * Is not intrusive
 * SetMemory and SetMaxMemory usage is confusing.
 * SetMemory is too generic a name, it does not cover all the tunables.
 * Does not support memory softlimit
 * Does not have support to reserve the memory swap region
 * This solution is not extensible
IMO, "Design 1" is more generic and extensible for various memory


Adam Kennedy > PITA-0.60 > PITA
Annotate this POD
New 2
Open 0
View/Report Bugs
Module Version: 0.60 Source
PITA - The Practical Image Testing Architecture
The primary focus are the various types of problems that go beyond your individual system and setup. Problems that have typically been a Pain In The Arse to do right.
Nightly Testing
Alternatively known as Periodic Testing, this involves running the same tests on the same code periodically (for example, nightly) to very that code involving an external or unstable system is still working.
Smoke Testing
Continuous testing of the head of a rapidly evolving software project directly from the software repository.
Platform-Neutrality Testing
Testing software packages on a variety of operating systems and configurations to ensure software works across all of them.
Hardware Compatibility Testing
Testing of software packages involving compiled languages on many different processor architectures to ensure software works on all of them.
Dependency Testing
Verifying that software works with the language versions it claims to, and that there are no undeclared dependencies, or other problems occuring during recursive dependency installs.
Rot Testing
"Bit rot" is a phenomenon where software gets new bugs or breaks entirely because of changes to the modules or operating system that the software runs on top of.
Rot Testing involves automatically retesting the same software package whenever a new version of one of it's dependencies is released, so that failure due to other people's changes can be detected quickly.
Fallout Testing
When a software package like perl releases a new version that adds or changes features (or even fixes bugs) there can be thousands of packages and millions of lines of code that will be impacted by the changes. And the more code impacted, more higher chance of causing bugs.
Fallout Testing involves testing hundreds or thousands of software packages with a new version of a dependency to verify that changes will not cause damage down-stream.
How Does It Work
Packages such as Test::More and Test::Builder have worked from the inside out, starting with a single test and working towards more and more-varied types of testing.
PITA works from the outside-in. Way outside.
The fundamental unit in PITA is an "Image", a virtual hard drive that PITA puts inside a virtual computer with a virtual CPU (of various types) with virtual hardware (of various types).
On the Image you can install any operating system you like, just like on real hardware, and set the operating system up with any packages and any languages in any configuration you like, and at the end, install a small piece of software onto the Image that is setup to run at startup time.
And then you save the Image.
You can create a few or as many of these PITA Images as you like, trade them with other developers or distribute them within your company (licenses permitting).
With a set of Images in place, PITA can take a software package and inject it an Image where the image manager executes a testing scheme on the package, captures the results, and spits it out for collection as an XML file.
And this process can be repeated over, and over, and over again. It gets repeated as many times as is needed, as often as is needed, on as many packages is necesary, across a set of Images that provide a particular testing solution.
This method can distributed or clustered extremely easily, and by introducing flexbility through the use of plugins, PITA can be made to work with multiple emulators (such as VMWare or Qemu) and allow the testing of multiple types of packages (Perl 5, Python, Java, C) or even allow you to define your own specialised testing schemes.
And further, it lets you seperate the collection of the results from the analysis of the results. With only enough analysis embedded inside the testing scheme for it to know if and when to abort the testing sequence, a PITA installation will primarily just spit out a whole pile of XML reports.
These reports can then be stored and run through analysis routines seperately. And if the analysis code is improved, you can rerun the analysis over old results with minimal effort.
How Do I Get Started
PITA is currently in development, and not ready for general use.
That said, the XML format and object code is completed, the Image Driver API and the Test Scheme Driver API are working, and a proof of concept has been completed.
So it works now. It just isn't friendly enough yet.
Work is currently underway on the components for managing sets of images, for scheduling and managing the tests to be done, and for implementing basic clustering.
PITA is expected to debut with very specific custom solutions for implementing smoke testing for groups like pugs, Parrot, and CPAN.
So stay tuned for further news.
And if you would like to experiment or play with PITA in the mean time, go ahead. That's why it's on CPAN.
Bugs should be reported via the CPAN bug tracker at
For other issues, contact the author.
Adam Kennedy <>,
The Practical Image Testing Architecture (
PITA::XML, PITA::Scheme, PITA::Guest::Driver::Qemu
Copyright 2005 - 2011 Adam Kennedy.
syntax highlighting:


The first rule of Fruit Fly Fight Club: Flies can't talk about Fruit Fly Fight Club. Because they can't talk at all. At least not to humans.
Researchers at Harvard Medical School took a break from studying lobster fighting and shifted their focus to fruit fly fights, and even mutant fruit fly fights.
(Via The Annals of Improbable Research.)
Fruit flies are strange creatures. Or perhaps it's that fruit fly researchers are strange creatures.
One of my cousins was a fruit fly researcher. She took fruit fly testicles and squashed them and then studied them under a microscope, looking for... something... I forget. I think just finding the fruit fly testicles in the first place was accomplishment enough.
Fruit fly researchers like to give their discoveries strange names. Typically, a gene is named after what results when you disable it. For example, a gene without which fruit flies die in two days is named Kenny, after the South Park character.
My favorite: The gene without which fruit flies get drunk really easily is called cheap date. (That last page has several more funny gene names.)
Yes, that's right. Fruit flies get drunk. There's a fruit fly drunk-o-meter, though I forget how it works. But one amusing aspect of fruit fly drunkenness is that just before they finally pass out, there's a big burst of activity.
Strange gene naming has spread beyond the fruit fly world. There is a human gene named sonic hedgehog after the Sega video game character. (It's related to the fruit fly gene "hedgehog", so named because disabling it causes the fly to develop into a ball with spikes.)


Serialization - extended_type_info
C++ Boost
Runtime Interface
The serialization library needs a system like type_info/typeid() to perform the following functions
 1. given a pointer to a type T discover the true type pointed to.
 2. given an "external" key - determine what type of object to create.
The problem with std::type_info
extended_type_info is an implementation of std::type_info functionality with the following features: Exported types are maintained in a global table so that given a string key, the corresponding type can be found. This facility is used by the serialization library in order to construct types serialized through a base class pointer.
Runtime Interface
namespace boost {
namespace serialization {
class extended_type_info
 // this class can't be used as is. It's just the
 // common functionality for all type_info replacement
 // systems. Hence, make these protected
 const char * m_key;
 extended_type_info(const unsigned int type_info_key);
 void key_register(const char *key);
 const char * get_key() const {
 return m_key;
 bool operator<(const extended_type_info &rhs) const;
 bool operator==(const extended_type_info &rhs) const;
 bool operator!=(const extended_type_info &rhs) const {
 return!(operator==(rhs));
 // for plugins
 virtual void * construct(unsigned int count = 0,...) const;
 virtual void destroy(void const * const p) const;
 static const extended_type_info * find(const char *key);
} // namespace serialization
} // namespace boost
Generally, there will be one and only one extended_type_info instance created for each type. However, this is enforced only at the executable module level. That is, if a program includes some shared libraries or DLLS, there may be more than one instance of this class correponding to a particular type. For this reason the comparison functions below can't just compare the addresses of this instance but rather must be programmed to compare the the actual information the instances contain.
extended_type_info(unsigned int type_info_key);
This constructor should be called by all derived classes. The argument should be the particular implementation. For this default implementation base on typeid(), this is the value 1. Each system must have its own integer. This value is used to permit the inter-operability of different typeinfo systems.
void key_register(const char *key);
Assign a unique character string identifier to this extended_type_info instance and add it to the corresponding global trable. This key is used to identify a type accross different instances of the program. In this way, one instance may know what type to create when necessary. For this purpose, it must be the same in all program instances which refer to the same type.
It may sometimes be referred to as a GUID - a Global Unique IDentifier.
const char *get_key() const;
Retrieves the key for extended_type_info instance. If no key has been associated with the instance, then a NULL is returned.
bool operator<(const extended_type_info & rhs) const;
bool operator==(const extended_type_info & rhs) const;
bool operator!=(const extended_type_info & rhs) const;
These functions are used to compare two extended_type_info objects. They a strict total ordering on all instances of this class.
Construct a new instance of the type to which this extended_type_info record corresponds. This function takes variable list of up to 4 arguments of any type. These arguments are passed to the type's constructor at runtime. In order to use the facility, one must declare a type sequence for the constructor arguments. Arguments for this function must match in number and type with those specified when the type was exported. This function permits one to create instances of any exported type given only the exported GUID assigned with BOOST_CLASS_EXPORT. If these types are defined in DLLS or shared libraries. When these modules are loaded at runtime, these constructor can be called until the module is unloaded. These modules are referred to as plugin.
virtual void destroy(void const * const p) const;
Destroy an instance created by the above constructor.
static const extended_type_info * find(const char *key);
Given a character string key or GUID, return the address of a corresponding extended_type_info object.
In order to be used by the serialization library, an implementation of extended_type_info, (referred to as ETI here), must be derived from extended_type_info and also implement the following:
template
static extended_type_info &
static const extended_type_info &
Return a pointer to the instance of extended_type_info which corresponds to type T. Normally these instances are static objects so this just amounts to returning the address of this static object.
template
const extended_type_info *
ETI::get_derived_extended_type_info(const T & t) const;
Return a pointer to the extended_type_info instance that corresponds to the "true type" of the type T. The "true type" is the lowest type in the hierarchy of classes. The type T can always be cast to the "true type" with a static cast. Implemention of this function will vary among type id systems and sometimes will make presumptions about the type T than can be identified with a particular extended_type_info implementation.
bool ETI::less_than(const extended_type_info &rhs) const;
Compare this instance to another one using the same extended_type_info implementation.
The serialization library includes two distinct extended_type_info implementations.
is implemented in terms of the standard typeid(). It presumes that RTTI support is enabled by the compiler.
is implemented in a way that doesn't rely on the existence RTTI. However, if the export facility is to be used to serialize types through base class pointers, those types are required to implement a virtual function with the signature:
virtual const char * get_key();
which returns a unique string the most derived object this class. This function must be virtual in order to implement the functionality required by ETI::get_derived_extended_type_info as described above.
The test program test_no_rtti implements this function in terms of the extended_type_info API above to return the export key associated with the class. This requires that non-abstract types be exported. It also demostrates the inter-operability with between two different implementations of extended_type_info.
© Copyright Robert Ramey 2005. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at _URL_


text:
NAG Library Routine Document
F07MDF (DSYTRF) computes the Bunch–Kaufman factorization of a real symmetric indefinite matrix.
||N, LDA, IPIV(*), LWORK, INFO
The routine may be called by its
F07MDF (DSYTRF) factorizes a real symmetric matrix, using the Bunch–Kaufman diagonal pivoting method. is factorized as either if or if, where is a permutation matrix, (or ) is a unit upper (or lower) triangular matrix and is a symmetric block diagonal matrix with by and by diagonal blocks; (or ) has by unit diagonal blocks corresponding to the by blocks of. Row and column interchanges are performed to ensure numerical stability while preserving symmetry.
This method is suitable for symmetric matrices which are not known to be positive definite. If is in fact positive definite, no interchanges are performed and no by blocks occur in.
Golub G H and Van Loan C F (1996) Matrix Computations (3rd Edition) Johns Hopkins University Press, Baltimore
- 1: UPLO – CHARACTER(1)Input
: specifies whether the upper or lower triangular part of
is stored and how
is to be factorized.
- The upper triangular part of is stored and is factorized as, where is upper triangular.
- The lower triangular part of is stored and is factorized as, where is lower triangular.
- 2: N – INTEGERInput
On entry:, the order of the matrix.
- 3: A(LDA,) – REAL (KIND=nag_wp) arrayInput/Output
the second dimension of the array A
must be at least
symmetric indefinite matrix
- If, the upper triangular part of must be stored and the elements of the array below the diagonal are not referenced.
- If, the lower triangular part of must be stored and the elements of the array above the diagonal are not referenced.
: the upper or lower triangle of
is overwritten by details of the block diagonal matrix
and the multipliers used to obtain the factor
as specified by UPLO
- 4: LDA – INTEGERInput
: the first dimension of the array A
as declared in the (sub)program from which F07MDF (DSYTRF) is called.
- 5: IPIV() – INTEGER arrayOutput
the dimension of the array IPIV
must be at least
: details of the interchanges and the block structure of
. More precisely,
- if, is a by pivot block and the th row and column of were interchanged with the th row and column;
- if and, is a by pivot block and the th row and column of were interchanged with the th row and column;
- if and, is a by pivot block and the th row and column of were interchanged with the th row and column.
- 6: WORK() – REAL (KIND=nag_wp) arrayWorkspace
contains the minimum value of LWORK
required for optimum performance.
- 7: LWORK – INTEGERInput
: the dimension of the array WORK
as declared in the (sub)program from which F07MDF (DSYTRF) is called, unless
, in which case a workspace query is assumed and the routine only calculates the optimal dimension of WORK
(using the formula given below).
for optimum performance LWORK
should be at least
is the block size
- 8: INFO – INTEGEROutput
unless the routine detects an error (see Section 6
6 Error Indicators and Warnings
Errors or warnings detected by the routine:
If, the th parameter had an illegal value. An explanatory message is output, and execution of the program is terminated.
If, is exactly zero. The factorization has been completed, but the block diagonal matrix is exactly singular, and division by zero will occur if it is used to solve a system of equations.
, the computed factors
are the exact factors of a perturbed matrix
is a modest linear function of
is the machine precision
If, a similar statement holds for the computed factors and.
The elements of
overwrite the corresponding elements of
blocks, only the upper or lower triangle is stored, as specified by UPLO
The unit diagonal elements of
unit diagonal blocks are not stored. The remaining elements of
are stored in the corresponding columns of the array A
, but additional row interchanges must be applied to recover
explicitly (this is seldom necessary). If
(as is the case when
is positive definite), then
is stored explicitly (except for its unit diagonal elements which are equal to
The total number of floating point operations is approximately.
A call to F07MDF (DSYTRF) may be followed by calls to the routines:
The complex analogues of this routine are F07MRF (ZHETRF)
for Hermitian matrices and F07NRF (ZSYTRF)
for symmetric matrices.
This example computes the Bunch–Kaufman factorization of the matrix
9.1 Program Text
Program Text (f07mdfe.f90)
9.2 Program Data
Program Data (f07mdfe.d)
9.3 Program Results
Program Results (f07mdfe.r)

source: openbmb/Ultra-FineWeb


Awesome Open Source
Awesome Open Source
Build Build status
NuGet NuGet Status
 - 2020 june 7: published a couple of new releases. They are based on just four PRs but because of semver they came out as three separate releases.
 - 2.1.3 with a small fix to allow case insensitive style in wmts.
 - 2.2.0 in which HttpTileSource.PersistentCache now has a setter.
 - 3.0.0 which has two breaking changes.
 - In MbTiles there is a change in the default behavior that some users might notice. Zoom levels are not calculated from the 'tiles' table by default.
 - The TileIndex.Level is now int instead of string. Most users will not notice this unless you write logic around tiling itself.
BruTile is a.NET Standard 1.1 library to access tile services like OpenStreetMap and Bing. Such tile services store pre-rendered tiles for a certain area and for various levels of detail. BruTile helps to determine which tiles to fetch for a certain viewport of a map. BruTile returns tiles as raw image streams and has no dependency on a specific client platform. BruTile does not display those tiles. You need to use a mapping library like SharpMap, ArcBruTile or Mapsui or write your own code to display tiles.
What BruTile does is:
 1. Helps to construct a tile source, an object that has all information about a tile service.
 2. Helps to calculate which tiles you need, given a certain map extent and a map resolution (units per pixel).
 3. Helps you fetch those tiles.
BruTile is a.NET Standard library
BruTile V4 consists of 2 nugets that support.NET Standard 2.0.
Library Targeted Framework
BruTile.NET Standard 2.0
BruTile.MbTiles.NET Standard 2.0
 - Support for.NET Framework 4.5 has been removed (also the samples and tests have moved to.NET Core).
 - BruTile.Desktop and BruTile.Desktop.DbCache have been deleted and their content has moved to the BruTile nuget.
BruTile V3 supports.NET Standard. The Profiles by NuGet package:
Library Targeted Framework
BruTile.NET Standard 1.1
BruTile.MbTiles.NET Standard 1.1
BruTile.Desktop.NET Standard 1.6
BruTile.Desktop.DbCache.NET Standard 2.0
All the above libraries additionally target.Net Framework 4.5
For a demo showing various data sources download the source code and run BruTile.Demo in the Samples folder
Getting Started
1) Create an app and add the BruTile NuGet package
Create a.NET Console app in Visual Studio. The the BruTile NuGet package. Use the package manager tools in Visual Studio or add it from the package manager console:
PM> install-package BruTile
2) Create a tile source
// This is an example that creates the OpenStreetMap tile source:
var tileSource = new HttpTileSource(new GlobalSphericalMercator(0, 18),
 new[] {"a", "b", "c"}, "OSM");
3) Calculate which tiles you need
// the extent of the visible map changes but lets start with the whole world
var extent = new Extent(-20037508, -20037508, 20037508, 20037508);
var screenWidthInPixels = 400; // The width of the map on screen in pixels
var resolution = extent.Width / screenWidthInPixels;
var tileInfos = tileSource.Schema.GetTileInfos(extent, resolution);
4) Fetch the tiles from the service
Console.WriteLine("Show tile info");
foreach (var tileInfo in tileInfos)
 var tile = tileSource.GetTile(tileInfo);
 $"tile col: {tileInfo.Index.Col}, " +
 $"tile row: {tileInfo.Index.Row}, " +
 $"tile level: {tileInfo.Index.Level}, " +
 $"tile size {tile.Length}");
 tile col: 0, tile row: 0, tile level: 1, tile size 11276
 tile col: 0, tile row: 1, tile level: 1, tile size 3260
 tile col: 1, tile row: 0, tile level: 1, tile size 10679
 tile col: 1, tile row: 1, tile level: 1, tile size 4009
5) Try some of the known tile sources
// You can easily create an ITileSource for a number of predefined tile servers
// with single line statements like:
var tileSource1 = KnownTileSources.Create(); // The default is OpenStreetMap
var tileSource2 = KnownTileSources.Create(KnownTileSource.BingAerial);
var tileSource3 = KnownTileSources.Create(KnownTileSource.BingHybrid);
var tileSource4 = KnownTileSources.Create(KnownTileSource.StamenTonerLite);
var tileSource5 = KnownTileSources.Create(KnownTileSource.EsriWorldShadedRelief);
The predefined tile sources are defined in a single file. Take a look at that file here to learn how you could create any tile source.
6) Use MBTiles, the sqlite format for tile data, to work with tiles stored on your device.
var mbtilesTilesource = new MbTilesTileSource(new SQLiteConnectionString("Resources/world.mbtiles", false));
var mbTilesTile = mbtilesTilesource.GetTile(new TileInfo { Index = new TileIndex(0, 0, 0) });
Console.WriteLine($"This is a byte array of an image file loaded from MBTiles with size: {mbTilesTile.Length}");
This is a byte array of an image file loaded from MBTiles with size: 27412
The above code can also be found in the BruTile sample called BruTile.GettingStarted in the Samples folder of this repository.
Supported tile service protocols:
 - Stability is currently our primary focus.
Projects that use BruTile
Apache 2.0
Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
c-sharp (11,959
map (227
mapping (132
osm (40
tiling (18
wms (15
Find Open Source By Browsing 7,000 Topics Across 59 Categories


text:
The Senior Kindergarten students have carefully counted by 1s, 5s, and 10s to get to the 100th day of school! They celebrated with activities such as making a Fruit Loop necklace that had – you guessed it – 100 Fruit Loops.
They also made a gum ball machine using 100 BINGO dabbers and Miss Gangji had them do 10 of each exercise until they reached 100! The students also wrote about what they thought they would be like when they turned 100 years old.
Did you know that when you reach 100 you receive a letter from the Queen congratulating you for living that long? That's pretty awesome!


text:
Classroom Lesson to Help Teens Analyze 'March Madness' Beer Ads
The Center for Science in the Public Interest's Campaign for Alcohol-Free Sports TV has teamed up with Media Literacy for Prevention, Critical Thinking, Self-Esteem, to provide educators with a free classroom lesson encouraging students to analyze beer ads aired during this year's NCAA "March Madness" college basketball tournament.
The lesson asks students to watch 1 hour of any NCAA tournament game and keep a log of all alcohol commercials, logos, and sponsorships. The teacher and students then analyze the ads and messages together in class.
We believe that this lesson can be a good tool to stimulate scrutiny and discussion of the commercial connection between alcohol advertising and sports. It can be used in community and youth groups as well as in schools.
Please forward this information to teachers and others who work with young people. We hope this educational exercise will spur greater involvement among young people in efforts to challenge the exploitation of sports by beer marketers. They would be the best messengers to tell college presidents that promoting beer during sports telecasts is inconsistent with efforts to curb student drinking and not in the best interests of higher education.
The NCAA's advertising and promotional standards claim to "exclude those advertisements and advertisers…that do not appear to be in the best interests of higher education and student-athletes." Given the 1,700 deaths and $1.7 billion in lost tuition caused by excessive drinking on college campuses — much of it in the form of beer — it is inconceivable that the NCAA's profiting from beer promotion during the college basketball tournament is in the best interests of higher education, sports, or student welfare.
A TNS Media Intelligence report found that beer was the second-ranked advertising category among the top five advertisers during the 2007 NCAA men's basketball tournament, and that spending for ads for Anheuser-Busch and Miller Brewing Company's beers ranked fourth and fifth among all advertisers.
"Beer companies have a long history of convincing campuses that destructive drinking habits are a normal part of college life," said Dr. Peter DeBenedittis, one of America's foremost media literacy experts. "Teaching students to think critically about alcohol marketing is an effective tool for preventing binge drinking and pressuring campuses to stop selling their students to alcohol marketers."
Download March Madness and other free lessons from MediaLiteracy.net.
Learn more about Campaign for Alcohol-Free Sports TV.

source: HuggingFaceFW/fineweb-edu


text:
top of page
A juxtaposing thought-provoking installation, placing a formation of house plants potted, labelled and price tagged, projected onto with a video, overlaying price tags hitting the house plant leaves. Capitialocene explores capitalism over plants, similar to the enlightenment period why do we believe by scientifically labelling and capturing these natural florae we know them better? why do we bring these live being into our homes? pay for them, entrap them when they are naturally outdoors, for our own self-enjoyment the piece invites the viewer to ask these questions.
bottom of page


Thursday, 22 October 2015
Sexy statistics
A: 1,2,3
B: 4,5,6
C: 1,2,3
D: 4,5,6
E: 1,2,3
Let's try a more scrambled set:
A: 1,2,3
B: 5,1,2
Now how have we done? Here are the females:
3: A,C
A: 1, 2, 3, B, C
B: A, C
C: A, B
D: 1, 2, 3
E: 4, 5, 6
F: 4, 5, 6
 1. There's only one feasible explanation that I have seen: that the statistics is skewed because a small number of highly promiscuous (or sexually active) women are severely underrepresented in the statistics.
 Either the selection of sample is skewed locally, or more likely more men are e.g. visiting brothels when travelling abroad (so that men report these sexual encounters but the women never make the sample).
 However, I believe a more significant explanation is that men are, on the average, lying and report a higher-than-real number of partners due to social pressure, and women are, on the average, lying and report a lower-than-real number of partners due to social pressure.
 1. I think lying is by far the most likely answer as well, which is why it seems so odd this is being reported straightfaced as if it were useful data.


text:
by Sheldon Roussy in collaboration with Brittany Collier
Cultural appropriation is a persistent topic with regards to cultural and Indigenous studies in Canada. This paper holds that the cultural appropriation of the Indigenous sweat lodge ritual limits Indigenous community control resulting in benefits for individuals and organizations actively appropriating the ceremony. This article highlights the negative implications of appropriating the sweat lodge tradition through a tragic 2009 incident led by self-help guru James Ray. It is argued that intercultural understanding—though limited—must be fostered to ensure the future safety of sweat lodge participants in both Canada and the United States.
Cultural Appropriation, Sweat Lodge, New Age Movement, James Ray, Indigenous
Spirituality, Cross cultural awareness
Sheldon Roussy is a fourth year undergraduate law student at Carleton University from Webbwood, Ontario. Interests are in business and environmental law, and upon receiving a B.A has hopes on attending law school.


text:
Welcome to the Office of Service-Learning
The Office of Service-Learning serves as the hub of academic service-learning activities. Faculty members from the various disciplines develop projects that fit the scope and cycle of service-learning. All projects must be approved by the director of service-learning prior to initiation of the activity.
- To assist faculty with the development of service-learning projects that will contribute to the development of a human capital in Louisiana that is comprised of active, knowledgeable and engaged citizens/STEM professionals.
- To encourage citizenship among students that carryover into the workforce after graduation.
- To provide hands on experience for students to ensure an understanding of applying what is learned in the classroom to real life situations
- To contribute to the institutionalization of service-learning.
For more information, please contact:


1793, Jan 41863, Feb 19
an American politician who served as the 32nd Governor of Connecticut from 1844 to 1846 and a United States Senator from 1847 to 1851. As a lawyer, his career was most notable for his participation in the 1841 Amistad case. He attended Hopkins School, and entered Yale College at the age of fourteen, and graduated with high honors in 1811. At Yale, Baldwin was a member of the Linonian Society. After leaving Yale he studied law in his father's office in New Haven, and also in the Litchfield Law School, and was admitted to the bar in 1814.
 Gallery (1)


text:
Version history >>
What's new in QuickField 6.3
Initial temperature in transient heat transfer problems (2D)
The default initial temperature for the transient heat transfer analysis in previous QuickField versions was always 0. To define other initial temperatures it was necessary to prepare a separate QuickField problem with the resulting temperature distribution then used as an initial condition.
In new version it is simple to specify initial temperature as the problem property defined for the whole model. The initial temperature could be a constant or a function of coordinates.
Surface integrals calculation in 3D problems
Previous QuickField versions allowed integral calculation for 3D models only along the whole body surface.
In new version the list of calculated 3D integral values is extended. It is now possible to select separate body surfaces for integration or use the cross-section plane as an integration surface.
User-defined contour in 3D problems 2D section window
In previous version it was possible to select of the group of connected edges as a contour and look at the field parameters distribution along this contour on XY-plot.
In new version it is possible to build any custom contour in 2D cross-section window and construct both XY-plot and table with the field parameters distribution along the contour.


text:
Mental, Emotional, Physical Wellbeing in the Classroom and Beyond
Building a Loving World
Loving Classroom delivers Positive Relationship Education (PRE) which identifies and boosts the innate goodness in all students, so that they interact with respect and kindness, and crave the wellbeing and fulfilment of all individuals and humanity.
Loving Classroom's USP (unique selling points) are that it is:
as well as proven/evidence-based.
The programme has been developed over many years by founders David and Naomi Geffen - initially by running workshops on conflict resolution, which led to the realisation that delivering Positive Relationship Education in schools serves as early intervention and prevention of conflict in all its aspects. Loving Classroom was thus born - a bespoke programme, offering the best possible guidance for school students by training their staff.
Our 2022/23 UK Programme
Loving Classroom is delighted to be delivering its curriculum in the following secondary schools:
City of London Freemen's School
Henrietta Barnett School
Hitchin Boys School
Queen Elizabeth's Girls School
Royal School Wolverhampton
Sir William Borlase's Grammar School
Here, UK Director, Sir Anthony Seldon, gives his vision for Loving Classroom:
A Loving World in which individuals and nations care for one another's mental, emotional and physical wellbeing, and thereby work together to cultivate harmony, peace and fulfillment for humanity and our planet.
To train teachers globally to facilitate Positive Relationship Education (PRE: the study and practice of respect, compassion, listening, kindness, gratitude, love, friendship, care…) in their classroom - building a loving world.
Teachers and students cultivating loving classrooms: excellent relationships in the classroom, that are a foundation for excellent relationships at home, the future workplace and between communities and nations.


text:
It seems like kids these days just are not interested in the past. That is a shame, because they have so much to learn from it. Plus, as genealogists, we know that learning about one's family history can be a wonderful adventure. We want our children and grandchildren to know that joy, as well. So how do you get children interested in genealogy, when all they seem to want to do is sit in front of the TV and play video games? Fortunately, the same things that worked on children generations ago still work today. It all comes down to making it fun and meaningful for them. Here are some powerful ways you can do just that and get your kids and grandkids to love genealogy as much as you do.
1. Tell Them Family History Stories and Make Them Exciting
Laura Ingalls Wilder's Little House on the Prairie books have been popular with children for generations. These mostly true stories of a pioneer girl's childhood still resonate with children today because they are exciting, with engaging characters, and intriguing plots involving the unique times and customs and language of days gone by. The first book in the series even has several stories within the story, which are tales about the author's father's childhood that he told her. The author loved these stories when she was little, and children today still love them. Why? Because they are told in a way that children find appealing.
You can do the same thing with your own family history stories. Tell them to your children and grandchildren, but make the people in them into interesting characters who are having amazing adventures. Don't make the language too complicated. Talk to them in words they can understand and relate to. Tell them the stories again and again until they know them by heart, but don't make it a chore. Make it a treat. Once they love the stories, give them history books of the time period in which your tales take place so they can attach the stories to the real world. This makes the stories more personal and meaningful for them, which attaches them to the stories even more.
2. Take Them on Trips to the Places You Talk About in Your Stories
Kids love travel. Make their travel even more meaningful by taking them to the places you talk about in the family history stories you have been telling them. If you have been to these places yourself in the past, you can give them a real "insider's" tour. Showing them where actual events from your story took place, mentioning who was associated with those places, and telling the story again in the place it happened is like taking a child right into a storybook.
If you have never been to the place before, you can have fun exploring it together and working out where certain things in your stories took place. Give your child or grandchild the opportunity to figure out some things for him or herself to make it even more thrilling for them. They will always remember the trip, the family stories associated with it, and will be proud of their heritage because they can actually see it in a tangible way.
3. Show Them Artifacts of Their Ancestors
If you have family heirlooms associated with the stories you tell, show these to your children. Let them handle them if it is possible to do so without damaging the item. If you don't have heirlooms, but know of items associated with famous ancestors that are in museums, go there with your children and look at those (just make sure you've told them the story associated with these things first). If there is nothing else available to you, census records are a good way to show your children the names of the ancestors in your stories, so they can see they were recorded in official documents and were real people. This way of letting your children "touch" the things your ancestors in your family history stories left behind will make them even more interested in these stories, the people in them, and how they are connected to them.
4. Fill Out a Family Tree With Your Children
Once your children know the family history stories and have connected with them in all kinds of personal ways, fill out a family tree chart with them. Start with the child or children as the beginning people on the tree, then go backward in time as far as you can on the paper or with your knowledge of the family tree. This way, your children will be able to see where they fit into the family, among the people whose stories they know so well.
It's easier to get kids interested in genealogy than you think. All you have to do is make it exciting and meaningful for them. Use the techniques of Laura Ingalls Wilder and the tips listed here, and you will be raising the next generation of genealogists in your family.


BBC Home
Explore the BBC
Last Updated: Thursday July 10 2008 12:01 GMT
New type of spooky slug found
Ghost slug
It might sound more like a creepy creature out of Harry Potter, but a new type of slimy slug has been found in gardens in Wales.
Most slugs you find in Britain are brown or black, have eyes, and eat plants.
But this one is all white, has no eyes, lives underground, and eats worms by sucking them in like spaghetti!
Scientists think they've found a new species, and have named it 'Selenochlamys ysbryda', or ghost slug.
The name partly comes from the Welsh word for ghost, ysbryd.
Similar slugs are found in the countries of Turkey and Georgia, where Europe meets Asia.
the blade-like teeth of a Ghost Slug
The slug's teeth are like blades
But experts say the creatures that were found in gardens in Cardiff and Caerphilly in south Wales are different.
They don't know where the ghost slugs came from, but think they may have been brought into Britain in plant pots.


Invest in real estate on your own terms with secured or unsecured mortgage notes
If you don't want to be burdened with maintenance costs or rental vacancies, you can invest in mortgage notes in your self-directed IRA. You can also be a real estate lender with your IRA funds and help others purchase new properties. You set the terms of the loan, including time frames and interest rates. The payments will go to your retirement account.
There are two types of notes:
 1. Secured notes, deeds of trust, and mortgage notes are basically the same thing, depending on the state that you reside in.
 2. Unsecured notes are not backed by collateral and thus often pose a higher risk than a secured note. Because of this increased risk, unsecured notes are generally structured at a higher interest rate.
What are Secured Notes?
A Real Estate Note is secured by real property. The documents required by a self-directed IRA administrator for notes secured by real estate vary by the type of note you are requesting:
 - If you are issuing a new note or seller carry back note, simply submit a copy of the original note, deed of trust or mortgage, and a copy of the lender's title report.
 - If you are buying an existing note, you will need to submit a copy of the original note, recorded deed of trust or mortgage, title policy, deed of trust or mortgage assignment, note endorsement, and note purchase agreement, if applicable.
 - If a borrower cannot pay the balance on a note, the property can be sold to satisfy the debt.
What are Deeds of Trust?
Trust deeds, deeds of trust, and mortgage notes are basically the same thing, depending on the state that you reside in. In a trust deed, the investor loans money to a borrower using real estate as collateral. The loan is secured with a Trust Deed, which is recorded in county land records against the collateral. The terms of the loan are detailed in the Promissory Note.
You will want to define the type of real estate you feel comfortable lending against. Working with a local real estate broker who specializes in trust deed investments is a good start. Perform your due diligence by asking for references, requesting a schedule of loans that have funded, and confirm the status of the broker's license.
It is advisable to order a third-party appraisal or valuation of the property you intend to invest in. You will want to verify that the value of the collateral is sufficient to return the principal on your loan. Additionally, obtain a Title Policy from a reputable title insurer that insures your trust deed on the property. Lastly, verify that the borrower has property insurance on the property and request verification that it names you as a "Mortgagee." Seek legal and financial advice from trusted representatives.
What are Unsecured Secured Notes (Promissory Notes)?
A promissory note is a legal agreement between a buyer and a lender. The note contains the promise to repay a loan, along with the terms for the repayment. The note is not recorded in county land records. The lender holds the promissory note. When the note is paid off, the note is marked paid in full and returned to the borrower.
How do I invest with Mortgage Notes?
Sellers looking to offer financing to potential buyers can have a real estate note created for the transaction. It is important to have your note drawn up by a real estate attorney and that you understand the terms of the note:
1. Open and fund your self-directed IRA.
2. Find an individual or entity interested in borrowing money from your IRA. The loan must be secured by real estate.
3. Complete and submit a Real Estate Note Buy Direction Letter to your self-directed IRA administrator to request funds. You must include supporting documents. The documents required are based on the type of note (Secured Note):
 1. Issuing new note or seller carry back note.
 2. Buying an existing note.
If you are partnering your IRA with personal funds, both you and your IRA are the lenders. In this case, you need to add the percentages of ownership interest to title.
For example, The Trust Group, Inc. FBO John Smith Account #12345, [Percentage of ownership] % undivided interest.
4. When you have submitted the required documents, your self-directed IRA administrator will process the investment and remit funds to the borrower or to the entity responsible for closing the transaction. Normal processing takes approximately three business days with funding happening on the fourth business day, unless corrections are required. A special handling fee applies to expedited processing requests.
5. Assignment of Deed of Trust: The Deed of Trust or mortgage is owned by your self-directed IRA.
6. Send all documents related to the promissory notes to your self-directed IRA administrator for record keeping. They must receive all documents signed by all parties for IRS audit purposes.
Your self-directed IRA administrator must sign investment documents on behalf of your IRA. You will note "read and approved" with your signature and date each page of the investment documents. If the borrower is an entity, they must see the entity formation documents to verify that the transaction is not prohibited under IRC 4975.
After the investment is completed, all payments made according to the terms of the note must be submitted to your self-directed IRA administrator using a Deposit Coupon form.
For specific account questions, please contact self-directed IRA administrator.
Disclaimer: Before you invest in this business sector using your IRA, it is best to consult with your investment, legal and tax advisor. DREI,LLC does not endorse or recommend any of these investments. Proper due diligence by you the IRA holder is recommended before entering into any transaction.
© 2010 by Davis Real Estate Investments, DREI LLC


text:
Are you sitting back and thinking 'how do I invest for my children in Australia?' This video and short article explains how to invest in shares or ETFs for kids.
The video will answer:
- Is investing for children going to impact my tax return?
- Should I invest in shares, Vanguard, ETFs, insurance bonds or something else for my children?
- How Owen and Kate from The Australian Finance Podcast would do it
- The questions to ask yourself before investing and who to ask the hard questions
Video: how to invest for children
What to ask yourself before investing for your kids:
- Firstly work out your goal: is the money going to help with future expenses like taking time off work, school fees, a long-term family fund or to help your kids with their house deposit? How long you have to invest will impact what you should in invest in. If you have less than 3 years to be invested, you might consider other options (e.g. mortgage offset account, high-interest savings account, etc.).
- Look at some different compounding scenarios using our compound interest calculator. Set the savings amount you can achieve (e.g. each month) and the timeline you have to work with. For example, if you say to yourself 'in 10 years my child will turn 18' — select 10 years for compounding in our calculator. See our tutorial: what is compound interest? Remember, money for investing in growth style assets (e.g. shares, property, ETFs, etc.) should be invested for at least 5 years.
- Talk to an advisor/accountant about tax/whose tax file number (TFN) you should put down into your share brokerage account. This matters. A lot.
- In addition to a brokerage account, you might consider using insurance bonds, a robo-advisor, a mortgage offset account, or simply buying shares in your own name (or a partner's name). Just make a note of the child's 'future money' or separate the money into another account.
Will and Georgia want to invest in some Vanguard, Betashares, ETF Securities and iShares exchange-traded funds (ETFs) for their kids, Ryan and Sarah. Currently, Will is working and earning $95,000 as an electrician. Georgia works two days per week as a freelance journalist earning $40,000. Both kids are under 5 years of age, so Bill and Georgia plan to invest for at least 13 years. And because they are investing for the long-term they believe they can take some risk with money and use low-cost ETFs and shares for compounding growth.
Using the Rask Education compound interest calculator (see below) and after getting expert tax advice, Georgia opens an online brokerage account, in her name and with $500 to get started, to invest in ETFs and shares. They commit to saving — and investing — $500 every three months (i.e. quarterly).
After 13 years of compounding, Will and Georgia have $38,831 set aside. After 13 years they could sell the shares (and may be required to pay capital gains tax). However, even if they pay tax — at least they'll have $38k, less tax, to offer their kids, if they still like them…
Hypothetically, if Will and Georgia waited 5 years to get started they will have to save $928.70 per quarter — an additional $3,718.40 (equivalent to 2.75 years of extra saving) — just to make up for the lost compounding.
- Start now
- Consider how long you have to invest
- Talk to your accountant about tax to get set up correctly
Important notes: we've excluded brokerage fees, costs, inflation and taxes. We've also assumed a 6% yearly rate of return, with all returns reinvested for maximum compounding.
1 bonus tip for investing for children
- Make this process as automated if possible. Remember, small bits invested lots of times (e.g. every 3 months over 18 years) really adds up over the long run. See our tips on investing apps for automating your finances.
If you're interested in learning more about investing, see how following helpful articles (or take our online — and totally free — investing and finance courses!):
- How do brokerage accounts work & are they safe?
- 2 ways to buy shares & ETFs in Australia
- List of Australian share brokerage providers


text:
Page:Graimear na _URL_
44. In Irish there are five cases—the Nominative, Accusative, Genitive, Dative, and Vocative.
The Nominative case in Irish corresponds to the English nominative when the subject of a verb.
The Accusative corresponds to the English objective case when governed by a transitive verb. The accusative case of every noun in modern Irish has the same form as the nominative, and suffers the same initial changes as regards aspiration and eclipsis.
The Genitive case corresponds to the English possessive case. English nouns in the possessive case or in the objective case, preceded by the preposition "of," are usually translated into Irish by the genitive case.
The Dative case is the case governed by prepositions.
The Vocative corresponds to the English nominative of address. It is always used in addressing a person or persons. It is preceded by the sign a, although "O" may not appear before the English word; but this a is not usually pronounced before a vowel or fh.
RULES FOR THE FORMATION OF THE CASES.
N.B.—These rules apply to all the declensions.
45. The Nominative case singular is always the simple form of the noun.


corpora in Helsinki).
Johanna Laakso <>
** Here in Helsinki, Finland -- where Swedish is spoken by a minority
of people -- the most usual colloquial appellation is "kattsvans",
that is, 'a cat's tail'. For some strange reason, we at our department
used to call the sign first "kattfot", i.e. 'a cat's paw'. But the
identification with a cat seems to have been an important common
motivation, as is the mouse for the Chinese -- a rather intriguing
 There is also another rather wide spread animal metaphor.
can be heard called "elefantora" (with umlaut o, pronounced like the
vowel in English "girl"), i.e. 'an elephant's ear'. I do not use this
myself but I have heard it.
 I have a feeling that the most common colloquial name of in
the Swedish spoken in Sweden is "kanelbulle", i.e. 'cinnamon
bun'. This piece of pastry has a formation that looks a bit like the
human ear and, thus, has a resemblance with the sign.
Jan Lindstrom <>
** In Swedish the sign is most often called "snabel-A" (pronounced
snah-bell-Ah), meaning "trunk-A" (that is the letter A with an
elephant's trunk).
 Another, older denomination, mainly used among programmers is
"kanelbulle" (pronounced kunn-ayl-boulle), meaning "cinnamon
bun". This is due to the fact that the typical Swedish cinnamon bun
has the form of a helix.
Folke A. Nettelblad <>
** I can add the Swedish language to your collection:
 The name recommended by Svenska Spr=E5kn=E4mnden (approx. "The
Swedish Language Board") for this sign in Swedish is "snabel-a". This
is the most common name among users, too, but it has got strong
competitors, follows below. The meaning of "snabel-a" is "trunk a",
from the elephant's trunk. The picture is the letter 'a' that has got
a elephant's trunk that circles around it. A bit humouristic and
creative from the beginning, but has now settled in the Swedish users,
becoming more and more serious. I guess I personally heard the word
used 4 or 5 years ago.
 A strong competitor is, or rather has been, the name
'kanelbulle', this name too is quite humoristic and creative. The
meaning is 'cinnamon roll', from the most common traditional Swedish
pastry, looking like a from the top. Personally I think I heard the
word also 4 or 5 years ago for the first time, but only occasionally
 An attempt to introduce a more strict name for the sign was
'at-tecken', simply meaning 'at sign'. I heard it the first time 2 or
3 years ago, and I still hear it occasionally.
Eva Stro"m <>
** The Tamil character that most resembles is called "dugaram" and
pronounced "du"("d" as in donkey and "u" as in pull). As my Anjal does
not function I cannot write it for you here. Perhaps some other good
soul can send you the exact form of "du".
 But I am only pointing out similarities, and make no claim
that it is universally recognised that way among Tamil users. But for
lack of other offerings, this would be my contribution.
Karthi Gesu <>
** Regarding the discussion on in Tamil, there are a few
 1. Il
 2. Ku
 3. Du
 4. KaNini suzhi (pronounce suli)
 5. INai vari
 6. Vattu
 1. Il is equal to "in" and "at" in Tamil. But if we use in e-mail
addresses it shows some kind of misplacement in the address.
 2. Ku is very suitable for use in e-mail addresses. But the ku is
not a word. It is a letter only.
 3. Du - Regarding this, Prof. Karthigesu has not given any further
 4. KaNini suzhi (pronounce suli) - suzhi is a wonderful word in
Tamil. In old times people used to write a letter (sounds u in
Uganda) which is called Pillayar Suzhi. Pillayar is one of Hindu Gods.
 5. INai vari - For Internet we coined a word recently ie. INayam
which is much more meaningful than English word Internet. Its meaning
not only connecting computer networks but also the mankind. Tamil word
for address is Mugavari. So the first half of INayam and the other
half of Mugavari forms the word InaiVari which means Internet
address. It is O.K for e-mail address. But not suitable for in other
 6. Vattu - It means round.
 So now we are going to select a word from this list.
Koh <>
** I have to admit that as a Thai I don't know how we call the sign
. I don't remember myself using any name to call it. It is rarely
used in spoken language. Any way I will ask people in some other
areas, like business. I will send you more information if I have some.
Amara Prasithrathsint <>
** What an interesting topic to pursue. Thai does not have an official
coinage for the sign yet. But there is a nickname, which "?ai tua
yUkyU:" literally meaning "the wiggling worm-like character". The
"?ai" is an equivalent of?a in Chinese, which is prefixed to a
person's name. "Tua" is character, body, shape. YUkyU: (unrounded
back vowel) is a sound symbol for the crooked way a worm moves.
 Occasionally people will borrow the English name of the
sign. In textbooks, the problem is eliminated with the use of the
symbol itself.
Peansiri Vongvipanond <>
** I don't know any widely accepted Turkish name for it. But I would
like to call it 'gUl'=rose or 'at'=horse. BTW U in gUl denotes the
character in Turkish alphabet which is practically same as u except
two dots above it. It is same as German counterpart which may be
denoted 'ue'.
 From a second communication:
 ...No, I haven't heard this, except the German word _ohr_,
'ear" in your message. _Kulak_ is also possible, but I like the other
two more, esp. _at_, 'horse' which is same as English _at_ in
HUseyin Canbolat <>
** As far as I know we call it "Kulak" which is "Ear" in English.
There may be other names but I use "Kulak" in Turkish for that sign.
 From a second communication:
 ...Personally I heard for the first time "Gul" and "At" for
add-sign, but Turkey is a big country and we are 60 million, and I am
not very surprised to hear different names for it. I do find "Gul" (=
Rose) meaningful but not "At" (= Horse) becasue of the shape of the
As Halil Teletas <>
** And some interesting information from a Web site, pointed out by
Judith Levi (see HEBREW above) - check it out yourself for more neat
[copied from on 19
Nov 1995 --]
 The Pronunciation Guide
 version 2.5
Names derived from UNIX are marked with *, names derived from C are
marked with +, names derived from (Net)Hack are marked with & and
names deserving further explanation are marked with a #. The
explanations will be given at the very end.
 AT SIGN, at, each, vortex, whirl, whirlpool, cyclone, snail, ape
(tail), cat, snable-a#, trunk-a#, rose, cabbage, Mercantile symbol,
strudel#, fetch#, shopkeeper&, human&, commercial-at, monkey (tail)
 trunk-a "trunk" = "elephant nose"
 strudel as in Austrian apple cake
 fetch from FORTH


text:
2. Create the practice ticket using the Google form. putting the CEH v11 old exam's question and answer.
Follow the customized Google form's configuration
- Random give the question when you attend the simulate practice testing.
- Random give the answer option when you attend the simulate practice testing.
- Using the segment configuration for each question. It can be reviewed for mobile phone or PC's browser
(2-1) Collect the mail notification and then do the more and more practice.
3. Audit the CEH v11 old exam's question and its answer
4. After pr acting the simulate test, analysis the failed item again.
1. Answer each question is greater than 50 seconds. Don't answer the question very soon. Because of you might see the new question.
2. CEH v11 exam will change the question every 3rd week per month. Thus, when you got the old exam's question and its answer. Please take or re-take your exam quickly.
Hit rate of old CEH v11 exam questions:
Answer correct rate:


new diets
100-Bites Diet: The Next Great Weight-Loss Fad of Our Time?
Photo: Jutta Klee/Getty Images
A new body of diet research is focusing on how you chew versus what you chew. The Wall Street Journal rounded up emerging technology that will help users stick to the "small bites, chew slow " diet philosophy.
One company is working on a talking plate, while another plans to release a fork that vibrates when you eat too fast. Researchers at Clemson University have developed something called the Bite Monitor, which is like a pedometer for the mouth, designed to track users' daily bites. According to the researchers, the optimal number is 100 bites in a day — which works out to roughly 1,700 calories for men and 1,100 calories for women.
Okay! That seems simple. But what about soup? You don't bite soup. How many bites am I taking if I slurp a bowl of soup? Is there a direct slurp-to-bite conversion? Other questions: If I can eat two thirds of a bacon cheeseburger in a single bite, does that still count as one bite? If so, the "100 Bacon-Cheeseburger Bites Diet" might be the most successful diet yet.
100-Bites Diet: The Next Great Weight-Loss Fad?


text:
Auroras, and Noctilucales, and Oxygen
Frank Olsen captured a magical shot on October 7, 2012. There's two phenomena in this shot, both produced via oxygen. The aurora borealis is produced by energy from the sun exciting (and eventually being released by) oxygen in the atmosphere. The blue glow at the shoreline is from bioluminescent organisms, using oxygen to produce light using an enzyme called luciferase.


Bowen Therapy
Bowen Technique is a gentle manipulation of the muscles of the body, intended to trigger the nervous system to begin a process of self-healing. Each series of moves on the muscles, tendons, and nerves, is followed by a pause to allow the body to integrate the information. The objective of each treatment is to restore the normal, healthy and balanced functioning of the body. The Bowen Technique has its origins in the work done by Tom Bowen in the mid-1970's in Australia. The Bowen Technique has become part of an osteopathic service of soft tissue manipulation. It is often characterized as a combination of massage and acupressure, a neuromuscular reflex therapy. The core of my practice is The Bowen Technique: a hands-on holistic manuel method, leveraging a number of specialized osteopathic techniques. It is based on the gentle and precise manipulation of fascia, nerves and muscle tissue that allows the nervous system to begin the process of self-healing. This process typically will continue for several days after the treatment.
Niromathe Method
In addition to the Bowen Technique, I also practice the Niromathe Method. The Niromathe Method finds its origin in the work performed by "bone setters" in India. It was further researched and developed in Europe. This technique is known in the world of osteopathy and manual therapy as a unique and effective process, that improves blood flow, and releases the fascia around muscles and joints where an osteopathic lesion has formed. Louise Tremblay explains in short words the technique on her website.
Origins of the method
First inspired by the Moneyron method, who himself learned it from someone else, the Niromathé method was developed over the past thirty years in France, particularly by Dr. Raymond Branly and his researches. He added to the Moneyron method what he observed from other manual therapists, and also what other practitioners had suggested to him. It forms a whole, a method in its own right, hardly faster and more effective in specific cases. It is an invaluable tool for all manual therapists.
The Niromathe Move
The Niromathé move is very unusual. It is through this move that Ruffini's corpuscles and Pacini's corpuscles are recruited. One part of the move is slow and rotating while the other is fast and dynamic; thus, the whole gesture will have consequences at the CNS level. The receiving fields will be taken into account when performing the moves.
Positioning the body
With DNM, the person is placed in the most comfortable way, then the skin is stretched in the direction where the pain decreases. With Niromathé, the person is placed in the uncomfortable (but not painful) position: so the skin is already stretched! Then we make movements that will also stretch the skin… The cutaneous reflex methods are the ones we must learn and understand: they are the ones that give the best results for any muscular or joint « blockage ».
The DermoNeuroModulation is particularly directed towards the treatment of cutaneous nerves. These nerves carry all the body surface information, which is transmitted to the CNS. Information from the mechanoreceptors, of course, but also from all those fibres that will measure our external environment, temperature, skin chemistry, nutrition, pH, etc. And they have almost always been forgotten, or worse, neglected. I think this is because we don't see them: they don't seem as important as muscles, fascias, or other structures even sometimes imaginary. The human is thus made, he must see to believe. Two important books confirm that tunnel syndromes are not reserved for "large" peripheral nerves, but that small nerves could also be affected. These books are: Nerve Injury and Repair by Göran Lundbord and Tunnel Syndromes by Marko M. Pećina.
DNM mainly treats neuropathic pain. It is not involved in pain whose causes are medical, such as injuries like cuts or fractures, deep somatic pain, visceral pain, and suspicious pain of unknown origin.
"Manual therapy has long been a component of physical rehabilitation programs, especially to treat those in pain. The mechanisms of manual therapy, however, are not fully understood, and it has been suggested that its pain modulatory effects are of neurophysiological origin and may be mediated by the descending modulatory circuit. Therefore, the purpose of this review is to examine the neurophysiological response to different types of manual therapy, in order to better understand the neurophysiological mechanisms behind each therapy's analgesic effects. It is concluded that different forms of manual therapy elicit analgesic effects via different mechanisms, and nearly all therapies appear to be at least partially mediated by descending modulation. Additionally, future avenues of mechanistic research pertaining to manual therapy are discussed."
Andrew D. Vigotsky1 and Ryan P. Bruhns2
Hindawi Publishing Corporation
Pain Research and Treatment
Volume 2015, Article ID 292805, 11 pages


text:
Atacazo volcanAtacazo volcano is part of the Atacazo–Ninahuilca Volcanic Complex in the Western Cordillera of Ecuador and located 10 km southwest of the capital of Ecuarod, Quito.
The andesitic Atacazo stratovolcano is a successor of the older La Carcacha stratovolcano. It was built above a 6 km wide and 900 m deep caldera. The caldera is breached to the SW and contains 3 Holocene dacitic domes. The youngest lava dome, Ninahuilca, erupted about 2300 years ago. 2 andesitic lava domes are also found on the SE flank.
Several large Plinian eruptions have occurred at the volcano during the past 10,000 years and accompanied the growth of the lava domes. The formation of the most recent dome, Ninahuilca Chico, was accompanied by explosive eruptos that produced pyroclastic flows that flowed up to 35 km distance through valleys towards the west.
Introduction:Several towns built on the deposits of past eruptions and are considered to be at high risk areas in case of a new major explosive eruption. These include the towns and villages of Tambillo, Uyumbicho, Aloag, Tandapi, Canchacoto.
A stretch of the main Panamerican highway, crossing the highlands from north to south, as well as the road from Aloag to Santo Domingo, linking the Northern highlands to the Coastal region, are also built in the high risk area.
Typical quiescence intervals of Atacazo volcano range between 1000–4000 years. Statistically, the risk of a new eruption is increasing, because the last major eruption is 2300 years back. A future eruption could affect about 70,000 people.
Cliquez ici pour recommander cette page à un ami


A San Leandro, California employment contract is an agreement where the employer and employee each intend to legally bind the other to specificed conditions in the work relationship. Many California employment contracts can be negotiable since both parties benefit from a suitable agreement that is unique to their circumstances. If conditions are met, the employment contract for a set period of time will provide the employee with a guarantee of job security. It also gives employees some degree of control directly over employee productivity.
Common Terms in California Employment Contracts
California employment contracts typically include many terms such as a description of the job, employment duration (generally at-will employment), compensation/benefits, and grounds for terminating. Other clauses that are less common may also be included in the contract. These might include: first, an arbitration clause stating that the parties may not sue should a dispute arise regarding the employment
Additionally, the contract can contain a termination clause, also known as a "severance clause". Courts have held that employers who violate these clauses when firing a person may be sued for wrongful termination. Thirdly, work that is completed by an employee, or information obtained by them are covered in clauses known as confidentiality clauses and non-compete clauses.
How Can a San Leandro Lawyer Help?
An San Leandro attorney specializing in California employment law may help you to understand what a given employment contract contains. You can also obtain counsel from an attorney as to what is fair in a contract. They can also negotiate terms for you with regards to concerns with entering or terminating employment.


text:
storms pushed Norseman Lief Ericsson westward to the North American continent
1,000 years ago, many of the cypress trees of today's Cache River State
Natural Area were just saplings. By the time Christopher Columbus landed
in the Western Hemisphere 500 years later, they had grown into ancient
trees that towered above even more ancient blackwater swamps.
River State Natural Area is situated in southernmost Illinois within a
floodplain carved long ago by glacial floodwater of the Ohio River. When
the Ohio River adopted its present course, it left the Cache River to
meander across rich and vast wetlands. Among the outstanding natural features
found within the area today are massive cypress trees whose flared bases,
called buttresses, exceed 40 feet circumference. Many are more than 1,000
years old, including one that has earned the title of state champion bald
cypress because of its huge trunk girth, towering height and heavily
intensive efforts to convert land along the Cache River to cropland, the
land that today makes up the Cache River State Natural Area has managed
to hold onto some of the highest quality aquatic and terrestrial natural
communities remaining in Illinois. Wetlands within this area are
so important to migratory waterfowl and shorebirds that in 1996 the RAMSAR
Convention collectively designated them a Wetland of International Importance,
only the 19th wetland in the United States to receive the distinction.
within southern Illinois that north meets south and east meets west. With
its diversity of soils, bedrock and landforms, the Cache River Valley
contains four distinct ecological regions. Its hodgepodge of ecological
factors has resulted in a collage of natural communities, each with its
own unique assemblage of physical attributes, plants and animals.
people have rallied to protect the Cache River watershed. The National
Park Service has designated two National Natural Landmarks within its
borders - Bottomland Swamp and Heron Pond. The Illinois Department of
Natural Resources has identified three Nature Preserves here - Section
8 Woods, Heron Pond-Wildcat Bluff and Little Black Slough - and registered
10,367 acres of the area's 14,791 acres in the Land and Water Reserve
Program. These designations assure that the site management will emphasize
restoration and preservation of the area's natural characteristics.
14,791 acres in Johnson, Massac and Pulaski counties, Cache River State
Natural Area is composed of three distinct management units - Little Black
Slough, Lower Cache River Swamps and Glass Hill.
Black Slough Unit surrounds the Upper Cache River north of the West Eden
Road. Nestled deep within the shadowy bottomland forests of this unit
lies Heron Pond, a shallow wetland dominated by cypress and tupelo trees.
A boardwalk winds its way into the secluded depths of this forested swamp,
providing visitors a chance to step back in time and observe wetland and
aquatic ecosystems that have remained relatively undisturbed for thousands
of years. During the growing season, massive gray-brown cypress trunks
arise from a floating carpet of brilliant emerald duckweed. These living
pillars of wood extend high over the swamp before disappearing into a
shadow-filled canopy. Here, seldom-seen but often-heard bird-voiced tree
frogs haunt the leafy branches of tall cypress trees, their melodious
calls considered by many to be the most beautiful of all the frog voices.
Above and below the waters surface, birds, mammals, reptiles, amphibians
and insects interact in a symphony of survival.
the swamps are the low ridges of the Lesser Shawnee Hills. At the base
of these hills, bottomland hardwood forests dominated by overcup oak,
pin oak, cherrybark oak and sweetgum give way to red oak, white oak and
shagbark hickory. Barrens occur on the highest ridge tops where soils
are thin and bedrock is exposed. These sites are dominated by small post
oak and blackjack oak trees scattered about open expanses of land dominated
by grasses and forbs more commonly encountered on dry prairies.
of the West Eden Road, the Lower Cache River Swamps spread across a broad,
flat floodplain between the towns of Karnak and Ullin. The swamps are
a mosaic of permanent, deep, open water interrupted here and there by
thick-buttressed cypress trees that were old hundreds of years ago. Younger,
even-aged stands of cypress and tupelo trees and thickets of buttonbush
occur in areas of shallow water. Visitors can experience this lost world
while paddling a canoe through 6 miles of trails that meander through
rivers, swamps and ponds in a portion of the Lower Cache River known as
The Glass Hill Management Unit
occurs about 3 miles north of Bottomland Swamp near the town of Cypress.
An outstanding example of a rare landform called a sandstone knob occurs
on this site. All around and on top of this inaccessible knob is relatively
undisturbed upland forest dominated by chinquapin oak, red oak, white
oak, shagbark hickory and pignut hickory.
The wild places found in Cache River State Natural Area provides
food, cover and water for an incredible diversity of plant and animal species,
more than 100 of which have been listed as endangered or threatened by
the State of Illinois.
are the Cache Rivers signature natural community, then birds are
its signature species. Observant birders can expect to see bald eagles,
red-tailed hawks, great horned owls, barred owls, great blue herons, great
egrets, little blue herons, green herons, least bitterns, wood ducks,
mallards, snow geese, sora rails, woodcock, quail, mourning doves, red-headed
woodpeckers, pileated woodpeckers, prothonotary warblers, black vultures
and turkey vultures. Seasonal migrations bring multitudes of waterfowl
and shorebirds to the area, as well as the occasional osprey, golden eagle
and black tern.
often encountered include white-tailed deer, squirrels, raccoons, beavers,
gray foxes, red foxes, opossums, skunks and mink. Lucky visitors might
catch a glimpse of river otters, bobcats or tiny Indiana bats.
tree frogs, southern leopard frogs, spring peepers, western chorus frogs,
bullfrogs and American toads are among the more vocal of the areas
amphibian inhabitants. Other well-known residents of Cache environs are
the cottonmouth, copperhead and timber rattlesnake. While the bite from
these venomous species is dangerous, as long as visitors are both cautious
and observant, they have little to fear from these reclusive, non-aggressive
under or on the tea-colored waters of the Cache are numerous fish, amphibians
and reptiles. Channel catfish, crappie, bass and bluegill are prized by
area fishermen. Less sought after but true swamp fish include the bowfin,
needlenose gar, grass pickerel and yellow bullhead catfish. Pygmy sunfish
and cypress minnows are two state-endangered fish found only in wetlands
dominated by forested swamps.
River Wetlands Center | Wetlands Center Fact
Center was completed in November 2004 and is a high-quality
destination point that fosters natural resources appreciation and education,
while interpreting the unique natural and cultural history of the Cache
River Wetlands. Located south of Whitehill on Illinois Route 37, the center
is named for Henry N. Barkhausen, who served as Director for the Illinois
Department of Conservation from 1970-73, and for 18 years served as Secretary
of the Citizens Committee to Save the Cache River. He worked to encourage
government agencies, organizations and residents to protect and restore
the natural character of the Cache Wetlands. The Wetlands Center hours
and days of operation are Wednesday thru Sunday, 9 a.m. - 4 p.m.
Trail | Canoe Fact Sheet | Canoe
Trail Map | Cache Canoe Trail Video
The Lower Cache River
Trail offers paddlers a quality canoe experience, 3 to 6 miles in length,
through magnificent cypress-tupelo swamp. The highlight of the trail is
Illinois largest, and therefore state
champion, bald cypress tree. Like many trees within the Cache
River State Natural Area, it is more than 1,000 years old.
can begin at the Lower Cache River access area or at a private boat launch
($1 fee) south of Perks. Car shuttles are not necessary. The trail is
marked with international canoe symbols and arrows and/or yellow stripes
on trees. Canoe maps and fact sheets are available at the site headquarters
or wetlands center.
While canoeing the
Lower Cache is enjoyable, paddlers should be aware that the Upper Cache
River is difficult if not impossible to canoe. Severe bank erosion, which
is responsible for trees tipping over and creating log jams, makes canoe
portages very frequent.
Hill State bicycle trail travels through 8 miles of the Cache
River State Natural Area terminating at the Henry Barkhausen-Cache River
Wetlands/Visitor Center, 2 1/2 miles east of Karn


text:
Objective: This study aimed to (i) describe unplanned readmission rates after injury according to time, reason, and place; (ii) compare observed rates with general population rates, and (iii) identify determinants of 30-day readmission.
Background: Hospital readmissions represent an important burden in terms of mortality, morbidity, and resource use but information on unplanned rehospitalization after injury admissions is scarce.
Methods: This multicenter retrospective cohort study was based on adults discharged alive from a Canadian provincial trauma system (1998–2010; n = 115,329). Trauma registry data were linked to hospital discharge data to obtain information on readmission up to 12 months postdischarge. Provincial admission rates were matched to study data by age and gender to obtain expected rates. Determinants of readmission were identified using multiple logistic regression.
Results: Cumulative readmission rates at 30 days, 3 months, 6 months, and 12 months were 5.9%, 10.9%, 15.5%, and 21.1%, respectively. Observed rates persisted above expected rates up to 11 months postdischarge. Thirty percent of 30-day readmissions were due to potential complications of injury compared with 3% for general provincial admissions. Only 23% of readmissions were to the same hospital. The strongest independent predictors of readmission were the number of prior admissions, discharge destination, the number of comorbidities, and age.
Conclusions: Unplanned readmissions after discharge from acute care for traumatic injury are frequent, persist beyond 30 days, and are often related to potential complications of injury. Several patient-, injury-, and hospital-related factors are associated with the risk of readmission. Injury readmission rates should be monitored as part of trauma quality assurance efforts.


text:
These Digital Binder resource collections are aligned with the Sample Curriculum Overview and Instructional Sample units, created by Colorado educators through the Colorado Department of Education's (CDE) District Sample Curriculum Project. They can be used for instruction and learning to meet K-12 Colorado Academic Standards in Math, Reading, Writing, and Communicating, Science, and Social Studies. The collections include:
- grade level and subject standards,
- assessment resources, including CDE Assessment resources,
- scope and sequences, and
- lesson plans and teaching strategies, learning experiences and student resources, and differentiation options.
Some of the content is the result of projects in the East Central, Rio Blanco, San Luis Valley, and South Central BOCES plus a number of other districts and initiatives.
Links to all Content Collections:
- eNetLearning "Shelf" containing all grade level digital binders
- Elementary School digital binders
- Middle School digital binders
- High School digital binders
Digital Collections Tutorial – This video tutorial demonstrates how to access and use the BOCES Digital Content Collections located in LiveBinders.


text:
Theodore of Pavia
Our father among the saints Theodore of Pavia was the Bishop of Pavia during the eighth century. He is noted for his opposition to the arian Lombard kings and the heresy of arianism that they espoused. His feast day is May 20.
Little is known of his early life, including the time and place of his birth as well as his early ecclesiastical life. Theodore became Bishop of Pavia in 743 and served God and the faithful of Pavia for thirty five years. As Pavia was the capital of the kingdom of the arian Lombards, Theodore was in continual opposition with them. This resulted in his being banished and punished several times. Nevertheless, he remained faithful to his Orthodox community and is remembered as a saint.
The date of his death is uncertain as it is believed he died about the year 778, but may have been as early as 769.
- Ὁ Ἅγιος Θεόδωρος Ἐπίσκοπος Παβίας. 20 Μαΐου. ΜΕΓΑΣ ΣΥΝΑΞΑΡΙΣΤΗΣ.


text:
PIRA Code(s): 3A10.20 Set up time:1 minute Operation: Move the weight along the hacksaw blade. Pull back on the blade and release. When the weight is at the top of the blade the frequency is smaller compared to when the weight is at the bottom. Physics and Science Concepts: Oscillations Safety: Edge of blade may be sharp.
PIRA Code(s): 3A10.40 Set up time:none Operation: Push the pendulum so that it swings back and forth at an angle of about 0 º. Then, slowly increase the angle, and watch the frequency decrease. For a more effective demonstration, start the pendulum at a relatively high angle, and then decrease the angle of the plane of oscillation so that the frequency of the pendulum will increase over time. Physics and Science Concepts: Oscillations Safety: None
PIRA Code(s): 3A20.80 Set up time:1 minute Operation: Shake the cup to send large waves down the spring and create sounds similar to whale songs or star trek laser blasts. Speak into the cup and the spring will create an echoing effect. Physics and Science Concepts: Oscillations and Waves Safety: Do not hyperextend slinky.
PIRA Code(s): 3B20.11 Set up time:2 minutes Operation: Lay the slinky down on the ground and push it back and forth lengthwise to make longitudinal waves. Physics and Science Concepts: Longitudinal Waves Safety: Ends of slinky may be sharp or may tangle.
PIRA Code(s): 3B30.30 Set up time:10 minutes (5 minutes to pump the bell jar) Operation: Plug in the pump and attach the clear tube of the pump to the valve. Turn the switch on the power supply to ascertain that the alarm is working properly. Then, pump out the air inside the bell jar. It will take about 5 minutes to obtain a low enough air pressure so that the alarm will not sound. Turn the alarm on and slowly open the valve, allowing the air pressure in the bell jar to increase. The sound of the alarm will also gradually increase. Physics and Science Concepts: Sound waves Safety: A glass jar containing a vacuum can be extremely hazardous if broken.
PIRA Code(s): 3D32.15 Set up time:No setup required. Operation: First, slide blow into the mouthpiece located at the top of the whistle. Next, move the piston to create different frequencies. If you have trouble moving the piston and blowing into the whistle simultaneously, have another person work the piston. Physics and Science Concepts: Waves, Oscillations, Frequency, Pitch Safety: Do not blow too hard or for extended periods of time as this may cause dizziness or headaches. Clean the mouthpiece in between use.
PIRA Code(s): 3D46.16 Set up time:no setup required Operation: Place the boxes with open cavities facing, one box length apart. Strike the first tuning fork with the striker. Stop the vibrations with your hand. Listen closely for the sound coming from the second fork. Physics and Science Concepts: Waves and Oscillations Safety: None


text:
This discussion paper summarises the evidence and debates for a 'cup half full' interpretation of development, which argues that poverty can be abolished within a matter of years. This abolition can be achieved while global health and education indicators are on a seemingly inexorable upward curve, along with human rights and political inclusion. In contrast, new thinking about development, exploring topics such as global climate change, inequality, well-being and human vulnerability to shocks, as well as the importance of systems thinking, suggests that any celebration of achievements is premature and much remains to be done. Readers are invited to consider how geographical research and education might contribute to these debates.
This paper was first published as an article in Geography, Volume 100 Part 2 (Summer 2015).
How to cite this resource
Citation styles vary so we recommend you check what is appropriate for your context. You may choose to cite Oxfam resources as follows:
Author(s)/Editor(s). (Year of publication). Title and sub-title. Place of publication: name of publisher. DOI (where available). URL
Our FAQs page has some examples of this approach.


text:
Profile Url: angelique-chan
Researcher at Duke-NUS Medical School
Since the beginning of the COVID-19 outbreak in December 2019, a substantial body of COVID-19 medical literature has been generated. As of May 2020, gaps in the existing literature remain unidentified and, hence, unaddressed. In this paper, we summarise the medical literature on COVID-19 between 1 January and 24 March 2020 using evidence maps and bibliometric analysis in order to systematically identify gaps and propose areas for valuable future research. The examined COVID-19 medical literature originated primarily from Asia and focussed mainly on clinical features and diagnosis of the disease. Many areas of potential research remain underexplored, such as mental health research, the use of novel technologies and artificial intelligence, research on the pathophysiology of COVID-19 within different body systems, and research on indirect effects of COVID-19 on the care of non-COVID-19 patients. Research collaboration at the international level was limited although improvements may aid global containment efforts.


cross-module inlining in guile
13 May 2021 11:25 AM (guile | scheme | inlining | partial evaluation | peval | compilers)
Greetings, hackers of spaceship Earth! Today's missive is about cross-module inlining in Guile.
a bit of history
Back in the day... what am I saying? I always start these posts with loads of context. Probably you know it all already. 10 years ago, Guile's partial evaluation pass extended the macro-writer's bill of rights to Schemers of the Guile persuasion. This pass makes local function definitions free in many cases: if they should be inlined and constant-folded, you are confident that they will be. peval lets you write clear programs with well-factored code and still have good optimization.
The peval pass did have a limitation, though, which wasn't its fault. In Guile, modules have historically been a first-order concept: modules are a kind of object with a hash table inside, which you build by mutating. I speak crassly but that's how it is. In such a world, it's hard to reason about top-level bindings: what module do they belong to? Could they ever be overridden? When you have a free reference to a, and there's a top-level definition of a in the current compilation unit, is that the a that's being referenced, or could it be something else? Could the binding be mutated in the future?
During the Guile 2.0 and 2.2 cycles, we punted on this question. But for 3.0, we added the notion of declarative modules. For these modules, bindings which are defined once in a module and which are not mutated in the compilation unit are declarative bindings, which can be reasoned about lexically. We actually translate them to a form of letrec*, which then enables inlining via peval, contification, and closure optimization -- in descending order of preference.
The upshot is that with Guile 3.0, top-level bindings are no longer optimization barriers, in the case of declarative modules, which are compatible enough with historic semantics and usage that they are on by default.
However, module boundaries have still been an optimization barrier. Take (srfi srfi-1), a little utility library on lists. One definition in the library is xcons, which is cons with arguments reversed. It's literally (lambda (cdr car) (cons car cdr)). But does the compiler know that? Would it know that (car (xcons x y)) is the same as y? Until now, no, because no part of the optimizer will look into bindings from outside the compilation unit.
mr compiler, tear down this wall
But no longer! Guile can now inline across module boundaries -- in some circumstances. This feature will be part of a future Guile 3.0.8.
There are actually two parts of this. One is the compiler can identify a set of "inlinable" values from a declarative module. An inlinable value is a small copyable expression. A copyable expression has no identity (it isn't a fresh allocation), and doesn't reference any module-private binding. Notably, lambda expressions can be copyable, depending on what they reference. The compiler then extends the module definition that's residualized in the compiled file to include a little procedure that, when passed a name, will return the Tree-IL representation of that binding. The design of that was a little tricky; we want to avoid overhead when using the module outside of the compiler, even relocations. See compute-encoding in that module for details.
With all of that, we can call ((module-inlinable-exports (resolve-interface '(srfi srfi-1))) 'xcons) and get back the Tree-IL equivalent of (lambda (cdr car) (cons car cdr)). Neat!
The other half of the facility is the actual inlining. Here we lean on peval again, causing forms to trigger an attempt to copy the term from the imported module to the residual expression, limited by the same effort counter as the rest of peval.
The end result is that we can be absolutely sure that constants in imported declarative modules will inline into their uses, and fairly sure that "small" procedures will inline too.
caveat: compiled imported modules
There are a few caveats about this facility, and they are sufficiently sharp that I should probably fix them some day. The first one is that for an imported module to expose inlinable definitions, the imported module needs to have been compiled already, not loaded from source. When you load a module from source using the interpreter instead of compiling it first, the pipeline is optimized for minimizing the latency between when you ask for the module and when it is available. There's no time to analyze the module to determine which exports are inlinable and so the module exposes no inlinable exports.
This caveat is mitigated by automatic compilation, enabled by default, which will compile imported modules as needed.
It could also be fixed for modules by topologically ordering the module compilation sequence; this would allow some parallelism in the build but less than before, though for module graphs with cycles (these exist!) you'd still have some weirdness.
caveat: abi fragility
Before Guile supported cross-module inlining, there was only explicit inlining across modules in Guile, facilitated by macros. If you write a module that has a define-inlinable export and you think about its ABI, then you know to consider any definition referenced by the inlinable export, and you know by experience that its code may be copied into other compilation units. Guile doesn't automatically recompile a dependent module when a macro that it uses changes, currently anyway. Admittedly this situation leans more on culture than on tools, which could be improved.
However, with automatically inlinable exports, this changes. Any definition in a module could be inlined into its uses in other modules. This may alter the ABI of a module in unexpected ways: you think that module C depends on module B, but after inlining it may depend on module A as well. Updating module B might not update the inlined copies of values from B into C -- as in the case of define-inlinable, but less lexically apparent.
At higher optimization levels, even private definitions in a module can be inlinable; these may be referenced if an exported macro from the module expands to a term that references a module-private variable, or if an inlinable exported binding references the private binding. But these optimization levels are off by default precisely because I fear the bugs.
Probably what this cries out for is some more sensible dependency tracking in build systems, but that is a topic for another day.
caveat: reproducibility
When you make a fresh checkout of Guile from git and build it, the build proceeds in the following way.
Firstly, we build libguile, the run-time library implemented in C.
Then we compile a "core" subset of Scheme files at optimization level -O1. This subset should include the evaluator, reader, macro expander, basic run-time, and compilers. (There is a bootstrap evaluator, reader, and macro expander in C, to start this process.) Say we have source files S0, S1, S2 and so on; generally speaking, these files correspond to Guile modules M0, M1, M2 etc. This first build produces compiled files C0, C1, C2, and so on. When compiling a file S2 implementing module M2, which happens to import M1 and M0, it may be M1 and M0 are provided by compiled files C1 and C0, or possibly they are loaded from the source files S1 and S0, or C1 and S0, or S1 and C0.
The bootstrap build uses make for parallelism, with each compile process starts afresh, importing all the modules that comprise the compiler and then using them to compile the target file. As the build proceeds, more and more module imports can be "serviced" by compiled files instead of source files, making the build go faster and faster. However this introduces system-specific nondeterminism as to the set of compiled files available when compiling any other file. This strategy works because it doesn't really matter whether module M1 is provided by compiled file C1 or source file S1; the compiler and the interpreter implement the same language.
Once the compiler is compiled at optimization level -O1, Guile then uses that freshly built compiler to build everything at -O2. We do it in this way because building some files at -O1 then all files at -O2 takes less time than going straight to -O2. If this sounds weird, that's because it is.
The resulting build is reproducible... mostly. There is a bug in which some unique identifiers generated as part of the implementation of macros can be non-reproducible in some cases, and that disabling parallel builds seems to solve the problem. The issue being that gensym (or equivalent) might be called a different number of times depending on whether you are loading a compiled module, or whether you need to read and macro-expand it. The resulting compiled files are equivalent under alpha-renaming but not bit-identical. This is a bug to fix.
Anyway, at optimization level -O1, Guile will record inlinable definitions. At -O2, Guile will actually try to do cross-module inlining. We run into two issues when compiling Guile; one is if we are in


text:
Body Setup Core
Editor Properties: (see get_editor_property/set_editor_property)
bone_name(Name): [Read-Only] Used in the PhysicsAsset case. Associates this Body with Bone in a skeletal mesh.
collision_reponse(BodyCollisionResponse): [Read-Write] Collision Type for this body. This eventually changes response to collision to others *
collision_trace_flag(CollisionTraceFlag): [Read-Write] Collision Trace behavior - by default, it will keep simple(convex)/complex(per-poly) separate *
physics_type(PhysicsType): [Read-Write] If simulated it will use physics, if kinematic it will not be affected by physics, but can interact with physically simulated bodies. Default will inherit from OwnerComponent's behavior.