text:
Today is European Day of Languages
The European Day of Languages is celebrated every year on 26th September and now in its seventeenth year.
What is European Day of Languages?
Europe enjoys a rich diversity of language and cultures with 200 European languages, 24 Official European languages and around 60 regional or minority languages. These figures do not include languages spoken by people from elsewhere within the world who have migrated to live within the Europe which enrich the diversity of languages spoken still further.
The purpose of the European Day of Language is to celebrate both the cultural and linguistic diversity within Europe and to encourage and promote language learning through a range of events including language classes for all ages and abilities, conferences, cultural exchanges, children's activities, and television/radio specials.
The aims of the European Day of Languages include:
To celebrate the diversity of languages and cultures within Europe.
To encourage language learning at any age.
To promote intercultural understanding.
To diversify the range of languages learnt.
Foreign Languages learning and teachers in the UK – current trends
In the UK, most schools teach one or more of French, German and Spanish, but the government does not promote the teaching of specific languages. While French remains the most-studied language among secondary school students in the UK, its popularity is falling dramatically, in favour of Spanish. However, there was a general decline of foreign language learning in UK secondary schools with a 45% uptake reduction at GCSE, its lowest level since 2,000.
According to a BBC survey in 2019, the majority of 2,048 responses out of 4,000 mainstream secondary schools in the UK stated that the perception of languages as a difficult subject was the main reason behind a drop in the number of pupils studying for exams. However, the government's promotion of the Baccalaureate is a way of promoting the learning of a foreign language after they made it non-compulsory in 2004. So, this means it is likely that there will be an increase in uptake and therefore a demand of modern foreign language teachers.
New Spanish and French teachers are particularly needed, and it is thought that foreign language teachers will be sought after by many secondary and sixth form colleges; they are currently on the shortage list along with maths and science teachers.
We are always on the lookout for talented supply staff, so if you are interested in having flexibility on where and when you work, supply teaching may be for you. Go to our registration page or give us a call to find out more.
Read more Latest News articles


During the three weeks each of our student will contribute to 'The Independent'. This is a newsletter that is published at the end of the program at each of our campuses. Students from different schools, countries and cultures will work together to write and design a news report for the day. This could be a poem, video, news article or even an illustration! By the end of the three weeks our newsletter reflects a truly collaborative project between all of the students!
Follow the links below to explore 'The Independent' 2017!


North Pole Breakfast With Strincel And Ringlet Christmas Party Printables- DIY Ideas For A New Christmas Tradition Digital Download Mice Mouse Wearing Ugly Christmas Sweater and scarf holding chocolate chip cookie #north #pole #breakfast theicedsugarcookie.com Where can I find North Pole Breakfast supplies at? Right Here!
North Pole Breakfast With Strincel And Ringlet Christmas Party Printables- DIY Ideas For A New Christmas Tradition Digital Download Mice Mouse Wearing Ugly Christmas Sweater and scarf holding chocolate chip cookie TheIcedSugarCookie.com #north #pole #breakfast Where can I buy North pole breakfast supplies at? Right here of course!
Where can I buy North Pole Breakfast stuff? Right here!
We created this Christmas tradition that your whole family will grow to love.
Children and parents will love and look forward to following the "25 Days of Christmas With Stincel And Ringlet Calendar" that will make memories that won't be forgotten.
Here is list of activities on the "25 Days Of Christmas With Stincel And Ringlet Calendar"
For the month of December each day has an activity for you and your child to do together. The main event is on Dec 17 which is the "North Pole Breakfast With Stincel And Ringlet". This will be the day that you throw a party for your child with the cutout printables we have provided. String the adorable flag banner up on the wall and add the 8.5 x 11 inch sign to a white picture frame and prop up on the table as a centerpiece. You can use an 8x10 picture frame with the sign we created. We used an 8x10 frame and just trimmed the top and sides of the printable to make the sign fit. Or you can just print it from your computer and select the 8x10 print version and then print it if you have that option. We got our frame from Hobby Lobby. If you already have a picture frame and it's smaller then just select the smaller print size before printing and it will shrink it down. Use the cupcake toppers for your stack of pancakes, french toast stack, or muffins by taping a toothpick to the back of the cupcake toppers and sticking down in the food. Whatever breakfast food you decide to go with make sure you print the food label tent cards out and prop up next to the food items on the table. We have 24 food cards with words and 4 that are blank so you can write or type your own words.
On Dec 22 you will be making the "Reindeer Munch" and watching your favorite Christmas movie. We have included a fun little recipe card to print out so your child can help make this with you.
Go to The Iced Sugar Cookie store to buy this party printable.


text:
sequin a very small shiny disk of plastic or metal. Sequins are sewn onto clothing as decoration.
sequoia a very large evergreen tree that grows in California; redwood or giant sequoia.
Serbia a European country on the Balkan Peninsula between the countries of Bosnia and Bulgaria. The capital of Serbia is Belgrade.
serene free from trouble; calm.
serf a person in earlier times who was like a slave. Serfs had to stay on the property where they worked and lived. If the land was sold, they were sold along with it.
sergeant a rank above corporal in the U.S. Army, Marine Corps, or Air Force. [3 definitions]
serial a long story that is divided into parts and produced at regular times. [2 definitions]
series a group of related things that come one after another.
serious marked by careful thinking or consideration. [4 definitions]
sermon a talk given during a religious service. [2 definitions]
serpent a snake.
serum the thin, watery liquid that remains when the solid parts of blood have formed a clot. [2 definitions]
servant a person, such as a maid or cook, who has a job working in someone else's home. [2 definitions]
serve to give aid or help; be of use. [11 definitions]
server a person who serves food. [2 definitions]
service the act or an instance of helping. [9 definitions]
service station a place that sells gasoline and other things needed for cars, trucks, and other motor vehicles. Repairs are also made in some stations.
serving one helping of food or drink.
session a meeting or set of meetings of a court or a government council. [3 definitions]
set to put in a particular position or location. [19 definitions]
setback something that happens that slows, stops, or reverses progress that is being made.

redpajama_set_name: RedPajamaCommonCrawl


text:
Press Release / Oct. 18, 2013
Secretive plans to sell a lucrative Congolese mining asset raise further Congo corruption concerns
Tweet Share Oil, Gas & Mining D.R. Congo DONATE
New reports indicate that the Democratic Republic of Congo's state-owned mining company, Gécamines, is in an advanced stage of negotiations to sell its stake in a lucrative copper mine without informing the Congolese Ministry of Mines. If true, this would follow a pattern of opaque deals in Congo mining sector giving rise to concerns about poor value for money and possible corruption, said Global Witness today.
Bloomberg has reported on the potential deal today involving the transfer of ownership of 20% of Kamoto Copper Co (KCC), which is set to become the country's top producing copper mine next year. Bloomberg cited evidence that the Ministry of Mines had not been informed of the sale.
Following press reports, Gécamines issued a statement today saying that a competitive bidding process has been organised for the sale and that "the potential sale of assets, is constantly discussed with and reported to" the State. Gécamines says it will provide further information "when the process is complete".
"If it is true that Gécamines did not inform the government of the potential sale of KCC, this is extremely alarming," said Daniel Balint-Kurti of Global Witness. "Gécamines is 100% owned by the Congolese state and has a duty to manage state assets solely in the interests of the Congolese people. However, currently it does not publish public audited accounts."
The nature of this new deal is especially concerning given that Congo is estimated to have lost out on at least $1.36 billion between 2010 and 2012, according to Kofi Annan's Africa Progress Panel, in a string of under-priced and opaque sales of mining assets many of which were sold by Gécamines. This is almost twice the country's annual spending on health and education combined.
"Without proper oversight and transparency, Gécamines may be a financial black hole at the heart of the Congolese mining sector, wasting money that one of the world's poorest countries cannot afford to lose," said Balint-Kurti.
Prominent political figures in Congo have pledged that assets will be sold by open tenders in a transparent manner. Any apparent failure to do this with KCC would be a major setback for efforts to clean up the sector. Congo's mining law, which is currently under revision, also needs to be modified to require proper bidding and oversight to ensure that this does not happen again.
Global Witness has contacted a representative of Dan Gertler's Fluerette Group, who is reported to be the potential buyer, for comment and is awaiting a response. Fleurette told Bloomberg, "We don't comment on market speculation". Mr Gertler has previously denied any wrongdoing and insisted that transactions were properly conducted.
/ Ends
Nathaniel Dyer, Global Witness in London on +44 (0)77 11 006 799, [email protected]


Co-operative Insurance offers a variety of payment options, allowing you to choose the one that works best for you.
The monthly automated payment plan automatically deducts your premiums from your checking or savings account each month, saving you time and money. There are no fees and no worries about missed payments, and your premiums are spread evenly throughout the year.
Simply complete our ACH Authorization Form and drop off with your local agent or send the form directly to Co-op Insurance.
Pay your annual premium in four installments. You can pay the minimum amount due, the entire balance, or any amount in between. A $6 processing fee is added to each bill with this option.
Pay your annual premium in two installments. Pay a predetermined amount on your annual premium when your new policy term begins. A second payment is due six months later. Pay the minimum amount due, the entire balance, or any amount in between. A $6 processing fee is added to each bill.
Make one payment. No processing fees.
If you've set up your mortgage payments to include your insurance premium, we can bill your mortgage lender. No processing fees, and only one bill for both your mortgage and homeowners insurance!


