text:
Subscribe Log In Manage
Lifestyle & Human Interest
Midterms
Bidenflation
Saul Loeb - AFP / Getty Images
Breaking: Paul Pelosi Bodycam Footage Finally Released - Watch It Here
By Jack Davis January 27, 2023
Stefani Reynolds - AFP / Getty Images
Watch: Farmers May Have Figured Out Exactly What's Causing the Egg Shortage - Was This Intentional?
By Elizabeth Stauffer January 27, 2023
Kevin Dietsch / Getty Images
Adam Schiff's Situation Gets Even Worse as Matt Gaetz Introduces 'PENCIL' Act
The Independent / YouTube screen shot
WH Hopeful Blasted for Slow Response to Pregnant Wife Fainting as He Announced Presidential Bid
By Peter Partoll January 27, 2023
Andrew Caballero-Reynolds - AFP / Getty Images; Chip Somodevilla / Getty Images
Watch: Biden Has Another 'Where's Jackie?' Moment as He Calls Democrat by Wrong Name 4 Times
By Richard Bledsoe January 27, 2023
Nicholas Kamm - AFP / Getty Images
McCarthy Reveals What Trump Told Him When He Had Gold-Star Family in Office: 'He Didn't Want Anyone to Know'
By Warner Todd Huston January 27, 2023
Eduardo Munoz - Pool / Getty Images
Op-Ed: It's Time to Close the American Checkbook - Defund the UN and WHO
By Renee Parsons January 27, 2023
Opinion: America's Churches Must Take Action To Preserve Our Liberty
By Bill Cook September 6, 2018 at 3:31pm
For the past four weeks, I have been working on behalf of Ryan McAdams, a pastor and the leader of the Virginia Prayer Caucus, who has been called of God to run for Congress in Virginia's Fourth Congressional District. My focus has been to encourage fellow pastors by showing the brief video, "What Difference Does [One Vote] Make?" to their congregations in one or more Sunday services remaining in September, display a PowerPoint slide containing a "text-to-register" number, and distribute a brochure on the moral duty of Christians' to vote.
The video is compelling, scrupulously non-partisan, and at 1 minute and 40 seconds, hardly an imposition on a Sunday agenda. We are simply asking them to show the video, distribute the brochures, and facilitate Christians registering and turning out to vote on Nov. 6. The only part of the process that might be considered "partisan" is the legally required acknowledgment in tiny print at the bottom of the brochure, "Paid for by Ryan McAdams for Congress."
The responses from some of the pastors I've approached might suggest that I had asked them to renounce the faith, teach false doctrine, or God forbid, spearhead a political campaign rally. In an age when popular church growth theory treats "political" speech as a pariah that threatens unity, fruitful ministry, and the evangelical mission of the Church, it is ironic that political sermons were standard fare in America for more than 300 years.
Natural rights, the social compact, and election sermons stressing the moral duty of Christians to vote, in a manner that promotes liberty and sustains the civil society were mainstream sermon topics. Moreover, notwithstanding the dampening effect of Section 501(c)(3) of the Internal Revenue Code (a.k.a. The 1954 Johnson Amendment), coupled with the specious notion that "separation" was meant as a prohibition on political preaching and Church involvement in civil government, political sermons are occasionally still preached, albeit rarely, in some churches today.
I have in my library a list compiled by the American Antiquarian Society, of more than 500 New England election sermons preached between 1634 and 1885. Titles include: "An Election Sermon" in 1715 by Joseph Moss, "Good Rulers A Choice Blessing" in 1725 by Azariah Mather, "The Origin and Ends of Civil Government" in 1795 by Andrew Lee, "The Political Advantages of Godliness" in 1797 by Isaac Lewis and "On the Evils of Weak Government" in 1800 by John Smalley.
GOP Senator Stumps Biden's Judicial Nominee with Basic Questions About Constitution: 'How Do You Not Know This?'
It is difficult to overstate the importance of the pulpit and political preaching to our nation's founding and the preservation of liberty since. It was the "Pulpit of the Revolution" that supplied the ideological basis and motivation for the American War for Independence. In the preface to his book by the same title, historian John Wingate Thornton affirms the historical record about the central role of the pulpit in America's founding:
"The true alliance between Politics and Religion is the lesson inculcated in this volume of Sermons, and apparent in its title, 'The Pulpit of the Revolution.' It is the voice of the Fathers of the Republic, enforced by their example. They invoked God in their civil assemblies, called upon their chosen teachers of religion for counsel from the Bible, and recognized its precepts as the law of their public conduct. The Fathers did not divorce politics and religion, but they denounced the separation as ungodly. They prepared for the struggle, and went into battle, not as soldiers of fortune, but, like Cromwell and the soldiers of the Commonwealth, with the Word of God in their hearts, and trusting in him. This was the secret of that moral energy which sustained the Republic in its material weakness against superior numbers, and discipline, and all the power of England. To these Sermons — the responses from the Pulpit — the State affixed its imprimatur, and thus they were handed down to future generations with a twofold claim to respect."
It is fair to say that America would never have become a great nation had the political disposition of her pulpits matched that of her pulpits today. Nor will the liberty that's taken for granted by the Church today survive if America's pulpits continue to abandon the voting booth and the government it produces to the "sons of disobedience."
The Call to Repent and Rebuild
Do you think America's churches should encourage its congregation to vote?
Completing this poll entitles you to The Western Journal news updates free of charge. You may opt out at anytime. You also agree to our Privacy Policy and Terms of Use.
Yes: 98% (104 Votes)
Last Sunday around noon, God began to speak to my heart about the condition of the Church in America and the responses I was receiving from pastors, and it shook me. Those who know me can attest that I rarely claim to have heard from the Lord unless others report hearing the same thing, and leaders I am in fellowship with have affirmed what I feel I need to say. No one benefits from "Thus saith the Lord" if the Lord has not spoken, and God will not countenance presumption to accommodate an inflated ego.
Later Sunday afternoon at about 3:00 p.m. I called a friend in Texas who is a pastor and has relationships with pastors all over the country, to ask for his help in reaching out to pastors in Virginia. During our conversation, he mentioned that he would attend an invitation-only meeting at the White House with the president, along with several other faith leaders who were also being invited to attend. At that point, I asked if he would convey to meeting attendees, the urgent message God had given me to the Church earlier in the day and he agreed, so I sent the message God had given me to his email address. The following is the message I sent:
"Who will make America great again if not I? Can America achieve greatness on her own? Can greatness be achieved without righteousness? Is anything too hard for God? Is there not a faith that subdues kingdoms, works righteousness, and puts foreign armies to flight? (Hebrews 11:30-34) Am I not doing a work in your day that some will not believe, though it plays out before their very eyes? Why do some cry "blasphemy" when they hear that Donald Trump is my olive branch that I have extended to my Church, to prove my people and learn what is in their hearts? Why do so many of you feel compelled to apologize for my sovereign work on earth on your behalf? Is the President not my answer to your persistent cries for deliverance over the previous decade? Did I not raise up Cyrus and anoint him to execute my sovereign plan in the earth on behalf of my people? Is the current administration not a window of opportunity that I have opened to you to rebuild the foundations of Liberty and the Wall of Righteousness that was a bulwark against calamity, but has fallen and crumbled because of your apathy and neglect? Though you are not worthy, I have given you this season to set things right in your heart and your nation, that you might be the head and not the tail. Do not reject my olive branch, or I will take him from you and leave you neither root nor branch. I have given you this season, not to pass judgment on what I am doing, but to repent and put away evil from your midst so that you might be prepared for the great outpouring of my Spirit that will once more cover the earth as the waters cover the sea. If you are able to hear it, my final warning over Jerusalem was a warning to you and to America—Do not miss the hour of your visitation."
On Thursday afternoon I stopped by Regent University to speak with a member of the faculty in the School of Divinity. When I walked into his office, he was watching Lance Wallnau's most recent podcast, which was a sobering report on what the [resident had told attendees at Monday's meeting. I was stunned because I had no foreknowledge of the agenda of the meeting and the president's message confirmed what God had spoken to me the previous Sunday, albeit in greater detail, At the meeting, President Trump warned more than 100 Christian leaders that if we lose the House in the midterm election, anti-Christian persecution will ensue.
It is difficult to put into words the urgency I feel about Christians turning out to vote en mass on Nov. 6, for candidates whose lives and policy positions comport with biblical morality. If Democrats take back the House in November, an outcome I am convinced will signal the end of America, everything we believe or hope for will be put in immediate jeopardy.
Op-Ed: 10 Points to True Election Integrity
The prevailing reticence of pastors to say or do anything even remotely "political," amounts to dereliction and considering the current ongoing national crisis, is the equivalent of reckless endangerment of the Flock of God. The Church cannot surrender the voting booth to the "sons of disobedience" and expect prayer alone to keep liberty alive. Apart from the Church, there is no body of people capable of "securing the Blessings of Liberty."
Liberty lost is lost forever, and the Church will have only itself to blame. We have a Divine commission to safeguard Liberty, but if through apathy or ignorance we vacate our charge as sole Guardian thereof, the Chief Shepherd will require it of us.
Rev. William Cook is Founder and CEO of America's Black Robe Regiment, an association of clergy actively engaged in restoring Liberty in America, and the Legacy of the American pulpit as Wellspring of the political ideology that ignited a Revolution and won Liberty.
The views expressed in this opinion article are those of their author and are not necessarily either shared or endorsed by the owners of this website. If you are interested in contributing an Op-Ed to The Western Journal, you can learn about our submission guidelines and process here.
Truth and Accuracy
We are committed to truth and accuracy in all of our journalism. Read our editorial standards.
Christianity, voting
Bill Cook
Summary Recent Posts Contact
The Western Journal publishes select Op-Eds submitted by our readers. If you would like to submit an Op-Ed, fill out a submission form here: https://www.westernjournal.com/writeforus/.
To Solve the Opioid Crisis, Get Tough on the Border and with Foreign Adversaries
It's Official - the Democrats Are the Party of Open Borders
Epoch Times: Our Response to NBC News' Inappropriate Questions
Insurance Companies Impede Health Care Reforms
Kelli Ward: Trump's Victories Are Stacking Up in Arizona
The U.S. cannot continue to bankroll every international organization that comes knocking.
@nomadic_hermit / Twitter screen shot
Student Nurse Charged with Attempting to Bomb Maternity Ward - Islamic Terrorism Suspected
A young man saw his first day in an English court on Friday after he was charged with attempting to bomb a hospital in northern England.
By John McCann January 27, 2023
Speaker Kevin McCarthy has a heartwarming story about what Donald Trump told a Gold Star family that is a must-hear.
Win McNamee / Getty Images; San Francisco Chronicle / YouTube screen shot
Second Paul Pelosi Video Released - Shows Suspect Breaking Into House
Another video has emerged of the incident involving Paul Pelosi and a hammer-wielding attacker.
By Bryan Chai January 27, 2023
Ross D. Franklin / AP
Op-Ed: Kari Lake Deserves a New Election - Just Look How the Judge Was Fooled
Judge Peter Thompson ruled that it was too late for Kari Lake to seek a change in the election rules -- but that's not what she wanted.
By Joe Fried January 27, 2023
Rodin Eckenroth / Getty Images
Jay Leno Seen for First Time Since Sustaining Serious Injuries in Motorcycle Accident
Jay Leno has been photographed in public after suffering his second serious accident in the past year alone.
By Richard Moorhead January 27, 2023
Tim Mosenfelder / Getty Images; David Cannon / Getty Images
Rap Star Heaps Praise on DeSantis After Leaving California for Florida and Loving What She Found: 'He's Focused on the Basic S***'
Hard to imagine Azealia Banks as an enthusiastic Republican. She's probably not, but she sure has good things to say about DeSantis.
By Mike Landry January 27, 2023
Collide Media Group / YouTube Screen Shot
Sorbo's "Rise of the Antichrist" Movie Modernizes "Left Behind" Story, Showing Govt's New Power to Control
Kevin Sorbo directed and stars in the latest offering from the "Left Behind" movie series, "Rise of the Antichrist."
By Randy DeSoto January 27, 2023
Listen: Strange Paul Pelosi 911 Call Released, Alleged Attacker Says He's a 'Friend'
Paul Pelosi's 911 call about a man who had entered his San Francisco residence has been released to the public.
Susan Walsh / AP
Elon Musk Meets with Top Biden Administration Officials in Washington, D.C.
White House aides sat down with the Tesla chief in Washington to discuss their shared goals around electrification.
By The Associated Press January 27, 2023
Facebook Twitter Parler
Get the latest news delivered right to your email.
News, Politics, Culture, and more in realtime.
delivered right to your email
Subscribe to get WJ's daily email newsletter.
Download the WJ App
Facebook Instagram Linkedin Parler Twitter Youtube
Copyright © 2023 The Western Journal. All Rights Reserved.
Explore The Western Journal


