This is an early exploration of the design alternatives to address this under this threat model.
This section goes over the what and the how. It presuposes that you have read and started from:
- The why: the problem statement and the motivations and the topology of the parties involved.
- The why not: the alternatives considered (e.g. the prior art, the status quo and the requestStorageAccess API).
We'll then go over the high-level overview and a breakdown into two smaller problems:
- The Consumer API (i.e. the interface between the RP and the Browser) and
- The Provider API (i.e. the interaction between the Browser and the IDP).
In the first part of the last section will go over the (slightly less controversial) Consumer API and the useful separation between:
- The Sign-in API and
- The Authorization API.
Finally, we'll then enumerate a series of alternatives for the (much more contentious) Provider API:
- The Permission-oriented Variation
- The Mediation-oriented Variation
- The Delegation-oriented Variation
High Level Design
From a high level perspective, the browser acts as an mediator between two parties: the relying party and the identity provider.
The browser exposes two distinct interfaces for the intermediation:
- The Consumer API to allow a relying party to request and receive an identity token and
- The Provider API to allow an identity provider to provide an identity token
We'll go over each of these separately next.
The Consumer API
The consumer API is the Web Platform privacy-oriented API that relying parties call to request information from a specific identity provider, to be used in replacement of the current redirect/popup affordances that are currently used.
From the perspective of The Privacy Threat Model, there are two notably distinct uses of federation:
While both are implemented on top of OAuth as different scopes, the former (typically deployed with the openid
oauth scope) captures a meaningful volume of usage (we estimate it be around 80% of the use) at a much more controlled surface area (including transactions done at the front channel with idtokens as opposed to access tokens), whereas the latter is much more powerful and used less frequently (as well as done primarily on the back channel).
Lets first turn to the former use, and then go over authorization following that.
The Sign-In API
Simply put, the Sign-In API is a Web Platform affordance that takes an identity provider as input and returns a directed basic profile as output. It substitutes the navigational/popup affordances currently used.
We don't know yet exactly what it should look like, but here is an example that can serve as a starting point:
// This is just a possible starting point, largely TBD.
let {idToken} = await navigator.credentials.get({
provider: "https://accounts.example.com",
// other OpenId connect parameters
});
Another notable alternative worth considering is a declarative API that would allow embedding the user experience inline in the content area while still keeping the cross-origin separation before user consent. For example:
<input type=”idtoken” provider=”https://accounts.example.com”>
Upon invocation, the browser makes an assessment of the user's intention, for example making sure that the API was used as a result of a user gesture.
From there, the browser proceeds to mediate the data exchange with the chose identity provider via The Provider API.
Upon success, the consumer API results into a directed basic profile. For example:
{
"iss": "https://accounts.idp.com",
"sub": "110169484474386276334",
"aud": "https://example.com",
"iat": "2342342",
"name": "Sam G",
"email"<EMAIL_ADDRESS>"email_verified": "true",
"profile": "https://accounts.google.com/default-avatar.png",
}
The directed basic profile is signed into a JWT and then returned back to the relying party which can effectively get the user logged in. Here is an example of what a signed JWT looks like for the payload above.
Another notable form of deployment of federation is over top level navigations.
Because a significant part of federation is deployed over well-established protocols (e.g. OpenID, SAML), their HTTP profile is somewhat easy to spot. For example, for OpenID Connect requests/responses we could look at HTTP requests that have:
- a client_id parameter
- a redirect_uri parameter
- a scope parameter
- an accompanying .well-known/openid-configuration configuration
Responses can be matched when they match:
- a redirect to the previously used redirect_uri
- an id_token parameter
It is an active area of investigation to determine:
- which and how many of these patterns we would want to use (too few and you over-classify, too many and you under-classify),
- whether the same approach would work for other protocols (e.g. SAML).
- whether we need an opt-in / explicit API and if so which (e.g. perhaps a special URL marker, like a reserved URL parameter or a scheme)
The Authorization API
Relying Parties often rely on more services from IDPs which are gathered via subsequent flows to get the user's authorization to release access to broader scopes. Notably, there is a long tail of these scopes, with little to no commonalities between them (say, access to calendar, photos, social graphs, etc).
To allow users to continue accessing broader scopes, we expose a new API to mediate that flow. For example:
navigator.credentials.requestAuthorization({
scope: "https://idp.com/auth/calendar.readonly",
provider: "https://idp.com",
});
Now that we looked at the surface area introduced for relying parties, lets turn into The Provider API and see what are the options under consideration for the intermediation between the user agent and the identity provider.
The Provider API
The purpose of the Provider API is to fulfill the invocation of The Consumer API by coordinating with the identity provider.
From the perspective of The Privacy Threat Model, the Provider API has a much wider set of choices and trade-offs:
- Because of the classification problem, we want to prevent a tracker from abusing this API by impersonating an IDP to track users.
- Because of the RP tracking problem, we want to promote directed identifiers as much as we can.
- Because of the IDP tracking problem, we want to keep IDPs involved only to the extent that they justifiably need to.
We also want to make sure that:
- There is a credible path towards eventual browser interoperability (e.g. firefox, safari, edge)
- The scheme reaches an economically viable equilibrium for all parties involved, from a design of incentives perspective
- The scheme handles gracefully federation on non-web platforms (e.g. Android, iOS, PlayStation, etc)
- We minimize the deployment and activation windows (e.g. server-side / client-side and user-behavior backwards compatibility) for relying parties and identity providers
- The scheme has a deliberate and well informed extensibility and ossification model, i.e. make extensible where innovation is constructive and ossify where there is less rapid iteration going on and there a direct value in terms of privacy/security.
We believe we all still have a lot to learn from each other (browser vendors, identity providers, relying parties, etc) in choosing the mean between the extremes of excess and deficiency with regards to the trade-offs of privacy, usability and economic viability.
Having said that, in the following section we'll enumerate some of the most prominent variations under consideration and their trade-offs.
We'll try to go over the thought process and the biggest considerations to be made starting from the most basic thing that we could do to some of the most involved.
The approaches are categorized into three general approaches:
- The Permission-oriented Variation
- The Mediation-oriented Variation
- The Delegation-oriented Variation
The Permission-oriented Variation
The simplest approach is to have WebID offer APIs that allow cross-origin data sharing for sign-in and authorization use cases that works much as they do today, but with the user agents providing warnings and consent moments to the user when new tracking risks appear.
An expanded exploration of this approach with its benefits and drawbacks can be seen here.
Naturally, the next set of formulations try to address these two shortcomings at the cost of the autonomy of the IDP and the ossification of parts of the flow.
The Mediation-oriented Variation
In this formulation, the browser pulls the responsibility for itself to drive the profile exchange, enabling it to (a) bundle the consent moments described in the formulation above and (b) steer users to safer defaults.
An expanded exploration of this approach with its benefits and drawbacks can be seen here.
The Delegation-oriented Variation
The last alternative under consideration enables the user agent to finally address the The IDP Tracking Problem mechanically.
In this formulation, the IDP delegates the presentation of identity assertions to the Browser. It accomplishes that by making the browser generate a public/private key pair and have the IDP sign a certificate attesting that the browser's private key can issue certificates for a certain JWT.
The biggest benefits of this variation are:
- The delegation mechanically solves the The IDP Tracking Problem: it keeps the IDP unaware of where the user is signing-into while still enabling the user to recover its account while moving around.
- Because there aren't any IDP Tracking Problem nor any RP Tracking Problem, this can possibly be a zero-prompt, consequence-free UX.
The biggest drawback of this variation is that it leads to a JWT that is not backwards compatible with the existing server-side deployment of relying parties (which are expecting the IDP to sign JTWs, not the Browser), which is O(K) hard to change.
An expanded exploration of this approach with its benefits and drawbacks can be seen here.
The Provider Authorization API
The Provider Authorization API fulfills the request from the Consumer Authorization API.
It is clearly not possible to enumerate all the various scopes that are in use, so it is clearer that:
- the IDP needs to be involved in the authorization flow
- the browser needs to apply the lowest common denominator policy (e.g. assume that the flow implies both the IDP Tracking Problem as well as the RP Tracking Problem)
The Enterprise-oriented Variation
To the best of our knowledge, we believe that business users (employees of a corporation) have a different set of privacy expectations compared to consumers, in that the accounts issued to employees are owned by the businesses (as opposed to the relationship a consumer has with social login providers). It is also clear to us too that the current deployment of businesses makes a non-trivial use of personal machines owned by employees, rather than machines that are issued by the business (which have a much easier ability to control enterprise policies).
We believe that the controls should take that distinction into consideration, and that the biggest challenge is adversarial impersonation.
This is still an active area of exploration, but to give a sense of direction, we are actively exploring making an abrupt separation between personal profiles and work profiles. The intuition here is that browser profiles are the closest delineation that can make a separation between personal use of your browser versus work use of your browser, along with the privacy expectations in each mode.
In addition to the separation, and with the user's permission/control/understanding, it seems like it would be beneficial for business admins to have the ability to set work policies on a per-profile basis.