text:
Q: CSV file with carriage returns in a column generated using Ruby CSV returns square character in Excel I've got a script that generates and emails a CSV file to a number of users who are on Windows. One of the columns has line breaks within it, and when I open the generated file I get square boxes before the line breaks. Here's an example in code of what I'm trying to do:
CSV.open("/tmp/reports.csv", "w") do |csv|
  csv << ["Date", "Description", "Comments", "Status"]
  csv << ["Foo","Bar","This\r\n is \r\n where \r\n my \r\n linebreaks \r\n are,"Baz"]
end

I've tried any number of linebreak and encoding combinations I can think of, but no joy. I suspect it's related to this issue, but the solution involves doing something after the import, which I'd rather not saddle my users with, especially as I'm not dealing with technical users here.
Any ideas?

A: Try gsubbing the \r out:
csv << ["Foo","Bar","square \r\n here","Baz"].map{|col| col.gsub(/\r/, '')}

redpajama_set_name: RedPajamaStackExchange


text:
Bahia Shehab (; nascida em 1977) é uma artista multidisciplinar, designer, historiadora, diretora criativa, educador e ativista baseada no Cairo, Egito. Seu trabalho está preocupado com identidade e herança cultural e usa a história da arte islâmica e, em particular, a caligrafia islâmica e o design gráfico para explorar a política árabe contemporânea, o discurso feminista e as questões sociais.

Seu trabalho de orientação cultural preocupa-se em usar a história como um meio para entender melhor o presente e encontrar soluções para o futuro. Bahia Shehab está interessada nas maneiras pelas quais a arte pode ser empregada para a mudança social e explorou esse fenômeno por meio de sua obra de arte, que se baseia em temas socialmente carregados, como a identidade árabe e os direitos das mulheres. Sua pesquisa está amplamente voltada para a compreensão da escrita árabe, e muito de seu trabalho explora a caligrafia árabe tradicional e remodelada.

Ao imbuir as escritas tradicionais árabe e islâmica com mensagens políticas, ela usou a arte para explorar e interrogar para entender situações sociais e trazê-las para um público maior. Sua obra de arte apareceu pela primeira vez nas paredes do Cairo durante a revolução egípcia de 2011 e, desde então, tem sido exibida em exposições ao redor do mundo. Bahia Shehab recebeu vários prêmios por suas realizações. Em 2019, foi destaque no catálogo Polaris produzido pela Visual Collaborative, onde foi entrevistada ao lado de outros artistas de todo o mundo.

Infância e educação
Bahia Shehab nasceu em 1977, no Líbano, e cresceu lá. Ela estudou design gráfico na Universidade Americana de Beirute, fez mestrado na Universidade Americana do Cairo e concluiu seu doutorado na Universidade de Leiden, na Holanda.

Trabalho Educacional e Pesquisa
Academia: O Programa de Design Gráfico da AUC

Bahia Shehab começou a lecionar na American University no Cairo em 2010 e, em 2011, estabeleceu o programa de Design Gráfico no Departamento de Artes da Escola de Humanidades e Ciências Sociais da Universidade do Cairo (AUC). O programa foca na cultura visual do mundo árabe e incentiva os alunos a expandirem sua consciência da cultura visual árabe enquanto trabalham em vários projetos de design. Bahia Shehab incentiva seus alunos a fazerem uso de seus interesses enquanto desenvolvem seus trabalhos e enfatiza a necessidade de usar o design para resolver problemas. Ela ministrou mais de dezessete cursos sobre design.

Conferências e Simpósios

Bahia Shehab deu palestras internacionais sobre cultura visual árabe e design, educação em design e desenvolvimento curricular, direitos das mulheres, questões sociais e herança cultural islâmica.

Júris e conselhos

Bahia Shehab atua em vários conselhos editoriais, corporativos e sem fins lucrativos. Ela atuou localmente, regionalmente e internacionalmente em júris de design internacionais, por exemplo, para o 101º Prêmio Anual do Clube de Diretores de Arte de Nova York.

Arte

"Mil Vezes NÃO" e o Graffiti Político
Em 2010, a Fundação Khatt de Amsterdã convidou Bahia Shehab para produzir uma obra de arte para a exposição "O Futuro da Tradição", cujo objetivo era comemorar os 100 anos da arte islâmica na Europa após a exposição "Obras-primas da arte muçulmana" na Haus der Kunst em Munique, Alemanha. Seu projeto "A Thousand Times NO" foi uma instalação artística e um projeto de pesquisa que foi exposto em uma sala com curadoria de Huda Smitshuijzen Abifares, fundadora da Khatt Foundation, com outras artistas femininas do mundo árabe celebrando a escrita árabe. A mensagem principal era o simples "NÃO", de acordo com o ditado árabe, "Não e mil vezes não". Ela procurou mil designs diferentes de nãos árabes, encontrando-os em prédios, mesquitas, pratos, tecidos, cerâmica e livros, e de países como Espanha, China, Afeganistão e Irã - todos lugares onde o Islã prosperou em um ponto da história ou outro. Seus mil nãos foram originalmente exibidos na forma de uma cortina de acrílico na exposição Haus der Kunst. Ao lado desta instalação estava um livro, editado pela Khatt Foundation, onde ela reuniu todos os mil nãos em ordem cronológica, junto com os nomes dos lugares onde os encontrou, os meios que foram originalmente usados para escrevê-los e os patronos que foram responsáveis por encomendar as obras sobre as quais os nãos foram encontrados. Embora este projeto fosse uma forma de pesquisa visual histórica, durante o 25 de janeiro de 2011 no Egito, Bahia "libertou" esses mil nãos de suas associações históricas e ressignificou-os dentro dos eventos políticos da revolução, usando os diferentes estilos de "não" para protestar contra os acontecimentos atuais. Os exemplos incluem "não à queima de livros", "não a um novo faraó", "não ao despojamento do povo" e "não à morte de homens religiosos".

Paisagem / paisagem sonora: 20 minaretes do mundo árabe
Outro projeto, "20 minaretes do mundo árabe", é um projeto cultural significativo que foi exibido no Museu de Arte Moderna Árabe Contemporânea da Louisiana, na Dinamarca. Neste projeto, Bahia Shehab tomou como ponto de partida o minarete, importante elemento da paisagem arquitetônica do mundo árabe, exibindo 20 minaretes do mundo árabe levando em consideração suas proporções, começando com o menor minarete, de Mogadíscio (capital da República da Somália), e terminando com o mais alto, de Abu Dhabi (capital dos Emirados Arabes Unidos). Ela também incluiu o minarete da Grande Mesquita de Aleppo, na Síria, mas aparece em ruínas, para representar o desastre cultural que ocorreu em 2013, quando o minarete foi bombardeado. Nesse projeto, Bahia Shehab estava preocupada em como a herança cultural árabe estava sendo fisicamente destruída por um lado e, por outro, como estava sendo atacada intelectualmente por nações ocidentais e rotulada como retrógrada e terrorista. Como parte da instalação, Bahia Shehab também incluiu o adhan (chamado à oração) na voz de uma mulher. Sua escolha foi inspirada na ideia de que é hora da voz feminina se erguer.

Campanha Global de Intervenções nas Ruas
Desde 2016, Bahia Shehab trabalha em uma campanha global de intervenções nas ruas que envolve pintar citações do poeta e autor palestino Mahmoud Darwish nas paredes das ruas ao redor do mundo. Ela acredita que as palavras de Darwish são relevantes para a situação política em que nos encontramos hoje. As citações incluem "Fique na esquina de um sonho e lute" e "Eu tive um sonho que será e uma borboleta se encasulou nas prisões", em homenagem a Mahinoor Elmasry, que foi preso junto com inúmeros outros por se posicionar contra a injustiça no Egito. Outras citações incluem: "Não ao impossível", "Amaríamos a vida se tivéssemos acesso a ela", "Vou sonhar", "Quão grande é a ideia, quão pequeno é o estado", "Quem não tem terra tem sem mar", "Nesta terra há coisas pelas quais vale a pena viver", "Um dia seremos quem queremos ser, a viagem ainda não começou e a estrada não acabou" e "Meu povo voltará como ar e luz e água". O estilo com que essas citações são pintadas é amplamente abstrato e geométrico e usa formas simples como círculos, retângulos e triângulos. Sua arte de rua também foi inspirada em escritas árabes mais antigas. Até agora, ela pintou paredes no Canadá, França, Alemanha, Grécia, Japão, Líbano, Estados Unidos da América, Marrocos e Noruega. Suas paredes pintadas até 2017 foram publicadas em seu livro At the Corner of a Dream, publicado pela biblioteca Gingko, em Londres.

As crônicas das flores
"The Chronicles of Flowers" foi exibido em Istambul, na Turquia, em 2017, documentando sua relação pessoal com as flores. As flores representam suas conexões significativas com as mulheres de sua vida, pois lhe deram a chance de entender melhor a si mesma e a sua sociedade. A exposição utilizou telas de plexiglass, projeções de vídeo e áudio e aromas de flores, permitindo ao público desfrutar de uma experiência multissensorial. Um livro, cuja narrativa começa com a Guerra Civil do Líbano na década de 1980 e termina em 2017 após a revolução no Egito, também contém a documentação de 77 flores e seu significado para o artista.

Reflexões sobre Shangri La
Em 2018, Bahia concluiu uma residência artística no Shangri La Museum for Islamic Art, Design & Culture em Honolulu, capital do estado do Havaí. Durante este período, ela estudou a coleção de arte islâmica de Doris Duke e usou suas descobertas como parte de uma exposição, "Reflexões sobre Shangri La", que abriu em 27 de setembro na Galeria Arts of Islam no Museu de Arte de Honolulu. Uma segunda parte de sua residência envolveu a criação de um mural de duas partes no Shangri La Museum. Baseado em um poema do poeta palestino Mahmoud Darwish, a estrofe - retratada em uma fonte criada por um artista de escrita cúfica foliada e pixelizada, com raízes em vez de vegetação - é um comentário específico do local sobre a terra colonizada.

Reconhecimento e prêmios

 2020 - Indicada ao Prêmio de Liderança Global Tällberg / Eliasson.

 2019 - Bellagio Residência.
 2019 - Bolsa Skoll.

 2016 - Prêmio UNESCO-Sharjah de Cultura Árabe.
 2016 - Prêmio Príncipe Claus.
 2016 - TED Fellow Sênior.
 2016 - Finalista do Prêmio Jameel.
 2015 - Distinguished Alumna – American University of Beirut.
 2014 - 100 mulheres da BBC.
 2013 - 100 mulheres da BBC.
 Bolsista TED 2012.

Filosofia
Em sua arte, Bahia Shehab sempre incorporou temas politicamente carregados. Seu trabalho está preocupado com questões de interesse político atual, como a guerra civil no Líbano a partir da década de 1980, a revolução que varreu o Egito em 2011 e os direitos dos presos políticos. Um elemento importante de sua obra de arte é sua preocupação com as mulheres e, embora isso assuma um escopo amplamente político no sentido de que a preocupação é frequentemente com os direitos das mulheres, como mulher, Bahia Shehab também se preocupa com a humanidade das mulheres. Por meio de sua arte, ela encoraja outras pessoas a se relacionarem com a vida das mulheres, por mais comuns que essas vidas possam parecer. Sua preocupação com a herança árabe a levou a prestar atenção às mulheres árabes e às questões atuais que tornam a conquista dos direitos das mulheres uma questão importante. Embora liderada por esforços de pesquisa significativos, muitos dos quais são acadêmicos, ela é capaz de empregar muito de sua arte para se relacionar com um público contemporâneo não acadêmico.

Publicações

 Bahia Shehab, Bahia, "Você pode esmagar as flores: uma memória visual da revolução egípcia", Biblioteca Gingko, 2021.
 Bahia Shehab, Bahia e Nawar, Haytham, "A History of Arab Graphic Design", The American University in Cairo Press, 2019.
 Bahia Shehab, Bahia, "Na Esquina de um Sonho: Uma Jornada de Revolução e Resistência: A Arte de Rua da Bahia Bahia Shehab", Biblioteca Gingko, 2019.
 Bahia Shehab, Bahia, "Tradução Emocional", em Traduzindo Dissent: Vozes de e com a Revolução Egípcia, ed. Mona Baker, NY: Routledge, 2016, pp. 163–177
 Bahia Shehab, Bahia, "A Thousand Times No", em No Gods, No Masters, No Peripheries: Global Anarchisms, Barry Maxwell & Raymond Craib eds., Michigan: PM Press, 2015, pp. 233–241.
 Bahia Shehab, Bahia, Sonho de um Designer: Catálogo da Exposição Helmi el-Touni, Curso de Design Gráfico da AUC, 2014.
 Bahia Shehab, Bahia, "Landscape/Soundscape: 20 Minarets from the Arab World", In World Architecture, março de 2014.
 Bahia Shehab, Bahia, "Alcorão Púlpito do Juiz Zaineddine Yahya, Mordomo do Sultão Jaqmaq", in Arab Contemporary - Architecture and Identity, Michael Juul Holm & Mette Marie Kallenhauge eds. Humlebæk: Louisiana Museum of Modern Art & Rosendahls, 2014, pp. 33–34.
 Bahia Shehab, Bahia, "Spraying NO", in Walls of Freedom, Basma Hamdy & Don Karl eds. Malta: From Here to Fame, 2014, pp. 117–119.
 Bahia Shehab, Bahia, "Diálogos Urbanos", in Posições - Árabe Worlt, Johannes Ebert et el. ed. Göttingen: Steidl-Verlag, 2013, pp. 274–278.
 Bahia Shehab, Bahia, "Faṭimid Kūfī Epigraphy on the Gates of Cairo: Between Royal Patronage and Civil Utility", em Caligrafia e Arquitetura no Mundo Muçulmano, Mohammad Gharipour & Irvin Cemil Schick eds. Edimburgo: Edinburgh University Press, 2013, pp. 275–289.
 Bahia Shehab, Bahia, "Voices From the Region: Cairo as Mirror", in Geography: Realms, Regions and Concepts, autores Harm J. de Blij, Peter O. Muller & Jan Nijman, EUA: John Wiley & Sons, 2013, pp. 315.
 Bahia Shehab, Bahia, "GD 99: They Called Us the Harem", in Revolution/Evolution: Two Decades and Four Hundred Designers Later, Leila Musfy ed., Beirut: American University of Beirut Press, 2013, pp. 152–153.
 Bahia Shehab, Bahia, mil vezes não - Alif Lam-Alif: a história visual do Lam-Alif. Amsterdã: Khatt Books, 2011.

Veja também

 100 Mulheres (BBC)
 Mulheres na categoria BBC 100 Mulheres

Pessoas vivas
Nascidos em 1977
Artistas do Líbano
Artistas do Egito
Pessoas na lista BBC 100 Mulheres de 2013
Pessoas na lista BBC 100 Mulheres de 2014

redpajama_set_name: RedPajamaWikipedia


text:
Pobiti Kamani: Bulgaria's Stone Forest
Pobiti Kamani is a unique geological phenomenon which has perhaps no parallel to be found anywhere in the world today. Located around 18km inland from Varna, Bulgaria, the site can be found just off the road to the capital of Sofia, in an area known as Pashovi. The name literally translates as 'the hammered stones', although it is usually transliterated as 'the fossil forest' or 'stone forest'.
Pobiti Kamani consists of numerous clusters of stone columns, most of which reach heights between five and seven metres… with a thickness ranging from one third of a metre to three metres across.
The striking stone pillars cover a total area of fifty square kilometres, with a number of smaller groupings spreading out from the centre. Those stones found in the heart of the 'forest' are the most prominent, and these ancient pillars spread a total distance of nearly a kilometre.
The columns are almost all hollow cylinders, filled with sand and appearing as though hammered loosely into the earth; hence the name 'the hammered stones'. The site was designated as a natural landmark in 1937, and the stones have been found to contain a number of rare fossils – including the petrified remains of nummulite, mussels and giant snails.
These naturally-formed pillars have attracted the attention of scientists and geologists from around the world, who have each offered their own hypothesis as to the origin of the unique formations.
The first in-depth study of the Fossil Forest was commissioned in 1828 by the Russian General Dibich, who became fascinated with these stones and their potential origins. The site was later visited in 1854 by the English geologist William Hamilton, who hypothesised that the stones were "the work of the sea", and had been formed by chance over many millennia. These ideas were give further support by a geological survey carried out in 1855.
Perhaps the most cogent explanation to date came from the Bulgarian geologists Peter and Stefan Bonchev Gochev. The brothers believed that the columns date back to the Cenozoic Era, fifty million years ago, when much of Eastern Europe was still at the bottom of the ocean. As sediment and sludge settled to the bottom of the seabed, the thick layer of sand was compressed into limestone. A resultant release of gases forced its way up through holes in the strata, causing hollow flues to form and solidify. Many millions of years later the area has become a dry, arid landscape, and the surrounding sand was slowly eroded away to leave only these stone chimneys, now appearing as tall pillars stuck in the earth.
This idea of a paleo-hydrocarbon seep system seems the most likely explanation, and the process is currently under study by a number of academic institutions around the world; including Varna's own Institute of Oceanology.
It is believed by many locally that the 'forest' is a powerful source of energy… no matter what your take on such beliefs, it is doubtless a breathtaking place to visit, and imbued with a certain otherworldly atmosphere. An easy assumption to make upon arrival is that these are the remnants of an ancient temple; the pillars are often regularly spaced, and the central holes down the middle of each give the suggestion that they were once used to hold timbers or wooden beams in place.
Worthy of note are the large number of simulacra that can be observed around the area of Pobiti Kamani; accidental formations which happen to resemble human faces. These appear on a variety of rock surfaces, and many have been accredited with names and personalities by the locals; pictured here is a pillar known as 'the soldier', which casts a watchful eye over the site from its position near the road entrance.
The area around Pobiti Kamani is also blessed with a vast range of flora and fauna – this barren scrubland is in fact home to twenty-one species of birds, seven mammals and in excess of two-hundred-and-forty varieties of plant, many of which are notably rare.
More can be read about the Fossil Forest on Pobiti Kamani's official webpage.
Notice: It seems you have Javascript disabled in your Browser. In order to submit a comment to this post, please write this code along with your comment: d0159d07e642b9e97b7f88549b3e336e


Find out more about Dreamweaver, what exactly it's utilized for and just what 'Dreamweaver compatibility' signifies.
Dreamweaver is a feature-rich website design application, which has become widespread among users through the past decade since it enables you to build professional sites with ease. It's installed on a personal computer and you will be able to publish the content straight from it without the need for any kind of third-party software, therefore you'll always have the latest copy of your website as a backup on your end. Dreamweaver includes numerous templates for various types of sites and has a WYSIWYG editor, which will allow you to include menus, interactive buttons and contact forms on your website even when you do not have any previous experience. In case you are more experienced, you'll also be able to view and edit the program code of the pages manually. One advantage which Dreamweaver has over online web design apps is that you're able to take care of a variety of sites in the same time without having to log in or out of any system.
All the Linux shared hosting that we offer are Dreamweaver-compatible, so you are able to employ this web design application with our services without a problem. You'll be able to upload your new content straight from the program - you do not need to log in to your Hepsia website hosting Control Panel and employ some third-party FTP app. Instead, you can type in the FTP details for your account in Dreamweaver and the software will publish the pages that you have created and they will go live on the web immediately. You will be able to update your site just as easily, as once you change anything on your machine, you can publish the new content and the file on our server will be substituted with the updated one instantly. In this way, you will be able to create and maintain a beautiful and feature-rich site fast and easy and make it visible on the net with just a couple of clicks.
You can use a semi-dedicated server account to host a website made with Dreamweaver as our cloud hosting platform is completely compatible with the app. When you are used to working with it and you already have it installed on your notebook or desktop computer, all you need to publish your site on our servers after you create it is to type in your FTP login details in the Dreamweaver settings. The program will copy all the content in your account on our end and your website will be visible on the web instantly. In order to update the website in the future, you just have to make the changes on your computer and click on the Publish button, as the FTP info will be saved. Provided you would like to build a couple of sites and host them inside the same account on our end, you can simply set up a couple of FTP accounts from the Hepsia Control Panel, each of them with access to a different domain or subdomain folder.


Armac Martin has launched a new industrial collection to successfully mark its 90th year in business.
The MIX is a bold, contemporary range of hardware designed and manufactured by Armac Martin, but in an innovative twist, the product can be "mixed" by the consumer.
With its engaging strapline, "Made by us, mixed by you", customers can MIX their own version of the collection, choosing between plain, diamond knurled or straight machined versions of the knob and finials, with either a matt black, satin nickel or satin brass finish.
Moving away from the brand's more traditional designs, the MIX offers a bold alternative, ideal for contemporary and modern interiors.
"To mark our 90th year in business, we wanted to design and manufacture a product range with a twist. The MIX is an exciting, bold and innovative collection that would particularly compliment the contemporary and industrial look.
To keep up to date with our exciting plans to expand into other product ranges later this year, sign up to our email insights below.
To find out more about the new MIX collection, click here.


The Digital Customer Experience project seeks to enhance the customer experience through a comprehensive redesign/re-platforming of all digital channels including the Company's website, mobile, and Apps.
Related work experience includes, but not limited to, agile project management or customer experience management. Experience with various Company and Customer Operations' computer systems is preferred.
Knowledge of Customer Operations is preferred. Advanced degree Preferred. Project Management training or certification is preferred.
*Plan, execute, monitor, track, manage risks and issues and report on projects using traditional and Agile development processes and techniques.
*Tracking and communicating team velocity and sprint/release progress to all affected teams and management using Agile estimating techniques.
*Lead, Arrange and facilitate all Agile ceremonies including, Stand-ups, Reviews, Retrospectives, Grooming, and Sprint and Release planning.
*Analyze business requirements to develop and define high-level epics and stories to create a prioritized Product Backlog.
*Write user stories that are clear, concise and easy to understand, driven by VOC and provide business value.
*Identify related user stories and epics, grouping them into themes as necessary and documenting the interrelationship and associated business process flows as necessary.
*Responsible for making sure that daily task status and hours are being updated by team on systems such as RCLM or other Agile tracking systems to provide transparency on product and sprint backlogs.
*Develop and maintain project plans, resource utilization schedules and budget materials.
*Conduct research and analysis to determine business trends, forecasts and benchmarking with utilities and other businesses related to web, mobile and App use and development.
*Develops business and technical requirements for key projects and processes changes associated with the redesign of the Company's digital channels.
*Conducts testing associated with changes to business processes and systems, including development of detailed test plans and test cases, execution of testing, documentation of findings, and working with business and technical staff to resolve identified issues.
*Support a customer-centric culture, taking special interest in meeting the needs of external and internal stakeholders.


It has begun. If your mailbox is anything like ours, the catalogues are beginning to arrive. They are designed, of course, to whet our appetites and inspire our thinking about giving and receiving gifts for Christmas. Some are incredibly practical. Others are extremely extravagant. One member of our household, in particular, reads the catalogues with great interest and adds desirable items to her ever-expanding lists of potential holiday wishes.
In my avocational work in November and December, I am somewhat required by tradition to ask the question, "What do you want for Christmas this year?" One young fellow answered that question by saying, "A Nintendo, an XBox, and a Playstation." Being in a less than jolly mood that day, I said, "You just named three things that do exactly the same thing. Pick one." His parents rejoiced.
In my absolute favorite stop of the year, I travel to Princeton and spend the evening with intellectually impaired adults at GCARC. Most of them live in group homes. If they have family, many are not in close contact. What they have is each other. When I ask the question, the answer is usually socks, underwear, a new dress, new pants, new shoes. One fellow, one year, asked for his own 2-Liter bottle of Mountain Dew. There are times it brings a tear to old Santa's eye.
That's where this sermon is heading.
We're given a little background information on Solomon.
Solomon's story begins with some palace intrigue. There was a dispute over the line of succession following David. David's son, Adonijah, makes his play to succeed David, but he is not supported by Zadok the priest and Nathan the prophet. Adonijah begins acting as if he were the king and Bathesheba goes to the king, reminding him of his promise that Solomon would become king. Then, as the song goes, "Zadok the priest and Nathan the prophet anointed Solomon king." The transition does not go well. Solomon purges the court, has his half-brother Adonijah killed, Solomon consolidates his power, and begins his reign as king.
Then comes our story for the day. We need to remember that there is no Temple. Solomon will begin construction of the Temple in the fourth year of his reign. Worship was offered at "high places," sacred places, usually on elevated land, where worship was often offered to lesser gods. Since there is no Temple, God does not seem to be offended that Solomon offers worship in this way.
We are told that he goes to Gibeon, the principle high place, and there he offers a thousand burnt offerings. In the context of worshiping and recognizing God, Solomon is extravagantly generous in his giving. It is not one offering, or two, or three, but a thousand. Considering his position as king, Solomon is giving in proportion to what he possesses. Solomon, for whatever else you might want to say about him, was a deeply religious man.
In response to Solomon's worship and sacrifice, we are offered a glimpse into the dream that comes to him in his sleep. God comes to Solomon and says, "Ask what I should give you." Couch it more colloquially: "What do you want from me?" Solomon has offered to God. Now God is offering to Solomon.
Notice, please, that Solomon doesn't ask for wisdom. When we hear wisdom, we think of Einstein. Solomon isn't asking to be brilliant. Solomon is asking for something far closer to common sense – the ability to tell the difference between right and wrong - good and bad - falsehood and truth. He wants to be a good leader. He wants to do what is best for his people.
Then, as if to illustrate the giving and receiving of the gift of sound judgment, we are given the famous story of the two women and the baby. Solomon listens carefully, discerns what is going on, and finds a way to determine who is lying and who is telling the truth. Solomon's request has been answered and we all can see that for ourselves.
But Solomon's story doesn't end there. Like many of the Bible's central characters, Solomon has his stellar moments and his shadowed moments. We know that Solomon has received his gift of wisdom and that he has judged others wisely.
But, when it comes to his own life, Solomon is not as able to judge, or govern, his own life. His desires run away with him. He has appetites that are ruinous. He brings in other gods to his court and permits their worship. He spends everything in the treasury and drives his country into crippling debt. He fails to meet the challenge of raising his sons and developing a succession plan, so that at his death, the country is torn in two.
It could be argued that the stewardship of Solomon's gift of wisdom was suspect and insufficient. God had given him so much and he used some of the gift for God's glory, but not all of the gift. His faulty stewardship of the gifts of God was his undoing.
So, what's the lesson for us?
Perhaps the first question that needs to be asked is, "how is our stewardship?" What are we doing with what God has given us? How are we using the gifts of God for the glory of God? How are we using God's gifts for the betterment of our neighbors and our world?
God's gifts are not given to us for our self-aggrandizement or to give us a reason to brag and boast. God entrusts gifts to us to be used for God's purposes and for the well-being of all. Through us, God seeks to be at work in the world's trials and troubles.
We may have the gift of wisdom, like Solomon, to make good decisions in our interactions with others. But we may also have the gift of teaching, or hospitality, or compassion, or mercy. God may have placed within our lives the gift of helping, the gift of praying for others, the gift of strong faith, the gift of encouragement, or any of the other gifts that God so freely gives to God's people.
And when we use those gifts wisely and generously and - dare I say it - liberally, we get it right. When we use the gifts that God has given for the reason God gives them, we live the life we were meant to live. When we are faithful in our stewardship of all God's gifts, we get it right.
And when we don't, there is grace and forgiveness and acceptance. It's Reformation Sunday, the day when we, in the Protestant tradition, mark that time so long ago when our ancestors heard God's voice to move forward in a new way.
Central to that entire effort in the church was the concept of grace. God's undeserved and unmerited love and favor is greater than our sins, our faults, and our failures. God forgives and restores us to be the people God intended and created us to be. No matter how often we fail, no matter what we do, no matter what we leave undone, God's love is there to forgive and offer a new beginning.
When we get it wrong, God is there to forgive and restore.
When we get it right, God celebrates and the world is a better place.
Whatever your gift - whatever God has given you - is to be used for something far beyond yourself. Whatever gift God has given you has been entrusted to you for a reason and a purpose. When we use God's gifts for good - for blessing - for the sake of something beyond ourselves - we finally get it right.


An 360 Degrees View of Beautiful Botanic Garden KL. Powered with Gyro capabilities of smartphone to enhance the viewing experience.
Go Ahead, take a dive and experience 360 Virtual Tour with your smartphone.
NOSK was developed and designed with top Ear, Nose and Throat specialists to provide a natural aid to allergy and asthma sufferers. Proven to reduce the inhalation of pollutants and allergens. NOSK provide natural relief for asthma and allergy sufferers. Twin, soft nasal filters gently slip into the nostrils to help block and stop the substances that irritate and aggravate.
ALR TECHNOLOGIES SDN BHD is a leading and professional automation control products supplier and solutions company. As an authorized distributor of GE products, ALR Technologies strive to provide excellent services to their customer through their highly dedicated and experienced consulting team.
Genius Mind Damansara is an outlet in Bukit Utama doing brain enrichment for children and adults enhancing their 5 senses and improving their reflexes and memory.
IIMAT, International Institute of Management and Technology is a choice institution of higher learning that produces students capable of exploring knowledge, displaying creative individualism and intellectual thinking and one that harness modern and updated resources in a constantly changing and dynamic marketplace and also an institution that produces a quality yet affordable education.
RJ Silkcaot specializes in the application of silkcoat mineral stones, silkplaster, ruloser, terasit, palace, mamarito, special effect paints, for design, protection and durability. Those are the product of Turkey and Italy. Also a solution for slippery floors. Mineral stones prevents heat from going through the concrete walls and therefore it cools down the interior and save energy. Mineral stones are durable , applied following the international standard , and a solution to the repainting.


The ENYSFL was a chapter of the SFL. It was begun as a sub-chapter of the Brooklyn SFL but eventually grew larger and independent. Fl. 1935-38.
It published Arcturus as a clubzine and members included Fred Pohl, Harold W. Kirshenblit, Irving L. Kosow and R. Henry Drucker.


In the postponed match of the German Regionalliga group North in Braunschweig will face Freie Turner Braunschweig and Goslarer SC. FT Braunschweig is on the last place of the standings with 2 wins, 4 draws and 19 losses and goal score 19-70. At home, FT Braunschweig has 2 draws and 10 losses and goal score 7-41. In 2015, FT Braunschweig has one draw (at home against VfB Oldenburg 0-0) and 4 losses... Goslarer SC is on the 15th place with 7 wins, 6 draws and 12 losses and goal score 37-48. In away matches Goslarer SC.has 3 wins, 4draws and 5 losses and goal score 21-23.
In 2015, Goslarer SC has 2 wins (in the last two rounds against LSK Hansa away 8-0 and at home against Werder Bremen II 3-0), tw draws and one loss (at home against firstplaced Wolfsburg II 0-3).


Could a 60 year old case torpedo Mueller's report?
One of the more compelling bits of drama coming out of the Russia, Russia, Russia investigation this summer has been the question of Bob Mueller's highly anticipated "report" on the findings of the grand jury. Rudy Giuliani has argued that he has to release it by this week or sit on it until after the midterms. (A claim with some basis in reality but not a rule written in stone.) Others have argued that politics shouldn't set the timetable for anything in terms of upholding the law. But is there even a report? Thus far, Mueller's been silent on the matter.
Assuming there is, however, there's a completely separate court case drawing to a close in the next month which could keep any report Mueller generates under wraps. Politico has a fascinating look at a mystery that's over six decades old and a lawsuit arising from it which could seal the report from the prying eyes of the public and the press.
But if a Washington appeals court set to hear the murder-related case next month sides with the Justice Department and rules that judges don't have the freedom to release grand jury information that is usually kept secret, it could throw a monkey wrench into any plans Mueller has to issue a public report on his probe's findings, lawyers following the issue said.
And it might even keep the special counsel from sending a report to Congress, shaking Democrats' hopes that such a document could provide the impetus for impeachment proceedings against the president.
The short version of the mystery is that it began in 1959 when Columbia University professor Jesus Galindez went missing in New York City. His body was never found, but it was reported that he'd been kidnapped, flow to the Dominican Republic and possibly murdered there. An author named Stuart McKeever has been exploring the mystery for the past four decades and he wants the see the findings of a grand jury which looked into the mystery many years ago. (While failing to solve the issue.) But the Justice Department is fighting him in court, saying that the findings of such grand jury proceedings must remain secret except under very specific provisions.
If the Juste Department prevails and keeps that grand jury report under wraps, they can just as easily argue that the findings of Mueller's grand jury must also remain secret. As Politico details nicely, there used to be a law allowing disclosure of grand jury reports to Congress in the case of special counsel investigations, but that law expired in 1999. The existing rules for appointing a special counsel contain no such provision allowing for a report or the breaking of the secrecy of the grand jury.
So where does that leave us? We will certainly find out which people the grand jury finds sufficient grounds to charge (such as Manafort and Cohen) when the charges are brought against them. But all of the other details which were examined and possible revelations made would seemingly have to remain under wraps. This is bad news for the public and both sides of political battle we're currently embroiled in. If no new dirt can be revealed, Trump and his team may chalkd that up as a win. But if there was information in there vindicating him, he loses that as well. Meanwhile, "unnamed sources" will be leaking carefully selected details to CNN and the New York Times. Absent a full report, the Democrats will be free to just make things up as they go along.
I understand the need for secrecy when it comes to grand jury proceedings to avoid unfairly smearing people, exposing the identieis of witnesses and all the rest. But in this case, it's probably not going to do much to serve the public interest if the Justice Department wins this suit and locks up Mueller's report (along with all other grand jury reports) in the process.


text:
About Serbia
STATUTE OF THE ASSOCIATION
FRIENDS OF THE ASSOCIATION
Back to news ...
MAGICAL BALI
The virtual exhibition of the fine art photographer Predrag Mijailović
Fine art photographer Predrag Mijailović, presented his photographic impressions of the Indonesian island of Bali on the virtual photography exhibition on the web site of The Association of Serbian-Indonesian Friendship NUSANTARA www.nusantara.rs.
Due to the COVID–19 pandemic, the subsequent impossibility to organise an exhibition, which would be available for a broader audience in one of Belgrade's galleries, the organisers decided to organise the the exhibition virtually, hoping that Belgrade's audience will be able to, after the end of the pandemic, enjoy the photographs.
The virtual exhibition presents 42 photographs, capturing the life of the common man in tropical, picturesque and colorful Indonesia. The author tried to present the life of the Indonesian man in nature, for from the luxury hotels and restaurants, in the touristic centres. Besides the common man, he took photos of rice fields, as places on which the Indonesians work hard, the ceremonies, the shop owners, as the wonderful beaches and the colourful flora. On Bali he stayed in May of 2018., when on this island, after the rainy season, the prime tourist season is starting. The trip was organised by himself and during two weeks, stayed in Ubud, from which he visited most of the island, after that he stayed in the south, in Nusa Dua, known for its beautiful beaches. Nature's beauty amazed him, while in particular a strong impression left the architecture of the temples, the traditional customs and a very rich gastronomical offer, as the far-famed Indonesian spices. However, the strongest impression left the Indonesians themselves, who are distinctly cordial, kind, accomodating, thus he states that Indonesia is a country of smiling people.
Indonesia, as the most populous Muslim country in the world, is the largest island country in the world and the world's third democracy. With more than 17.000 islands, cliffs and rocks, more than 300 ethnicities, a country divided by three time zones, a big number of active volcanoes and lush vegetation, it is a huge inspiration for Serbian tourists, businessmen as it is for professional and fine-art photographers, who are increasingly visiting this unique country. A rich history, unique flora and fauna, smiling people, were the motives for Mijailović to visit the popular island of Bali and take a large number of photos.
Mijailović was born in 1971. in Belgrade. He started to do photography more intensively since 2007. He participated in a number of group exhibitions. He likes to photograph people and their environment the most, so his preferred genres are street and life photography. In the last six years is active in commercial photography as well, most often as an event photographer. He lives and work in Belgrade.
Nusantara was established in 2003. and is striving to become the core of the non-governmental sector in developing the relations between two geographically distant but through recent history, close countries.
NUSANTARA, with its activities, helps establish cooperation in the field of social issues, arts, education, culture, but also contributes to the strengthening and development of political and economic relations, cooperation between Serbia and Indonesia, and represents a kind of "bridge" for developing bilateral ties between the two traditionally friendly countries.
Copyright © NUSANTARA 2008. All rights reserved.


text:
package com.intellij.structuralsearch.inspection;

import com.intellij.codeInsight.daemon.HighlightDisplayKey;
import com.intellij.codeInsight.daemon.impl.ProblemDescriptorWithReporterName;
import com.intellij.codeInspection.*;
import com.intellij.codeInspection.ex.*;
import com.intellij.dupLocator.iterators.CountingNodeIterator;
import com.intellij.dupLocator.iterators.NodeIterator;
import com.intellij.notification.NotificationGroupManager;
import com.intellij.notification.NotificationType;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.fileTypes.PlainTextLikeFileType;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.InvalidDataException;
import com.intellij.openapi.util.Key;
import com.intellij.openapi.util.WriteExternalException;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.openapi.util.text.NaturalComparator;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.profile.codeInspection.InspectionProfileManager;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiElementVisitor;
import com.intellij.psi.PsiFile;
import com.intellij.structuralsearch.*;
import com.intellij.structuralsearch.impl.matcher.MatchContext;
import com.intellij.structuralsearch.impl.matcher.filters.LexicalNodesFilter;
import com.intellij.structuralsearch.impl.matcher.iterators.SsrFilteringNodeIterator;
import com.intellij.structuralsearch.impl.matcher.predicates.ScriptSupport;
import com.intellij.structuralsearch.plugin.replace.ReplacementInfo;
import com.intellij.structuralsearch.plugin.replace.impl.Replacer;
import com.intellij.structuralsearch.plugin.replace.ui.ReplaceConfiguration;
import com.intellij.structuralsearch.plugin.ui.Configuration;
import com.intellij.structuralsearch.plugin.ui.ConfigurationManager;
import com.intellij.structuralsearch.plugin.ui.UIUtil;
import com.intellij.structuralsearch.plugin.util.SmartPsiPointer;
import com.intellij.util.ObjectUtils;
import com.intellij.util.SmartList;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.MultiMap;
import org.jdom.Element;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentLinkedDeque;
import java.util.stream.Collectors;

import static com.intellij.codeInspection.ProblemHighlightType.GENERIC_ERROR_OR_WARNING;

public class SSBasedInspection extends LocalInspectionTool implements DynamicGroupTool {
  public static final Comparator<? super Configuration> CONFIGURATION_COMPARATOR =
    Comparator.comparing(Configuration::getName, NaturalComparator.INSTANCE).thenComparingInt(Configuration::getOrder);
  private static final Object LOCK = ObjectUtils.sentinel("SSRLock"); // hack to avoid race conditions in SSR

  private static final Key<Map<Configuration, Matcher>> COMPILED_PATTERNS = Key.create("SSR_COMPILED_PATTERNS");
  private final MultiMapEx<Configuration, Matcher> myCompiledPatterns = new MultiMapEx<>();

  @NonNls public static final String SHORT_NAME = "SSBasedInspection";
  private final List<Configuration> myConfigurations = ContainerUtil.createLockFreeCopyOnWriteList();

  private boolean myWriteSorted = false;
  private final Set<String> myProblemsReported = new HashSet<>(1);
  private InspectionProfileImpl mySessionProfile;

  @Override
  public void writeSettings(@NotNull Element node) throws WriteExternalException {
    if (myWriteSorted) {
      // need copy, because lock-free copy-on-write list doesn't support sorting
      final ArrayList<Configuration> configurations = new ArrayList<>(myConfigurations);

      // ordered like in UI by name and pattern order
      // (for easier textual diffing between inspection profiles, because the order doesn't change as long as the name doesn't change)
      Collections.sort(configurations, CONFIGURATION_COMPARATOR);
      ConfigurationManager.writeConfigurations(node, configurations);

      // no order attribute written
      for (Element child : node.getChildren()) {
        child.removeAttribute("order");
      }
    }
    else {
      ConfigurationManager.writeConfigurations(node, myConfigurations);
    }
  }

  @Override
  public void readSettings(@NotNull Element node) throws InvalidDataException {
    myProblemsReported.clear();
    myConfigurations.clear();
    ConfigurationManager.readConfigurations(node, myConfigurations);
    Configuration previous = null;
    boolean sorted = true;
    for (Configuration configuration : myConfigurations) {
      if (configuration.getOrder() != 0 || previous != null && CONFIGURATION_COMPARATOR.compare(previous, configuration) > 0) {
        sorted = false;
        break;
      }
      previous = configuration;
    }
    if (sorted) {
      previous = null;
      for (Configuration configuration : myConfigurations) {
        if (previous != null && previous.getUuid().equals(configuration.getUuid())) {
          configuration.setOrder(previous.getOrder() + 1); // restore order
        }
        previous = configuration;
      }
      myWriteSorted = true; // write sorted if already sorted
    }
  }

  @Override
  @NotNull
  public String getGroupDisplayName() {
    return getGeneralGroupName();
  }

  @Override
  @NotNull
  @NonNls
  public String getShortName() {
    return SHORT_NAME;
  }

  @Override
  public void initialize(@NotNull GlobalInspectionContext context) {
    super.initialize(context);
    mySessionProfile = ((GlobalInspectionContextBase)context).getCurrentProfile();
  }

  @Override
  public void cleanup(@NotNull Project project) {
    super.cleanup(project);
    mySessionProfile = null;
    myCompiledPatterns.clear();
  }

  @Override
  public void inspectionFinished(@NotNull LocalInspectionToolSession session, @NotNull ProblemsHolder problemsHolder) {
    final Map<Configuration, Matcher> compiledPatterns = session.getUserData(COMPILED_PATTERNS);
    if (compiledPatterns != null) {
      checkInCompiledPatterns(compiledPatterns);
    }
  }

  @NotNull
  @Override
  public PsiElementVisitor buildVisitor(@NotNull ProblemsHolder holder, boolean isOnTheFly, @NotNull LocalInspectionToolSession session) {
    if (myConfigurations.isEmpty()) return PsiElementVisitor.EMPTY_VISITOR;
    final PsiFile file = holder.getFile();
    if (file.getFileType() instanceof PlainTextLikeFileType) return PsiElementVisitor.EMPTY_VISITOR;

    final Project project = holder.getProject();
    final InspectionProfileImpl profile =
      (mySessionProfile != null && !isOnTheFly) ? mySessionProfile : InspectionProfileManager.getInstance(project).getCurrentProfile();
    final List<Configuration> configurations = new SmartList<>();
    for (Configuration configuration : myConfigurations) {
      final ToolsImpl tools = profile.getToolsOrNull(configuration.getUuid().toString(), project);
      if (tools != null && tools.isEnabled()) {
        configurations.add(configuration);
        register(configuration);
      }
    }
    if (configurations.isEmpty()) return PsiElementVisitor.EMPTY_VISITOR;

    final Map<Configuration, Matcher> compiledPatterns;
    if (!Registry.is("ssr.multithreaded.inspection")) {
      compiledPatterns = SSBasedInspectionCompiledPatternsCache.getInstance(project).getCachedCompiledConfigurations(configurations);
      if (compiledPatterns.isEmpty()) return PsiElementVisitor.EMPTY_VISITOR;
      synchronized (LOCK) {
        for (Map.Entry<Configuration, Matcher> entry : compiledPatterns.entrySet()) {
          final Matcher matcher = entry.getValue();
          if (matcher == null) {
            continue;
          }
          matcher.getMatchContext().setSink(new InspectionResultSink());
        }
      }
    }
    else {
      compiledPatterns = checkOutCompiledPatterns(configurations, project);
      session.putUserData(COMPILED_PATTERNS, compiledPatterns);
    }
    return new SSBasedVisitor(compiledPatterns, profile, holder);
  }

  public static void register(@NotNull Configuration configuration) {
    if (configuration.getOrder() != 0) {
      // not a main configuration containing meta data
      return;
    }
    // modify from single (AWT) thread, to prevent race conditions.
    ApplicationManager.getApplication().invokeLater(() -> {
      final String shortName = configuration.getUuid().toString();
      final HighlightDisplayKey key = HighlightDisplayKey.find(shortName);
      if (key != null) {
        if (!isMetaDataChanged(configuration, key)) return;
        HighlightDisplayKey.unregister(shortName);
      }
      final String suppressId = configuration.getSuppressId();
      final String name = configuration.getName();
      if (suppressId == null) {
        HighlightDisplayKey.register(shortName, () -> name, SHORT_NAME);
      }
      else {
        HighlightDisplayKey.register(shortName, () -> name, suppressId, SHORT_NAME);
      }
    }, ModalityState.NON_MODAL);
  }

  private static boolean isMetaDataChanged(@NotNull Configuration configuration, @NotNull HighlightDisplayKey key) {
    if (StringUtil.isEmpty(configuration.getSuppressId())) {
      if (!SHORT_NAME.equals(key.getID())) return true;
    }
    else if (!configuration.getSuppressId().equals(key.getID())) return true;
    return !configuration.getName().equals(HighlightDisplayKey.getDisplayNameByKey(key));
  }

  @Override
  public @NotNull List<LocalInspectionToolWrapper> getChildren() {
    return getConfigurations().stream()
      .filter(configuration -> configuration.getOrder() == 0)
      .map(configuration -> new StructuralSearchInspectionToolWrapper(getConfigurationsWithUuid(configuration.getUuid())))
      .collect(Collectors.toList());
  }

  private static LocalQuickFix createQuickFix(@NotNull Project project, @NotNull MatchResult matchResult, @NotNull Configuration configuration) {
    if (!(configuration instanceof ReplaceConfiguration)) return null;
    final ReplaceConfiguration replaceConfiguration = (ReplaceConfiguration)configuration;
    final Replacer replacer = new Replacer(project, replaceConfiguration.getReplaceOptions());
    final ReplacementInfo replacementInfo = replacer.buildReplacement(matchResult);

    return new LocalQuickFix() {
      @Override
      @NotNull
      public String getName() {
        return SSRBundle.message("SSRInspection.replace.with", replacementInfo.getReplacement());
      }

      @Override
      public void applyFix(@NotNull Project project, @NotNull ProblemDescriptor descriptor) {
        final PsiElement element = descriptor.getPsiElement();
        if (element != null) {
          replacer.replace(replacementInfo);
        }
      }

      @Override
      @NotNull
      public String getFamilyName() {
        //noinspection DialogTitleCapitalization
        return SSRBundle.message("SSRInspection.family.name");
      }
    };
  }

  @NotNull
  private Configuration getMainConfiguration(@NotNull Configuration configuration) {
    if (configuration.getOrder() == 0) {
      return configuration;
    }
    final UUID uuid = configuration.getUuid();
    return myConfigurations.stream().filter(c -> c.getOrder() == 0 && uuid.equals(c.getUuid())).findFirst().orElse(configuration);
  }

  @NotNull
  public List<Configuration> getConfigurations() {
    return new SmartList<>(myConfigurations);
  }

  @NotNull
  public List<Configuration> getConfigurationsWithUuid(@NotNull UUID uuid) {
    final List<Configuration> configurations = ContainerUtil.filter(myConfigurations, c -> uuid.equals(c.getUuid()));
    configurations.sort(Comparator.comparingInt(Configuration::getOrder));
    return configurations;
  }

  public boolean addConfiguration(@NotNull Configuration configuration) {
    if (myConfigurations.contains(configuration)) {
      return false;
    }
    myConfigurations.add(configuration);
    myWriteSorted = true;
    return true;
  }

  public boolean addConfigurations(@NotNull Collection<? extends Configuration> configurations) {
    boolean modified = false;
    for (Configuration configuration : configurations) {
      modified |= addConfiguration(configuration);
    }
    return modified;
  }

  public boolean removeConfiguration(@NotNull Configuration configuration) {
    final boolean removed = myConfigurations.remove(configuration);
    if (removed) myWriteSorted = true;
    return removed;
  }

  public boolean removeConfigurationsWithUuid(@NotNull UUID uuid) {
    final boolean removed = myConfigurations.removeIf(c -> c.getUuid().equals(uuid));
    if (removed) myWriteSorted = true;
    return removed;
  }

  private final class InspectionResultSink extends DefaultMatchResultSink {
    private Configuration myConfiguration;
    private ProblemsHolder myHolder;

    private final Set<SmartPsiPointer> duplicates = new HashSet<>();

    InspectionResultSink() {}

    void setConfigurationAndHolder(@NotNull Configuration configuration, @NotNull ProblemsHolder holder) {
      myConfiguration = configuration;
      myHolder = holder;
    }

    void resetConfigurationAndHolder() {
      myConfiguration = null;
      myHolder = null;
    }

    @Override
    public void newMatch(@NotNull MatchResult result) {
      if (!duplicates.add(result.getMatchRef())) {
        return;
      }
      registerProblem(result, myConfiguration, myHolder);
    }

    private void registerProblem(MatchResult matchResult, Configuration configuration, ProblemsHolder holder) {
      final PsiElement element = matchResult.getMatch();
      if (!element.isPhysical() || holder.getFile() != element.getContainingFile()) {
        return;
      }
      final LocalQuickFix fix = createQuickFix(element.getProject(), matchResult, configuration);
      final Configuration mainConfiguration = getMainConfiguration(configuration);
      final String name = ObjectUtils.notNull(mainConfiguration.getProblemDescriptor(), mainConfiguration.getName());
      final InspectionManager manager = holder.getManager();
      final ProblemDescriptor descriptor =
        manager.createProblemDescriptor(element, name, fix, GENERIC_ERROR_OR_WARNING, holder.isOnTheFly());
      final String toolName = configuration.getUuid().toString();
      holder.registerProblem(new ProblemDescriptorWithReporterName((ProblemDescriptorBase)descriptor, toolName));
    }

    @Override
    public void matchingFinished() {
      duplicates.clear();
    }
  }

  @Nullable
  Map<Configuration, Matcher> checkOutCompiledPatterns(@NotNull List<? extends Configuration> configurations, @NotNull Project project) {
    final Map<Configuration, Matcher> result = new HashMap<>();
    for (Configuration configuration : configurations) {
      final Matcher matcher = myCompiledPatterns.popValue(configuration);
      if (matcher == Matcher.EMPTY) {
        continue;
      }
      if (matcher != null) {
        result.put(configuration, matcher);
      }
      else {
        final Matcher newMatcher = SSBasedInspectionCompiledPatternsCache.getInstance(project).buildCompiledConfiguration(configuration);
        if (newMatcher != null) {
          newMatcher.getMatchContext().setSink(new InspectionResultSink());
        }
        result.put(configuration, newMatcher);
      }
    }
    return result;
  }

  void checkInCompiledPatterns(@NotNull Map<Configuration, Matcher> compiledPatterns) {
    for (Map.Entry<Configuration, Matcher> entry : compiledPatterns.entrySet()) {
      final Configuration configuration = entry.getKey();
      final Matcher matcher = entry.getValue();
      if (matcher == null) {
        myCompiledPatterns.putValue(configuration, Matcher.EMPTY);
      }
      else {
        matcher.getMatchContext().getSink().matchingFinished();
        myCompiledPatterns.putValue(configuration, matcher);
      }
    }
  }

  private static class MultiMapEx<K, V> extends MultiMap<K, V> {
    MultiMapEx() {
      super(new ConcurrentHashMap<>());
    }

    @Override
    protected @NotNull Collection<V> createCollection() {
      return new ConcurrentLinkedDeque<>();
    }

    public V popValue(K k) {
      final Deque<V> vs = (Deque<V>)myMap.get(k);
      return vs == null ? null : vs.pollLast();
    }
  }

  private class SSBasedVisitor extends PsiElementVisitor {

    private final Map<Configuration, Matcher> myCompiledOptions;
    private final InspectionProfileImpl myProfile;
    private @NotNull final ProblemsHolder myHolder;

    SSBasedVisitor(Map<Configuration, Matcher> compiledOptions, InspectionProfileImpl profile, @NotNull ProblemsHolder holder) {
      myCompiledOptions = compiledOptions;
      myProfile = profile;
      myHolder = holder;
    }

    @Override
    public void visitElement(@NotNull PsiElement element) {
      if (LexicalNodesFilter.getInstance().accepts(element)) return;
      if (Registry.is("ssr.multithreaded.inspection")) {
        processElement(element);
      }
      else {
        synchronized (LOCK) {
          processElement(element);
        }
      }
    }

    private void processElement(@NotNull PsiElement element) {
      for (Map.Entry<Configuration, Matcher> entry : myCompiledOptions.entrySet()) {
        final Configuration configuration = entry.getKey();
        final Matcher matcher = entry.getValue();
        if (matcher == null) continue;

        processElement(element, configuration, matcher);
      }
    }

    private void processElement(PsiElement element, Configuration configuration, Matcher matcher) {
      if (!myProfile.isToolEnabled(HighlightDisplayKey.find(configuration.getUuid().toString()), element)) {
        return;
      }
      final NodeIterator matchedNodes = SsrFilteringNodeIterator.create(element);
      if (!matcher.checkIfShouldAttemptToMatch(matchedNodes)) {
        return;
      }
      final MatchContext matchContext = matcher.getMatchContext();
      final InspectionResultSink sink = (InspectionResultSink)matchContext.getSink();
      sink.setConfigurationAndHolder(configuration, myHolder);
      final int nodeCount = matchContext.getPattern().getNodeCount();
      try {
        matcher.processMatchesInElement(new CountingNodeIterator(nodeCount, matchedNodes));
      }
      catch (StructuralSearchException e) {
        if (myProblemsReported.add(configuration.getName())) { // don't overwhelm the user with messages
          final String message = e.getMessage().replace(ScriptSupport.UUID, "");
          NotificationGroupManager.getInstance()
            .getNotificationGroup(UIUtil.SSR_NOTIFICATION_GROUP_ID)
            .createNotification(SSRBundle.message("inspection.script.problem", message, configuration.getName()), NotificationType.ERROR)
            .setImportant(true)
            .notify(element != null ? element.getProject() : null);
        }
      }
      finally {
        sink.resetConfigurationAndHolder();
        matchedNodes.reset();
      }
    }
  }
}

redpajama_set_name: RedPajamaGithub


The purpose of this project is to see whether skill, training and courses, and attitude are the factors that hinder the school Headmasters and Senior Assistants to utilized the ICT facilities in managing the school to compare the skill and attitude between female and male school administrator.The study made is a descriptive study. The study is made on 20 "Sekolah Kebangsaan" in the district of Padang Terap involving the total of 72 respondents consists of Headmaster and Senior Assistants. Descriptive analysis has been done see the frequency, percentage and mean. The results shows that there are two factors that hinder the utilization of IT facilities in school Management that is skill and training.The comparison of the skill between the female and male school administrators show that the male had slightly higher skill compare to female. Beside that,The comparison of the attitude between the female and male school administrators show that there is no visible difference between them.


UBIQ pairs up with Vault by Vans for this latest capsule collection which includes a t-shirt, cap, socks and one Era and Sk8 Hi model. Everything dons a very iconic look with the Japanese traditional artwork all over each shoe and peice in the collection. Make sure to keep your eyes peeled as this very limited collection releases on November 9th and will be available directly from UBIQ here. Continue below for a few of the standout shots and peices from this collection.


text:
THE GLOBAL CITIZEN: Gardening and Politics |
THE GLOBAL CITIZEN: Gardening and Politics
Something about gardening gets me thinking about politics. Maybe it's the bending over with the blood running to my head. Maybe making a tiny piece of the world beautiful gets me wishing the whole world could be beautiful. Maybe it's sunstroke.Anyway, as I was in front of the house the other day putting in marigolds, I found myself imagining that suddenly, as if struck by lightning, every candidate in the coming political campaign started telling the truth.Yeah, I know, dream on. But it was a breezy day, the warblers were singing, the air smelled of lilacs and into my head came this picture of competitive political truthtelling. If that's too much of a stretch for you, imagine something more probable, such as Superman putting truth serum into the water supply of Washington D.C. Or take some kind of anti-cynicism serum yourself. All I needed was to be out in the garden.As I snuggled Lemon Gems into the ground, I imagined the Republicans leading off, out of old-fashioned graciousness or just because they lost the toss.OK we admit, say the Republicans, taking a deep breath, that this Whitewater business 17 years ago was a minor Arkansas-size scam. Not much, really, compared to other scams we know about and even -- ahem -- (turning red about the ears) have participated in.We admit, say the Democrats in return, that our president was involved in or hung out with the perpetrators of, or at least knew about and did not raise a finger against, an Arkansas-size scam years ago. He is, like most of the rest of us, a bit, shall we say, ethically challenged.We're sorry, say the Rs and the Ds together, buoyed by a wave of righteousness, that we wasted public time and money on this matter. We will drop it.Hey, I'm not sure I want you to drop it, I interrupted, shifting to a flat of dwarf African doubles. What I'd like is for you to expose all the scams and put an end to them.We agreed to tell the truth, not to clean up our act, say the politicians. But now that you mention it, since we know how to do these scams, we are uniquely qualified to write and enforce laws against them. Could we come back to that topic later? We have some more truth to tell here.Go right ahead, I said, pulling out crabgrass.We've been making all this noise about taxes, say the Rs, but we haven't really reduced your taxes. We've reduced OUR taxes -- we who get paid (by you) more than $100,000 a year. We've shifted the bite away from high incomes and toward the payroll tax, which hits only the poor and middle class. Then we used the deficit we created to argue against those awful programs that benefit you but not us. It's amazing that we keep getting away with it. You folks really think we're a tax-cutting party. You never wise up.The Democrats are quiet for a minute. Hypocrisy is a lot harder to admit than outright greed. Finally they come out with it. We denounce the Rs for taking from the poor and giving to the rich, but hey, we're rich too, and we have rich campaign contributors. Most of us haven't had our hearts in this matter. We slow the tide a bit, but mainly we go along with it.So are you going to keep doing that? I asked, working on the tall Crackerjacks that go at the back of the garden.Would you hold up on the doing? the politicians ask. We're still working on the telling.About health care, venture the Democrats. (The Republicans groan.) Some of us are actually worried about health care being out of reach for millions of Americans. We think the system is going terribly wrong, and we want to fix it. But, frankly, well, you do want the truth here, right? Well, um, frankly we don't understand the Byzantine scheme our president came up with, and we have no idea whether it would have fixed anything. And our rich campaign contributors hated it. So we let it die.The Rs say, To tell the truth, we don't care about health care, as long as we and people like us have it. We think it's great that our industry friends are making tons of money as the system gets privatized. That's the American way. Anyone who can't afford it doesn't deserve it.Is that really the truth? I asked. Are you that calloused?An uncomfortable silence. Then some of the Rs say, hesitantly, We have to be calloused. It's a dog-eat-dog world. Everyone has to grab and hold onto whatever he can and not think about the losers. If we don't do that, WE'LL be the losers. But, you know? The truth? We hate it that the world is like that. We wish it weren't.Maybe it isn't, I suggested, wondering where to fit in the big puffy Climax marigolds, my favorites. Maybe if you let go of that graspiness, that combativeness, that fear, maybe if all you Washington folk of both parties, stopped walling yourself from the world with piles of money and power, maybe you'd discover that out here things are more kindly than you think. Maybe there's even enough for everyone.We don't believe it for a minute, they reply. But we'd like to.You'd help make it that way, if you'd just go on telling the truth, I said. I bet if we all did that, if we called you on your posturing and lies, if we insisted on your honesty and our own, the scams would disappear. The tax system would work toward fairness. We'd find a way for everyone to have health care. The world might even turn into what we want, instead of what we fear. But we have to keep pulling out the crabgrass and planting marigolds.A gentle rain started falling, just in time to water the newly set-out plants. Satisfied with the state of the garden and the nation, I called it quits and went in for a glass of iced tea.
Nevada Republicans tearing themselves apart after failed MAGA candidate's vulgar speech goes viral
AOC hits back at Republican House member who told her to 'educate herself'
Economists are praying these House Republicans will 'save' America from the 'fiscal abyss': report
Questions raised about another freshman Republican's finances after he refuses to comply with federal law
Trump made 'secret' $1M donation to failed Arizona election 'grift disguised as an audit': report
'Scammed' users rage at Trump over 'misleading gimmicks' on Truth Social
Why a new House committee will likely 'ignore' John Durham's 'giant waste of time and resources': reporter
Twitter message reveals Elon Musk forced Twitter staff to suspend 'community activist' account
Bill Barr asked Italian officials to discredit Russia probe — they responded with evidence linking Trump to crimes


text:
package nexus

import (
	"container/list"
	"github.com/davyxu/actornet/actor"
	"github.com/davyxu/actornet/proto"
	"github.com/davyxu/cellnet"
	"sync"
)

var (
	hijackList      *list.List
	hijackListGuard sync.Mutex
)

func addHijack(proc *nexusProcess) {

	hijackListGuard.Lock()
	hijackList.PushBack(proc)
	hijackListGuard.Unlock()
}

func checkHijack(m *actor.Message) bool {

	for {

		hijackListGuard.Lock()
		elem := hijackList.Front()
		hijackListGuard.Unlock()

		if elem == nil {
			break
		}

		proc := elem.Value.(*nexusProcess)

		if proc.hijack(m) {
			hijackListGuard.Lock()
			hijackList.Remove(elem)
			hijackListGuard.Unlock()
			return false
		}
	}

	// 没有需要处理的rpc
	return true
}

func onRouter(ev *cellnet.Event) {

	msg := ev.Msg.(*proto.RouteACK)

	userMsg, err := cellnet.DecodeMessage(msg.MsgID, msg.MsgData)
	if err != nil {
		log.Errorln(err)
		return
	}

	domain := actor.GetDomain(msg.Target.Domain)

	if domain == nil {
		log.Errorf("domain not found: %s", msg.Target.Domain)
		return
	}

	tgtProc := domain.GetByID(msg.Target.Id)

	if tgtProc != nil {

		m := &actor.Message{
			Data:      userMsg,
			TargetPID: tgtProc.PID(),
			CallID:    msg.CallID,
		}

		if msg.Source.IsValid() {
			m.SourcePID = actor.NewPIDFromProto(msg.Source)
		}

		if checkHijack(m) {
			tgtProc.Tell(m)
		}

	} else {
		log.Errorf("target not found,  id: %s", msg.Target.String())
	}

}

func init() {

	hijackList = list.New()

}


Diet is not always healthy – it literally means the total amount of food intake. It is all about choosing what food to eat. Diet could also be harmful when healthy foods are not considered and an untimely alteration of the food intake is done without giving the body an adjustment period. There are many factors to consider when you choose to change your diet. There are even dozens of diet plans and dietary habits to follow.
We are commonly omnivores but having different cultures, religion and traditions inspired some people to adapt to different diets such as veganism, fruitarianism, vegetarianism and flexitarianism. Normally, most people don't care much about the food they eat on a daily basis for as long as their hunger are satiated and the foods are tasty. Diet mostly comes to mind of those people whose self-awareness has finally come first before their cravings for delicious foods.
When you feel the need to lose weight, please don't go on a hunger strike. Most people tend to hate food the moment they feel like that they are overweight. What they don't know is they are actually endangering themselves.
Admit it, you know what is healthy and what is not. We were taught about Go, Grow and Glow foods and you know that chips, fries, ice cream, candies and chocolates are not on the list. You can also include sodas, juices and fried foods on the list of your unhealthy foods. These are the culprits that keep on adding unhealthy weight into your body.
If you are used to eating until you feel bloated, then start changing that habit. Our stomach is just the size of our fist and how do you think such amount of food would fit into that small sack of tissues? You could eat without skipping any meals but remember to eat only in small amount. Have a taste of your favorite food but not more than that. If you think that you are about to add more to your plate, drink water and just get out of the table.
You don't really need to be a vegetarian, but adding vegetables and fruits into your diet would actually help a lot. Instead of having a snack with chips and some finger foods, you could actually chew on some apples, grapes or any fruit you like.
When you choose to be on a diet, be the one to prepare your food. Gradually decrease your salt when cooking until you feel like you can eat without adding some. Your taste buds will eventually adjust to the absence of the salt. Avoid eating too much sweet, you can actually find some deserts with no sugar added.
So when you say you are on a diet, what are you referring to? Are you losing weight? Maintaining? Or gaining? If you indeed want to lose weight, then you must not take your diet for granted. It takes dedication, commitment and discipline to successfully follow a strict weight loss diet plan.


kn00tcn » Blank Screen Flicker In BFBC2 Fixed In Catalyst 12.2?
i also seeing OpenGL greed dots sometimes but application restart solve it too… so i cant say its better more like 10.3/10.5a still best but old?
CCC fan control dont work much often (about 3-4 drivers from 12 driver version releases).
Every time if something become fixed another things became messed.
i try it flash, i will put away 2 DDR sticks and… should i do it in Win 7 Safe Mode? or normal?
most important, make sure all .bin or .rom files you're thinking of flashing are 128kbytes or the card will be killed!
I have HD3870x2 before… in that time i was running PC almost 24/7 and fan get damaged in 1.5-2 years period… damage was that fan somehow "dropped" on lower spot and its chafe against upper (ruby, asus, sapphire or whatever) long plastic cover… but it still worked.
On ebay.co.uk i dont see anyone, i think that most people already sold it (card was killed because of accelero first revision issue or they already upgrade to newer Graphic Card) from time to time maybe some people pop up but i have no time hunting them.


text:
Q: Checking color of an input to disable or enable a submit button I've set up a changing input background color dependent on validity of the input.
I am then checking the color with this code:

let elem = document.getElementById("UserInput");
console.log(elem);

let theStyle = window.getComputedStyle(elem, "").getPropertyValue("background-color");

if (theStyle === "rgb(234, 198, 198)") {
  document.getElementById("Submit").disabled = true;
}

if (theStyle === "rgb(251, 250 ,245)") {
  document.getElementById("Submit").disabled = false;
}
input[type="number"]+div {
  display: none;
}

input[type="number"]:valid {
  background-color: #fbfaf5;
}

input[type="number"]:invalid {
  background-color: #eac6c6;
}

input[type="number"]:invalid+div {
  display: block;
  color: #c66464;
}
<input type="number" id="UserInput" class="form-control" autocomplete="off" min="0" max="99999" step="0.01" value="" required />
<input type="submit" id="Submit" />

The only thing I am missing is how to continuously check the colour when active (it's already inside a called function). Currently the "disabled" is true because the rgb is that red. But when I get the color to change, ie I use a correct input, then I would like to enable the submit button. So, I guess I need an eventListener in there, but I just can't quite get the context.

A: Here's a code snippet that listens to the changes in the input field.
I am not sure exactly how the input value relates to the background value, so I'll leave that part to you to decide
But you can test it using the 2 buttons I added, changing the value when the background color is red make the submit button disabled
changing the value when the bg color is the right green leaves it enabled
In case there is not a suitable event that you can listen to in order to make this work, you can use setTimeout instead of event listener (every other solution I checked harms the site performance - slows it down significantly)
Also an important note:
you had a misplaced comma 'theStyle === "rgb(251, 250 ,245)"'
before the third parameter (Blue) value, the comma should come right after the second argument and then a space and then the third value.

let elem = document.getElementById("UserInput");

elem.addEventListener('change', () => {
  let theStyle = window.getComputedStyle(elem, "").getPropertyValue("background-color");
  let submitBtn = document.getElementById("Submit");

  if (theStyle === "rgb(234, 198, 198)") {
    submitBtn.disabled = true;
  } else if (theStyle === "rgb(251, 250, 245)") {
    submitBtn.disabled = false;
  }

});

document.querySelector("#valid-btn").addEventListener('click', () => {
  elem.style.backgroundColor = "#fbfaf5";
});

document.querySelector("#invalid-btn").addEventListener('click', () => {
  elem.style.backgroundColor = "#eac6c6";
});
input[type="number"]+div {
  display: none;
}

input[type="number"]:invalid+div {
  display: block;
  color: #c66464;
}
<input type="number" id="UserInput" class="form-control" autocomplete="off" min="0" max="99999" step="0.01" value="" required />
<input type="submit" id="Submit" disabled/>

<button id="valid-btn">change bg to green</button>
<button id="invalid-btn">change bg to red</button>

A: You could try the onchange event handler(html), but this would happen every time you tried changing the value of the input, and I don't know how that would affect performance. Can't think of any better solution right now though. Example:
<input onchange="someFunc()">

A: To solve this question I before converted the colors to hexadecimal, this ensures that we'll not have to deal with spaces in rgb notation.

const form = document.querySelector('form')

const allowedColor = '#00ff00'
const forbiddenColor = '#ff0000'

const inputField = document.querySelector('#name')
inputField.style.backgroundColor = forbiddenColor // change this color to test

function componentToHex(c) {
  var hex = c.toString(16);
  return hex.length == 1 ? "0" + hex : hex;
}

function rgbToHex(channels) {
  return "#" + componentToHex(Number(channels[0])) + componentToHex(Number(channels[1])) + componentToHex(Number(channels[2]));
}

function handleOnSubmit(e) {
  e.preventDefault()

  const stringColor = window.getComputedStyle(inputField, null).getPropertyValue("background-color");

  const channelsColor = stringColor.substring(stringColor.indexOf('(') + 1, stringColor.indexOf(')')).split(',')

  const hexColor = rgbToHex(channelsColor)

  if (hexColor !== forbiddenColor) {
    console.log('submit')
    form.submit()
  }
}

form.addEventListener('submit', handleOnSubmit)
<form action="#">
  <label for="name">Name: </label>
  <input id="name" type="text">
  <input type="submit">
</form>

A: I guess since you are already using valid property to change CSS styles I think you can use same to enable/disable submit button as well.

let elem = document.getElementById("UserInput");
//listen to input and disable the submit based on the validity of input
elem.addEventListener('keyup',checkValidity);
elem.addEventListener('change',checkValidity);

function checkValidity(){
if(elem.validity.valid){
document.getElementById("Submit").disabled = false;
}else{
document.getElementById("Submit").disabled = true;
}
}

let theStyle = window.getComputedStyle(elem, "").getPropertyValue("background-color");
console.log(theStyle)

if (theStyle === "rgb(234, 198, 198)") {
  document.getElementById("Submit").disabled = true;
}

if (theStyle === "rgb(251, 250 ,245)") {
  document.getElementById("Submit").disabled = false;
}
input[type="number"]+div {
  display: none;
}

input[type="number"]:valid {
  background-color: #fbfaf5;
}

input[type="number"]:invalid {
  background-color: #eac6c6;
}

input[type="number"]:invalid+div {
  display: block;
  color: #c66464;
}
<input type="number" id="UserInput" class="form-control" autocomplete="off" min="0" max="99999" step="0.01" value="" required />
<input type="submit" id="Submit" />


For those responsible for managing replication, as much as 60% of their time can be spent simply answering the question, "What is the current status of my replication system?" At the same time, management is seeking SLAs in order to determine how "real-time" their operational data is. Join this session and hear Jes Thamdrup, Data Engineer at Raymond James, discuss how his team empowered 1) development teams with up-to-the-millisecond visibility into their specific replication systems, and 2) management with enterprise-wide, real-time dashboards in order to monitor and validate the performance of their distributed replication environments. Learn how they used Striim in their heterogeneous replication environments to track replication, as well as custom streaming dashboards to detect when replication takes place, and alerts to ensure data is applied to the target. An interactive demo will show how quickly and easily a custom, real-time replication validation solution can be deployed, enabling you to focus on the higher-level requirements of your business.