text:
Home Forums > Off Topic > Not Sure Where it Goes >
Flying The American Flag On 4th Of July
Discussion in 'Not Sure Where it Goes' started by Cody Fousnaugh, Jul 1, 2019.
Cody Fousnaugh Veteran Member
Was watching tv show Sunday Morning and they showed the percentage of who "do" and who "don't". 63% said they fly the American Flag on the 4th, while 37% said they don't.
We have four American Flags that stick in the ground and we always display all four on Memorial Day, 4th of July, Veterans Day and Flag Day.
The apartment complex across the street flies the American Flag every day, but our apartment complex office does not have one. We've actually drove around the complex on one of the above holidays and only seen a couple of flags flying.
I really have to wonder why more people don't fly the American Flag on these holidays? Any ideas? Do you have one you put outside?
Cody Fousnaugh, Jul 1, 2019
Beth Gallagher Very Well-Known Member
You waste too much time worrying about why other people do or do not do the things you think they should.
Yes, we fly the flag if weather permits. In the past we have simply forgotten, or weren't home, or for whatever reason we just didn't get around to it.
Beth Gallagher, Jul 1, 2019
Mary Robi and Don Alaska like this.
Beth Gallagher said: ↑
You don't have to get so...…...well, you know what I mean.
Anyway, "wasting time" is just part of my personality! LOL
Don't you ever, ever wonder why people do or don't do certain things???? Actually, this forum is full of people that wonder about different things.
Believe it or not, there are people in America that don't even like America...……..yes, that is true. Not us though.
BTW, just to let everyone know, half of me is curious why people wouldn't and the other half of me doesn't really care. It was the show Sunday Morning that done the poll, that got my curiosity going...….not me.
However, I still remember how, after 9/11, it seemed like everyone in America was flying a small American Flag clipped on their vehicle passenger windows. The American Flag could be shown flying everywhere! When I seen all of this, I talked to a National Guard Army Medic, that was a family member at the time, and he told me "just wait, all of the patriotism will end." He was right!
Bobby Cole and Yvonne Smith like this.
Yvonne Smith Greeter
Staff Member Greeter Patron Registered
I thought that was great when everyone had the little flags on our vehicles, too, and even though we all knew that it was not permanent, it was still an awesome show of how many people here DO love this country of ours.
Just because someone does or doesn't put up a flag on Independence Day , does not signify whether they feel patriotic or not, just like putting a little fish bumper sticker on a car does not make someone a Christian.
We have an American flag, a police support flag, and a military support flag that Bobby flies from our front porch every day, and only takes down when we have serious storms coming in. But , even before we had the flags as a demonstration of our love for this country, we still felt and believed the same way.
So, yes, I think that flying our flag on the Fourth of July is great, but not necessarily the indication of whether a person is patriotic or not.
Yvonne Smith, Jul 1, 2019
Bess Barber, Cody Fousnaugh, Don Alaska and 1 other person like this.
Bobby Cole Veteran Member
Our American Flag is flown 24/7, 365. Yes, there is some belligerent behavior on my part when it comes to our country's banner.
It will fly as long as I live. Nuff said.
Edit: Thank you Babydoll for finding that picture. Love ya!
Bobby Cole, Jul 1, 2019
Bess Barber, Don Alaska and Yvonne Smith like this.
Yvonne Smith said: ↑
Absolutely LOVE the photo...…..LOVE IT!!
Thank You so much for putting on this photo.
Bess Barber and Yvonne Smith like this.
Must admit, during the 22 years I was divorced/single, I didn't have or fly an American Flag anywhere where I lived. Heck, I really never celebrated any of the holidays during the year. All of the National holidays were just a day off for me from work. But, now that we do fly our four small flags, I have wondered why many people don't have and/or display the American Flag on those designated days.
I've heard that phrase, "unAmerican". Actually, what does that mean?
Bess Barber Well-Known Member
Cody Fousnaugh said: ↑
I'm not sure it has anything to do with a lack of patriotism. Probably most of them don't have a flag to display. Now that you've mentioned it, I'm going to feel guilty if I don't. I better get on Amazon and order one.
Bess Barber, Jul 1, 2019
Peter Renfro Well-Known Member
I fly my flag 24/7/365. But don't read anything into it. I would defend our soil with my life,but I also recognize that we are part of a deeply flawed hypocritical nation.
Our mission statement,(the Constitution) is a document that is a poor compromise,cobbled together to project a united front to Britain. I submit that it hasn't been valid since Mr. Lincoln was in office.
None of that prevents me from displaying to outsiders that this country is mine and I intend to keep it.
As to that other abomination depicted in Yvonnes post I find that to be nothing more than a gang symbol. Its a sign no different than the red and blue displayed by the LA gangs. A symbol that says, "I set myself apart from you " "My allegiance is pledged to others represented by this symbol" LEO's do not belong to a club,it is not a fraternal organization, it is a job. Law enforcement officers are one hundred percent supported and paid through tax dollars, and this symbol only contributes to the divide that exists between citizens and those pledged to police,since they have no legal responsibility to serve or protect.
Peter Renfro, Jul 12, 2019 at 10:36 AM
Peter Renfro said: ↑
Yes, I do support our local law enforcement and openly show it with a flag so developed for that purpose. I have had it up for approximately 2 1/2 years now and may I say that in a very rebellious neighborhood such as ours, not one person has tried to take it down.
Now, if I may. The post you provided is indeed a direct attack not only on the banner but on the person who flies it and this gentleman finds your attitude toward the freedoms that I fought for as much as an abomination as that object which you so despise. If you don't like it, don't fly one.
I fought that I might have the freedom to fly any flippin flag that I wish so long as it is not illegal or is directly meant to offend someone.
Your opinion, although not welcome is your right because I indeed did also fight for your right to express it but may I also write that in the idiocy of the moment you expressed that opinion you have also shown the true fabric from which you are made which is one of ingratitude and an open lack of humility.
Now, do go and take your meds lest you have a heart attack when next you see something that offends you.
Bobby Cole, Jul 12, 2019 at 11:15 AM
Jerry Adams likes this.
Babs Hunt Veteran Member
Oh yeah....we fly the American Flag and always will.
Babs Hunt, Jul 12, 2019 at 12:47 PM
Cody Fousnaugh, Yvonne Smith and Bobby Cole like this.

redpajama_set_name: RedPajamaCommonCrawl


text:
Q: HQL query to convert blob to string I have a blob field but i need to select the column as string in the select query.
ex
FROM Employee where employee_file_contents LIKE '%PF%';
where employee_file_contents is a blob column
Thanks.

