OBJECTIVE: To determine whether information from the physician's initial evaluation of patients with suspected coronary artery disease predicts coronary anatomy at catheterization and 3-year survival. DESIGN: Prospective validation of regression model estimates in an outpatient cohort. SETTING: University medical center. PATIENTS: A total of 1030 consecutive outpatients referred for noninvasive testing for suspected coronary artery disease; 168 of these patients subsequently underwent catheterization within 90 days. MEASUREMENTS: Information from the initial history, physical examination, electrocardiogram, and chest radiograph was used to predict coronary anatomy (the likelihood of any significant coronary disease, severe disease [left main or three-vessel], and significant left main disease) among 168 catheterized patients and to estimate 3-year survival among all patients. These estimates were compared with those based on treadmill testing. Cardiovascular testing charges were calculated for all patients. RESULTS: Predicted coronary anatomy and survival closely corresponded to actual findings. Compared with the treadmill exercise test, initial evaluation was slightly better able to distinguish patients with or without any coronary disease and was similar in the ability to identify patients at increased risk for dying or with anatomically severe disease. Based on arbitrary definitions, 37% to 66% of patients were at low risk and responsible for 31% to 56% of the charges for cardiovascular testing. CONCLUSIONS: The physician's initial evaluation, despite the subjective nature of much of the information gathered, can be used to identify patients likely to benefit from further testing. The development of strategies for cost-conscious quality care must begin with the history, physical examination, and simple laboratory testing.


text:
Prince George station is a railway station in Prince George, British Columbia. It is on the Canadian National Railway mainline. Via Rail's Jasper–Prince Rupert train service overnights at this station between Prince Rupert and Jasper.

Footnotes

Via Rail stations in British Columbia
Railway stations in Canada opened in 1922
Transport in Prince George, British Columbia
1922 establishments in British Columbia

redpajama_set_name: RedPajamaWikipedia