This is not_a_seagull's personal site, where he will eventually document things he's written and things he's coded.


In a keynote speech to the Association of School and College Leaders (ASCL) conference, Sir Michael Wilshaw argued that those schools currently judged good by Ofsted (60%) should no longer be subject to full routine inspections in the way they are now.
Instead, they should receive more frequent, but light-touch visits every two to three years by one of Her Majesty’s Inspectors (HMI) - or a serving school leader working as an associate Ofsted inspector - whose job would be to engage in professional dialogue with senior staff.
Sir Michael said these visits would be ‘challenging but also constructive’. The findings of the visit would be sent to parents by letter.
He said that the planned changes - the detail of which will be developed over the next 18 months in consultation with the Department for Education and the professional associations – should be underpinned by 3 important principles:
*the need for Ofsted to undertake a root and branch review of outsourced inspection (Sir Michael said that inspection is too important for Ofsted to simply have oversight of third-party arrangements)
* the need for Ofsted to move towards more proportionate and risk-based inspection of those schools that need greater intervention - while incrementally moving away from routine ‘section 5’ inspections of good schools
* a belief that Her Majesty’s Inspectors should lead the great majority of school inspections - Sir Michael said he plans to increase the number of HMI posts over the next few years and include a much larger number of seconded outstanding serving school practitioners
Under these proposals, a full inspection will only be triggered when inspectors see either steep decline or significant improvement in a good school. Even if the HMI does see some problems in a school, a full inspection may not be required - as long as the school leaders are tackling the problems effectively.
Sir Michael said:
At the moment, it can be 5 years or even more between inspections for a good school. This is too long. It’s too long for parents. It’s too long between inspections to spot decline, and it’s too long for improving schools to show that they are outstanding.
Far better for an inspector to visit the school for a day than for a full team to descend on the school more infrequently, and then giving, more likely than not, the same judgement as the previous inspection.
Similar arrangements will also be applied in the future to 20% of schools judged outstanding by Ofsted. These schools are already – and will remain – exempt from routine inspection. However, where there is a dip in performance or other concerns are raised, they will in the first instance be subject to new, shorter monitoring inspections.
Sir Michael also used his speech to call for the schools profession to take ‘more ownership of inspection’. He wants to work with the National College of Teaching and Leadership to promote a new fellowship programme to recognise those headteachers who step up to serve the national interest by working with Ofsted to improve standards in England’s schools.
The Chief Inspector argued strongly that all publicly funded schools should be accountable to one inspectorate and be judged against agreed national standards. He also said that ‘those who advocate a different inspection system for academies and free schools must be very careful not to be seen as apologists for lower standards.’
However, he reiterated the point that Ofsted is not interested in grading individual teachers. Inspectors instead sample a proportion of lessons to get a sense of the quality of teaching across the whole school and to assess if the leadership of the school knows what’s happening in the classroom.
Finally, Sir Michael made clear that good teaching only happens when the atmosphere is right in a school and children respect the authority of staff.
He said:
Poor behaviour often leads to poor teaching because teachers feel constrained, almost straight-jacketed, in believing that doing things differently will lead to poor discipline in the classroom.
That’s why we’re focusing much more on attitudes to learning in our behaviour judgements. And that’s why we’re conducting a series of focused inspections of schools where judgements on behaviour have previously required improvement.
Notes to editors
-
The Office for Standards in Education, Children’s Services and Skills (Ofsted) regulates and inspects to achieve excellence in the care of children and young people, and in education and skills for learners of all ages. It regulates and inspects childcare and children’s social care, and inspects the Children and Family Court Advisory Support Service (Cafcass), schools, colleges, initial teacher training, work-based learning and skills training, adult and community learning, and education and training in prisons and other secure establishments. It assesses council children’s services, and inspects services for looked after children, safeguarding and child protection.


Perth property remains affordable, east coast set for record highs
by Natalie HordovEAST coast buyers could face another affordability crisis, according to the June quarter 2019 ANZ CoreLogic Housing Affordability Report.
The report said affordability peaked during the quarter and property prices on the east coast could reach record highs in the first half of 2020 if they continued to increase at current rates.
Nationally real estate values fell 8.4 per cent from the 2017 peak to the June 2019 trough, which provided some temporary relief to housing affordability, particularly in more heated markets.
The report also showed national dwelling values were 6.5 times higher than gross annual household incomes in June, the lowest level since December 2013.
“Although affordability has improved following a downturn in housing values, June 2019 marked a turning point as dwelling values again began to outpace household incomes across capital cities, with the exception of Perth and Darwin,” ANZ senior economist Felicity Emmett said.
“The rebound in prices is being driven by a number of factors including record low interest rates, easier access to credit and more certainty around tax arrangements.”
CoreLogic head of research Tim Lawless said there was more urgency coming back into the market, especially in Melbourne and Sydney where housing values had risen 6 per cent and 5.3 per cent since May.
“If this trend continues, we could see property prices reach new highs early next year,” he said.
“However, there is still some good news for prospective buyers and renters.
“The research shows households are now dedicating the smallest proportion of their incomes towards paying a new mortgage since early 2004 and renters are spending the lowest proportion of their income on accommodation since 2007.”
In the June quarter Sydney was the least affordable capital city market with a dwelling value to income ratio of 8.2 and 43.7 per cent of household income required to service a mortgage with an 80 per cent loan to value ratio.
Potential buyers needed 11 years to save a 20 per cent deposit based on saving 15 per cent of household income.
Perth was one of the more affordable markets with a dwelling value to income ratio of 5.2, mortgage repayments requiring 27.4 per cent of household income and buyers only needing 6.9 years to save a 20 per cent deposit.
Times have certainly changed, in 2006 Perth was Australia’s most unaffordable capital city.
Dwelling values were 8.3 times higher than household incomes and it took households an average of 11 years to save for a 20 per cent deposit – comparable to Sydney now.
With the median property price falling by over 20 per cent since its peak in 2014 and incomes rising, affordability has improved significantly.
The Kwinana region was Perth’s most affordable with a dwelling to value ratio of 3.7, followed by Serpentine-Jarrahdale at 4.0.
It was also cheaper to buy that rent in the Kwinana area.
At 11.3 the dwelling to income ratio was highest in the Cottesloe-Claremont region, where it took 15 years to save a 20 per cent deposit and nearly 60 per cent of household income was required to meet mortgage repayments.


set gxout stat
d
set fwrite out.dat ; set gxout fwrite;
d rh
). Or the output goes to the script variable
result
which
can be parsed inside a script (see the corr.gs
GrADS
script)The output allows many statistical calculations to be made. Here's an example of opening up a global model file and looking at the 1000 mb relative humidity, statistically,
ga-> set gxout stat
ga-> d rh
Data Type = grid
Dimensions = 0 1
I Dimension = 1 to 145
J Dimension = 1 to 73
Sizes = 145 73 10585
Undef value = 1e+20
Undef count = 0 Valid count = 10585
Min, Max = 0.0610352 100.061
Stats(sum,sumsqr,n): 787381 6.35439e+07 10585
Stats(sum,sumsqr)/n: 74.3865 6003.2
Stats(sum,sumsqr)/(n-1): 74.3935 6003.77
Stats(sigma,var)(n): 21.6761 469.854
Stats(sigma,var)(n-1): 21.6771 469.898
Cmin, cmax, cint = 10 100 10
Let's break it down:
Data Type = grid
----- you have a grid
Dimensions = 0 1
----- the dimension type for the variable
0
- lon 1
- lat 2
- lev 3
- time 1
- not varying
I Dimension = 1 to 145
------ obvious
J Dimension = 1 to 73
Sizes = 145 73 10585
------- 10585
is 145*73
or total number of points
Undef value = 1e+20
------- undefined value
Undef count = 0 Valid count = 10585
----- # of defined and
undefined points in the grid. Remember that if GrADS can't find
any data it returns undefs. This is useful for checking if you
have any data, Valid count = 0
means no...
Min, Max = 0.0610352 100.061
---- UHHH OHHHH! we have slight
supersaturation..
Stats(sum,sumsqr,n): 787381 6.35439e+07 10585
- This
should
be fairly obvious, sum = the simple sum of all defined points.
sumsqr
= sum of, in this case, rh*rh
and
10585
is n
.
Stats(sum,sumsqr)/n: 74.3865 6003.2
- Divide by
n
for convenience, the first number is the "biased"
mean...
Stats(sum,sumsqr)/(n-1): 74.3935 6003.77
- the so called
unbiased
mean (remove 1 degree of freedom), etc.
Stats(sigma,var)(n): 21.6761 469.854
- the standard
deviation
and variance "biased" (n
)
Stats(sigma,var)(n-1): 21.6771 469.898
- the standard
deviation and variance "unbiased" (n-1
)
Cmin, cmax, cint = 10 100 10
- What GrADS will use when
contouring.
gridded
and
station data