redpajama_set_name: RedPajamaStackExchange


text:
Mon 15th Aug 2022 - Update: Sector warns of mass winter closures as energy bills soar 300%
Sector warns of mass winter closures as energy bills soar 300%: Pub, restaurant and hotel chiefs have warned the industry could face mass closure this winter without "urgent" support from the government. In a joint letter to Boris Johnson, chancellor Nadhim Zahawi and business secretary Kwasi Kwarteng, seen by The Telegraph, the UK's leading hospitality groups said the situation was "no less of a threat" than the drought hitting Britain. Trade bodies called for "urgent action" to help with bills, saying the government should not "allow the stasis of party politics to stifle the urgent delivery of action on energy". The sector is calling for a cut to VAT or an energy price cap, such as that in place for customers. It comes as pubs and restaurants prepare to sign new energy deals as old tariffs expire this autumn. Businesses are facing average increases of 300% under new deals being offered. The letter, signed by groups representing tens of thousands of hospitality venues across the country, warned "not all businesses will be able to survive this onslaught". Ministers have been engaging with hospitality bosses for weeks, although government insiders said the cabinet has agreed not to make any major announcements or fiscal decisions until a new Conservative leader is selected. However, Kwarteng was moved to take action to support energy-intensive industries, such as producers of glass, ceramics and paper. On Friday (12 August), the Department for Business, Energy & Industrial Strategy said it was considering subsidising bills for the industry to help save the 60,000 jobs in the industry. There are no signs of similar support for hospitality. The letter from UKHospitality, the Night Time Industries Association, the British Beer & Pub Association, the British Institute of Innkeeping, and the Music Venue Trust said: "On Friday, the government saw fit to declare a drought, in the face of inarguable evidence that weather conditions had caused a threat to the nation. The energy crisis is no less of a threat and deserves similar attention." A recent survey showing one in four hospitality bosses are considering closing due to the steeper bills. Alan Morgan, chief executive of The Big Table Group, said support had "never been more critical", with the increase in energy prices so steep "that it moves many reasonable businesses to a position of struggling to make profit at all". Morgan said he was expecting a "significant amount of closures across the industry". Clive Watson, executive chairman of City Pub Group, said there "has to be a price cap, otherwise pubs will start to close during the winter". Many businesses have already drawn up plans to curb their energy use over the winter months, with hotels understood to be looking at shutting spas or mothballing certain floors. Theatre chiefs are considering whether they can change how much lighting or air conditioning they use in venues to try to cut their energy bills. Ali Carnegie, the managing director at energy broker Total Energy Solutions, said businesses trying to sign new energy deals were "shocked at how much the prices have gone up".
Number of pub operators set to join updated Premium Database of Multi-site Companies: A number of pub operators are among the 36 new multi-site companies being added to the next edition of the Propel Premium Database of Multi-site Companies, which will be released on Friday, 26 August, at midday. The updated Propel Multi-Site Database, which is produced in association with Virgate, features Pubs Limited, the brainchild of Jerry Brunning, the co-founder of Brunning & Price, which portfolio includes The Swan at Marbury, The Black Bear in Whitchurch, The Hare in Farndon and the recently opened The Henry Potts in Watergate Street, Chester. Also added this month is Midlands micro-pub brand Ale Hub, which is owned by Connor McDiarmid, and opened its first branch in Dickens Heath, Solihull, in September 2020, and has since expanded to Shirley, Worcester, Sutton Coldfield and Droitwich. In addition, New Dawn Pubs, which was founded by Mark Robson, Mark Williams, Julian Clarke and Julie Phipps, who founded Red Mist Leisure in 2004, will be featured. Also included this month is Clement Ogbonnaya, the operator of the Prince of Peckham and the Queen of the South, in Tulse Hill, which will open later this year. Premium subscribers will also receive a 2,500-word report on the new additions to the database. The comprehensive database is updated monthly and provides company names, the people in charge, how many sites each firm operates, its trading name and its registered name at Companies House if different. The database currently features 2,572 companies. Premium subscribers will also receive the next edition of the New Openings Database, which is produced in association with StarStock, on Friday, 2 September, at midday. It focuses on newly announced openings and upcoming launches in the sector and is updated every month. The next edition also includes a 10,000-word report on the new additions to the database. Premium subscribers also receive access to another database – the Propel Turnover & Profits Blue Book, which is produced in association with Mapal Group. The Blue Book, which is also updated monthly provides an insight into UK operator turnover and profitability over five years, profit conversion and directors' earnings. Premium subscribers have also been given exclusive access to a new database. The UK Food and Beverage Franchisor Database is an exhaustive guide to the companies offering a food and beverage franchise in the UK and will be updated every two months. The third edition features 140 companies and almost 60,000 words of content, providing insight on the offer, locations, cost and other key details. Companies can now have an unlimited number of people receive access to Propel Premium for a year for £895 plus VAT – whether they are an operator or a supplier. The single subscription rate is £445 plus VAT for operators and £545 plus VAT for suppliers. Email jo.charity@propelinfo.com to upgrade your subscription. Subscribers also receive access to Propel's library of lockdown videos and Friday Wrap interviews and now also have access to a curated video library of the sector's finest leaders and entrepreneurs, offering their insights on running outstanding businesses in the sector. Premium subscribers also receive their morning newsletter 11 hours early, at 7pm the evening before our 6am send-out; regular video content and regular exclusive columns from Mark Wingett.
City of London has lost 14% of its restaurants since pandemic: The City of London has borne the brunt of restaurant closures in the UK since the onset of the pandemic, with one in seven businesses shutting as the switch to homeworking has hobbled the hospitality sector in the financial district. Between March 2020 and June this year, 14% of the licensed premises in the Square Mile shut, according to data collected by AlixPartners and CGA, reports the FT. About 14% of restaurants also closed in Birmingham, England's second-biggest city. The next worst-affected city was Glasgow where 10% of hospitality businesses closed. Only the London boroughs of Croydon, Ealing and Hounslow faced a higher number of restaurant closures. Before the coronavirus pandemic, the capital was adding restaurants, bucking a trend for closures in the rest of the UK. The number of venues was up 10% in the five years between March 2014 and March 2019. This year's figures reveal the changes wrought by the pandemic on the City and other business districts where restaurants, pubs and cafes typically relied on office workers for custom. In early August, visits to workplaces in the City of London were 33% down on pre-pandemic levels, according to Google mobility data. Some of the high-profile casualties in the Square Mile over the past two years include Kym's, the restaurant from Michelin-starred chef Andrew Wong in the Bloomberg Arcade, Mark Hix's Oyster and Chop House near Smithfield Market, and Jamaican restaurant Tracks & Records near Liverpool Street station, which was backed by athlete Usain Bolt. But Graeme Smith, managing director at AlixPartners, said "given the catastrophic events of the past two years, numbers have held up well". Many companies in the City have adopted a three-day office week between Tuesday and Thursday. The average footfall for Mondays in July was down almost 30% on pre-pandemic levels, according to Springboard. Before the pandemic, the City typically attracted 530,000 commuters every day.
Esquires owner plans London stock market float: Britain's fourth-largest coffee shop chain is drawing up plans to list on the London stock market. Cooks Coffee, which owns the Esquires and Triple Two brands, has 72 branches in the UK. It also has 15 outlets in Ireland as well as franchise agreements in Portugal, the Middle East and south east Asia. The New Zealand-based firm is listed on the stock market in Wellington but now plans to also float on London's Aquis exchange, a competitor to the London Stock Exchange, in October. The company's stock trades at around 0.42 New Zealand dollars, equivalent to 22p, giving it a market cap of around £11.7m. In total, Cooks Coffee had 114 outlets across all its international markets at the end of July 2022. The group's operational teams are based in the UK and Ireland. Keith Jackson, executive chairman of Cooks Coffee Company, said: "Being such a predominantly UK and Ireland focused group, it makes sense for us to dual list the company in London and the Aquis Growth Market is ideally suited to our needs. We see considerable opportunities for growth in the UK, and when investors taste our coffee and experience what we offer, we are sure they will agree." For the year to the end of March, the group posted a profit of £0.14m.
Brewers fear recession will burst craft beer bubble: Another 200 craft breweries opened last year, raising fears the booming sector could go bust if drinkers trade down to cheaper alternatives as the soaring cost of living hits them in the pocket. There are currently more than 2,400 breweries operating in Britain according to figures from HM Revenue & Customs. However, as rising inflation and sky-high energy costs force people to reduce their outgoings, many in the industry are questioning whether demand for pricey artisanal beer can be sustained. Wiper and True, a craft brewery in Bristol, said that the cost of living crisis was "very understandably" hitting sales. "Craft beer is a luxury item for most people, and with the concerns we're all facing around winter bills, it's only natural people are thinking twice about buying a £3-plus can," a spokeswoman told the Times. She added, however, that while the company had noticed that sales of beer to drink at home had slowed, Wiper and True's two taprooms had remained "consistently busy". The brewery, founded in 2012, opened its second taproom only last month which has so far been exceeding sales forecasts. But the Society of Independent Brewers estimates between 40 and 60 breweries have closed so far this year, while a further 160 were lost during the pandemic. "People have been talking about the market being oversaturated for many years but now especially it has the feel of a market that can't sustain everyone that's in it," Tom Stainer, chief executive of the Campaign for Real Ale, said. While the total number of start-up breweries has continued to rise over recent years, growth is slowing. The 2021-22 financial year was the third consecutive year of slowing growth, with the number of breweries rising by 9%, having ballooned by almost 18% in 2018-19.