text:
2 mins ago LG's 2023 17-inch Grams feature Nvidia's RTX3050 GPU
Home Health Clinically Speaking: Do I Need Hormone Replacement Therapy?
Clinically Speaking: Do I Need Hormone Replacement Therapy?
Posted on 3 weeks ago
Comments Off on Clinically Speaking: Do I Need Hormone Replacement Therapy?
Although hormone therapy (HT), sometimes called hormone replacement therapy, works well to ease menopause symptoms and offers other health benefits, some women and people with female biology are unsure how to weigh the pros and cons of this treatment.
HealthyWomen asked Jessica Shepherd. M.D., an OB-GYN at the University of Illinois at Chicago and a member of HealthyWomen's Women's Health Advisory Council, to clear up common misconceptions about HT and help you decide whether it's right for you.
What is hormone therapy, and what is it used for?
HT is a prescription treatment for common menopause symptoms, such as hot flashes, night sweats, mood swings and vaginal dryness. These symptoms happen because hormone levels (mainly estrogen and progesterone) drop as women approach menopause.
HT works by giving these hormones back to the body, which is why it's also known as hormone replacement therapy (HRT).
People with a uterus are given a combination of estrogen and progesterone because progesterone helps protect against uterine cancer. People who have had a hysterectomy (uterus removal) can use estrogen-only HT.
HT is also prescribed to prevent osteoporosis, a condition that causes bones to become weak and brittle. Because estrogen helps protect bones, menopausal women are more likely to develop osteoporosis.
Why do some people think hormone therapy is unsafe?
A lot of the confusion surrounding HT has to do with a 20-year-old study by the Women's Health Initiative (WHI).
This randomized clinical trial of more than 10,000 women ages 50 to 79 lasted 15 years and was designed to test whether taking estrogen (either alone or with progesterone) after menopause could help women prevent heart disease and stroke.
In 2002, results of the WHI study were released, showing that HT might increase a woman's risk of breast cancer and heart problems. After these results made headlines around the world, HT use dropped by nearly 80%.
A closer look at the WHI study revealed many problems and mistakes in the methodology, mostly related to the ages of the women enrolled in the study. Because of these problems, the 2002 results have now been largely dismissed as "bad science" by experts, and many studies since then have shown that the benefits of HT may far outweigh the risks.
But the WHI study got so much media attention that some women are still reluctant to try HT because they worry it's not safe.
What do experts say about the safety of hormone therapy now?
Lots of research has been done in the 20 years since the WHI findings were released showing hormone therapy is very safe under the right circumstances.
For example, a follow-up WHI study involving the original participants found no difference in death rates between women who got HT for five to seven years and those who didn't.
A review of 30 clinical trials found women who started hormone therapy before age 60 actually had a 39% lower risk of death than women who didn't use hormone therapy.
And one study of women who had a hysterectomy showed those on estrogen-only HT had a 23% reduction in breast cancer.
After looking closely at all the scientific evidence, the North American Menopause Society (NAMS) put out a statement saying HT is the safest and most effective treatment for hot flashes, night sweats and vaginal changes, and has been shown to prevent bone loss and fracture.
They also stated that these benefits outweigh the risk for most women if they're healthy and under 60 (or within 10 years of menopause).
How do you decide which type of hormone therapy to prescribe?
To decide whether hormone therapy is a good option for a patient, I consider her age and her symptoms. I also check to see if she has a personal or family history of heart disease, stroke or cancer in her family since these things can make hormone therapy riskier. As far as timing, I try to start HT as soon as possible after a woman enters menopause.
If a patient is a candidate for HT and is interested in learning more about it, I explain how hormones can be helpful, as well as the risks. I also go over the different forms (pill, cream, etc.) with her.
What should women consider before choosing hormone therapy?
Together, my patients and I decide which type of HT is best based on any risk factors they might have, the symptoms they're hoping to treat and lifestyle factors that might affect their preferences. Are they willing to take a pill daily, for instance, or would a cream be more convenient?
There's no one-size-fits-all approach to hormone therapy — it really depends on the patient's unique needs.
Is there anything else you want people to know about HT?
I would love for people who are struggling with menopause symptoms to be able to move past their misconceptions and have a conversation about it with their healthcare provider (HCP). It's the best way to find out if this safe and effective treatment is right for you.
If your HCP isn't up to speed on the latest HT research, or simply doesn't want to talk about it, you can visit the NAMS website to find a Certified Menopause Practitioner near you.
This resource was created with support from Alora.
Previous article Can Evans Revive England's Attacking Mojo?
Next article Panama says First Quantum operating without contract
LG's 2023 17-inch Grams feature Nvidia's RTX3050 GPU
LG has announced the latest in its line of 17-inch ultralight Gram laptops. The new 2023 v…
Preterm or premature birth means childbirth before the 37th week of pregnancy. 10.5% of ba…
Let's Talk About Thyroid Eye Disease (TED)
Thyroid eye disease, or TED, is an autoimmune disorder that causes inflammation in and aro…
Tal como lo relataron aNicole Audrey Spector Cuando me enfermé por primera vez con Covid-1…
Load More In Health