text:
October 13, 2010, - 2:31 pm
EXCLUSIVE: Hezbollah Cash Behind Campaign Against Sharron Angle
Yesterday, news broke that Muslim activist Tarek Baydoun of Dearbornistan paid for 250,000 robo-calls to Nevada voters against Sharron Angle, the Republican U.S. Senate candidate who will–G-d-willing–beat Harry Reid in November. Baydoun, a recent college grad, in his 20s claims he's upset with Angle's comments about Islamic sharia ruling Dearborn. And, in fact, she's right, as I've documented on this site and in my work, more than any other writer or commentator on this earth. But that's not the scoop here. The scoop is that Baydoun worked for a Hezbollah-funded newspaper and a Hezbollah charity raided by the FBI and that it's highly unlikely that Baydoun, himself, has the means to personally fund 250,000 robo-calls against Angle.
Sickening: Hezbollah is Targeting Sharron Angle
So who is paying for it? My sources say that it may be Hezbollah cash, funneled to Mr. Baydoun, who identifies himself as a "Democratic consultant." He's actually a Hezbollah activist and very open about that. And until Baydoun–a proud supporter of Hezbollah, whose Shi'ite Muslim South Lebanese family is prominent in the terrorist organization–shows us an accounting of where the money came from, it's pretty safe to assume that the money came from sources connected with Hezbollah. He now works as a real estate agent in Dearbornistan, where mortgage fraud (committed by his fellow Hezbollah-supporting Shi'ite Muslims) and foreclosures run rampant. Regardless, Baydoun, himself, worked for Al-Mabarat Charitable Organization in Dearbornistan, for which he raised money and served as spokesman to the press at the time FBI agents raided it in 2007 for financing Hezbollah. (Of course, as I predicted then, the raids were mere "show raids" for the FBI and Bush Administration to actually look like they were doing something against Islamic terrorism. But they refused to ever prosecute or even shut down the charity, which continues to send about $1 million a year to Hezbollah for who knows what.)
Last year, Baydoun used Al-Mabarat to urge his Facebook friends to vote in the November elections. Baydoun (who also spells his last name, "Beydoun"–only Muslims in America, who wish to confuse law enforcement and other government authorities, have multiple spellings of their last name), also asked his fellow Muslim Facebook friends to donate to Al-Mabarrat for his birthday gift.
As I've reported on this site, Al Mabarat Charitable Organization is the U.S. branch of Hezbollah's Al-Mabarrat, which was founded and headed by the recently deceased Hezbollah spiritual leader Grand Ayatollah Sheikh Mohammed Hussein Fadlallah–the man who issued the fatwa to murder over 300 U.S. Marines and Embassy officials in Beirut and over 100 innocent people at the Jewish Community Center in Buenos Aires, Argentina. Al Mabarat organization financially rewards the families of Hezbollah terrorists who die in terrorist attack on Israel and innocent Israeli citizens.
Tarek Baydoun was also a writer for the Hezbollah-funded Arab American News. Osama Siblani, owner of the newspaper which employed Baydoun, reportedly got the seed money for the newspaper from Hezbollah and he was identified as a major Hezbollah agent in America by Kuwaiti newspaper Al-Seyassah. A close relative of his is a top executive of Al-Manar, Hezbollah's Lebanon-based TV station.
And finally, Tarek Baydoun not only told Detroit newspapers that he blames America for the 9/11 attacks, but he denies that Muslims did it. Yup, a 9/11 Truther and proud Hezbo working against Sharron Angle (and for Harry Reid).
Here is the script of the Hezbollah robo-calls against Sharron Angle:
My name is Tarek Beydoun and I am a Muslim-American from Dearborn, Mich. I am proud of who I am as an American and a Muslim. I regret the fact that Senate candidate Sharron Angle has raised the specter of Muslims taking over Dearborn, Michigan or any part of our great country. It is a shame in this day and age that any candidate like Sharron Angle would use my religion to stigmatize my city and score cheap political points.
If I were Sharron Angle, I would immediately file a Federal Election Commission complaint against Beydoun/Baydoun, Harry Reid, and the Democrat Party. It must be determined where Beydoun/Baydoun's money is coming from and how he paid for these calls. When we hear Barack Obama whining about foreign money in these elections, ask yourself why he's not complaining about Hezbollah's involvement in Sharron Angle's U.S. Senate race.
And if I were Sharron Angle, I'd immediately demand that Harry Reid condemn Hezbollah's and Hezbollah supporter Baydoun's involvement in the race. And I'd run ads about it, too. My tag line would be:
"Why are the Islamic terrorist group Hezbollah and Harry Reid working together to defeat Sharron Angle?"
Why, indeed. We know why. And that's why I'm rooting for Sharron Angle on election day. Sorry, Tarek Beydoun/Baydoun. allah isn't with you on this one. She's gonna win. And your dumb Hezbollah robo-calls will only help her.
Ma'a Salamah, chump.
One other thing. Dearbornistan Mayor John "Jack" O'Reilly was on CNN's "Blanderson Cooper 360" show to defend Dearborn, deny it is controlled by Muslims, and get the predictable butt-kissing from far-left, clueless Cooper. Cooper bragged that O'Reilly is not Muslim. Well, here's a tip: the Muslims picked him. They financed him, they endorsed him. He wouldn't be Mayor without them. And he's on their payroll. And in their back pocket.
Tarek Beydoun/Baydoun, Mayor John "Jack" O'Reilly: Hezbollah's Dearbornistan Anti-Sharron Angle Team
O'Reilly, a lawyer who filed for bankruptcy and was always in shaky financial condition, apparently took bribes from indicted fugitive Hezbollah financier Talal Chahine, in exchange for O'Reilly's vote in favor of Dearbornistan paying millions to buy a worthless contaminated property from Chahine and his fellow Hezbollah financiers. O'Reilly is a dhimmi mayor more valuable to Dearborn's Muslims than any Muslim would ever be. And most Dearborn officials are in the back pocket of Muslims, too. I've documented it on this site.
It's laughable when O'Reilly says–with a straight face–that there is no conflict between Muslims and Christians in Dearborn and that they live together in harmony. Simply a joke. Like saying Nazis and Jews lived in Germany together in harmony. O'Reillly claimed that not all Arabs in Dearborn are Muslim and cited Chaldeans (Iraqi Catholics). Hilarious. He knows very well that almost no Chaldeans live in Dearborn and few Christian Arabs do, either. They just can't live in peace there.
Sharron Angle was right about Dearborn. It may ostensibly be run as a Constitutionally elected municipal government. But that's not the way it is. It's a Muslim-dominated fiefdom. It's simply not America. But rather the Muslim occupation of a once-American city.
Tags: 9/11 Truther, 911, Al Mabarat, Al Mabarrat, Anderson Cooper, Blanderson Cooper, Dearborn, Dearbornistan, Harry Ried, Hezbollah, Islam, Jack O'Reilly, John O'Reilly, Lebanese, Mayor, Muslim, Nevada, Sharron Angle, Shi'ite, South Lebanon, Tarek Baydoun, Tarek Beydoun, Tarek M. Baydoun, U.S. Senate
Posted in Blog Posts, Columns
[Debbie – Cooper bragged that O'Reilly is not Muslim]
So what. Neither is the President of Lebanon.
I_AM_ME on October 13, 2010 at 3:03 pm
Debbie, you deserve a Pulitzer Prize for this story. Keep up the great work.
Fred Taub on October 13, 2010 at 3:15 pm
what are the chances that any of the media will ask Robert Gibbs or Obama about this the next time they decry the Chamber of Commerce (horrors!!) getting like 1% of their operating funds from foreign affiliates of US businesses?
KayserSozay on October 13, 2010 at 3:19 pm
Debbie get on Cooper's show and tear him a new one.
CaliforniaScreaming on October 13, 2010 at 4:12 pm
Wow, what does it say about a candidate (Reid) when Hezbollah supports them? Some campaign slogans:
Harry Reid- thousands of maniacs in Hezbollah can't be wrong!
ScottG on October 13, 2010 at 5:02 pm
Good going, Debbie.
skzion on October 13, 2010 at 6:25 pm
Great article Debbie, keep hammering this vermin who putted out this attack campaign Ms. Angle, I hope the folks in Nevada find out where exactly this radical islamist sleeper-cell is getting his money from to put out a propaganda campaign ad against Ms. Angle!
"A nation is identified by it's borders, language & culture!"
Sean R. on October 13, 2010 at 6:28 pm
if you have enough evidence that the money is coming from Hezbollah which is a terrorist organization why not take him to court and send the bastard to jail?
Stephanie on October 13, 2010 at 7:22 pm
I totally agree. If this man is truly being funded by a terrorist organization, wouldn't he be arrested. I also find it interesting that when I google search this in the news section, this blog is the only person that pops up saying Hezbollah is funding this. Where is all the news? Where is FOX NEWS since I guess they are the only news that this blog trusts.
Zack on October 13, 2010 at 10:27 pm
Hey Zack, I doubt that Fox News is going to report this story, you have to notice something about Fox News/NewsCorp, atleast 20% of their stock is owned by a Prince in Saudi Arabia who goes by the name of Prince Al Weed or something like that (Debbie, please help me out of I misspelled the guys name!). And if I were Ms. Angle, I would tell the FBI to themselves involved in this and investigate this Tarek Beydoun on where exactly he's getting his money from, because I suspect that his money is coming from hezbollah overseas in the middle east, and if that's the case then this Beydoun sleeper-cell could face some jail time for what he did!
Sean R. on October 13, 2010 at 11:37 pm
The guilty party who owns at least 20% of Fox News / News Corp. stock is one Prince Alwaleed bin Talal. But even if Fox did report on this Hezbollah support of Reid (and robo-slamming of Ms. Angle), I doubt that they'd give the credit where it belongs – as was noted about Sean "Vannity" and other so-called "conservative" pundits over the years viz Debbie's works.
ConcernedPatriot on October 14, 2010 at 1:48 am
Why is it that when a third party runs an advertising campaign like this against a republican/conservative, then the democrat/liberal must be behind it; however, when a third party advertising campaign favors a republican/conservative no mention is made that it is supported or backed by the republican/conversative. The perfect example of this would be the Swift Boat campaign run by a so called independent group against John Kerry in the 2004 elections.
Could it be possible that Beydoun and his friends just don't want Sharon Angle in because of her views, and view Harry Reid as less of a threat. To jump to the unsupported/unsubstantiated conclusion that Reid is behind the campaign and in league with terrorists is not only poor investigative protocol, but borders on libel.
Customs Forever on October 14, 2010 at 9:12 am
"Politics make strange bedfellows………"
However, the left's fascination with radical Islam is well known.
Tanstaafl on October 14, 2010 at 10:48 am
The day will come when this nation will have to choose between the luxury of membership in the false religion of "tolerance" and the hard, cold reality of national survival. When we reach that point, mass internment and deportation will be an act of benevolence. The history of what Islam does to host societies is as clear as the nose on your face for any who feel so inclined as to actually care about our future. While America slept, the devils standing army has crept in amongst us and there will be hell to pay if we decide to roll over and go back to sleep. There is no radical Islam, no moderate Islam, only Islam.They all idolize Muhammad, a man who possessed all the attributes of Charles Manson.
Letholdus on October 14, 2010 at 11:57 am
Um, I live and work here in Dearborn, not "Dearbornistan" or whatever moronic name you came up with and our mayor was democratically elected just fine. Do you really believe that a few large companies would have their headquarters in a city that is run by any religious group? and no, she was not right about the city in Texas either that hasn't existed since 1975.
bob on October 14, 2010 at 3:32 pm
hey ' bob ' – you think you can post such drivel and it's believed? HELL TO THE N O. The mayor was NOT elected. The fact that NON-AMERICANS voted proves it. kapish?
AND those companies were there LONG before the '-stans' moved in. HOWEVER: most of the original residents have left. hmm.. perhaps fled would be a better word.
I will say this: IF the extreme think that WE the people will NOT stand up and fight, than they have NO clue who we really are. AND I further contend, that the yellow bellied libs will be 'France' while the rest of us will defend OUR country because that IS what the United States is all about.
If your country is SO great: return to it.
TC on October 14, 2010 at 6:34 pm
Debbie you have to be the dumbest blonde bimbo i have ever seen. Since you seem to know everything, you should know that there is not one muslim in dearborn that the fbi doesnt know there every move. If the fbi can bring down somebody like Talal Chahine with all that money they surely would know if Tarek gets his money from Hezbollah alot faster then your dumb witted mind would. Your storys are useless, always picking on muslims. In every religion theres bad apples. Im not saying that every muslim is a good muslim,there are alot of bad seeds that give us muslims a bad name. You are just a racist bigot lolife that has nothing better to do then to ask for donation to attack muslims, Just because a muslim has good financial settings doesnt mean that hezbollah is supporting them. You ever hear of ppl busting there bottom to get to where there at. You and you so called followers and go to hell for all i care you are a disgrace not only to the jewish race but to all humanity. I know for a fact that there are tons of jewish ppl that totally are against you and your zionist ways for instance the ones that follow Judiasm the real jews good kind hearted ppl.Its zionists like you who give the good jewish ppl bad names (Judism) You really should stop making yourself look so dumb its ppl like you who make peace for complicated
King Hussien on October 15, 2010 at 1:23 am
Wow! And this is the ONLY place I have seen this story. Great job Miss Schlussel!!
PDMac60 on October 15, 2010 at 5:27 pm
Can we now call him Hezbollah Harry? LOL
Teacher on October 18, 2010 at 3:08 pm
Leave a Reply for bob

redpajama_set_name: RedPajamaCommonCrawl


Weight loss can significantly contribute to improving your health and well-being. Because everyone's weight loss journey is different, Presence Health offers a variety of proven effective weight loss options so that our patients find the treatment plan that's best for them.
The Chicago Institute of Advanced Bariatrics has a renowned team of experts that have helped hundreds of people who have struggled with obesity, despite years of dieting. Our caring, knowledgeable weight loss surgery team wants to help you take charge of your health.
AMITA Health Weight Loss Solutions places an emphasis on Nutrition, Education and Wellness and will work closely with you to build a plan individually tailored to your health and weight related challenges and goals.


text:
Marshall Netherlands expands into larger premises
Marshall Aerospace and Defence Group's Netherlands business is this week moving to larger and smarter new office facilities in Katwijk, two miles from Leiden.
The move is part of the business' continuing expansion plans and ongoing delivery of more than 1,500 deployable container systems in the Dutch Defensiebrede Vervanging Operationele Wielvoertuige n (DVOW) programme, to update the Dutch Armed Forces with new vehicles, containers and support equipment.
It will also provide an in-country base for the company's total sustainment contract to maintain, repair and overhaul the Royal Netherlands Air Force (RNLAF) fleet of C-130s till 2032.
The building is located on technology campus, Unmanned Valley, and formerly housed the navy air base Medical Service. It has been newly refurbished to offer maximum flexibility for the company's employees, including open plan layout and the option of standing workplaces with lots of natural light coming in from all around.
The spacious new offices will also help the team easily comply with the Dutch Government's social-distancing guidelines.
"We are very excited to move into our new office space, which will afford us a number of benefits as a team, not least the additional space to work according to our government's social distancing recommendations," said General Manager of MADG NL, Irha Luijk.
The new facility provides the company larger and improved workshop and parts storage facilities as well as additional space to increase its armed force's operation training programme. It also provides a great platform for Research and Development for the Group.
The company has been increasing its number of dedicated engineers and office-based support personnel to meet the continuing provision in the DVOW contract and other support to the Netherlands' armed forces.
Image: The new Marshall NL office
Founded in 1909, the Marshall Group has a turnover of £2.5bn and over 5,700 employees. Headquartered on a 900-acre site in Cambridge, Marshall has three principal arms to the business: Aerospace and Defence; Property; and Ventures.
Marshall Group
Marshall Group directory information


text:
Carriera
Cresciuto nel settore giovanile dell', nel 2017 si trasferisce ai danesi del , con cui gioca per un anno nelle giovanili del club, prima di essere ceduto in prestito al , nella seconda divisione danese. Dopo due anni e mezzo in cui accumula 48 presenze e 3 reti in campionato, nel 2021 viene acquistato a titolo definitivo dai finlandesi del , con cui esordisce anche nelle coppe europee.

Statistiche

Presenze e reti nei club
Statistiche aggiornate al 29 settembre 2021.

Palmarès

Club

Competizioni nazionali

KuPS: 2021

Note

Collegamenti esterni


text:
Chaos, Science and Marxism
Details	Dan Morley
Introduction to The History of Philosophy: A Marxist Perspective by Alan Woods Alan Woods	17 September 2021
The History of Philosophy: A Marxist Perspective Wellred Books	10 September 2021
In Defence of Materialism Alan Woods	19 March 2021
In Defence of Hegel Hamid Alizadeh	27 August 2020
The COVID-19 pandemic and science under capitalism Anthony Oakland	13 May 2020
Socialist Appeal - British section of the International Marxist Tendency
A new documentary produced by the BBC, called 'The Secret Life of Chaos' (it has now been taken down from iPlayer, but can still be seen here: http://topdocumentaryfilms.com/secret-life-chaos/ ) has attempted, with a degree of success, to reveal how the latest developments in science through 'chaos theory' are finally beginning to make redundant any religious explanation of the workings of the universe and the emergence of intelligent life.
It has done this by showing the necessary interrelation between order and chaos at all levels in matter. Indeed the understanding, or 'philosophy' underpinning this will be familiar to Marxists as it mirrors to an extent the Marxist method, the philosophy of dialectical materialism, which attempts to understand the movement and development of society with various principles such as the interrelation of opposites (hence the relation between order and chaos) and the dynamic, unceasing development of phenomena as complex systems based on countless interactions.
This fascinating documentary starts with the presenter, Professor Jim Al-Khalili, describing the mystery that the human body, responsible for so much, is 99% composed only of air, water, coal and chalk, with minute traces of iron, zinc, phosphorous and sulphur making up the rest. Indeed, if broken down into our elements each of us is worth only a few pounds. In other words, we are more than the sum of our parts, something that mechanical thinking, which treats objects as finished atoms that exist essentially independently of each other, cannot comprehend.
We then move on to the example of Alan Turing's mathematical work in explaining mysterious 'self organisation', witnessed for example when apparently homogenous objects such as the bundle of identical (or nearly identical) cells created after fertilization (known as a 'morula') suddenly differentiate into distinct kinds of cells.
How can this happen? How is it that, as Hegel, the philosophical precursor to Marx, would put it, we get difference through unity? Turing hypothesized that different chemicals seeping across an organism might interact with the cells to cause them to differentiate and behave in different ways.
Interestingly, in describing this, we are told that Turing compared this process with that of the formation of sand dunes through a 'steady wind blowing across sand and creating all kinds of different shapes. The grains self-organise into ripples, waves and dunes even though all the grains are almost identical and have no knowledge of what is happening'. This technique of comparing completely different natural phenomena is important since the laws being described coincide with the laws of Dialectical Materialism.
In the development of an organism this process is known as morphogenesis. Crucially, as the presenter points out, this process appears to be governed by certain laws and to behave almost as with a pre-designed purpose. Yet there is no central control, no mind guiding the process.
In essence this is a discovery exploding the false and rigid dichotomy that has always been thought of as existing between apparently inanimate nature and the purposeful mind. Bourgois philosophers have always considered the natural world as an inert and lawless chaos and it is precisely this which has always required a god or outside cause to set the universe in motion and make it abide by set laws, which were falsely considered as fixed. Thus William Paley infamously inferred the necessary existence of god from the apparent order of the universe, making the analogy with the obvious conscious design behind a watch.
In particular, it was the problems caused by this world view in explaining the possibility of objective knowledge that led to Hegel's discoveries of dialectical laws as immanent (i.e. coming from within) to phenomena themselves. For the rigid opposition, posed by philosophers such as Kant, between the mind as ordered and unified, and the natural, objective world as chaotic and random, led to the inability to explain the relation between ideas and the objects to which they were supposed to give order and purpose.
Indeed in considering this problem Schelling, who was Hegel's roommate and philosophical precursor, brilliantly anticipated evolution and the idea of self-organisation within the natural world (i.e. independent of consciousness) 300 hundred years before this documentary was made: "there is an older delusion, which is that organisation and life are inexplicable by the principles of nature...it would be at least one step toward that explanation [of organisation in nature] if one could show that the succession of all organic beings had come about through the gradual evolution of one and the same organism."
In other words it is the evolution or development of nature itself, resulting from the constant and extremely complex interaction of different aspects of nature, that allows us to speak of discernible regularity and predictable general laws applying across the spectrum, such as those governing morphogenesis and the creation of sand dunes. Here we see another dialectical principle in play – the unity of opposites, the emergence of simplicity through complexity and vice-versa.
Unpredictability
The programme then delves into the problem of unpredictability existing within all natural systems (including human society). The presenter explains the problem that the mechanistic, Newtonian world view has in dealing with the unpredictability and change that scientists are inevitably confronted with. He uses the interesting example of an orary (a mechanical model of the solar system where the operator turns a wheel, which operates various cogs, moving models of the planets in a manner similar to how the real planets move) to depict this outdated worldview.
The universe, like the orary, is seen as a complete system of fixed parts which always act on one another in the same way. However, there is a problem, which is that given enough time, real celestial bodies do not act upon one another in exactly the same way as before. The redundancy of this method is very clearly shown by the orary, which actually can only be put into operation with an external force – the human hand – and requires a complex system of cogs which are definitely not present in the real solar system!
Similarly, the traditional view of the universe as obeying fixed patterns of behaviour always required an external stimulant – God – to set it in motion. As the programme explains, this model finally collapsed when it proved incapable of delivering results when being used to predict complex systems such as the weather.
The programme attempts to reconcile this complexity and unpredictability with the apparent order and regularity described earlier. Of course as we said, there is not total unpredictability in nature. Everything occurs within definite conditions, so for example the apparently random interaction between each unique grain of sand and gust of wind contributing to the creation of a sand dune, actually occurs within definite limits, each sand grain being necessarily conditioned by the millions of other sand grains around it. Hence the more or less predictable sand dune formations resulting. The point is that we can predict the general appearance of sand dunes, although not the exact characteristics of each individual one. This principle is unconsciously utilised by everyone, indeed we could not survive without it, for example how could we recognise each human as unique and yet definitely a human akin to others without such a principle? We all know how each fingerprint is unique and yet all fingerprints look more or less the same.
The programme describes how infinitesimal differences in weather systems can produce huge changes in the outcome by way of a feedback effect – each minute change in output gets fed back into the system as an input, leading to a further change, and so on until a qualitative rupture is reached and new weather is produced.
However I would criticise the depiction of this law in the programme, where it is described as though the initial minute change, such as the famous example of the butterfly flapping its wings and giving rise to a hurricane elsewhere, is solely responsible for the dramatic alteration of the overall weather conditions. In reality, the small change is only able to have its effect preserved and developed due to a complex concatenation of circumstances favourable to changing the overall weather – in other words it is the 'straw that breaks the camel's back'. If we do not put it in this context, it would be a mystery as to how we would not have complete chaos in all phenomena whereby any and every minute change constantly leads to massive alterations in the whole system.
There is also a detectable note of philosophical idealism (i.e. the view that mind creates or determines matter) from the scientists in the programme, when explaining the unpredictability in systems arising because the 'simple mathematical rules' which apparently initiate the given process, are then diverged from as small discrepancies and deviations from 'the norm' develop into large ones. But then the question arises, where do these small divergences from the simple mathematic rule come from, and where does the mathematical rule that sets the system into motion come from? In reality, the maths only more or less roughly generalises the infinitely complex overall system of cause and effect that is nature.
That is the only way we can explain how the 'rules' which appear to govern reality, can be both changed or diverged from, but also returned to. Interestingly, the presenter sets up a feedback system, where a camera films him standing in front of a screen which is displaying, with a very slight delay, the image of the presenter being filmed by the camera. Because of the minor delay, the image begins to diverge more and more from the original, until completely new patterns emerge of their own accord, as the image interacts with the different versions of itself. So the patterns that emerge are the concentration of all the interactions of the images projected with time lag, and the original event which is being filmed.
The principle behind this is extremely important for Marxists, because it shows how something arising from a definite base, and completely dependent upon that base, can through the constant interaction and feedback with its base, develop its own laws and become partially independent from its base. This is how we should understand, in the most general sense, human ideas, culture, politics and ideology, as dependent upon the material economic base of society (and ultimately nature as a whole), but developing its own logic which arises from contradictions in that material base and by constantly interacting with it. As Lenin said, politics is 'concentrated economics'.
Just as all natural things must exhibit laws and organisation, so they enter into crisis, break apart and cease to exist. How many stars had to be born, only to explode, and how many planets had to collide, before the right conditions were developed for life? Similarly, a series of crises of capitalism inevitably leads the working class to the understanding that the system as a whole must go.
The tendency to self-organisation in nature is only the basis for consciousness, which can reach perfection only in a liberated, socialist society, conscious of all of society's needs.
If evolution led to consciousness, this was only because it must have been favourable in the conditions of nature to posses it.
Similarly, Marxists can show how the conditions of capitalism and the class struggle make it favourable, even necessary, for the most advanced class created by capitalism, the working class, to have a fully conscious theory and leadership, embodied in the ideas of Marxism.


From the outside it looks like a pretty unspectacular old Church, but step through the the unassuming doors and you are greeted with the most incredible open space. It's had most (not all) of the old Church stripped out, right back tot he brick work. But what is left behind is a thing a true beauty. What an amazing space!


text:
LA Art Show has a strong UCLA vibe
Professor Chon Noriega helped curate the show, which features alumnae Carmen Argote and Zeynep Abes
Zeynep Abes
"Memory Place," by artist and UCLA alumna Zeynep Abes, which she describes as "an exploration of three moments of memory particular to the fraying certainty of my home. The piece navigates through visualizations of private and public recollections, delving into the Istanbul I once called home, now existing increasingly more as an idea than a place."
Jessica Wolf | July 28, 2021
Two UCLA alumni, Carmen Argote and Zeynep Abes, are part of this year's DIVERSEartLA program at the LA Art Show, which was curated by UCLA professor Chon Noriega.
Noriega, a distinguished professor of film, television and digital media in the UCLA School of Theater, Film and Television, said he was drawn to the new works by Argote and Abes, which were created and experienced entirely online during the pandemic. Now, their multimedia installations will be on view in person for the first time in the exhibition "Immersive Distancing," presented by UCLA's Chicano Studies Research Center.
"Immersive Distancing" is part of the DIVERSEartLA section of the LA Art Show, which opens Thursday, July 29, and runs through Sunday, Aug. 1 at the Los Angeles Convention Center.
This is the fourth exhibition Noriega has curated for LA Art Show. DIVERSEartLA's 2021 focus is on women and non-binary artists bringing together art, science and technology, for which both Argote, whose piece is titled "Last Light," and Abes, whose piece is titled "Memory Place," were a natural fit.
"Their works offer a new way of thinking about home and the urban landscape," Noriega said. "Ironically, the iPhone and internet made it possible for the artists to make these works during the 'shelter at home' phase of the COVID-19 pandemic, allowing them to work around the necessary distancing, while the fact of having to do so also foregrounded the inherent isolation and non-presence of social media."
Using photographs, video and photogrammetry, Argote and Abes integrate their experiences in Los Angeles during the first phase of the COVID-19 lockdown as part of the work itself, revealing ways in which they navigated isolation, loneliness and challenging personal situations.
Carmen Argote
Shot during the first wave of the pandemic, the artist Carmen Argote's first film, "Last Light," is a meditation on walking and memory in Los Angeles. Argote describes her walking habit as synonymous with thinking, a way of taking in and digesting the conditions of her environment. Through walking, the artist "deconstructs and reconstructs my ideas, thoughts and self."
Noriega watched and re-watched their online works during a 14-day quarantine, feeling a sense of immersion in the isolation.
"The artists were pulling in the viewer and immersing them in visual stories about the loss of a certain presence in the world, where one no longer feels directly connected to the past, a society, and a sense of home," said Noriega, who recently stepped down as director of the Chicano Studies Research Center. "That immersion is a complicated thing. How does one capture loss? I feel each work offers a subtle answer in their meditative nature … Carmen's walks across Los Angeles, Zeynep's flights between her native Istanbul and her new home in Los Angeles. There is no easy answer, but you get a sense of their resilience through movement, looking and listening."
Noriega encountered Argote, who holds an M.F.A. from the UCLA art department as he researched the 2017 Los Angeles County Museum of Art exhibition "Home — So Different, So Appealing." He met Abes virtually after Noriega participated in 2020 installment of UCLA School of the Arts and Architecture's "10 Questions" series. Abes was inspired by the conversation around "What is Power?" drawing parallels between the experiences of Latino artists in the United States that Noriega discussed and her own experiences in Turkey. She earned an M.F.A. in design media arts.
Now in its 26th year, the LA Art Show partners with Los Angeles's major art institutions, as well as features artworks from 120 galleries and across 23 countries.
"I wanted the 'Immersive Distancing' exhibition to bring these artists' work into public space, since it has only been seen online," Noriega said. "Given the power and impact of their work, the 250,000-square-foot space of the LA Art Show seemed appropriate."
Tags: arts | alumni | faculty news | Los Angeles | COVID-19
Read more about the video and photographic works on the program, "Last Light" by Argote and "Memory Place" by Abes, including interviews with the artists.
DIVERSEartLA talk featuring curator Chon Noriega and artists Carmen Argote and Zeynep Abes
Jessica Wolf
jwolf@stratcomm.ucla.edu
Rebecca Epstein
UCLA Chicano Studies Center
repstein@chicano.ucla.edu


Thankfully, there's a tool available that was especially created for busy internet marketers and all those working online. This digital marketing platform is called Builderall.
By now, you probably are aware that purchasing all these tools will cost you hundreds if not thousands of dollars every month. The worst part? Some of the third-party plugins and tools can endanger your site. This alone should provide you ground to have BuilderAll right now.
1. Drag and Drop Site Builder: An HTML5 run site, blog, sales funnel and membership website builder that allows you to create special user experiences based on visitors' device type: desktop, tablet or mobile phone. The website features content that's incredibly easy for search engines to crawl and understand, so making it search engine friendly. Along with this, it may be utilised in creating advertising graphics, infographics, blog header designs, business cards, eBook covers, flyers, Facebook covers, Google+ headers, Kindle covers, Pinterest designs, resume designs, Twitter covers and a lot others.
2. Responsive Builder: A builder that makes websites and blogs to offer an optimum viewing experience, which makes it completely responsive. More so, it's super search engine friendly.
3. Application Creator: This is an entire structure which can be used in building, modifying, and publishing mobile apps. With the App Creator, it is possible to publish apps on all platforms, and if you use their own accounts, this may be done with no fees. To make money off those published apps, you will have to get a personal Apple, Play and Amazon app accounts.
5. Design Studio: This presents tools essential for the incorporation of images or videos into specific areas of a picture including a TV screen, picture frame, mobile screen or any area you prefer. Moreover, it allows you to upload personal video or image holders and also gives you the choice of deciding the display area in which you want your image or video to be visible.
6. Presentations Builder: This could be leveraged at the making of slideshow presentations of expert quality for companies. Presentations Builder has features which are much the same as PowerPoint, but presents you with a lot of other alternatives to select from.
14. Sharelocker App: This tool helps you in creating some areas of your website inaccessible to users until they click on the share button. This way, users are locked out of the original content until they share the content to other people, consequently growing your viewers organically.
15. Script Generator: This very useful tool can be utilised in making excellent copy for your sales letters or pages, webinars, videos, emails and so on and so forth. With this tool, you can single out your avatar. It also indicates the benefits of your services or product and what changes need to be implemented on your avatar to improve your sales.
16. Intuitive Templates: Can be used in making an infinite number of floating videos which will provide you an edge over your competition and motivate your customers to re-visit. Additionally, this tool will engage your customers and will lengthen the time that they spend on your site.
17. Video Editor: This all-efficient tool aids in the creation of descriptive videos or professional sales letters (a.k.a. video sales letters) which is undeniably more engaging and will lead to more sales as compared to a generic copy.
19. Mockups and design studio: Lets you create stunning images for your site, products, eBooks and courses. You can even create super engaging articles on your social networks or blogs.
To be honest, this price is in fact very affordable and reasonable for most of the people, especially beginners. Considering purchasing all the tools contained would probably amount to thousands of dollars if bought individually.
Email marketers: How much do you pay your current email service providers like Convertkitor Aweber? With up to ten thousand subscribers, it is impossible to believe someone can resist buying BuildAll.
Companies & co-operates: Don't you need a professionally built site with everything that you're going to need to obtain sales, build credibility and attract more clients?
I would be glad to pay $50 per month or even up to $100 every month for all the services they give. Yet, they are charging at just $10 and $30 every month.
This is a really unique feature because only a few platforms out there lets complete newbies to construct a mobile application by simply using easy drag and drop functions.
In all honesty, using WordPress is similar to learning a totally new language in the beginning. So quite a number of people can have a hard time with WordPress when they're just a beginner without help.
At this point in time, it is clear how BuilderAll has reformed digital marketing in its entirety, by furnishing a feature-packed product, which is of good quality, fantastic value, and is affordably priced. If you see the potential of this amazing product, and what positive outcomes it can make on your business, in addition to the possible growth our business and become more influential in our market, then we need you to lend a hand and enlarge our business as well as yours.
Once you sign up as a Builderall Business member, you automatically become an affiliate. This means that all the necessary tools and information needed to spread the word about the BuilderAll platform is supplied to you and in turn, you'll earn income for each successful conversion. We've got an already established, and operational business that can help you earn as you develop your own business.
For online marketing veterans, you'll have the ability to pick the best package to address the needs you currently have while leaving room to grow while your empire grows. BuilderAll is the best choice for entrepreneurs, service providers, digital professionals, designers, web agencies, coaches, networking professionals, and anyone else who likes making income online.


Mitsubishi Heavy Industries Ltd. (MHI) and China National Chemical Engineering No.7 Construction Co. Ltd, have signed a fertilizer plant construction project for Bangladesh Chemical Industries Corp., an organisation owned by the Bangladesh government.
This will be the largest fertilizer plant in Bangladesh, with production capacity of 2800 tpd. The project will be managed through an engineering, procurement and construction (EPC ) contracting arrangement, with completion scheduled for 2022.
As the next step, arrangements for financing have begun in cooperation with Marubeni Corp., and the contract will officially come into effect once the financing is finalised.
The fertilizer plant will be built in Polash under the district of Narsingdi, 50 km northeast of the capital city of Dhaka. It will utilise natural gas produced in Bangladesh, and have the capacity to produce 1600 tpd of ammonia and 2800 tpd of urea.


text:
Its not all Gay boy are DTF in that case your most important takeaway was
Leave a Comment / Mate1 Inloggen / By abi
If, at all like me, one of the very first introductions toward the LGBTQ stage was
Queer as people (both British and United states versions), then your biggest takeaway ended up being probably that homosexual guys enjoy fuck… a good deal. From darkish suite of groups (yes, they quite definitely are available clear of the cliche), the hot rooms and bathhouses, nowadays the software attached to practically every gay man's contact, gay sex is obtainable night and day.
The absolute shocking quantity of lubrication aside, it is an easy to understand (as well as perhaps warranted) label that gay people partake in plenty of love. Of course lots of homosexual mass media would be to assumed, we're all dehydrated bitches wanting to discover the following that Instathottie, shirtless Jonas twin, or father whose "hottest minutes" are spread all over the net. It's not simply gay news, both. If you decide to have fun with a team of homosexual males (and I'm significantly generalizing below), most likely much of the debate will flit between RuPaul's pull battle and sex—who's a premier and who's a bottom? What was that dude like that your hooked up with thereon application? Spit or take?
On the one hand everything is incredible. While particular sides of gay mass media need to carry out very well being much more varied and including competition and differing body, it is rather outstanding most of us inside a period wherein BuzzFeed can publish a listicle authored by a gay dude thirsting after bulges. Similarly, available interactions concerning sexual mores of gay guys are very incredible. On the other, it's a damaging affirmation of a mate1 mobiel stereotype that is leading to difficulties. The Reasons Why? Because its not all gay guy are DTF.
"i've some worries around gender, and I really feel lots of pressure and outlook having sex,"
claims 25-year-old Liam. "It's not too I don't want to have it—it's way more that personally i think like I am able to never find a location exactly where I'm cozy enough with you to definitely have intercourse. That perpetuates a vicious period."
Liam (who's gotn't received love-making in over annually) talks about that as he wouldn't necessarily move his or her sexual drive as reduced, he is doingn't feel the erectile want that many of their partners carry out. "There's an overarching rhetoric that 'sex equals good' and that's not really harmonized in my has," he states. "but that outlook is something which drives that circuit of anxiety. I'm these an expectation to get excellent love-making when Really don't think that that is definitely gone wrong it can make myself feel very uncomfortable right after which I communicate that inwards. Plenty Of that anxieties additionally is derived from how the overall performance intimately was described and the general inexperience driving that uncertainty."
If Craig turned single nine days ago, he anticipated the gender in the future coming around. "I reckon you believe that just one homosexual boyfriend is having love. But nine weeks in the future, You will findn't received any," he states. "None anyway." The guy admits that he is like, because he's 22 years of age, he's inability. "I reckon me personally are gay amplifies a number of this force," he gives. "There's a focus on beauty, categorization, young people, and so forth that shades online dating and intercourse in people."
There may be specialized reasons for deficiencies in particular sexual desire. Period, bodily medical, psychological, and drugs can all play a role. But Liam and Craig short-term a couple of several gay people whose relationship with intercourse is not as simple as "Wham, bam, thank you ma'am." Really, since I moving getting SSRIs, simple love drive—or at minimum the desire to be personal with another person—has plummeted (not, I'll admit, it absolutely was that highest at the beginning). As stated in research conducted recently, 15percent of males stated that that they had low-value interest in gender. You will find this after a study through the Observer in found that sexual desire (in england at the very least) got diminished overall among individuals, and another analysis that suggested that minimal desire in males under 40 has actually noticed a sharp increased the last few years.


text:
Draine, Betsy
Death on a Starry Night
by Betsy Draine and Michael Hinden
Library of Congress Classification PS3604.R343D43 2016
Dewey Decimal Classification 813.6
When art historian Nora Barnes returns to France for a Van Gogh conference in the charming medieval village of Saint-Paul-de-Vence, she's expecting a vigorous debate about whether the famed artist's suicide was actually a homicide. But on the night before the conference, an elderly French woman who'd promised to reveal important evidence is found face down in the village fountain, and her Chanel briefcase is nowhere to be seen.
During a week of academic squabbling, dining, romance, and suspense, the quirky conference members, one by one, fall under police suspicion and the amused gaze of Nora's husband, Toby Sandler. But someone wants to stop Nora and Toby's amateur sleuthing, and what happens next is no joke.
Betsy Draine and Michael Hinden are coauthors of the mysteries Murder in Lascaux and The Body in Bodega Bay, the first two novels featuring Nora Barnes and Toby Sandler. They also coauthored the memoir A Castle in the Backyard: The Dream of a House in France and translated The Walnut Cookbook by Jean-Luc Toussaint. They are professors emeriti of English at the University of Wisconsin–Madison. Long ago, Michael worked a summer as a waiter in Saint-Paul-de-Vence and fell in love with the village.
"The best novel yet in an already strong series. The plot is tight, the subject engaging, and the characters suitably attractive, villainous, and occasionally sexy. Expertly exploring the mystery of Van Gogh's death, the authors serve us French food and wine along the very enjoyable way."—Richard B. Schwartz, author of The Last Voice You Hear
"A clever mystery that weaves art and murder into a rich, colorful tapestry set against the backdrop of the real-life controversy surrounding the death of Vincent van Gogh. A sure thing for art lovers, Francophiles, and readers who enjoy their mysteries with a glass of fine wine."—Patricia Skalka, author of Death Stalks Door County
"A thoroughly engaging romp set in the olive groves above the French Riviera. Draine and Hinden's eccentric and amiable characters (one of whom happens to be a murderer) gather together to share delicious meals, amble through medieval villages, and argue about van Gogh's art, life, and mysterious death in this charming whodunit."—M. L. Longworth, author of The Mystery of the Lost Cézanne
See other books on: 1853-1890 | Americans | Draine, Betsy | Murder | Mystery & Detective
Nearby on shelf for American literature / Individual authors / 2001-:


I do not give out ratings of 10 lightly, but here it is - the first film in years that has been deserving of the rating.
Neill Blomkamp brings to screens a fantastic, gritty, realistic piece of science fiction with District 9. Not since Ridley Scott's "Blade Runner", John Carpenter's "The Thing", or James Cameron's "Aliens" have we seen a science fiction film with a vision of this caliber. After viewing District 9, it will be clear to one and all why Peter Jackson put so much faith in Blomkamp and took him under his wing as protégé.
Abandoning the usual settings of Hollywood sci-fi and placing us in the harsh slums of South Africa, we are given an original piece of work which takes risks in the way it tells its story. Not only does it go against the expectations of audiences who have been trained to expect mediocrity from their sci-fi, it goes above and beyond the call of duty to provide us with spectacle as well as something to ponder after we've downed our popcorn.
There is, thankfully not an overused, overexposed celebrity in sight, and every unknown face in the film gives a solid performance. The aliens themselves, brilliantly realized with top notch CGI even manage to make us feel something, only rivaled by Gollum from "Lord of the Rings".
District 9 has so much to like. It's spectacular, darkly funny, entertaining and thoughtful all at the same time, and it's all done on a meager $30m budget. There is true talent on show here. If only there were more films like this, the world of cinema would be a more interesting place.
So there you have it. Go watch district 9!!!


wide belt sander 2 x inch grinder kw hp constant speed electric for knife making buy ryobi angle polisher.
bench grinder disc sander for metal combo.
angle grinder belt sander attachment sanding adapter for makita.
image 1 grinder sander bench combo 2 inch quick change sanding disc a o pack.
shop fox variable speed bench grinder delta sander orbital difference.
upgrade your bench grinder with the belt sander accessory diablo conversion kit.
home tips to use a flap disc sand rough timber grinder sander bench conversion kit angle.
random orbit dual action sander grinder angle sanding discs for wood n.
featured products grinder sander disk industrial 3 belt mm rpm p.
sanding belt sander adapter for 4 electric angle grinder woodworking harbor freight.
my grinder to belt sander conversion diablo kit instructions.
mini belt sander bench mount grinder polishing grinding machine buffer electric angle for orbital attachment.
industrial bench grinder with belt sander power tools canning area vale combo.
max in angle grinder tool only sander polisher n.
angle grinder sander combo grinders polishers sanders.
pneumatic grinder air sander accessory sanding pad plush glossy base polishing grinding chassis 1 angle pipe attachment.
in factory packaging with warranty combo belt sander grinder disk.
belt grinder sander hp knife maker heavy duty made in bench attachment.
sanding machine pneumatic air sander use square pad grinder 3 mm eccentricity wood polishing grinding belt combo.
magnum industrial belt sander grinder bench combo.
picture of fixed disc sander from angle grinder conversion kit.


text:
Entwicklung neuartiger Testverfahren und Wirkstoffe
The way to us
OxProtect conducts application-oriented research in clinically relevant areas in the field between hemostasis, inflammation and defense.
"Our body is constantly exposed to attacks from the outside and inside."
Bacteria, pathogenic fungi, parasites, viruses and tumor cells try to "colonize" our body. The innate and adaptive immune systems defend themselves against these "body enemies". However, the guards damage their own bodies via undesired side reactions and cause diseases such as heart attack, stroke, ischemia-reperfusion damage after transplants, thromboses and again increased inflammatory reactions.
OxProtect develops diagnostics up to marketability.
For the optimal treatment of diseases it is of utmost importance to have exact diagnostic information as soon as possible.
for a better assessment of the individual risk for the development of diseases such as thrombosis, heart attack, stroke, transplant reperfusion damage
to assess the severity of various inflammatory diseases, but also
for monitoring therapies and the course of diseases.
"Good diagnostics is the key to timely, individual, efficient and cost-effective treatment."
OxProtect GmbH
Mendelstraße 11
Tel.: +49 – 251 – 980 2000
Fax: +49 – 251 – 980 2004
info@oxprotect.com
Copyright © 2023 — Escapade WordPress theme by GoDaddy


text:
With Vancouver prices up, a call for curbs – Ask Bruce Coleman, Vancouver Mortgage Broker
Along with a jump in house sales, house prices in Vancouver have risen sharply and will likely continue to climb in the new year, pushing some frustrated house hunters to call for curbs on the foreign buyers they blame
This brand new house on 6768 Arbutus St., in Kerrisdale, was designed specifically for the Asian market, according to the developer of this house. List price is $6.88-million, lot size is 12,800 sq. ft., house (not including garage) is 6,800 sq. ft. It also has a gold toilet.
(John Lehmann/The Globe and Mail)
for stoking the rapid ramping up of housing values.
B.C.'s real estate market powered through third-quarter 2013 as the number of sales rose 18.91 per cent this year over last, according to the most recent report by Landcor Data Corp., which bases its findings on provincial assessment numbers. The total value of those sales rose 25.62 per cent to $14.72-billion for July through September.
The outlook for 2014 is just as robust, says Helmut Pastrick, chief economist for Central 1 Credit Union. Mr. Pastrick forecasts prices to go up less than 5 per cent in 2014, with the greatest increase for single-family detached homes rather than apartments and townhouses. The Teranet National Bank Home Price Index, out earlier this week, showed prices up in Vancouver 3.9 per cent on an annual basis.
As usual, the market with the highest growth in sales volume was Greater Vancouver, with a 26.46-per-cent increase over 2012.
"Single-family detached [homes] are up a solid 6.39 per cent, propelling the average price of a Metro Vancouver detached manse to $869,772," the Landcor report said.
Vancouver routinely shows up in surveys as one of the most expensive real estate markets in the world, requiring its residents to devote at least 84 per cent of their monthly incomes to housing costs.
But even areas outside the city are becoming unaffordable to residents such as Joy Mo, who came to Canada from China in 2001. Ms. Mo got shut out of the market when she and her husband sold their Coquitlam house and decided to rent for a year before purchasing a bigger house for their growing family. Ms. Mo has been renting a townhouse in Port Moody for the past four years, unable to find a house in the Tri-Cities area that falls within their $650,000 price range. They've put two offers on houses in the past three months and were out-bid on both of them, one by a foreign buyer.
Ms. Mo works as a court translator and she and her husband make a decent living.
Although some real estate analysts argue the lack of government data on foreign buyers is too anecdotal to confirm their impact, Ms. Mo disagrees. She was recently the subject of a South China Morning Post blog by Ian Young, in which she squarely blamed foreign buyers from around the world for driving the market.
She says you only have to look around to see that developers and marketers are catering to those buyers, particularly on the west side, in West Vancouver, Richmond, White Rock and the Tri-Cities area.
Because she's from China, people often tell her she's to blame for rising prices, but she's not any different than the average middle-class resident. The government here, she says, should apply an extra tax to foreign owners.
Mayor Gregor Robertson recently said if warranted, he might consider a special property tax for foreign investors to try to control the high cost of real estate. But at this point, it's less a plan than conjecture.
"Whenever we talk about building infrastructure, like bridges, tunnels, and that type of thing, we always cry about the lack of money," Ms. Mo says. "Well, to me at least, [extra taxes for foreign buyers] is a way to generate some revenue.
"I am a Canadian citizen. If I go back to China, I am not allowed to purchase any property there. The government only allows it if you are a permanent resident there, and you have to purchase that house for your main residence. You can't flip it or rent it out, that kind of thing.
"I'm not saying that's wrong or right, but they know how to protect their market. I know Hong Kong has similar laws or regulations," she says.
It's true that China doesn't allow foreign ownership. And the government in Hong Kong charges foreign buyers an additional 15 per cent Buyer's Stamp Duty.
"I ask friends, 'How do you find the housing market here?' And they say it's really cheap. They are surprised we don't charge extra fees for foreign owners," Ms. Mo says.
"On the one hand, we have immigrants like myself here, and we try to settle, and work very hard, trying to afford our homes. But on the other hand, there are really wealthy people from [China] coming here, and it's not fair. They are our competitors. So why aren't we doing anything?"
Tags: Bruce Coleman, Entrepreneurs, self-employed, Vancouver Mortgage Broker


text:
package org.apache.bookkeeper.bookie;

import com.google.common.annotations.VisibleForTesting;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.RemovalListener;
import com.google.common.cache.RemovalNotification;
import com.google.common.util.concurrent.UncheckedExecutionException;
import io.netty.buffer.ByteBuf;
import java.io.File;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import org.apache.bookkeeper.bookie.FileInfoBackingCache.CachedFileInfo;
import org.apache.bookkeeper.bookie.LedgerDirsManager.NoWritableLedgerDirException;
import org.apache.bookkeeper.bookie.stats.IndexPersistenceMgrStats;
import org.apache.bookkeeper.common.util.Watcher;
import org.apache.bookkeeper.conf.ServerConfiguration;
import org.apache.bookkeeper.stats.StatsLogger;
import org.apache.bookkeeper.util.SnapshotMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * A {@code IndexPersistenceMgr} is responsible for managing the persistence state for the index in a bookie.
 */
public class IndexPersistenceMgr {
    private static final Logger LOG = LoggerFactory.getLogger(IndexPersistenceMgr.class);

    private static final String IDX = ".idx";
    static final String RLOC = ".rloc";

    @VisibleForTesting
    public static final String getLedgerName(long ledgerId) {
        int parent = (int) (ledgerId & 0xff);
        int grandParent = (int) ((ledgerId & 0xff00) >> 8);
        StringBuilder sb = new StringBuilder();
        sb.append(Integer.toHexString(grandParent));
        sb.append('/');
        sb.append(Integer.toHexString(parent));
        sb.append('/');
        sb.append(Long.toHexString(ledgerId));
        sb.append(IDX);
        return sb.toString();
    }

    // use two separate cache for write and read
    final Cache<Long, CachedFileInfo> writeFileInfoCache;
    final Cache<Long, CachedFileInfo> readFileInfoCache;
    final FileInfoBackingCache fileInfoBackingCache;

    final int openFileLimit;
    final int pageSize;
    final int entriesPerPage;

    // Manage all active ledgers in LedgerManager
    // so LedgerManager has knowledge to garbage collect inactive/deleted ledgers
    final SnapshotMap<Long, Boolean> activeLedgers;
    final LedgerDirsManager ledgerDirsManager;

    private final IndexPersistenceMgrStats persistenceMgrStats;

    public IndexPersistenceMgr(int pageSize,
                               int entriesPerPage,
                               ServerConfiguration conf,
                               SnapshotMap<Long, Boolean> activeLedgers,
                               LedgerDirsManager ledgerDirsManager,
                               StatsLogger statsLogger) throws IOException {
        this.openFileLimit = conf.getOpenFileLimit();
        this.activeLedgers = activeLedgers;
        this.ledgerDirsManager = ledgerDirsManager;
        this.pageSize = pageSize;
        this.entriesPerPage = entriesPerPage;
        LOG.info("openFileLimit = {}", openFileLimit);
        // Retrieve all of the active ledgers.
        getActiveLedgers();

        // build the file info cache
        int concurrencyLevel = Math.max(1, Math.max(conf.getNumAddWorkerThreads(), conf.getNumReadWorkerThreads()));
        fileInfoBackingCache = new FileInfoBackingCache(this::createFileInfoBackingFile,
                conf.getFileInfoFormatVersionToWrite());
        RemovalListener<Long, CachedFileInfo> fileInfoEvictionListener = this::handleLedgerEviction;
        writeFileInfoCache = buildCache(
            concurrencyLevel,
            conf.getFileInfoCacheInitialCapacity(),
            openFileLimit,
            conf.getFileInfoMaxIdleTime(),
            fileInfoEvictionListener);
        readFileInfoCache = buildCache(
            concurrencyLevel,
            2 * conf.getFileInfoCacheInitialCapacity(),
            2 * openFileLimit,
            conf.getFileInfoMaxIdleTime(),
            fileInfoEvictionListener);

        // Expose Stats
        persistenceMgrStats = new IndexPersistenceMgrStats(
            statsLogger,
            () -> writeFileInfoCache.size(),
            () -> readFileInfoCache.size()
        );
    }

    private static Cache<Long, CachedFileInfo> buildCache(int concurrencyLevel,
                                                          int initialCapacity,
                                                          int maximumSize,
                                                          long expireAfterAccessSeconds,
                                                          RemovalListener<Long, CachedFileInfo> removalListener) {
        CacheBuilder<Long, CachedFileInfo> builder = CacheBuilder.newBuilder()
            .concurrencyLevel(concurrencyLevel)
            .initialCapacity(initialCapacity)
            .maximumSize(maximumSize)
            .removalListener(removalListener);
        if (expireAfterAccessSeconds > 0) {
            builder.expireAfterAccess(expireAfterAccessSeconds, TimeUnit.SECONDS);
        }
        return builder.build();
    }

    private File createFileInfoBackingFile(long ledger, boolean createIfMissing) throws IOException {
        File lf = findIndexFile(ledger);
        if (null == lf) {
            if (!createIfMissing) {
                throw new Bookie.NoLedgerException(ledger);
            }
            // We don't have a ledger index file on disk or in cache, so create it.
            lf = getNewLedgerIndexFile(ledger, null);
        }
        return lf;
    }

    /**
     * When a ledger is evicted, we need to make sure there's no other thread
     * trying to get FileInfo for that ledger at the same time when we close
     * the FileInfo.
     */
    private void handleLedgerEviction(RemovalNotification<Long, CachedFileInfo> notification) {
        CachedFileInfo fileInfo = notification.getValue();
        if (null == fileInfo || null == notification.getKey()) {
            return;
        }
        if (notification.wasEvicted()) {
            persistenceMgrStats.getEvictedLedgersCounter().inc();
        }
        fileInfo.release();
    }

    /**
     * Get the FileInfo and increase reference count.
     * When we get FileInfo from cache, we need to make sure it is synchronized
     * with eviction, otherwise there might be a race condition as we get
     * the FileInfo from cache, that FileInfo is then evicted and closed before we
     * could even increase the reference counter.
     */
    CachedFileInfo getFileInfo(final Long ledger, final byte[] masterKey) throws IOException {
        try {
            CachedFileInfo fi;
            persistenceMgrStats.getPendingGetFileInfoCounter().inc();
            Callable<CachedFileInfo> loader = () -> {
                CachedFileInfo fileInfo = fileInfoBackingCache.loadFileInfo(ledger, masterKey);
                activeLedgers.put(ledger, true);
                return fileInfo;
            };
            do {
                if (null != masterKey) {
                    fi = writeFileInfoCache.get(ledger, loader);
                } else {
                    fi = readFileInfoCache.get(ledger, loader);
                }
                if (!fi.tryRetain()) {
                    // defensively ensure that dead fileinfo objects don't exist in the
                    // cache. They shouldn't if refcounting is correct, but if someone
                    // does a double release, the fileinfo will be cleaned up, while
                    // remaining in the cache, which could cause a tight loop in this method.
                    boolean inWriteMap = writeFileInfoCache.asMap().remove(ledger, fi);
                    boolean inReadMap = readFileInfoCache.asMap().remove(ledger, fi);
                    if (inWriteMap || inReadMap) {
                        LOG.error("Dead fileinfo({}) forced out of cache (write:{}, read:{}). "
                                  + "It must have been double-released somewhere.",
                                  fi, inWriteMap, inReadMap);
                    }
                    fi = null;
                }
            } while (fi == null);

            return fi;
        } catch (ExecutionException | UncheckedExecutionException ee) {
            if (ee.getCause() instanceof IOException) {
                throw (IOException) ee.getCause();
            } else {
                throw new LedgerCache.NoIndexForLedgerException("Failed to load file info for ledger " + ledger, ee);
            }
        } finally {
            persistenceMgrStats.getPendingGetFileInfoCounter().dec();
        }
    }

    /**
     * Get a new index file for ledger excluding directory excludedDir.
     *
     * @param ledger
     *          Ledger id.
     * @param excludedDir
     *          The ledger directory to exclude.
     * @return new index file object.
     * @throws NoWritableLedgerDirException if there is no writable dir available.
     */
    private File getNewLedgerIndexFile(Long ledger, File excludedDir)
                    throws NoWritableLedgerDirException {
        File dir = ledgerDirsManager.pickRandomWritableDirForNewIndexFile(excludedDir);
        String ledgerName = getLedgerName(ledger);
        return new File(dir, ledgerName);
    }

    /**
     * This method will look within the ledger directories for the ledger index
     * files. That will comprise the set of active ledgers this particular
     * BookieServer knows about that have not yet been deleted by the BookKeeper
     * Client. This is called only once during initialization.
     */
    private void getActiveLedgers() throws IOException {
        // Ledger index files are stored in a file hierarchy with a parent and
        // grandParent directory. We'll have to go two levels deep into these
        // directories to find the index files.
        for (File ledgerDirectory : ledgerDirsManager.getAllLedgerDirs()) {
            File[] grandParents = ledgerDirectory.listFiles();
            if (grandParents == null) {
                continue;
            }
            for (File grandParent : grandParents) {
                if (grandParent.isDirectory()) {
                    File[] parents = grandParent.listFiles();
                    if (parents == null) {
                        continue;
                    }
                    for (File parent : parents) {
                        if (parent.isDirectory()) {
                            File[] indexFiles = parent.listFiles();
                            if (indexFiles == null) {
                                continue;
                            }
                            for (File index : indexFiles) {
                                if (!index.isFile()
                                        || (!index.getName().endsWith(IDX) && !index.getName().endsWith(RLOC))) {
                                    continue;
                                }

                                // We've found a ledger index file. The file
                                // name is the HexString representation of the
                                // ledgerId.
                                String ledgerIdInHex = index.getName().replace(RLOC, "").replace(IDX, "");
                                long ledgerId = Long.parseLong(ledgerIdInHex, 16);
                                if (index.getName().endsWith(RLOC)) {
                                    if (findIndexFile(ledgerId) != null) {
                                        if (!index.delete()) {
                                            LOG.warn("Deleting the rloc file " + index + " failed");
                                        }
                                        continue;
                                    } else {
                                        File dest = new File(index.getParentFile(), ledgerIdInHex + IDX);
                                        if (!index.renameTo(dest)) {
                                            throw new IOException("Renaming rloc file " + index
                                                    + " to index file has failed");
                                        }
                                    }
                                }
                                activeLedgers.put(ledgerId, true);
                            }
                        }
                    }
                }
            }
        }
    }

    /**
     * This method is called whenever a ledger is deleted by the BookKeeper Client
     * and we want to remove all relevant data for it stored in the LedgerCache.
     */
    void removeLedger(Long ledgerId) throws IOException {
        // Delete the ledger's index file and close the FileInfo
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            // Don't force flush. There's no need since we're deleting the ledger
            // anyway, and recreating the file at this point, although safe, will
            // force the garbage collector to do more work later.
            fi.close(false);
            fi.delete();
        } finally {
            if (fi != null) {
                // should release use count
                fi.release();
                // Remove it from the active ledger manager
                activeLedgers.remove(ledgerId);
                // Now remove it from cache
                writeFileInfoCache.invalidate(ledgerId);
                readFileInfoCache.invalidate(ledgerId);
            }
        }
    }

    private File findIndexFile(long ledgerId) throws IOException {
        String ledgerName = getLedgerName(ledgerId);
        for (File d : ledgerDirsManager.getAllLedgerDirs()) {
            File lf = new File(d, ledgerName);
            if (lf.exists()) {
                return lf;
            }
        }
        return null;
    }

    boolean ledgerExists(long ledgerId) throws IOException {
        return activeLedgers.containsKey(ledgerId);
    }

    void close() throws IOException {
        // Don't force create the file. We may have many dirty ledgers and file create/flush
        // can be quite expensive as a result. We can use this optimization in this case
        // because metadata will be recovered from the journal when we restart anyway.
        fileInfoBackingCache.closeAllWithoutFlushing();
        writeFileInfoCache.invalidateAll();
        readFileInfoCache.invalidateAll();
    }

    Long getLastAddConfirmed(long ledgerId) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.getLastAddConfirmed();
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    boolean waitForLastAddConfirmedUpdate(long ledgerId,
                                          long previousLAC,
                                          Watcher<LastAddConfirmedUpdateNotification> watcher) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.waitForLastAddConfirmedUpdate(previousLAC, watcher);
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    void cancelWaitForLastAddConfirmedUpdate(long ledgerId,
                                          Watcher<LastAddConfirmedUpdateNotification> watcher) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            fi.cancelWaitForLastAddConfirmedUpdate(watcher);
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    long updateLastAddConfirmed(long ledgerId, long lac) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.setLastAddConfirmed(lac);
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    byte[] readMasterKey(long ledgerId) throws IOException, BookieException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.getMasterKey();
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    void setMasterKey(long ledgerId, byte[] masterKey) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, masterKey);
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    boolean setFenced(long ledgerId) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.setFenced();
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    boolean isFenced(long ledgerId) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.isFenced();
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    void setExplicitLac(long ledgerId, ByteBuf lac) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            fi.setExplicitLac(lac);
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    public ByteBuf getExplicitLac(long ledgerId) {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return fi.getExplicitLac();
        } catch (IOException e) {
            LOG.error("Exception during getLastAddConfirmed", e);
            return null;
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    int getOpenFileLimit() {
        return openFileLimit;
    }

    private void relocateIndexFileAndFlushHeader(long ledger, FileInfo fi) throws IOException {
        File currentDir = getLedgerDirForLedger(fi);
        if (ledgerDirsManager.isDirFull(currentDir)) {
            try {
                moveLedgerIndexFile(ledger, fi);
            } catch (NoWritableLedgerDirException nwe) {
                /*
                 * if there is no other indexDir, which could accommodate new
                 * indexFile but the current indexDir has enough space
                 * (minUsableSizeForIndexFileCreation) for this flushHeader
                 * operation, then it is ok to proceed without moving
                 * LedgerIndexFile.
                 */
                if (!ledgerDirsManager.isDirWritableForNewIndexFile(currentDir)) {
                    throw nwe;
                }
            }
        }
        fi.flushHeader();
    }

    /**
     * Get the ledger directory that the ledger index belongs to.
     *
     * @param fi File info of a ledger
     * @return ledger directory that the ledger belongs to.
     */
    private File getLedgerDirForLedger(FileInfo fi) {
        return fi.getLf().getParentFile().getParentFile().getParentFile();
    }

    private void moveLedgerIndexFile(Long l, FileInfo fi) throws NoWritableLedgerDirException, IOException {
        File newLedgerIndexFile = getNewLedgerIndexFile(l, getLedgerDirForLedger(fi));
        try {
            fi.moveToNewLocation(newLedgerIndexFile, fi.getSizeSinceLastWrite());
        } catch (FileInfo.FileInfoDeletedException fileInfoDeleted) {
            // File concurrently deleted
            throw new Bookie.NoLedgerException(l);
        }
    }

    void flushLedgerHeader(long ledger) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledger, null);
            relocateIndexFileAndFlushHeader(ledger, fi);
        } catch (Bookie.NoLedgerException nle) {
            // ledger has been deleted
            LOG.info("No ledger {} found when flushing header.", ledger);
            return;
        } finally {
            if (null != fi) {
                fi.release();
            }
        }
    }

    void flushLedgerEntries(long l, List<LedgerEntryPage> entries) throws IOException {
        CachedFileInfo fi = null;
        try {
            Collections.sort(entries, new Comparator<LedgerEntryPage>() {
                @Override
                public int compare(LedgerEntryPage o1, LedgerEntryPage o2) {
                    return (int) (o1.getFirstEntry() - o2.getFirstEntry());
                }
            });
            int[] versions = new int[entries.size()];
            try {
                fi = getFileInfo(l, null);
            } catch (Bookie.NoLedgerException nle) {
                // ledger has been deleted
                LOG.info("No ledger {} found when flushing entries.", l);
                return;
            }

            // flush the header if necessary
            relocateIndexFileAndFlushHeader(l, fi);
            int start = 0;
            long lastOffset = -1;
            for (int i = 0; i < entries.size(); i++) {
                versions[i] = entries.get(i).getVersion();
                if (lastOffset != -1 && (entries.get(i).getFirstEntry() - lastOffset) != entriesPerPage) {
                    // send up a sequential list
                    int count = i - start;
                    if (count == 0) {
                        LOG.warn("Count cannot possibly be zero!");
                    }
                    writeBuffers(l, entries, fi, start, count);
                    start = i;
                }
                lastOffset = entries.get(i).getFirstEntry();
            }
            if (entries.size() - start == 0 && entries.size() != 0) {
                LOG.warn("Nothing to write, but there were entries!");
            }
            writeBuffers(l, entries, fi, start, entries.size() - start);
            for (int i = 0; i < entries.size(); i++) {
                LedgerEntryPage lep = entries.get(i);
                lep.setClean(versions[i]);
            }
            if (LOG.isDebugEnabled()) {
                LOG.debug("Flushed ledger {} with {} pages.", l, entries.size());
            }
        } finally {
            if (fi != null) {
                fi.release();
            }
        }
    }

    private void writeBuffers(Long ledger,
                              List<LedgerEntryPage> entries, FileInfo fi,
                              int start, int count) throws IOException, Bookie.NoLedgerException {
        if (LOG.isTraceEnabled()) {
            LOG.trace("Writing {} buffers of {}", count, Long.toHexString(ledger));
        }
        if (count == 0) {
            return;
        }
        ByteBuffer[] buffs = new ByteBuffer[count];
        for (int j = 0; j < count; j++) {
            buffs[j] = entries.get(start + j).getPageToWrite();
            if (entries.get(start + j).getLedger() != ledger) {
                throw new IOException("Writing to " + ledger + " but page belongs to "
                                + entries.get(start + j).getLedger());
            }
        }
        long totalWritten = 0;
        while (buffs[buffs.length - 1].remaining() > 0) {
            long rc = 0;
            try {
                rc = fi.write(buffs, entries.get(start + 0).getFirstEntryPosition());
            } catch (FileInfo.FileInfoDeletedException e) {
                throw new Bookie.NoLedgerException(ledger);
            }
            if (rc <= 0) {
                throw new IOException("Short write to ledger " + ledger + " rc = " + rc);
            }
            totalWritten += rc;
        }
        if (totalWritten != (long) count * (long) pageSize) {
            throw new IOException("Short write to ledger " + ledger + " wrote " + totalWritten
                            + " expected " + count * pageSize);
        }
    }

    /**
     * Update the ledger entry page.
     *
     * @param lep
     *          ledger entry page
     * @return true if it is a new page, otherwise false.
     * @throws IOException
     */
    boolean updatePage(LedgerEntryPage lep) throws IOException {
        if (!lep.isClean()) {
            throw new IOException("Trying to update a dirty page");
        }
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(lep.getLedger(), null);
            long pos = lep.getFirstEntryPosition();
            if (pos >= fi.size()) {
                lep.zeroPage();
                return true;
            } else {
                lep.readPage(fi);
                return false;
            }
        } finally {
            if (fi != null) {
                fi.release();
            }
        }
    }

    long getPersistEntryBeyondInMem(long ledgerId, long lastEntryInMem) throws IOException {
        CachedFileInfo fi = null;
        long lastEntry = lastEntryInMem;
        try {
            fi = getFileInfo(ledgerId, null);
            long size = fi.size();
            // make sure the file size is aligned with index entry size
            // otherwise we may read incorret data
            if (0 != size % LedgerEntryPage.getIndexEntrySize()) {
                LOG.warn("Index file of ledger {} is not aligned with index entry size.", ledgerId);
                size = size - size % LedgerEntryPage.getIndexEntrySize();
            }
            // we may not have the last entry in the cache
            if (size > lastEntry * LedgerEntryPage.getIndexEntrySize()) {
                ByteBuffer bb = ByteBuffer.allocate(pageSize);
                long position = size - pageSize;
                if (position < 0) {
                    position = 0;
                }
                // we read the last page from file size minus page size, so it should not encounter short read
                // exception. if it does, it is an unexpected situation, then throw the exception and fail it
                // immediately.
                try {
                    fi.read(bb, position, false);
                } catch (ShortReadException sre) {
                    // throw a more meaningful exception with ledger id
                    throw new ShortReadException("Short read on ledger " + ledgerId + " : ", sre);
                }
                bb.flip();
                long startingEntryId = position / LedgerEntryPage.getIndexEntrySize();
                for (int i = entriesPerPage - 1; i >= 0; i--) {
                    if (bb.getLong(i * LedgerEntryPage.getIndexEntrySize()) != 0) {
                        if (lastEntry < startingEntryId + i) {
                            lastEntry = startingEntryId + i;
                        }
                        break;
                    }
                }
            }
        } finally {
            if (fi != null) {
                fi.release();
            }
        }
        return lastEntry;
    }

    /**
     * Read ledger meta.
     * @param ledgerId Ledger Id
     */
    public LedgerCache.LedgerIndexMetadata readLedgerIndexMetadata(long ledgerId) throws IOException {
        CachedFileInfo fi = null;
        try {
            fi = getFileInfo(ledgerId, null);
            return new LedgerCache.LedgerIndexMetadata(
                    fi.getMasterKey(),
                    fi.size(),
                    fi.isFenced());
        } finally {
            if (fi != null) {
                fi.release();
            }
        }
    }
}