text:
Q: What is the simplest way to link a SVG file created in Illustrator to my html and give it hover effects? I've explored a few options such as using the object or svg tag. However I am confused as to how to link my SVG file into the html and then use CSS to animate it.
Here is an example of my code
<div class="pull-left m-l-20 m-t-10 h3 inline-block">
    <svg id="lnkLeft" class="c-dark"></svg>
</div>

Is it possible to use the SVG tag and link the image file in there and then animate using the class in CSS?

A: The answer is yes, you can style SVGs with CSS, to an extent.
The svg must be used as an inline svg, rather than in an <img> or background-image:
<svg id="lnkLeft" class="c-dark"></svg>

Then you can style it directly through CSS by either targetting .c-dark or svg directly. Keep in mind that if you want to change the colour of the SVG on hover, you're actually looking for the fill attribute, rather than the traditional color:
.c-dark:hover {
    fill: #FFF;
}

Due to SVG files often taking up a lot of lines, this can get quite ugly in your HTML. However, if you have access to PHP, you can actually output the SVG with file_get_contents:
<?php echo file_get_contents("image.svg"); ?>

This will render the SVG on the page directly, so you can target it with CSS.
Keep in mind that if you were to link to it in an <img> tag (or use it as a background-image) you won't be able to style it through CSS!
For further reading, check out CSS' tricks' articles here and here.
Hope this helps!


How it came about that snakes manufactured poison is a mystery. Over the periods their saliva, a mild, digestive juice like our own, was converted into a poison that defies analysis even today. It was not forced upon them by the survival competition; they could have caught and lived on prey without using poison, just as the thousands of non-poisonous snakes still do. Poison to a snake is merely a luxury; it enables it to get its food with very little effort, no more effort than one bite. And why only snakes? Cats, for instance, would be greatly helped; no running fights with large, fierce rats or tussles with grown rabbits — just a bite and no more effort needed. In fact, it would be an assistance to all carnivores though it would be a two-edged weapon when they fought each other. But, of the vertebrates, unpredictable Nature selected only snakes (and one lizard). One wonders saliva into why Nature, with respect from that of others, as other on the blood.
I'm really impressed along with your writing skills as well as with the format for your weblog. Is that this a paid subject matter or did you customize it yourself? Either way keep up the nice high quality writing, it is uncommon to see a nice blog like this one these days..
After I originally commented I clicked the -Notify me when new feedback are added- checkbox and now every time a remark is added I get four emails with the identical comment. Is there any way you possibly can remove me from that service? Thanks!
There are definitely a number of details like that to take into consideration. That could be a nice point to convey up. I supply the ideas above as general inspiration however clearly there are questions just like the one you deliver up where crucial thing will likely be working in honest good faith. I don?t know if best practices have emerged round things like that, but I am positive that your job is clearly identified as a fair game. Each girls and boys feel the impression of only a moment's pleasure, for the remainder of their lives.
I'd must test with you here. Which is not something I usually do! I take pleasure in reading a put up that can make individuals think. Also, thanks for allowing me to remark!
That is the correct blog for anyone who wants to find out about this topic. You understand so much its nearly exhausting to argue with you (not that I truly would need…HaHa). You positively put a new spin on a topic thats been written about for years. Great stuff, just nice!
Aw, this was a very nice post. In thought I wish to put in writing like this additionally – taking time and precise effort to make an excellent article… however what can I say… I procrastinate alot and in no way appear to get something done.
There are certainly a lot of details like that to take into consideration. That could be a great point to deliver up. I supply the ideas above as basic inspiration but clearly there are questions just like the one you convey up where an important factor can be working in honest good faith. I don?t know if best practices have emerged around things like that, however I am sure that your job is clearly recognized as a good game. Both boys and girls really feel the influence of just a moment's pleasure, for the rest of their lives.
This site is mostly a stroll-via for the entire information you needed about this and didn't know who to ask. Glimpse right here, and you'll undoubtedly discover it.
Nice post. I be taught something more difficult on different blogs everyday. It should all the time be stimulating to read content material from different writers and observe just a little one thing from their store. I'd favor to make use of some with the content on my blog whether you don't mind. Natually I'll provide you with a hyperlink on your net blog. Thanks for sharing.
I'm impressed, I must say. Really not often do I encounter a blog that's both educative and entertaining, and let me tell you, you've got hit the nail on the head. Your concept is excellent; the difficulty is one thing that not enough individuals are talking intelligently about. I'm very joyful that I stumbled throughout this in my seek for something referring to this.
This is the best weblog for anybody who desires to find out about this topic. You notice a lot its nearly exhausting to argue with you (not that I actually would want…HaHa). You undoubtedly put a new spin on a topic thats been written about for years. Great stuff, just nice!
I'm impressed, I must say. Really not often do I encounter a weblog that's each educative and entertaining, and let me tell you, you might have hit the nail on the head. Your concept is outstanding; the difficulty is something that not sufficient persons are speaking intelligently about. I'm very happy that I stumbled throughout this in my seek for something regarding this.
I used to be more than happy to find this net-site.I wished to thanks to your time for this wonderful learn!! I positively having fun with each little bit of it and I have you bookmarked to take a look at new stuff you blog post.
That is the suitable blog for anyone who wants to seek out out about this topic. You understand so much its virtually hard to argue with you (not that I really would want…HaHa). You definitely put a brand new spin on a topic thats been written about for years. Nice stuff, just great!
Aw, this was a really nice post. In idea I want to put in writing like this moreover – taking time and actual effort to make an excellent article… however what can I say… I procrastinate alot and by no means appear to get something done.
I was very happy to find this net-site.I needed to thanks for your time for this wonderful read!! I definitely enjoying every little bit of it and I've you bookmarked to take a look at new stuff you blog post.
Aw, this was a very nice post. In idea I wish to put in writing like this additionally – taking time and actual effort to make a very good article… however what can I say… I procrastinate alot and not at all seem to get one thing done.
After I initially commented I clicked the -Notify me when new comments are added- checkbox and now every time a remark is added I get 4 emails with the identical comment. Is there any way you possibly can remove me from that service? Thanks!
Good post. I learn something tougher on completely different blogs everyday. It would at all times be stimulating to learn content from other writers and follow somewhat one thing from their store. I'd choose to use some with the content material on my blog whether you don't mind. Natually I'll provide you with a link on your net blog. Thanks for sharing.
This web page can be a walk-through for all of the information you needed about this and didn't know who to ask. Glimpse right here, and you'll definitely discover it.
I'm impressed, I have to say. Actually hardly ever do I encounter a weblog that's both educative and entertaining, and let me let you know, you will have hit the nail on the head. Your idea is excellent; the difficulty is one thing that not sufficient individuals are talking intelligently about. I'm very blissful that I stumbled throughout this in my search for something regarding this.
This web page is known as a walk-via for all of the information you needed about this and didn't know who to ask. Glimpse here, and you'll positively discover it.
Good post. I study something more challenging on totally different blogs everyday. It should at all times be stimulating to learn content from different writers and follow a little one thing from their store. I'd desire to make use of some with the content material on my blog whether or not you don't mind. Natually I'll provide you with a hyperlink in your web blog. Thanks for sharing.
I used to be very happy to search out this net-site.I needed to thanks on your time for this glorious read!! I undoubtedly enjoying every little bit of it and I have you bookmarked to check out new stuff you weblog post.
This is the fitting weblog for anybody who desires to find out about this topic. You realize so much its virtually exhausting to argue with you (not that I truly would want…HaHa). You undoubtedly put a brand new spin on a topic thats been written about for years. Nice stuff, simply great!
Spot on with this write-up, I actually think this website needs far more consideration. I'll most likely be once more to learn far more, thanks for that info.
I am often to blogging and i actually recognize your content. The article has actually peaks my interest. I am going to bookmark your website and preserve checking for new information.
When I originally commented I clicked the -Notify me when new feedback are added- checkbox and now every time a comment is added I get four emails with the same comment. Is there any means you can take away me from that service? Thanks!
Youre so cool! I dont suppose Ive read something like this before. So good to seek out anyone with some unique ideas on this subject. realy thanks for starting this up. this web site is one thing that's needed on the internet, someone with somewhat originality. useful job for bringing one thing new to the internet!
There are certainly plenty of particulars like that to take into consideration. That could be a great level to deliver up. I supply the ideas above as normal inspiration but clearly there are questions just like the one you bring up the place an important factor will probably be working in honest good faith. I don?t know if finest practices have emerged around issues like that, however I'm sure that your job is clearly identified as a good game. Both girls and boys feel the affect of just a moment's pleasure, for the rest of their lives.
Can I just say what a relief to seek out someone who really knows what theyre talking about on the internet. You positively know how you can carry a difficulty to gentle and make it important. Extra folks must read this and understand this facet of the story. I cant consider youre no more well-liked because you positively have the gift.
Youre so cool! I dont suppose Ive learn something like this before. So good to find anyone with some authentic ideas on this subject. realy thank you for starting this up. this website is one thing that's wanted on the internet, someone with a bit of originality. helpful job for bringing one thing new to the internet!
There are definitely loads of particulars like that to take into consideration. That is a nice level to carry up. I provide the thoughts above as basic inspiration but clearly there are questions like the one you convey up where the most important thing might be working in trustworthy good faith. I don?t know if finest practices have emerged round things like that, however I am certain that your job is clearly recognized as a fair game. Both boys and girls feel the affect of just a second's pleasure, for the remainder of their lives.
A formidable share, I just given this onto a colleague who was doing somewhat analysis on this. And he the truth is purchased me breakfast as a result of I discovered it for him.. smile. So let me reword that: Thnx for the deal with! However yeah Thnkx for spending the time to discuss this, I feel strongly about it and love studying extra on this topic. If doable, as you change into expertise, would you thoughts updating your blog with extra details? It's highly helpful for me. Big thumb up for this weblog submit!
Youre so cool! I dont suppose Ive learn anything like this before. So good to search out someone with some unique ideas on this subject. realy thank you for starting this up. this website is something that is needed on the web, somebody with a bit originality. useful job for bringing something new to the internet!
There are actually a lot of particulars like that to take into consideration. That may be a nice level to convey up. I offer the ideas above as basic inspiration but clearly there are questions like the one you bring up where an important thing can be working in sincere good faith. I don?t know if greatest practices have emerged around issues like that, but I'm sure that your job is clearly recognized as a good game. Each boys and girls really feel the impression of only a moment's pleasure, for the remainder of their lives.
I'm impressed, I have to say. Really rarely do I encounter a weblog that's both educative and entertaining, and let me let you know, you've got hit the nail on the head. Your idea is outstanding; the problem is something that not sufficient people are speaking intelligently about. I'm very completely happy that I stumbled throughout this in my search for one thing relating to this.
After study just a few of the blog posts in your web site now, and I truly like your means of blogging. I bookmarked it to my bookmark website checklist and will probably be checking back soon. Pls check out my web site as properly and let me know what you think.
The subsequent time I read a weblog, I hope that it doesnt disappoint me as a lot as this one. I imply, I do know it was my option to read, but I actually thought youd have one thing interesting to say. All I hear is a bunch of whining about one thing that you could possibly repair if you werent too busy in search of attention.
Aw, this was a really nice post. In concept I want to put in writing like this additionally – taking time and precise effort to make a very good article… however what can I say… I procrastinate alot and on no account seem to get one thing done.
Spot on with this write-up, I really suppose this website wants much more consideration. I'll most likely be once more to read far more, thanks for that info.
So what's incorrect with a little bit of mold progress?