UMUCorpusClassifier
The development of an annotated corpus is a very time-consuming task. Although some researchers have proposed the automatic annotation of a corpus based on ad-hoc heuristics, valid hypotheses cannot always be made. Even when the annotation process is performed by human annotators, the quality of the corpus is heavily influenced by disagreements between annotators or with themselves. Therefore, the lack of supervision of the annotation process can lead to poor quality corpus. In this work, we propose a demonstration of UMUCorpusClassifier, a NLP tool for aid researches for compiling corpus as well as coordinating and supervising the annotation process. This tool eases the daily supervision process and permits to detect deviations and inconsistencies during early stages of the annotation process.
Get startedHighlighted features
Linked to Twitter
You can compile corpus from Twitter using your Twitter Developer API Keys. You can use the Twitter standard opperators to select those tweets required for your experiments
Manage annotators groups
Allows to conform teams of annotators and monitoring their work. You can create several annotators on a fly and send to volunteers to perform the annotations.
Complete dashboard
The researchers has a dashboard in which they can monitor the number of tweets compiled, daily means as well as the performance of the annotators and their inter annotator agreement with some useful KPIs.
Annotator's PWA
Annotators can make use of a Progressive Web App to perform the labellings from their mobiles or by any web browser.


TensorFlow.js Layers: Sequence-to-Sequence (English-French Translation) Demo
Load hosted pretrained model
Load local pretrained model
Standing by.
Input English sentence:
Output French sentence:


Painted Desert [au69], desert, in Imperia, peasants: 106
Last updated Turn #138
Painted Desert [au69], desert, in Imperia, peasants: 106
------------------------------------------------------------------------
24: Gloaming [w9a], refugee, with one skirmisher, arrived from the north.
24: Stack of nazgul [br4m], nazgul, arrived from the north.
25: Stack of nazgul [js2t], nazgul, arrived from the south.
26: Stack of nazgul [br4m], nazgul, went south.
27: Gloaming [w9a], refugee, with one skirmisher, went south.
27: Stack of nazgul [js2t], nazgul, went north.
30: The population grows by one peasant.
Routes leaving Painted Desert:
North, plain, to Buffalo Plains [at69], 7 days
East, desert, to Painted Desert [au70], 8 days
Garrison [av0d], garrison, Imperial Empire, with ten peasants,
11 oxen
Border closed.
South, desert, to Painted Desert [av69], 8 days
West, desert, to Painted Desert [au68], 8 days
Inner locations:
Oasis [ae3k], oasis, 1 day
Seen here:
Stack of nazgul [fg4z], nazgul, number: 4
Gloaming [w9a], refugee, with one skirmisher


You can include dynamic elements into your URLs. Simply type
{{something}}
into your URL, and
then add something
as a key here, along with
a value for that key, and it will be resolved for you. This
value will be resolved across all requests you have saved,
making it great for things like API keys or IDs that you may
have to change in several URLs at once.
| Key | Value | |
|---|---|---|
Add a variable |