redpajama_set_name: RedPajamaGithub


On the morning of the 22, I left for school unaware that by mid-afternoon my life would be drastically different. That day there was a teachers union meeting, we were released early and I headed home, arriving just 10 minutes before the quake. I was working in my room when the earthquake began and I thought little of it at first, to me it was just another small aftershock, as it became progressively more violent I started to get thrown around. I ran to the kitchen not knowing what to do as I saw things being thrown violently onto the floor. Above the roar of the quake I could hear alarms going off and people screaming downstairs at Caffe Roma. Once it had stopped we went down the fire escape at the back of our building and onto the green across the road. The streets quickly filled with people as they tried to escape from buildings, I saw people abseiling down the Brannigans building and watched the Provincial Chambers collapse, across the road I saw our building. The parapets had crushed the outdoor seating, fortunately no one was seated there. My dad fetched the car and we went to a friends house, 6 days later we were in Queenstown where we've been ever since. In the days that have passed I have returned to Christchurch multiple times, however I haven't been allowed to step foot in our building since then.


New York in the 1920s was a bustling and fast-changing place. Its emerging skyscrapers and railways epitomised the dynamism of the modern metropolis, inspiring British artist Christopher Nevinson to paint his Futurist-style painting Soul of the Soulless City in 1920. On entering the Tate Worlds map, you will board a train taking you past some of those landmarks that Nevinson would have seen, before you roller-coast into the future as the skyscrapers go up and up. The sights and sounds of the roaring twenties will accompany your journey as you build a skyscraper, join construction workers for a dangerous sky-high lunch, and race to catch a movie.