Dorset Wedding Guide's directory has a selection of wedding transport in Dorset from vintage wedding cars to horse drawn carriages and VW campers to suit your budget and taste - whatever you decide you will travel in style to your wedding!
We hope you enjoy browsing these Dorset wedding transport businesses and don't forget to mention Dorset Wedding Guide!
Hire A Classic Car Hireaclassiccar.com have a selection of iconic motor vehicles for weddings in Dorset and neighbouring counties.
Thank you for visiting Dorset Wedding Guide's wedding transport category. If you are interested in advertising your wedding transport business with Dorset Wedding Guide please feel free to get in touch or check out our advertising page for more info.


text:
//------------------------------------------------------------------------------------------------------------------
MMD = function( scene, camera ) {
	this.scene = scene;
	this.camera = camera;
	this.meshes = [];
	this.audio = null;
	this.listener = null;

	this.loader = new MMD.Loader( this );
	this.helper = new MMD.AnimationHelper( this );
};

MMD.prototype = Object.create( THREE.EventDispatcher.prototype );
MMD.prototype.constructor = MMD;

MMD.prototype.refMMDProperty = function( mmd, subClass ) {
	if( ! subClass ) subClass = this;
	subClass.mmd = mmd;
	subClass.scene = mmd.scene;
	subClass.camera = mmd.camera;
	subClass.meshes = mmd.meshes;
	subClass.audio = mmd.audio;
	subClass.listener = mmd.listener;
};

//------------------------------------------------------------------------------------------------------------------
MMD.Loader = function( mmd ) {
	// refarence MMD property
	this.refMMDProperty( mmd, this );

	//this.manager = ( a_manager !== undefined ) ? a_manager : THREE.DefaultLoadingManager;
	this.manager = THREE.DefaultLoadingManager;
	this.parser = new MMDParser.Parser();
	this.MMDLoader = new THREE.MMDLoader()

	this.loadedModel = undefined;
	this.loadedMotion = undefined;
	this.loadedCameraWork = undefined;
	this.loadedAudio = undefined;
};

MMD.Loader.prototype = Object.create( MMD.prototype );
MMD.Loader.prototype.constructor = MMD.Loader;

//------------------------------------------------------------------------------------------------------------------
MMD.AnimationHelper = function( mmd ) {
	// refarence MMD property
	this.refMMDProperty( mmd, this );

	this.eventHelper = new MMD.EventHelper();
	this.clock = new THREE.Clock();

	// animation control
	this.animateID = undefined;
	this.controller = undefined;
	this.isPlaying = undefined;
	this.doAnimation = true;
	this.doCameraAnimation = true;

	// option solver
	this.doIk = true;
	this.doGrant = true;
	this.doPhysics = 1;	// 0=none 1=normal 2=shared
	this.masterPhysics = null;
	this.physicsParams = undefined;

	// audio conrol
	this.audioDelay = 0;
	this.isAudioPlaying = undefined;
	this.audioParams = undefined;

	// time control
	this.duration = undefined;
	this.time = 0;
};

MMD.AnimationHelper.prototype = Object.create( MMD.prototype );
MMD.AnimationHelper.prototype.constructor = MMD.AnimationHelper;

MMD.Loader.prototype.loadFile = function( url, onLoad, onLoadEnd, onProgress, onError, responseType, mimeType ) {
	var fileloader = new THREE.FileLoader( this.manager );

	if( mimeType     ) fileloader.setMimeType( mimeType );
	if( responseType ) fileloader.setResponseType( responseType );

	var request = fileloader.load( url, function( result ) {
		onLoad( result );
	}, onProgress, onError );

	request.onloadend = function( e ) {
		//console.log( 'onloadend event status', e.target.status );
		if( e.target.status ) onLoadEnd( e );
	}

	return request;
};

MMD.Loader.prototype.clearMesh = function( scene, mesh ) {
	// dispose & delete
	if( mesh ) {
		if( mesh.geometry ) {
			if( mesh.geometry.animations ) delete mesh.geometry.animations;
			mesh.geometry.dispose();
			delete mesh.geometry;
		}
		if( mesh.material ) {
			// mapがtexture?
			for( var i in mesh.material ) {
				if( mesh.material[i].map ) {
					mesh.material[i].map.dispose();
					delete mesh.material[i].map;
				}
				mesh.material[i].dispose();
				delete mesh.material[i];
			}
		}
		scene.remove( mesh );
		//delete mesh;
	}
};

MMD.Loader.prototype.initModel = function( no ) {
	var meshes = this.meshes;

	if( meshes[no] ) {
		this.clearMesh( mmd.scene, meshes[no] );
		delete meshes[no];
	}
};

MMD.Loader.prototype.initCameraWork = function() {
	var camera = this.camera;
	if( camera.mixer ) camera.mixer = null;
	if( camera.animations ) {
		for( var i in camera.animations ) {
			delete camera.animations[i];
		}
		delete camera.animations;
	}
};

MMD.Loader.prototype.initAudio = function() {
	var scene = this.scene;
	var audio = this.audio;
	var listener = this.listener;

	if( audio ) scene.remove( audio );
	if( listener ) scene.remove( listener );

	if( audio ) {
		audio.stop();
		delete audio;
	}
	if( listener ) delete listener;
};

MMD.Loader.prototype.loadModel = function( no, url, callback, onProgress, onError ) {
	if( url == '' ) {
		this.loadedModel = true;
		return;
	}

	var scope = this;
	var loader = this.MMDLoader;
	var parse = this.parser;

	var path = loader.extractUrlBase( url );
	this.mmd.helper.duration = 0;

	var model = undefined;
	var mesh = undefined;
	this.loadedModel = undefined;
	this.loadFile( url, onLoad, onLoadEnd, onProgress, onError, 'arraybuffer' );

	function onLoad( buffer ) {
		var magic = scope.getFileMagic( buffer ).substr( 0, 3 );
		if( magic == 'PMX' ) {
			model = parse.parsePmx( buffer, true );
		} else if( magic == 'Pmd' ) {
			model = parse.parsePmd( buffer, true );
		} else {
			throw 'Unknown model format.';
		}
	}

	function onLoadEnd( e ) {
		mesh = loader.createMesh( model, path, onProgress, onError );
		scope.addMesh( no, mesh );
		scope.mmd.dispatchEvent( { type: 'change' } );
		scope.loadedModel = true;
		console.log( 'Model onLoadEnd' );
		if( callback ) callback( mesh );
	}
};

MMD.Loader.prototype.loadMotion = function( no, url, callback, onProgress, onError ) {
	if( url == '' ) {
		this.loadedMotion = true;
		return;
	}

	var scope = this;
	var loader = this.MMDLoader;
	var mesh = this.meshes[no];
	var helper = this.mmd.helper;
	var parse = this.parser;

	var motion = undefined;
	this.loadedMotion = undefined;
	this.loadFile( url, onLoad, onLoadEnd, onProgress, onError, 'arraybuffer' );

	function onLoad( buffer ) {
		motion = parse.parseVmd( buffer, true );
	}

	function onLoadEnd( e ) {
		loader.createAnimation( mesh, motion );
		helper.setAnimation( mesh );
		helper.setPhysics( mesh );
		scope.loadedMotion = true;

		var duration = 0;
		//for( var i in mesh.mixer._actions ) {
		//	var action = mesh.mixer._actions[i];
		//	duration = Math.max( duration, action._clip.duration );
		//}
		for( var i in mesh.geometry.animations ) {
			var clip = mesh.geometry.animations[i];
			duration = Math.max( duration, clip.duration );
		}
		if( duration > helper.duration ) helper.duration = duration;
		console.log( 'Motion onLoadEnd', 'Motion Duration', duration );

		if( callback ) callback( mesh );
	}
};