December 1-2, 2007
Reasons for Interest:
1) First experience with Ayahuasca.
2) Use with medications (Spironolactone and Cenestin).
3) Healthy transsexual male to female (female hormone levels since 2004), age 26.
Substance Use Background:
Very mild alcohol intoxication once (October 2005), absinthe party in March 2006 (24 oz over 6 hours), minor marijuana use in 2006, ecstasy in 2006 (May 2 pills, June 1 pill, August 1/2 pill), 1 minimal dosage of mushrooms in November 2006, 1 dose of LSD in December 2006, 2 doses of LSD in May 2007. Based on my experience history, I consider myself more susceptible than most to any ingested substance.
Preparation:
I spent the week coming up to the ceremony contemplating my intention, but never really settled on it until I was there. 28 hours before the ceremony was my last meal. I had a glass of orange juice with my daily medications (one 100 mg Spironolactone pill and four 1.25mg Cenestin pills) about 8 hours before. Besides that, I only drank water.
Setting:
3rd (and top) floor, two-bedroom apartment in relatively quiet area of the city of Chicago. Main living room of the apartment, with a fireplace that we used during the ceremony. Snow/sleet night, peaceful icestorm (low winds). Ice hanging from everything (shiny and beautiful) with a grayish dark sky.
People:
5 female, 6 male.
Experience Description:
A well planned intentional ceremony began at 11pm. We called to the four directions, the Earth, and the Great Spirit with traditional text translated partially to English. We then introduced ourselves and announced our intentions around the circle with sage smudge and/or tobacco passing around. My intention was to learn the questions that need to be asked of 'Grandmother,' to know my intention for next time, and to get to know this experience and substance better.
The first dose was roughly 12 oz of the room temperature liquid Ayahuasca tea. It was dark brown with small particulates and had a rooty flavor. A more creative description of the flavor is like a combination of dirt, horehound, and Ouzo (without the alcohol). After ingesting, there was no noted change until 15-20 minutes* in. During this time, I laid down under my sleeping bag, warm and relaxed.
At 15-20 minutes* in, I began to feel slightly nauseous. This was difficult to distinguish from the hunger pangs of fasting. I meditated and layed my hands on my stomach. I believe as a result of this energy work, I did not purge this first dose. The height of the nausea was around 30 minutes* in, after which it dissipated.
Psychological effects were first to set in around 1 hour* in. Giddiness and a feeling similar to ecstasy experience were in full force at first. All things seemed unusually funny, even though no words were spoken in the first couple hours. This feeling would occasionally return throughout the night in more lucid moments and social interactions.
Some pressure in the head (temples and left side of head) was experienced about 1.5 hours* in, but still little else was taking place.
About 3 hours* in, a second dose (again roughly 12 oz) was offered. Within minutes, my stomach rejected it, and I purged (vomited) the majority of the dose before it took effect.
Shortly after purging, I went to the washroom right as visual hallucinations (simple wavy trails) and impaired coordination (walking) set in. After laying back down in my sleeping bag, the medicine hit hard physically and psychologically. This was between 3-4 hours* in.
Hallucinations were generally limited to open eye experiences only, whereas closing my eyes resulted in my head swimming out of physical sensory perception (the five senses) into an alternative (sixth sense) perception. However, I did not have any visions or journeys to other places beyond the room in reality, despite that I do so often in sober visions. Instead, I remained present to my surroundings, but engulfed in the personal experience. The subtle body felt a major twisting and scattering as sensation of the physical body diminished to nearly nothing. Little physical sensation was present throughout the body. Even breathing felt distant.
Psychologically, I began to run in circles philosophically while trying to evaluate the experience and how my state of being would impact the group around me. Fear, paranoia, laughter, giddiness, happiness, peace, mischief, feelings of insanity, apathy, determination, and more could be randomly and sequentially experienced in a matter of minutes.
When contemplating the theory of other experienced users that Aya is a feminine singular conscious, I came to the realization that my interaction was more of a multi-gendered collective. In essence it was the energy of our group (or possibly global collective consciousness) that embodied what was taking me for a ride, rather than a singular external feminine entity or 'Grandmother.'
From hours 4-6*, the random sequential progression of all possible emotions in their extremes took hold fiercely. There was no conscious control of my psychological state as I slipped in and out of what seemed like insanity. Small returns to reality could be achieved when gazing upon real objects rather than inside the darkness of my sleeping bag as well as when I did heavy breathing techniques. For much of this, I felt the need to breath hard and consciously to make sure I was still breathing at all.  While I saw my sleeping bag and light coming through it very clearly, I could not see my hand that should have blocked that view.
At 7 hours* in, there was a circle of the people to close the space and energy of the night before some people went to bed. While most joined in, I was still deep in my psychological inner chaos/cosmos. I listened as I had throughout the night, but did not participate. Often times, I felt like I was there in the circle 6 feet away from me like I was present there in the circle energetically. At a couple points, I looked up to see people sitting in the circle, but often I could not distinguish visually who it was. Energetically it was fully apparent who the person was, especially people I knew well, but their race, gender, and body form would change and mutate.
At 8 hours* in, around sunrise, the experience started to clear up. I could be more social with the few people who had not gone to sleep, and I even ventured small bits of food (a few candied almonds, a carrot, and a dolma).
By full sunrise, there were only minor after effects remaining (like a medium pot level buzz). I conversed and laid down for a while, but I could not sleep. Conversation picked up between 10am* and Noon. Eventually around noon we all left the apartment to go our own ways.
While beforehand tests by our leaders had proved that it was a strong batch, it was decided by the group afterwards that this batch had a wide variety of mixed effects for various users. Many believed it to be a weak batch (a few having nearly no effects at all), while others like myself had very significant experiences.
Footnote:
* This time is estimated. I did not keep time, except beginning and end time.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Notebook Export
How Light Works_xx1578xx
<EMAIL_ADDRESS>Citation (Chicago Style<EMAIL_ADDRESS>How Light Works_xx1578xx. , 2016. Kindle edition.
How Light Works_xx1578xx
Highlight(pink) - Location 3
How Light Works_xx1578xx
Highlight(yellow) - Location 6
But what exactly is light? We catch glimpses of its nature when a sunbeam angles through a dust-filled room, when a rainbow appears after a storm
Highlight(yellow) - Location 12
in 1999, researchers at Harvard University were able to slow a beam of light down to 38 miles an hour (61 kilometers per hour) by passing it through a state of matter known as a Bose-Einstein condensate.
Highlight(yellow) - Location 23
Pythagoras, best known for the theorem of the right-angled triangle, proposed that vision resulted from light rays emerging from a person’s eye and striking an object.
Highlight(yellow) - Location 37
In 1704, Newton proposed a different take –one describing light as corpuscles, or particles.  No one had actually seen particles of light, but even now, it’s easy to explain why that might be. The particles could be too small, or moving too fast, to be seen, or perhaps our eyes see right through them.
Highlight(yellow) - Location 56
Lenses, like those in a telescope or in a pair of glasses, take advantage of refraction.
Highlight(yellow) - Location 59
We take advantage of this effect to correct a person’s vision or enhance it by making distant objects appear closer or small objects appear bigger.
Highlight(yellow) - Location 62
When the 19th century dawned, no real evidence had accumulated to prove the wave theory of light. That changed in 1801 when Thomas Young, an English physician and physicist, designed and ran one of the most famous experiments in the history of science. It’s known today as the double-slit experiment and requires simple equipment –a light source, a thin card with two holes cut side by side and a screen.
Highlight(yellow) - Location 65
To run the experiment, Young allowed a beam of light to pass through a pinhole and strike the card. If light contained particles or simple straight-line rays, he reasoned, light not blocked by the opaque card would pass through the slits and travel in a straight line to the screen, where it would form two bright spots. This isn’t what Young observed. Instead, he saw a bar code pattern of alternating light and dark bands on the screen. To explain this unexpected pattern, he imagined light traveling through space like a water wave, with crests and troughs. Thinking this way, he concluded that light waves traveled through each of the slits, creating two separate wave fronts. As these wave fronts arrived at the screen, they interfered with each other. Bright bands formed where two wave crests overlapped and added together. Dark bands formed where crests and troughs lined up and canceled each other out completely.
Highlight(yellow) - Location 93
The amount of energy in a light wave is proportionally related to its frequency: High frequency light has high energy; low frequency light has low energy. So, gamma rays have the most energy (part of what makes them so dangerous to humans), and radio waves have the least.
Highlight(yellow) - Location 101
Then, on Dec. 14, 1900, Max Planck came along and introduced a stunningly simple, yet strangely unsettling, concept: that light must carry energy in discrete quantities. Those quantities, he proposed, must be units of the basic energy increment, hf, where h is a universal constant now known as Planck’s constant and f is the frequency of the radiation.
Highlight(yellow) - Location 104
Albert Einstein advanced Planck’s theory in 1905 when he studied the photoelectric effect. First, he began by shining ultraviolet light on the surface of a metal. When he did this, he was able to detect electrons being emitted from the surface. This was Einstein’s explanation: If the energy in light comes in bundles, then one can think of light as containing tiny lumps, or photons. When these photons strike a metal surface, they act like billiard balls, transferring their energy to electrons, which become dislodged from their “parent” atoms. Once freed, the electrons move along the metal or get ejected from the surface.
Highlight(yellow) - Location 110
Niels Bohr applied Planck’s ideas to refine the model of an atom. Earlier scientists had demonstrated that atoms consist of positively charged nuclei surrounded by electrons orbiting like planets, but they couldn’t explain why electrons didn’t simply spiral into the nucleus. In 1913, Bohr proposed that electrons exist in discrete orbits based on their energy. When an electron jumps from one orbit to a lower orbit, it gives off energy in the form of a photon.
Highlight(yellow) - Location 115
At first, physicists were reluctant to accept the dual nature of light. After all, many of us humans like to have one right answer. But Einstein paved the way in 1905 by embracing wave-particle duality. We’ve already discussed the photoelectric effect, which led Einstein to describe light as a photon. Later that year, however, he added a twist to the story in a paper introducing special relativity. In this paper, Einstein treated light as a continuous field of waves –an apparent contradiction to his description of light as a stream of particles. Yet that was part of his genius. He willingly accepted the strange nature of light and chose whichever attribute best addressed the problem he was trying to solve.
Highlight(yellow) - Location 121
Today, physicists accept the dual nature of light. In this modern view, they define light as a collection of one or more photons propagating through space as electromagnetic waves. This definition, which combines light’s wave and particle nature, makes it possible to rethink Thomas Young’s double-slit experiment in this way: Light travels away from a source as an electromagnetic wave. When it encounters the slits, it passes through and divides into two wave fronts. These wave fronts overlap and approach the screen. At the moment of impact, however, the entire wave field disappears and a photon appears. Quantum physicists often describe this by saying the spread-out wave “collapses” into a small point.
Highlight(yellow) - Location 142
So there are two basic ways by which we can see colors. Either an object can directly emit light waves in the frequency of the observed color, or an object can absorb all other frequencies, reflecting back to your eye only the light wave, or combination of light waves, that appears as the observed color. For example, to see a yellow object, either the object is directly emitting light waves in the yellow frequency, or it is absorbing the blue part of the spectrum and reflecting the red and green parts back to your eye, which perceives the combined frequencies as yellow.
Note - Location 159
This is a notes from Dave


While and loop, do and until, and for and next are three pairs of looping statements in MFP. They should be used in the following way:
While condition
......
Loop
Do
......
Until condition
For variable var = from_value to to_value step step_value
......
Next
where condition is an expression which has boolean value (or can be converted to boolean value). Var is the name of for statement's index variable. From_value is the initial value of var, step_value is how much var increase each time, note that step_value can be negative. To_value is the destination value of var variable. Var variable stops to change if it is beyond to_value. Note that if var is defined before, the variable keyword following for can be ignored.
Note that all the three looping blocks support break and continue statement. When break is hit, MFP jumps out the current inner-most looping block. When continue is hit, MFP ignores the following statements in the inner-most looping block and goes back to the beginning of the looping block.


Take a look: Is this Mathoho kissing a man?
Kaizer Chiefs defender Eric Mathoho was trending on social media this past weekend after pictures of a man looking like him was photographed kissing a man emerged.
by Phakaaathi ReporterEric Mathoho of Kaizer Chiefs celebrates goal during the Absa Premiership 2019/20 match between Kaizer Chiefs and Black Leopards at the Moses Mabhida Stadium, Durban on the 10 August 2019 ©Muzi Ntombela/BackpagePix
The two men are seen hugging each other in one picture and then are seen kissing in the other.
Twitter was divided with some followers claiming the pictures were photo-shopped while others believed that it was indeed Mathoho.
Take a look at the pictures below and share your views on them. Are they real or are they photo-shopped?


welcome to the party
Your browser does not support the audio element.
of if you prefer the radio
Studio 1
Studio 2.1
Studio 2.2
this is technically Studio 3
Studio 4
Proposal
change is inevitable
now, this is where it gets "cool"
song of the week
song of the week:
piegons by bill callahan 2/07/2021
quiet the winter harbor by mazzy star 2/14/2021


| mzehr.net: | Types | Modinfo | Source |
| TNetClient | Class used to establish a connection with a server. |
| TNetClientEvent | An event raised by the client. |
| TNetPacket | A data packet/message. Data can be written into or read from the packet. |
| TNetPeer | Represents a peer/client/player on the server. |
| TNetServer | Class used to run a server. |
| TNetServerEvent | An event raised by the server. |
| Type TNetClient | |
| Description | Class used to establish a connection with a server. |
| Methods Summary | |
|---|---|
| Connect | Establishes a connection with a server. |
| Disconnect | Closes the connection to the server. |
| Flush | Sends all buffered messages as soon as possible or immediately. |
| Send | Sends a packet / a message to the server. |
| Update | Updates the client (receives and sends messages). |
| Functions Summary | |
|---|---|
| Create | Creates a new and unconnected client. |
| Method Connect:Int(host:String, port:Int, connectTimeout:Int = 5000, channelCount:Int = 2) | |
| Returns | True if the connection has been established, False if not. |
| Description | Establishes a connection with a server. |
| Information | host:String IP address or hostname on which to listen for incoming connections. port:Int Port on which to listen for incoming connections. connectTimeout:Int (Optional) Maximum time in ms to wait for the connection. channelCount:Int (Optional) Number of communication channels. Will be limited to 1-255. (Default: 2) |
| Method Disconnect(disconnectTime:Int = 2000) | |
| Description | Closes the connection to the server. |
| Information | disconnectTime:Int (Optional) Maximum time in ms to wait for remaining messages to be sent before the connection will be closed. |
| Method Flush() | |
| Description | Sends all buffered messages as soon as possible or immediately. |
| Information | It's better to use Update, because Update does almost the same and also receives incoming messages. |
| Method Send(packet:TNetPacket, reliable:Int = False, channel:Int = 0, compressed:Int = False) | |
| Description | Sends a packet / a message to the server. |
| Information | packet:TNetPacket The packet that will be sent reliable:Int (Optional) Whether the packet should be sent reliable or not (Default: False, this is suitable for unimportant anf fast data like player positions) channel:Int (Optional) The channel used for transmitting the packet (Default: 0, reliable/important messages should be sent on a different channel than unimportant messages, for example channel 1) compressed:Int (Optional) Whether the data will be compressed or not (Default: False, should only be used with large data, i.e. when sending 100x100 tiles etc.) |
| Method Update:TNetClientEvent(waitTime:Int = 0) | |
| Returns | An object of type TNetClientEvent that represents the last event or Null if there was no event. |
| Description | Updates the client (receives and sends messages). |
| Information | waitTime:Int (Optional) Time in ms to wait for incoming messages. (Default = 0, this means the function will return immediatley if there are no messages to receive). |
| Function Create:TNetClient() | |
| Description | Creates a new and unconnected client. |
| Type TNetClientEvent | |
| Description | An event raised by the client. |
| Constants Summary | |
|---|---|
| CONNECT , DATA , DISCONNECT |
| Fields Summary | |
|---|---|
| Channel , Event , Packet |
| Const CONNECT:Int | |
| Description | Server: A new client has established a connection with the server. | Client: The connection with the server has been established. |
| Const DATA:Int | |
| Description | Data received (client: from the server | server: from a specific client). |
| Const DISCONNECT:Int | |
| Description | The connection was closed (client: connection with the server | server: connection with a specific client). |
| Field Channel:Int | |
| Description | The channel on which the packet was received. |
| Field Event:Int | |
| Description | Event that was raised (equals to TNetClientEvent.CONNECT or DATA). |
| Field Packet:TNetPacket | |
| Description | The packet that was received (only available in a DATA event). |
| Type TNetPacket | |
| Description | A data packet/message. Data can be written into or read from the packet. |
| Methods Summary | |
|---|---|
| Destroy | Releases the memory used by the packet. |
| EnetPacket | Converts the packet to an ENet packet struct. |
| Read | Reads multiple Bytes from the packet and writes them to the specified memory location. |
| ReadByte | Reads a byte from the packet. |
| ReadBytes | Reads multiple Bytes from the packet and writes them to the specified memory location. |
| ReadDouble | Reads a double from the packet. |
| ReadFloat | Reads a float from the packet. |
| ReadInt | Reads an int from the packet. |
| ReadLine | Reads a line of text from the packet. |
| ReadLong | Reads a long from the packet. |
| ReadObject | Reads an object from the packet (untested). |
| ReadShort | Reads a short from the packet. |
| ReadString | Reads a string from the packet. |
| Write | Writes multiple bytes into the packet. |
| WriteByte | Writes a byte into the packet. |
| WriteBytes | Writes multiple bytes into the packet. |
| WriteDouble | Writes a double into the packet. |
| WriteFloat | Writes a float into the packet. |
| WriteInt | Writes an int into the packet. |
| WriteLine | Writes a line of text into the packet. |
| WriteLong | Writes a long into the packet. |
| WriteObject | Writes an object to the packet (untested). |
| WriteShort | Writes a short into the packet. |
| WriteString | Writes a string into the packet. |
| Functions Summary | |
|---|---|
| Create | Creates a new packet (for sending). |
| FromEnet | Reads a packet from an ENet packet struct. |
| Method Destroy() | |
| Description | Releases the memory used by the packet. |
| Information | Will be called automatically on deconstruction of the object (garbage collector), but can also be called manually. |
| Method EnetPacket:Byte Ptr(enet_flags:Int = 0, compressed:Int = False) | |
| Description | Converts the packet to an ENet packet struct. |
| Information | This method is used internally and should not be called manually. |
| Method Read:Int(buf:Byte Ptr, count:Int) | |
| Returns | Number of successfully read bytes. |
| Description | Reads multiple Bytes from the packet and writes them to the specified memory location. |
| Information | buf:Byte Ptr Memory location where the bytes will be written to. count:Int Number of bytes that should be read. |
| Method ReadByte:Byte() | |
| Description | Reads a byte from the packet. |
| Method ReadBytes:Int(buf:Byte Ptr, count:Int) | |
| Returns | Number of successfully read bytes. |
| Description | Reads multiple Bytes from the packet and writes them to the specified memory location. |
| Information | buf:Byte Ptr Memory location where the bytes will be written to. count:Int Number of bytes that should be read. |
| Method ReadDouble:Double() | |
| Description | Reads a double from the packet. |
| Method ReadFloat:Float() | |
| Description | Reads a float from the packet. |
| Method ReadInt:Int() | |
| Description | Reads an int from the packet. |
| Method ReadLine:String() | |
| Description | Reads a line of text from the packet. |
| Method ReadLong:Long() | |
| Description | Reads a long from the packet. |
| Method ReadObject:Object() | |
| Description | Reads an object from the packet (untested). |
| Method ReadShort:Short() | |
| Description | Reads a short from the packet. |
| Method ReadString:String() | |
| Description | Reads a string from the packet. |
| Information | Reads an int that specifies the length of the string and then the string itself. |
| Method Write(buf:Byte Ptr, count:Int) | |
| Description | Writes multiple bytes into the packet. |
| Information | buf:Byte Ptr Memory location from where the data is read and then written to the packet. count:Int Number of bytes that should be read/written. |
| Method WriteByte(value:Byte) | |
| Description | Writes a byte into the packet. |
| Method WriteBytes(buf:Byte Ptr, count:Int) | |
| Description | Writes multiple bytes into the packet. |
| Information | buf:Byte Ptr Memory location from where the data is read and then written to the packet. count:Int Number of bytes that should be read/written. |
| Method WriteDouble(value:Double) | |
| Description | Writes a double into the packet. |
| Method WriteFloat(value:Float) | |
| Description | Writes a float into the packet. |
| Method WriteInt(value:Int) | |
| Description | Writes an int into the packet. |
| Method WriteLine(value:String) | |
| Description | Writes a line of text into the packet. |
| Method WriteLong(value:Long) | |
| Description | Writes a long into the packet. |
| Method WriteObject(value:Object) | |
| Description | Writes an object to the packet (untested). |
| Method WriteShort(value:Short) | |
| Description | Writes a short into the packet. |
| Method WriteString(value:String) | |
| Description | Writes a string into the packet. |
| Information | Writes an int containing the length of the string followed by the string itself. |
| Function Create:TNetPacket() | |
| Description | Creates a new packet (for sending). |
| Function FromEnet:TNetPacket(p:Byte Ptr) | |
| Description | Reads a packet from an ENet packet struct. |
| Information | This function is used internally and should not be called manually. |
| Type TNetPeer | |
| Description | Represents a peer/client/player on the server. |
| Methods Summary | |
|---|---|
| GetData | Gets the data assigned to this peer (see SetData). |
| GetPeer | Returns the ENet peer struct. |
| SetData | Assigns a custom data object to this peer. |
| Functions Summary | |
|---|---|
| Create | Creates a new peer from an ENet peer struct. |
| Method GetData:Object() | |
| Description | Gets the data assigned to this peer (see SetData). |
| Method GetPeer:Byte Ptr() | |
| Description | Returns the ENet peer struct. |
| Information | This methos is used internally by the server and should not be called manually. |
| Method SetData(value:Object) | |
| Description | Assigns a custom data object to this peer. |
| Information | This can be used to assign a player object or other data to the peer. On the server, you can retrieve a list of connected peers with TNetServer.GetClients() and those peers (TNetPeer) contain the assigned data object which can be fetched by calling TNetPeer.GetData(). |
| Function Create:TNetPeer(peer:Byte Ptr) | |
| Description | Creates a new peer from an ENet peer struct. |
| Information | This method is used internally by the server and should not be called manually. |
| Type TNetServer | |
| Description | Class used to run a server. |
| Methods Summary | |
|---|---|
| Broadcast | Sends a packet to all connected peers / players. |
| DisconnectClient | Sends a disconnect message to the peer / player and closes the connection after the message has been acknowledged. |
| DropClient | Closes the connection to a peer immediately. The peer won't be notified and will only notice the disconnection after the ping timeout. |
| Flush | Sends all buffered messages as soon as possible or immediately. |
| GetClients | Gets a list containing all the connected peers / players. |
| Send | Sends a packet to the specified peer / player. |
| Shutdown | Shuts down the server. |
| Update | Updates the server (receives and sends messages). |
| Functions Summary | |
|---|---|
| Create | Creates a new server that listens for incoming connections on the specified ip address and port. |
| Method Broadcast(packet:TNetPacket, reliable:Int = False, channel:Int = 0, compressed:Int = False) | |
| Description | Sends a packet to all connected peers / players. |
| Information | packet:TNetPacket The packet that will be sent. reliable:Int (Optional) Whether the packet should be sent reliable or not (Default: False, this is suitable for unimportant anf fast data like player positions) channel:Int (Optional) The channel used for transmitting the packet (Default: 0, reliable/important messages should be sent on a different channel than unimportant messages, for example channel 1). compressed:Int (Optional) Whether the data will be compressed or not (Default: False, should only be used with large data, i.e. when sending 100x100 tiles etc.) |
| Method DisconnectClient(peer:TNetPeer) | |
| Description | Sends a disconnect message to the peer / player and closes the connection after the message has been acknowledged. |
| Method DropClient(peer:TNetPeer) | |
| Description | Closes the connection to a peer immediately. The peer won't be notified and will only notice the disconnection after the ping timeout. |
| Method Flush() | |
| Description | Sends all buffered messages as soon as possible or immediately. |
| Information | It's better to use Update, because Update does almost the same and also receives incoming messages. |
| Method GetClients:TList() | |
| Description | Gets a list containing all the connected peers / players. |
| Information | You should not modify the list in any way! Use the DisconnectClient or DropClient functions instead. |
| Method Send(peer:TNetPeer, packet:TNetPacket, reliable:Int = False, channel:Int = 0, compressed:Int = False) | |
| Description | Sends a packet to the specified peer / player. |
| Information | peer:TNetPeer The peer / player that will receive the packet. packet:TNetPacket The packet that will be sent. reliable:Int (Optional) Whether the packet should be sent reliable or not (Default: False, this is suitable for unimportant anf fast data like player positions) channel:Int (Optional) The channel used for transmitting the packet (Default: 0, reliable/important messages should be sent on a different channel than unimportant messages, for example channel 1). compressed:Int (Optional) Whether the data will be compressed or not (Default: False, should only be used with large data, i.e. when sending 100x100 tiles etc.) |
| Method Shutdown(shutdownTime:Int = 5000) | |
| Description | Shuts down the server. |
| Information | shutdownTime:Int (Optional) Maximum time in ms to wait for the remaining messages to be sent before shutting down. (Default: 5000) |
| Method Update:TNetServerEvent(waitTime:Int = 0) | |
| Returns | An object of Type TNetServerEvent tha represents the last event or null if there was no event. |
| Description | Updates the server (receives and sends messages). |
| Information | waitTime:Int (Optional) Time in ms to wait for incoming messages. (Default = 0, this means the function will return immediatley if there are no messages to receive). |
| Function Create:TNetServer(ip:String, port:Int, maxConnections:Int, maxChannels:Int = 2) | |
| Returns | An object of Type TNetServer or Null in case the server could not be started. |
| Description | Creates a new server that listens for incoming connections on the specified ip address and port. |
| Information | ip:String IP address on which to listen for incoming connections (use Null, "<IP_ADDRESS>" or "localhost" to listen on all local addresses). port:Int Port number (should be greater than 1000 and as high as possible, i.e. 50000 or another number that is not used by other protocols or services). maxConnections:Int Maximum number of allowed connections / players. maxChannels:Int (Optional) Maximum number of communication channels. Will be limited to 1-255. (Default: 2) |
| Type TNetServerEvent Extends TNetClientEvent | |
| Description | An event raised by the server. |
| Fields Summary | |
|---|---|
| Peer |
| Field Peer:TNetPeer | |
| Description | The client that received data/connected/disconnected. |
| Author | Michael Zehr (Jolinah) |
|---|---|
| License | MIT X11 License (License.txt) |
| Credit | Lee Salzman (http://enet.bespin.org) |
| History | 1.0 First release |
| History | 1.1 Instead of importing pub.enet, the newest source code of ENet has been compiled into the module (version 1.3.13 as of now). However, the protocol of ENet version 1.3 and above is not compatible with ENet versions 1.2 and below. You will need to redistribute the client to all existing players after updating the server or they won't be able to play on the new server. |


Exceeds 40 Characters
Please enter a Display Name
Please select a file
Please select a Category
Please select a SubCategory
Please select a Date


☰
Add New Cow
×
About
Services
Clients
Contact
Cattle Id:
Date of Birth:
Breed:
Sex:
Male
Female
image:
Add


Lahore: NAB chairman briefed on mega corruption cases
by https://www.facebook.com/dunyanewsLAHORE (Dunya News) – National Accountability Bureau (NAB) Chairman Justice (r) Javed Iqbal chaired an important session in which DG NAB Lahore Shehzad Saleem briefed him on mega corruption cases.
The meeting – held in the provincial capital of Punjab – deliberated on nine mega corruption cases including the Chaudhry Sugar Mills case.
Sources privy to the anti-corruption watchdog told Dunya News that a detailed discussion was held to file the Chaudhry Sugar Mills case reference. The NAB chief reiterated to bring all cases to their logical conclusion on priority basis.


Harmonize - Kushoto Kulia: audio, lyrics, reactions
If you have been looking for a fresh tune to add to your playlist, you should pay attention to the new jam by Harmonize - Kushoto Kulia. This catchy song will conquer your heart with its catchy beat and lyrics.
The track was produced by the famous hitmaker, Bonga. When Harmonize and Bonga work on one track, rest assured that it will be a real hit.
Harmonize - Kushoto Kulia description
- Release date: November 20, 2019
- Format: mp3
- Genre: Bongo Flava
- Length: 3:15 min
- Label: Konde Music Worldwide
- Producer: Bonga
The beats of the jam are utterly irresistible. You will begin dancing to the track’s rhythm as soon as you hear it.
Harmonize - Kushoto Kulia reviews and comments
If you would like to know what others think about this song before making your own opinion, here is what YouTube users say about it;
The new hit by Olamide - Choko Milo will conquer your heart
- Don Deezy: Good man keeping good music alive.
- babyee Da love: This man is unpredictable.
- Focas Francisco Bacar: This guy is the best.
- Wow 30 Something: This guy is just a talent.
- Anne Nduru: This is the best song ever.
- Alvin Kanindo: Good music.
- MrMbwelwa: Great job KondeBoy, this is dope.
 Mwambie cheopa
Moto hauzimwi na moto wewe
Hahaha wakiziba kulia
Si tunapita kushoto
Hahahaha je mama jin
Usicheze na jembe litakulipa
My nigga Jose wa mipango
Konde Gang is for everybody
The new jam by Harmonize - Kushoto Kulia is a song that will win your heart over. What do you think about it? Tell us in the comments section below. Do not forget to share this article with your friends. Stay tuned for more updates about your favorite musicians.


Hi, I'm a Hamster. Squirm!
Make sure to follow me on this pet website. Not this one.
Also give me lots of pets and hugs. But be gentle, I am very fragile!


Stocks could end Friday with another record after strong jobs report
All three indexes on track for increase this week
by Anneken Tappe, CNN Business(CNN) - Stocks are rallying Friday, with the S&P 500 and the Nasdaq Composite both on track for another record day.
Both indexes opened at all-time intraday highs, after a better-than-expected jobs report boosted investor sentiment.
It would be the S&P's third record close of the week. The Nasdaq stands to surpass its July high. The indexes both traded 0.8% higher around midday.
The Dow is rallying too, but it is further away from its record high. The Dow was up 230 points, or 0.9%, Friday.
"Solid October jobs data shows the engine of the US economy is humming along despite elevated global uncertainty, a good sign for future growth as improving hiring conditions fuel consumer spending and confidence," said Ryan Detrick, Senior Market Strategist for LPL Financial.
All three indexes are on track for an increase this week. For the S&P and the Nasdaq it stands to be the fifth-straight week of gains.
Investors shrugged off another round of weak manufacturing data from the Institute of Supply Management, which showed the third monthly contraction in a row.


{% raw %} {% extends "layout.html" %} {% block content %}
This template was created by Steven Loria for use with the cookiecutter package by Audrey Roy.


I thought back to my own angry youth, when I could easily use words to justify violent…


This was the motto for the very first Snowdays in 2003, when approximately 100 people ruled the slopes of Obereggen. Since then more than 10 years have passed. While the event thrived and progressed from year to year, many thrilling experiences were made: this led to an incredible expansion of our event. Snowdays attracts students from all over the world to come to South Tyrol to take part in our wintersport event, the biggest one organised by students for students in Europe.
Even after all these years the passion of the organisers to offer to the participants an unforgettable weekend in South Tyrol is still strong. Enthusiasm and teamwork are the leading features that drive the SCUB-Team (Sports Club University Bolzano), which over the last months has already intensively started the organisation of the 15th edition of the Snowdays.
Our goals are to provide three unforgettable days of sport, joy and entertainment. During the event students from different universities and countries get to know each other and the companies that support the event, while enjoying together lots of different activities and exploring South Tyrol.
Snowdays is the biggest winter sports event organised for students by students in Europe. From the 5th until the 7th of March SCUB organises sporting competitions, entertainment and parties in Bozen and surroundings.
The organising committee consists solely of volunteers, enthusiastic about sports, snow and mountains. Involved are students from the varying faculties of the UniBz, which is supporting the event.
Included in our package: all meals (breakfast, lunch, snacks, dinner), accommodation in student dorm or apartment, 2 ski passes, transport to the ski areas, 3 parties, "welcome box” containing the official t-shirt and many sponsors gadgets.
Developed with by the Snowdays IT Team with great inspiration from Romeo Bellon


select
to link to localized contentWhat are the best practices for using pull-down menus based on the select element to direct visitors to localized content?
As companies and organizations launch an increasing number of localized Web sites, user-friendly global navigation grows in importance.
One of the more popular devices is a pull-down menu on the home page using the select element that includes links to localized versions of the content. Such selection lists are not restricted to use on the home page, but may also be seen as a space-effective way of allowing users to switch between translations or regionally localized sites on a page by page basis.
The localized content pointed to may be an alternative country site, a translated version of a site or page, etc. In this article we avoid discussing the best way to organize the information (ie. translated vs. region-specific sites) in order to concentrate on the pros and cons and best practice associated with using selection lists to choose the content. There are numerous other aspects to global navigation that will be described in other articles.
Note that these recommendations do not apply to selection lists that are part of a form. For example, if you are filling in a form and selecting your country of residence or language from a list, then the selection list should be all in the language of the current page.
select
list at all?Pull-downs can appear very attractive where space is at a premium. However, the pull-down menu is not always the best solution for global navigation and you need to decide whether it is the best solution for your Web site. The following points may help.
The key advantage of using pull-downs is to fit the selection into a smaller space.
Key disadvantages of using select for links to localized pages or sites are:
users cannot see or access the links straight away
it is hard to find a label for the list that is not language-specific
users may not have fonts for all the option text, and graphics cannot be used instead of text
If your site supports only a handful of localized versions, it is probably better to avoid using a pull-down menu altogether and simply include links directly on the page. This gives you more flexibility to use graphics to represent foreign text, avoids the difficulty of finding a suitable non-linguistic label for the list, and allows users to recognize the presence of and link to a page much more quickly.
There are other techniques, too. For example, outline maps can be used to select region- or country-based local sites.
If your pull-down points to more than 20 other sites or pages you should consider whether this is usable for those Web users who must scroll to the end of the list. If not, you may consider linking to a dedicated global gateway page at the home page level. If linking between localized versions of specific pages, a selection page may not be a practical solution.
If you do decide to use a pull-down menu, here are some best practices to keep in mind.
Locate the pull-down menu at or near the top of the page. This location is highly visible, increasing the likelihood that the visitor will see it. Scanning studies for pages in left-to-right scripts show that positioning to the top right increases visibility. Furthermore, an increasing number of Web sites have located their global gateways in this location, conditioning Web users to come to expect it here.
Certainly avoid putting the list at the bottom of the page so that it doesn't appear in the first screenful of information (and bear in mind that one screenful can be a different amount for different users).
Use a recognizable image alongside the pull-down menu to indicate that it is a control which will take the user to localized pages. Do not use text.
You cannot expect Web users who are not fluent in English to understand "Select language". Universally recognized icons communicate to people regardless of what language they speak. In an ideal world there would be a widely recognized symbol for this. That time is still not here, though globe icons seem to be becoming more popular.
Examples of possible graphics would include globes, iconic facial profiles with lines to indicate speech, alphabetic characters from multiple scripts (especially for links to translations), etc.
The alt text for such a graphic doesn't have a great deal of importance. You may think that it needs to be in all languages, or no particular language, for accessibility, but in reality people reliant on screen readers would be able to traverse the pull-down text to find the right link.
Consider using the size
attribute to display the first set of options in a select control.
In some cases it may be effective to use the size attribute to display the first set of options in the list – particularly if this is a long list. This suggests to the user that this is a collection of languages/regions, and may remove the need for a non-language-specific label for the list. Here is an example:
Translate the menu options into the target language.
Instead of including a link on the pull-down menu to a translation that reads, for example, "French" the link should read "français"; and instead of a link to an alternative country site like "Germany" the link should read "Deutschland".
Pay attention to capitalization rules in other languages. Note how the correct translation of "French" is "français" with a lowercase 'f'. On the other hand, it is sometimes preferred to ignore this practice in favour of consistent casing, for purely stylistic reasons (see for example the top of this page, or Wikipedia's language links).
To display a mix of non-Latin languages, such as Arabic, Russian and Japanese, you will need a way to represent all the required characters.
You should always use UTF-8 (Unicode) as the encoding for your page , since this encoding supports all the characters you will need.
If you really cannot use UTF-8, then you should use escapes to represent characters that are not supported by the encoding of your page.
Decide whether it is a problem that a user won't have fonts for all the list items or menu options. If it is, use javascript menus or some other graphic-based approach.
Be aware that a Web user in France, for example, may see empty boxes (so-called 'tofu') in place of the Japanese text, while a user in Japan will see the text just fine. This is because the fonts available on the French user's system may not contain Japanese glyphs. One could argue that this is not too important, since French users don't need to be able to read the Japanese. On the other hand, you may feel that empty boxes are unsightly.
If you feel that empty boxes are unsightly you may be tempted to use text in graphics for non-Latin options. Unfortunately, it is not possible to include graphics in the selection list itself, but some sites add such graphics outside the pull-down menu.
For example:
Be warned, however, that addressing non-Latin text this way may still not solve all problems. Certain accented Latin characters, such as those in 'čeština' may produce the same effect for some users who have Latin fonts that only cover Western European languages.
Decide whether to add a description alongside each option, using the language of the current page, so that users can tell what the native word means.
For example:
This approach is not always necessary or desirable. On the other hand users may feel more comfortable with missing font glyphs if they see
Using parentheses is useful because it shows more clearly that this is a clarification.
Note, also, that names in the language of the current page should really be translated for every page where they appear – if you leave them in English it may give the wrong message.
You will need to find the most appropriate way of ordering the list of options , given that this is a multilingual list of language or country names. Ordering multilingual lists is not an issue that is specific to selection lists, and there is no simple answer to this.
It is difficult to apply alphabetic ordering since this varies by language, and there are also likely to be multiple scripts involved. It would be possible to follow the default order prescribed by the Unicode Collation Algorithm, but whether that would be helpful, intuitive or recognizable to the user is another question.
Other possibilities are to order the list by the size of your market, the size of the region or number of speakers of a language, or by some kind of geographical principle. Again, while these may provide a rationale for ordering, none of these approaches are necessarily helpful to the user – especially for long lists.
This page and Wikipedia list language alternatives by (English) alphabetic order of the associated language tags. So, for example, German (de) comes before English (en), and Spanish (es) would come before French (fr). This works best when the user can find his language easily by scanning. For a long list, this may be less appropriate, since the user must not only know the tag for their language but, in order to anticipate its likely position in the list, must also be able to guess that tags have been used as the basis for the ordering.
You should not consider automatic content negotiation to be a replacement for providing links on a page. It always makes sense to provide in-page links for occasions when things don't work out as expected.
This article is specifically focused on the use of the select element. Some designers may prefer to use JavaScript to simulate pull-down lists. This can help in that you are not limited to text; you can use text in graphics to avoid font issues. There are, of course, other potential problems associated with the use of JavaScript.
Common Locale Data Repository (CLDR) Project (for finding native versions of language and country names)
Related links, Authoring HTML & CSS


{% extends<EMAIL_ADDRESS>%} {% import<EMAIL_ADDRESS>as pitonMacro %} {% block htmlTitle 'Collections' %} {% block contentHeader %}


Norway: Donated 30 million Norwegian kroner ($3.9 million) for relief efforts.
Australia: Donated 5 million Australian dollars ($3.9 million) and sent experts.
European Commission: Announced €3 million ($3.3 million) in immediate aid money for Nepal on Sunday.
China: Its Ministry of Commerce has reportedly given 20 million yuan ($3.2 million) in humanitarian aid, according to the Chinese newspaper, China Daily.
Germany: Berlin has pledged €2.5 million ($2.7 million) and is sending supplies.
Singapore: Donated 100,000 Singapore dollars ($75,000) to the Singapore Red Cross for aid. Singapore Red Cross agency is appealing for more donations. Has already begun disbursing 50,000 Singapore dollars worth of emergency supplies.
Asian Development Bank: The group of 48 countries in Asia and the Pacific are providing a $3 million grant.
Non-Profit
USAID: $1 million in emergency financial support.
AmeriCares: The group has raised $750,000 to support relief efforts in Nepal.
American Red Cross: $300,000 initial contribution.
Save The Children: £300,000 ($454,000) in emergency aid. Expects to eventually send millions.
Christian Aid: Immediately sent £50,000 ($76,000) in aid on Saturday. Has raised £124,000 ($188,000) from donations. Expects to raise over £1 million for this urgent appeal.
oxfam: The British aid agency said online donations totaled £500,000 in Great Britain and $1 million in the United States.
Companies
Coca Cola: The beverage giant said it is working to provide bottled water to survivors as soon as possible.
Pepsi:: Is also donating bottled water and food.
Kellogg: The food company said it donated $200,000 to the World Food Program that is earmarked for Nepal.
Toyota: Making a combined donation of 10 million yen, or about $84,000.
Facebook: Facebook added donation feature and raised $10m dollars from the users. Facebook added plus $2m from their side. Through Facebook total $12m have been donated. The social network has developed a new tool called Safety Check. The simple tool sends messages to people who are in Nepal, urging them to click a button to let their Facebook friends know they're okay.
Google: The search engine has revived its "Person Finder" tool this weekend. The tool helps people search for and post information about missing friends and family in the disaster zone. As of Monday morning, the site hosted 5,600 entries.
Microsoft: Has pledged $1 million in cash and in-kind donations. It is also offering free Skype calls to and from Nepal.
UPS: Pledged $200,000 to various charities working in Nepal.
Communication companies: T-Mobile, Sprint, Verizon, Vodafone Time Warner Cable and others have waived fees for calls in Nepal.
Payment providers: Apple, PayPal, Square Cash are waiving fees and taking other steps to facilitate donations.


Toggle navigation
Data(Library Reports) Visualization
Dashboard
Library Circulation Desk
Total Loan Usage
Course Reserves
Student Study Hall
Night Owl
Night Owl LibAnalytics
Group Study Room
Study Room
Course Reserves
Print this page
Semester-Year-University Distribution
Course Reserves
University Distribution
Visualized Data


--- layout: post date: 2010-10-24 time: "09:00:00" authors: ["Greg Wilson"] title: Configuration Files tags: ["Content"] ---
This post has been moved.


Child killed by ice sculpture at Luxembourg Xmas market
A young child was killed by a falling ice sculpture at Luxembourg city's Christmas market, police said.
"According to initial evidence, an ice sculpture collapsed and a block of ice unfortunately hit a young child," around 20:00 on Sunday, police said.
"The child was severely injured and died in the ambulance," the statement added.
Witnesses told local media that ambulance staff had attempted to revive the child at the scene.
An investigation has been opened.
The accident happened just metres from the ice rink at the capital city's annual Christmas fair which opened on Thursday.


-
Hello there! My name is Kenneth, a mobile app developer & web developer from Botswana, a country in the southern part of Africa. I grew up with a passion of being a Software Developer and Network Engineer, I am curently a student at Botswana Accountancy College studying Computer Science. Upon completion of my Barchlor's degree, I dream on pursuing my dream job of being a Developer at Google, first stop to that is me progressing oon to do my Msc in Computer Science which its something i have always wanted when growing up.
I also wish to align my skills towards Networking, Network Security to be more specific, I am currently enrolled in a CCNA Routing and Switching cource and upon completion advancing on to CCNP. There are other certifications that I dream of aquaring future, such include Google certifications, Microsoft certifications and C|EH
The following are what I myself see as accomplishments and and one may look at it as not an accomplishment, but hey! we all view things differently


Site logo: https://fontmeme.com/futuristic-fonts/
Image uploading & Error handling: https://www.w3schools.com/php/php_file_upload.asp
Site logo: https://fontmeme.com/futuristic-fonts/
Image uploading & Error handling: https://www.w3schools.com/php/php_file_upload.asp


--- layout: post title: Bookmarklet to customize Facebook buttons date: 2012-05-16 14:53:00.000000000 -04:00 type: post published: true status: publish categories: [] tags: - facebook meta: _encloseme: '1' orig_url: http://blogs.msdn.microsoft.com/b/phaniraj/archive/2012/05/16/bookmarklet-to-customize-facebook-buttons.aspx orig_site_id: '7524' orig_post_id: '10306057' orig_parent_id: '10306057' orig_thread_id: '808264' _wds_ratings_users: '0' orig_application_key: phaniraj orig_post_author_id: '56365' orig_post_author_username: PhaniRajuYN orig_post_author_created: Nov 10 2006 05:47:39:000PM orig_is_approved: '1' orig_attachment_count: '0' orig_url_title: http://blogs.msdn.com/b/phaniraj/archive/2012/05/16/bookmarklet-to-customize-facebook-buttons.aspx opengraph_tags: | author: login: phanirajuyn email<EMAIL_ADDRESS>display_name: Phani Raju MSFT first_name: '' last_name: '' ---
What is it ?
This bookmarklet is a simple javascript function that changes the contents of standard buttons on Facebook.com.
It changes the "Like" button content to be "Can you Dig it?", unlike to "Stop Digging it", and Comment to "Holler!"
How do I install this bookmarklet ?
Step 1 : Right-click this link and select "Copy Link address", Bookmarklet link
Step 2 : Open the bookmarklet manager in your browser and add a bookmark with the contents of the above link as the Link Address.
Step 3 : Open up facebook.com and click the bookmark you created in Step 2.
Step 4 : Profit !


HTML
HTML
Microbiome (Mix-isolate) Modeling in KBase, - Mix-isolate annotation, modeling and an example of omics data representation on metabolic maps
55494
janakakbase
Microbiome (Mix-isolate) Modeling in KBase, - Mix-isolate annotation, modeling and an example of omics data representation on metabolic maps
55494
janakakbase
w r
2021-07-07T11:40:12+0000
ModelSEED
File
History
Dataset: ModelSEED
Workspace:
refresh
sdsd
Drop files here or click to upload.
(This is just a demo dropzone. Selected files are
not
actually uploaded.)
lol
lol
History table
Map Name
Source
Time
#compounds
#reactions
new_map (20).json
new_map (20).json
23
23
999
Lysine_Bio kb_escher
23
2
1
Lysine_Deg kb_escher
23
1
2
Amino Acid Degradation
ModelSEED
23
-1
-2
map 1
map 2
Dataset
Map
#compounds
#reactions