We are looking for an individual for the role of Senior Middleware Administrator supporting a Client Services client. The position will be based at the client site in Minneapolis, MN. This individual must possess and apply advanced knowledge of middleware administration and architectures. Knowledge includes leadership experience implementing and administering middleware applications in mixed Intel and UNIX environments. Interpersonal skills are a key component of the position as it interacts with company and client team members. This person may direct activities of other team members.
o Knowledge of Unix Administration and scripting.


[April 21, 2007] SPRINGFIELD -- It took 64 years, but some items purchased during an auction at the Dana-Thomas House are returning home, thanks to the generosity of a Springfield family who purchased the material during the 1943 sale. The Dana-Thomas House was designed by Frank Lloyd Wright.
On Wednesday, the Morton D. Barker Jr. family donated the original artifacts to the Illinois Historic Preservation Agency, which administers the Dana-Thomas House. Among those present for the ceremony were family members R-Lou Barker, Robert John and Anne Barker, and John Andrew Barker.
"I am pleased to return Susan's personal items to the Dana-Thomas House. They are so particular to what would have been precious to her," said R-Lou Barker.
A three-piece, matching christening outfit with the original price tags still attached, purchased in Paris by Susan Lawrence Dana for the child she never had.
A large circa 1920 Turkish Oushak rug owned by Mrs. Dana.
An Abraham Lincoln print owned by her father, Rheuna Lawrence. The print hung in the original, Victorian-style Lawrence home.
Five Japanese block prints, three of them made in the 1700s and two around 1900, that were said to be a gift from the emperor of Japan to the home's architect, Frank Lloyd Wright, who then gave them to Mrs. Dana. These prints were displayed on print tables specifically designed by Wright for that purpose in the home's Gallery Room.
The July 1943 auction of Susan Lawrence Dana's properties and personal effects was perhaps the largest in the history of Springfield and required five days. Several stores in the downtown area displayed some of the thousands of items that were being put up for sale.
The estate, which included the Dana House, the Lawrence Building on South Sixth Street and the Roland Building on the southeast corner of Sixth and Adams, was sold to the firm of Barker, Goldman and Lubin Co., of which Morton D. Barker Sr. was the senior partner. Earl Bice, Mrs. Dana's lawyer, arranged the sale, with Springfield's Marine Bank acting as trust officer. The Sixth Street properties were considered prime real estate at the time, but the Dana House, built in 1904, was not.
The auction of personal effects, presided over by auctioneer Luke Gaulle Sr., occurred in a large tent at the corner of Fourth and Cook streets, where the YMCA is now located. Barker and his partners determined that what was not sold at auction would remain with the house, which kept the home's priceless furniture and art glass intact.
Mrs. Dana (1862-1946) was by then a full-time patient at St. John's Hospital, where she eventually died. She had outlived all members of her immediate family, but witnesses at the time reported that she was alert enough during the auction to ask, "Did you know they're selling my things today?"
A few weeks later, Charles C Thomas Publishing announced they were in the process of purchasing the home from Barker, Goldman and Lubin Co. The sale of the 12,600-square-foot home was finalized in April 1944. Charles C Thomas Publishing maintained the house, its extensive collection of Wright-designed oak furniture and its world-class set of 450 art glass windows, doors and light panels for the next 37 years, until the house and its contents were purchased by the state of Illinois in 1981. It has since served as a house museum, attracting more than 1 million visitors.
"This major gift from the Barker family brings us yet closer to the goal of owning and displaying all of the major artifacts related to the house," said Donald Hallmark, site manager.
The Dana-Thomas House State Historic Site, administered by the Illinois Historic Preservation Agency, is open for public tours Wednesday through Sunday from 9 a.m. to 4 p.m., with the last tour of the day beginning at 10 minutes to 4. Tours require about one hour and generally are offered at about 20-minute intervals. The house is closed Mondays and Tuesdays and some state holidays. The suggested donation is $3 for adults and $1 for children ages 3-17.