MMD.Loader.prototype.loadCameraWork = function( url, callback, onProgress, onError ) {
	if( url == '' ) {
		this.loadedCameraWork = true;
		return;
	}

	var scope = this;
	var loader = this.MMDLoader;
	var camera = this.camera;
	var helper = this.mmd.helper;
	var parse = this.parser;

	var vmd = undefined;
	this.loadedCameraWork = undefined;
	this.loadFile( url, onLoad, onLoadEnd, onProgress, onError, 'arraybuffer' );

	function onLoad( buffer ) {
		vmd = parse.parseVmd( buffer, true );
	}

	function onLoadEnd( e ) {
		loader.pourVmdIntoCamera( camera, vmd );
		helper.setCameraWork( camera );
		scope.loadedCameraWork = true;

		var duration = 0;
		//for( var i in camera.mixer._actions ) {
		//	var action = camera.mixer._actions[i];
		//	duration = Math.max( duration, action._clip.duration );
		//}
		for( var i in camera.animations ) {
			var clip = camera.animations[i];
			duration = Math.max( duration, clip.duration );
		}
		if( duration > helper.duration ) helper.duration = duration;
		console.log( 'CameraWork onLoadEnd', 'CameraWork Duration', duration );

		if( callback ) callback( vmd );
	}
};

MMD.Loader.prototype.loadAudio = function ( url, callback, onProgress, onError ) {
	if( url == '' ) {
		this.loadedAudio = true;
		return;
	}

	scope = this;
	var helper = this.mmd.helper;

	var listener = new THREE.AudioListener();
	var audio = new THREE.Audio( listener );
	var loader = new THREE.AudioLoader( this.manager );

	this.loadedAudio = undefined;
	loader.load( url, onLoad, onProgress, onError );

	function onLoad( buffer ) {
		audio.setBuffer( buffer );
		helper.setAudio( audio, listener );
		mmd.scene.add( audio );
		mmd.scene.add( listener );
		scope.loadedAudio = true;

		var audioDuration = audio.buffer.duration + helper.audioDelay;
		console.log( 'Audio onLoad', 'Audio Duration', audioDuration, 'Audio Delay', helper.audioDelay );

		if( callback ) callback( audio, listener );
	}
};

MMD.Loader.prototype.getFileMagic = function( buffer ) {
	var dv = new DataView( buffer, 0 );
	var magic = '';
	magic += String.fromCharCode( dv.getUint8(0) );
	magic += String.fromCharCode( dv.getUint8(1) );
	magic += String.fromCharCode( dv.getUint8(2) );
	magic += String.fromCharCode( dv.getUint8(3) );
	return magic;
};

MMD.Loader.prototype.checkDuration = function() {
	var scope = this;
	var helper = this.mmd.helper;
	var controller = this.mmd.helper.controller;

	// wait loding
	function loaded() {
		if( scope.loadedModel && scope.loadedMotion && scope.loadedCameraWork && scope.loadedAudio ) {
			console.log( 'end loading',
					'Model', scope.loadedModel,
					'Motion', scope.loadedMotion,
					'CameraWork', scope.loadedCameraWork,
					'Audio', scope.loadedAudio );
			return false;
		} else {
			console.log( 'wait loading...',
					'Model', scope.loadedModel,
					'Motion', scope.loadedMotion,
					'CameraWork', scope.loadedCameraWork,
					'Audio', scope.loadedAudio );
			return true;
		}
	}
	while( loaded() ) setTimeout( function(){}, 1000 );

	if( controller ) {
		//controller.step = helper.duration / 100;
		controller.max = helper.duration;
		controller.valueAsNumber = 0;
	}

	console.log( 'duration', helper.duration );
};

MMD.Loader.prototype.addMesh = function( no, mesh ) {
	if( ! mesh ) return;

	if( ! ( mesh instanceof THREE.SkinnedMesh ) ) {
		throw new Error( 'MMD.Loader.addMesh() accepts only THREE.SkinnedMesh instance.' );
	}
	if( mesh.mixer       === undefined ) mesh.mixer       = null;
	if( mesh.ikSolver    === undefined ) mesh.ikSolver    = null;
	if( mesh.grantSolver === undefined ) mesh.grantSolver = null;
	if( mesh.physics     === undefined ) mesh.physics     = null;

	this.meshes[no] = mesh;

	this.mmd.helper.initBackupBones( mesh );

	this.mmd.scene.add( mesh );
};

MMD.AnimationHelper.prototype.setController = function( slider ) {
	this.controller = slider;
	this.controller.addEventListener( 'input', ControllerInput, false );		// ドラッグ中のイベント
	//this.controller.addEventListener( 'change', ControllerChange, false );		// マウスアップした際のイベント

	var scope = this;
	var controller = this.controller;

	function ControllerInput( e ) {
		scope.atTime( controller.valueAsNumber );
	}
};

MMD.AnimationHelper.prototype.setAnimation = function( mesh ) {
	if( mesh.geometry.animations ) {
		mesh.mixer = new THREE.AnimationMixer( mesh );

		var foundAnimation = false;
		var foundMorphAnimation = false;

		for( var i in mesh.geometry.animations ) {
			var clip = mesh.geometry.animations[i];
			var action = mesh.mixer.clipAction( clip );
			if( clip.tracks.length > 0 && clip.tracks[0].name.indexOf( '.morphTargetInfluences' ) === 0 ) {
				if( ! foundMorphAnimation ) {
					action.play();
					foundMorphAnimation = true;
				}
			} else {
				if( ! foundAnimation ) {
					action.play();
					foundAnimation = true;
				}
			}
		}

		if( foundAnimation ) {
			if( this.doIk ) mesh.ikSolver = new THREE.CCDIKSolver( mesh );
			if( this.doGrant && mesh.geometry.grants ) mesh.grantSolver = new THREE.MMDGrantSolver( mesh );
		}
	}
};

MMD.AnimationHelper.prototype.setCameraWork = function( camera ) {
	if( camera.animations ) {
		camera.mixer = new THREE.AnimationMixer( camera );
		camera.mixer.clipAction( camera.animations[0] ).play();
	}
};

MMD.AnimationHelper.prototype.setAudio = function( audio, listener ) {
	this.audioParams = this.audioParams ? this.audioParams : {};

	this.audio = audio;
	this.listener = listener;

	this.time = 0;
	this.audioDelay = this.audioParams.audioDelay ? this.audioParams.audioDelay : 0;

	var audioDuration = this.audio.buffer.duration + this.audioDelay;
	if( audioDuration > this.duration ) this.duration = audioDuration;
};

MMD.AnimationHelper.prototype.play = function() {
	if( this.animateID ) return;
	if( ! this.doAnimation ) return;

	var scope = this;
	var controller = this.controller;

	function update() {
		scope.animateID = requestAnimationFrame( update );

		//var theta = clock.getElapsedTime();
		scope.update( scope.clock.getDelta() );
		scope.mmd.dispatchEvent( { type: 'change' } );

		if( controller ) controller.valueAsNumber = scope.time;
	}

	//console.log( 'start controller time', controller.valueAsNumber, 'mixer.time', this.meshes[0].mixer.time, 'this.time', this.time );

	if( ! this.isPlaying ) {
		this.isPlaying = true;
		this.clock.start();
		this.animateID = requestAnimationFrame( update );
	}

	function loop( event ) {
		scope.stop();
		scope.atTime( 0 );

		// controller reset
		if( controller ) controller.valueAsNumber = 0;
	}

	this.eventHelper.add( this.meshes[0].mixer, 'loop', loop, false );
};

MMD.AnimationHelper.prototype.stop = function() {
	this.clock.stop();
	this.eventHelper.removeAtObject( this.meshes[0].mixer );
	this.isPlaying = false;
	cancelAnimationFrame( this.animateID );
	this.stopAudio();
	this.animateID = undefined;

	//console.log( 'stop  controller time', this.controller.valueAsNumber, 'mixer.time', this.meshes[0].mixer.time, 'this.time', this.time );
};

MMD.AnimationHelper.prototype.playAudio = function() {
	if( ! this.audio ) return;
	if( ! this.isAudioPlaying ) {		// audio.isPlayingだとタイムラグがある?
		if( this.time >= this.audioDelay ) {
			this.isAudioPlaying = true;
			this.audio.startTime = this.time - this.audioDelay;
			this.audio.play();
		}
	}
};

MMD.AnimationHelper.prototype.stopAudio = function() {
	if( ! this.audio ) return;
	if( this.isAudioPlaying ) {		// audio.isPlayingだとタイムラグがある?
		this.isAudioPlaying = false;
		this.audio.stop();
	}
};

MMD.AnimationHelper.prototype.atTime = function( at ) {
	var delta = at - this.time;

	// update
	//console.log( 'before update delta', delta, 'at time', at, 'time', this.time );
	this.stopAudio();
	this.update( delta );
	//console.log( 'after update  delta', delta, 'at time', at, 'time', this.time );

	// 時間がゼロならリセット
	if( this.time < 0.00001 ) {
		for( var i in this.meshes ) {
			this.meshes[i].physics.reset();
			this.meshes[i].physics.warmup( this.physicsParams.warmup );
		}
	}

	this.mmd.dispatchEvent( { type: 'change' } );
};

MMD.AnimationHelper.prototype.update = function( delta ) {
	this.time += delta;

	for( var i in this.meshes ) {
		this.meshUpdate( delta, this.meshes[i] );
	}
	if( this.doPhysics ==2 ) this.updateSharedPhysics( delta );
	if( this.doCameraAnimation ) this.cameraUpdate( delta, this.camera );
	if( this.isPlaying ) {
		this.playAudio();
	} else {
		this.stopAudio();
	}
};