This point was found by one of Floridas finest collectors, the late Hoot Gibson. This is rare ancient treatment in the edge rejuvenation, that has created a very interesting beveled cutting edge. Really nice "mickey mouse" shaped ears, classic to the Suwannee. Nice paleo with good pedigree and lots of character. All artifacts legally obtained. Call Kevin@229-416-6021 or email kevin@artifactsguide.com for pricing info.


One of my favorite moments during Genius Hour is when a team hits a wall and turns it into a window. This group had a fantastic idea but couldn't get their materials together so they were given three options. While deciding on their options, one of the members started doing searches on Peanut posters. This sparked an idea.... what about using Peanutizeme and Seesaw to create kindness posters. The team took up the challenge to create them in Spanish too.
On Day 7, teams used their Google Slides to present in 2 minutes or less about the what, why, and how of their project before starting the project. The Shark Tank, their classmates, responded by writing one compliment and one question which were given to groups to review with their video footage.
Day 8 gave the teams time to reflect on feedback and plan for the C-Creation part starting next week. We used Seesaw activities to have each team document their reflections and planning.


You'll only need to look around Cody's to see why "Original" is our middle name. You'll enter an era gone by, when things were simpler, more casual and definitely more relaxed. Tubs of roasted peanuts are available throughout for snackin', crackin' or throwin' on the floor. You'll enjoy Cody's fresh cut, flame broiled, USDA prime and choice Steaks, Prime Rib, Rotisserie Chicken, Pork Back Ribs, Fresh, Fresh Fish, Burgers, Fajitas and more. At Cody's, we're proud of our expert cooking skills and we've put the grill front and center for your viewing.