MMD.AnimationHelper.prototype.updateSharedPhysics = function( delta ) {
	if( this.meshes || ! this.doPhysics ) return;

	var physics = this.getMasterPhysics();
	if( ! physics ) return;

	for( var i in this.meshes ) {
		var p = this.meshes[i].physics;
		if( p ) p.updateRigidBodies();

	}

	physics.stepSimulation( delta );

	for( var i in this.meshes ) {
		var p = this.meshes[i].physics;
		if( p ) p.updateBones();
	}
};

MMD.AnimationHelper.prototype.meshUpdate = function( delta, mesh ) {
	if( mesh.mixer ) {
		this.restoreBones( mesh );
		mesh.mixer.update( delta );
		this.backupBones( mesh );
	}
	if( mesh.ikSolver && this.doIk ) mesh.ikSolver.update();
	if( mesh.grantSolver && this.doGrant ) mesh.grantSolver.update();
	if( mesh.physics && this.doPhysics == 1 ) mesh.physics.update( delta );
};

MMD.AnimationHelper.prototype.cameraUpdate = function( delta, camera ) {
	if( camera ) {
		camera.mixer.update( delta );

		camera.updateProjectionMatrix();
		camera.up.set( 0, 1, 0 );
		camera.up.applyQuaternion( camera.quaternion );
		camera.lookAt( camera.center );
	}
};

MMD.AnimationHelper.prototype.setPhysics = function( mesh ) {
	if( ! this.doPhysics ) return;
	this.physicsParams = this.physicsParams ? Object.assign( {}, this.physicsParams ) : {};
	if( this.physicsParams.world === undefined && this.doPhysics == 2 ) {
		var masterPhysics = this.getMasterPhysics();
		if( masterPhysics ) this.physicsParams.world = masterPhysics.world;
	}

	this.physicsParams.warmup = this.physicsParams.warmup ? this.physicsParams.warmup : 60;
	var physics = new THREE.MMDPhysics( mesh, this.physicsParams );

	if( mesh.mixer && ! this.physicsParams.preventAnimationWarmup ) {
		this.meshUpdate( 0, mesh );
		physics.reset();
	}

	physics.warmup( this.physicsParams.warmup );

	this.updateIKParametersDependingOnPhysicsEnabled( mesh, true );

	mesh.physics = physics;
};

MMD.AnimationHelper.prototype.getMasterPhysics = function() {
	if( this.masterPhysics ) return this.masterPhysics;

	for( var i in this.meshes ) {
		var physics = this.meshes[i].physics;
		if( physics ) {
			this.masterPhysics = physics;
			return this.masterPhysics;
		}
	}

	return null;
};

MMD.AnimationHelper.prototype.updateIKParametersDependingOnPhysicsEnabled = function( mesh, physicsEnabled ) {
	var iks = mesh.geometry.iks;
	var bones = mesh.geometry.bones;
	for( var i in iks ) {
		var ik = iks[i];
		var links = ik.links;

		for( var j in links ) {
			var link = links[j];
			if( physicsEnabled ) {
				// disable IK of the bone the corresponding rigidBody type of which is 1 or 2
				// because its rotation will be overriden by physics
				link.enabled = bones[link.index].rigidBodyType > 0 ? false : true;
			} else {
				link.enabled = true;
			}
		}
	}
};

MMD.AnimationHelper.prototype.setPhysicsParams = function( p ) {
	this.physicsParams = p;
};

MMD.AnimationHelper.prototype.setAudioParams = function( p ) {
	this.audioParams = p;
};

/*
 * Note: These following three functions are workaround for r74dev.
 *       THREE.PropertyMixer.apply() seems to save values into buffer cache
 *       when mixer.update() is called.
 *       ikSolver.update() and physics.update() change bone position/quaternion
 *       without mixer.update() then buffer cache will be inconsistent.
 *       So trying to avoid buffer cache inconsistency by doing
 *       backup bones position/quaternion right after mixer.update() call
 *       and then restore them after rendering.
 */
MMD.AnimationHelper.prototype.initBackupBones = function( mesh ) {
	mesh.skeleton.backupBones = [];
	for( var i in mesh.skeleton.bones ) {
		mesh.skeleton.backupBones.push( mesh.skeleton.bones[i].clone() );
	}
};

MMD.AnimationHelper.prototype.backupBones = function( mesh ) {
	mesh.skeleton.backupBoneIsSaved = true;
	for( var i in mesh.skeleton.bones ) {
		var b = mesh.skeleton.backupBones[i];
		var b2 = mesh.skeleton.bones[i];
		b.position.copy( b2.position );
		b.quaternion.copy( b2.quaternion );
	}
};

MMD.AnimationHelper.prototype.restoreBones = function( mesh ) {
	if( ! mesh.skeleton.backupBoneIsSaved ) return;
	mesh.skeleton.backupBoneIsSaved = false;
	for( var i in mesh.skeleton.bones ) {
		var b = mesh.skeleton.bones[i];
		var b2 = mesh.skeleton.backupBones[i];
		b.position.copy( b2.position );
		b.quaternion.copy( b2.quaternion );
	}
};

//------------------------------------------------------------------------------------------------------------------
MMD.EventHelper = function() {
	this.events = [];
};

MMD.EventHelper.prototype = Object.create( MMD.prototype );
MMD.EventHelper.prototype.constructor = MMD.EventHelper;

MMD.EventHelper.prototype.add = function( target, type, listener, capture ) {
	if( ! target ) return;
	for( i in this.events ) {
		var el = this.events[i];
		if( target == el.target && type == el.type ) {
			console.warn( '重複', el );
			return;
		}
	}
	var e = { target: target, type: type, listener: listener, capture: capture };
	if( ! target.hasEventListener(type, listener) ) {
		target.addEventListener( type, listener, capture );
		this.events.push( e );
		//console.log( 'Event helper add listener', e );
	} else {
		console.warn( '重複', e );
	}
};

MMD.EventHelper.prototype.remove = function( target, type, listener, capture ) {
	if( ! target ) return;
	for( i in this.events ) {
		var e = this.events[i];
		if( target == e.target && type == e.type && listener == e.listener && capture == e.capture ) {
			if( e.target.hasEventListener(e.type, e.listener) ) {
				e.target.removeEventListener( e.type, e.listener, e.capture );
				//console.log( 'Event helper del listener', e );
			} else {
				console.warn( 'can not foud listener', e );
			}
			delete this.events[i];
		}
	}
};

MMD.EventHelper.prototype.removeAtObject = function( target ) {
	if( ! target ) return;
	for( i in this.events ) {
		if( target == this.events[i].target ) {
			var e = this.events[i];
			if( e.target.hasEventListener(e.type, e.listener) ) {
				e.target.removeEventListener( e.type, e.listener, e.capture );
				delete this.events[i];
				//console.log( 'Event Helper del listener', e );
			} else {
				console.warn( 'can not foud listener', e );
			}
		}
	}
};

MMD.EventHelper.prototype.removeAtType = function( type ) {
	for( i in this.events ) {
		if( type == this.events[i].type ) {
			var e = this.events[i];
			if( e.target.hasEventListener(e.type, e.listener) ) {
				e.target.removeEventListener( e.type, e.listener, e.capture );
				delete this.events[i];
				//console.log( 'Event Helper del listener', e );
			} else {
				console.warn( 'can not foud listener', e );
			}
		}
	}
};

//------------------------------------------------------------------------------------------------------------------
MMD.GrantSolver = function( mesh ) {
	this.mesh = mesh;
};

MMD.GrantSolver.prototype = Object.create( MMD.prototype );
MMD.GrantSolver.prototype.constructor = MMD.GrantSolver;

MMD.GrantSolver.prototype.update = function() {
	var q = new THREE.Quaternion();
	return function () {
		for( var i in this.mesh.geometry.grants ) {
			var g = this.mesh.geometry.grants[i];
			var b = this.mesh.skeleton.bones[g.index];
			var pb = this.mesh.skeleton.bones[g.parentIndex];

			if( g.isLocal ) {
				// TODO: implement
				if( g.affectPosition ) {
				}
				// TODO: implement
				if( g.affectRotation ) {
				}
			} else {
				// TODO: implement
				if( g.affectPosition ) {
				}
				if( g.affectRotation ) {
					q.set( 0, 0, 0, 1 );
					q.slerp( pb.quaternion, g.ratio );
					b.quaternion.multiply( q );
				}
			}
		}
	};
};

redpajama_set_name: RedPajamaGithub


text:
Carol Grotnes Belk Library
Borrowing Periods*
Borrowing period
Number of renewals
Audiobooks 30 days 2
Books 30 days 3
CDs 30 days 3
DVDs 30 days 3
Music scores 30 days 2
VHS tapes 30 days 3
Headphones 1 day 0
*Elon faculty borrowing periods may differ.
There are no library late fines on any type of library material.
Borrowers with overdue items will receive one email courtesy notice, two email overdue notices, and then a final billing notice. At this point, an item is considered lost and borrowers will be charged $60 per item ($50 replacement cost, and a $10 non-refundable billing fee). If the item is returned within one semester, the borrower will receive a $50 credit on their Bursar account. If you believe you have been charged a fee in error, please click here to complete an appeal form.
Books and other items on reserve may be borrowed 2 hours, 4 hours, 1 day or 3 days, as determined by the professor.
Community Borrowers
Community Borrowing Privileges
Who can borrow?
Community Borrowers and participants in the Triad Academic Library Association (TALA) reciprocal agreement. If your card has expired, you must renew your membership and pay any outstanding fees in order to borrow materials.
How can I become a Community Borrower?
Simply ask to become a Community Borrower at the Service Desk, and a staff member will assist you with the process. The membership fee is $25 per year.
What can be borrowed?
Circulating books
How long are they loaned?
Most items may be checked out for thirty (30) days and may be renewed three times if not needed by another patron. The exception is Audiobooks which may be checked out for 30 days and renewed once. Borrowers are responsible for all library materials checked out on their account. See our circulation policy for more details.
What cannot be borrowed?
Items on Course Reserve
Is there a limit to how many items may be checked out?
While there is a formal limit of 5 items at one time (except for Audiobooks, which are limited to a maximum of two (2) at one time), we ask that all patrons be considerate of the needs of others. Library staff reserves the right to limit the number of items at any time if demand warrants.
What happens if materials are overdue?
Patrons will receive an emailed courtesy notice and at least one overdue notice before receiving a bill for lost items. Charges per lost item are a $50.00 replacement fee plus a non-refundable $10.00 billing fee. All borrowing privileges are suspended until overdue materials are returned and fees paid. Community borrowers who have excessive outstanding obligations will not be eligible to renew their privileges. Serious incidents of delinquency may be referred to Campus Police for resolution.
PLEASE ASK ANY LIBRARIAN IF YOU HAVE QUESTIONS ABOUT BELK LIBRARY SERVICES!
Dependent Borrowers
Belk Library Policy regarding borrowing privileges for dependent children, spouses or partners of Elon University faculty or staff members.
Spouses, partners or dependent children of current Elon University faculty or staff members may be granted borrowing privileges with the permission of the sponsoring employee. A copy of the form must be on file for the dependent borrower to have library borrowing privileges. Dependent borrower privileges expire on 12/31 two years from the date of issue, and may be renewed for the term of the sponsoring employee's employment at Elon University.
Library General Guidelines:
The borrower agrees to observe any rules established by the library and will be responsible for all materials borrowed on this card, with or without their permission.
The borrower agrees to pay any charges imposed for late return, loss, or damage of library materials.
Lost item charge: $50.00 plus a nonrefundable $10.00 billing fee ($60.00), or in lieu of $60.00 an exact, unused/new replacement copy will be accepted.
If a sponsored child/spouse/partner borrower fails to resolve any library charges, those charges will be the responsibility of the sponsoring Elon employee. (Only borrowing information relating to fines and charges will be released to the sponsoring Elon employee. Any other borrowing information will be treated with the same confidentiality as all other library patron records.)
Parent/Guardian AGREEMENT for MINORS:
Parents will NOT have access to the circulation record of their child.
If they want access to the child's circulation record, they may authorize him/her to use their library card instead of authorizing their own.
Computer Use
Belk Library provides public use computers in support of the academic missions of Elon University and as a service to members of the surrounding community. In the spirit of free and open inquiry, no restrictions are placed on Internet access. Library patrons are expected to use computer resources responsibly, ethically, and in compliance with relevant laws and any contractual agreements the Library has entered into to provide such resources.
The Library's computing resources are shared by many. To insure the consistency of available software and hardware, Library users are expected to:
Library patrons should show consideration to all around them. Behavior disruptive to others may result in Library staff asking the offender to cease the behavior in question. If the disruptive behavior continues, staff have the right to ask the offender to leave.
Respect the priority use of public computers as follows: 1) Elon students and staff and 2) members of the general public. In times of peak demand (e.g., exams), educational use takes priority over recreational use and patrons may be asked to yield a machine to students who wish to do course-related work.
The computing resources available in Belk Library encompass a vast network of resources provided by the University and by outside service providers. Due to the complexity and interdependency of the systems in operation, the Library cannot guarantee all resources will be available at all times.
Belk Library is pleased to partner with Elon University's Office of Alumni Engagement to support the lifelong learning needs of our alumni. This page highlights a variety of resources and services available.
Study Abroad and Study USA
Access to Belk Library's electronic databases, e-journals, and other electronic materials is available when you are away from campus. The first time you click on a link for one of our databases, online journals or eBooks, you will be asked to log in with your Elon username and password. This is the same login information you use for email and Moodle.
Articles and book chapters from the library's collections will be scanned and emailed to you upon request.
Belk Library will provide interlibrary loan services for articles and book chapters not owned by Elon. Physical items borrowed from other institutions cannot be shipped to your location.
Belk Library reserves the right to deny requests for materials based on condition, demand, or other restrictions.
This library service is available for current Elon students, faculty, and staff.
Interlibrary Loan Textbook Policy
As of January 2013, Belk Library will no longer request textbooks through Interlibrary Loan and reserves the right to decline an ILL request for a textbook.
Belk Library will not knowingly order any edition of a required textbook through Interlibrary Loan for the following reasons:
Materials borrowed through Interlibrary Loan Services are intended to supplement required course content by providing access to scholarly materials not owned by Belk Library. These services are not intended for ordering required textbooks.
Purchasing textbooks is considered the responsibility of the student.
Interlibrary Loan services do not meet student needs for ordering textbooks.
The process of borrowing a textbook can take up to several weeks, leaving the requester without a text for an extended period of time.
Loan periods are set by lending libraries and do not allow students to keep a textbook for an entire course.
Use of Belk Library by Minors
Children under the age of 12 must be accompanied to the library by an adult. To use Belk Library computers, children under the age of 16 must be accompanied by an adult parent or guardian who remains seated with the child at the computer.
Library patrons should show consideration to all around them. Behavior disruptive to others may result in Library staff asking the patron to cease the behavior in question. If the disruptive behavior continues, staff have the right to ask the patron to leave.
Computer users must follow University guidelines. Any patron found violating these policies will be asked to leave.
Respect the priority use of library computers as follows: 1) Elon students, faculty and staff and 2) members of the general public. In times of peak demand (e.g., exams), educational use takes priority over recreational use and patrons may be asked to yield a machine to students who wish to do course-related work.
To learn about borrowing privileges for dependent children of current Elon University faculty or staff members, please see our dependent borrower policy (redirect link: https://www.elon.edu/e/library/about/policies.html)
Belk Library Intellectual Freedom Policy
Belk Library's Commitment to Intellectual Freedom:
The mission of Belk Library is to support the endeavors of our students, faculty, staff, and community borrowers in an atmosphere of open and honest inquiry. We are committed to Elon University's mission statement, which "encourages freedom of thought and liberty of conscience." We also follow the American Library Association's Bill of Rights, which states:
Books and other library resources should be provided for the interest, information, and enlightenment of all people of the community the library serves. Materials should not be excluded because of the origin, background, or views of those contributing to their creation.
Libraries should provide materials and information presenting all points of view on current and historical issues. Materials should not be proscribed or removed because of partisan or doctrinal disapproval.
Libraries should challenge censorship in the fulfillment of their responsibility to provide information and enlightenment.
Thus, Belk Library collects materials from many points of view on all subjects of potential use or interest to our patrons. Neither physical materials nor access to electronic information is excluded from the collection because of frankness of language or controversial content, or because of the political, moral, religious, sexual, social, economic, or scientific views expressed, or because of the race, national origin, gender, sexual identity, religion, or political affiliations of the author. The Library understands that authors may, intentionally or inadvertently, misstate facts, reach erroneous conclusions, or make claims that may, in fact or in perception, be hurtful to individuals, or lead future researchers astray. It is not the task of the Library to verify or validate the contents of what it acquires, but it is to make research available for review, rebuttal, substantiation, support, or further inquiry.
Procedure to Challenge a Resource of Belk Library:
Those persons wishing to challenge a resource are asked to print and complete a Request for Reconsideration form and submit the form at the Library Service Desk. The completed form will be reviewed by the Dean of the Carol Grotnes Belk Library. The Dean may consult with librarians, faculty, or outside experts, but will make the final decision. Possible decisions include: (1) to remove the resource, (2) to retain the resource, (3) to retain the resource but reclassify it by location or call number, or (4) to balance the collection by adding materials that express alternative views of the issue.
Some text adapted, with permission, from the policies of Clemson University, Drake University, and Northwestern University.
Elon University Library Privacy Policy
Carol Grotnes Belk Library of Elon University recognizes and honors the right to privacy of all library patrons. The Library maintains the confidentiality of library user records in accordance with the laws of North Carolina as stated in the North Carolina General Statutes, Volume 17, Article 3, Sections 125-18 and 125-19. This includes personal data in the library database as well as information concerning materials and /or information which the user has requested, borrowed, obtained, copied, or used in print, audiovisual, electronic or other formats. The library adheres to the University's appropriate use policies.
Disclosure of library records may be permitted in the exceptions allowed by Section 125-19, part (b), that permits disclosure (1) "When necessary for the reasonable operation of the library;" (2) "Upon written consent of the user;" or (3) "Pursuant to subpoena, court order, or where otherwise required by law." The legal counsel to Elon University must first review a subpoena or court order for library records before any records can be released or revealed.
The Library generally intends to impose a narrow interpretation of the scope of exceptions permitted for "reasonable operation of the library." Exceptions include access by appropriate library personnel and notification of the Bursar's office and the Phoenix Card office of unpaid debts. Monies owed to the library are monies owed to the University. In the case of lost or damaged materials, library fines or other fees, the Library will therefore notify the Business Office and/or the Registrar of unpaid debts so that the appropriate action may be taken to collect amounts owed.
Any person who believes that personal or "library use" information has been improperly released to another party may provide a full written report to the Dean and University Librarian who will initiate an appropriate investigation. The Dean and University Librarian will provide a full and timely report, including recommendations if appropriate, to the aggrieved party and to the Dean and University Librarian's supervisor.
Liaison Program
Personal Librarian Program
Renew a Book
Request a Journal Article or Book Chapter
Search Course Reserves
Course Reserves Request
Library Maps
Ask Us Now
Schedule an Appointment (We can meet remotely)
Featured Resource: Black Life in America
Black Life in America offers comprehensive coverage of the experience and impact of African Americans as recorded by the news media from 1976 to the present.