text:
Support Needed for Families of Missing Migrants: Evidence from IOM's "Assessing the Needs of Families Searching for Relatives Lost in the Central and Western Mediterranean" Project
This policy briefing identifies 10 recommendations that States, regional organizations, intergovernmental organizations and civil society can take to help meet their obligations towards families of missing migrants – to support them in their search for loved ones and as they cope with the impacts... Read More
Familias de personas migrantes desaparecidas: su búsqueda de respuestas y el impacto de la pérdida – Lecciones de cuatro países
Este informe resume las principales conclusiones del proyecto de investigación cualitativa realizado entre abril de 2019 y marzo de 2021 por el Proyecto Migrantes Desaparecidos de la OIM sobre los desafíos y las experiencias de las familias de personas migrantes desaparecidas en Etiopía, el Reino... Read More
International Migration Vol. 58 (2) April 2020
International Migration is a refereed bimonthly review of the International Organization for Migration (IOM) on current migration issues as analysed by demographers, economists, and sociologists all over the world. The journal is edited by Koç University and published and distributed by Wiley. The... Read More
Sentiment towards Migration during COVID-19: What Twitter Data Can Tell Us
This report discusses the essential findings and learnings from a collaborative research project with the University of Liverpool, investigating the use of Twitter data to track immigration sentiment during the early stages of the COVID-19 pandemic.
Pilot mapping and profiling of the Mauritian diaspora in Australia, Canada and the United Kingdom: Stories of belonging, impact and opportunity
The Government of Mauritius recognizes the added value, valuable role and potential of its diaspora to contribute to the socioeconomic development of the country and aims to mobilize, leverage and harness the diaspora's intellectual, cultural and social potential, capital and skills. The pilot... Read More
Families of Missing Migrants: Their Search for Answers and the Impacts of Loss
Lessons Across Four Countries
This report synthesizes the main findings of qualitative research conducted between April 2019 and March 2021 by IOM's Missing Migrants Project about the challenges and experiences of families of missing migrants in Ethiopia, the United Kingdom, Spain and Zimbabwe. Across the four countries, 76... Read More
The Government of Mauritius recognizes the added value, valuable role and potential of its diaspora to contribute to the socio-economic development of the country and aims to mobilize, leverage and harness the diaspora's intellectual, cultural and social potential, capital and skills.
Asia and the Pacific – Regional Strategy 2020–2024
The IOM Regional Strategy for Asia and the Pacific identifies the key migration trends and patterns in the Asia-Pacific region and offers comprehensive strategies to address each core issue. Recognizing the impacts of the COVID-19 pandemic in the region, the regional strategy aims to cater... Read More
Families of Missing Migrants: Their Search for Answers, the Impacts of Loss and Recommendations for Improved Support
Country Report: United Kingdom
This report explores the challenges and needs of families living in the United Kingdom who have relatives who went missing or died in the course of international migration, and provides a policy-oriented overview of laws, advocacies, initiatives and support services applicable to the issue of... Read More
Migration Initiatives 2020 - Asia and the Pacific
Migration Initiatives 2020 illustrates to Member States, governments, partners, the private sector and readers the planned interventions and global funding requirements of the International Organization for Migration (IOM) for 2020. Migration Initiatives 2020 is structured around the Migration... Read More
International Migration Vol. 57 (3) June 2019
International Migration is a refereed bimonthly review of the International Organization for Migration (IOM) on current migration issues as analysed by demographers, economists, and sociologists all over the world. The journal is edited by Carleton University and published and distributed by Wiley... Read More
World Migration Report Update: Migration and Migrants: Oceania
This World Migration Report update provides an overview of the latest data on international migrants in Oceania. It is based on the most recent estimates from the United Nations Department of Economic and Social Affairs (UN DESA). Released in December 2017, the international migrant stock datasets... Read More
Making mobility work for adaptation to environmental changes: Results from the MECLEP global research
This report is the final publication of the European Union–funded Migration, Environment and Climate Change: Evidence for Policy (MECLEP) project. The comparative report builds on desk reviews, household surveys and qualitative interviews conducted in the six project countries (Dominican Republic,... Read More
Assessing the Climate Change Environmental Degradation and Migration Nexus in South Asia
South Asia, comprising eight countries including Bangladesh, Maldives and Nepal, is affected by a range of natural disasters including floods, glacial lake outburst floods, storm surges, droughts, cyclones and heavy precipitation. These disasters take a huge toll as they displace thousands of... Read More
Another Manam? The Forced Migration of the Population of Manam Island, Papua New Guinea, due to Volcanic Eruptions 2004-2005
In the framework of the European Union–funded Migration, Environment and Climate Change: Evidence for Policy (MECLEP) project, this report analyses the case of Manam islanders in Papua New Guinea. Approximately 9,000 people were evacuated to the north coast of Madang Province due to volcanic... Read More
Migration Policy Practice (Vol. V, Number 5, December 2015-January 2016)
The new issue of Migration Policy Practice focuses on expected migration trends in the Global South, namely Africa, Asia, the Caribbean, the Gulf and Latin America. Much media and policy attention is currently focused on the rise in migration flows to Europe. But how is migration changing in the... Read More
Migration, Environment and Climate Change: Policy Brief Series Issue 9 | Vol. 1 | December 2015
In light of the United Nations Climate Change Conference in Paris at the end of 2015, this policy brief highlights why human mobility should be included in the discussions on adaptation. Migration, in the context of environmental degradation and climate change, is already a reality today,... Read More
Managing Labour Mobility in Asia: A Holistic Approach
The Abu Dhabi Declaration and Pilot Project
The Abu Dhabi Declaration, which was adopted by ministers from 20 countries of origin and destination recognizes that properly managed temporary contractual mobility will benefit both countries of origin and destination and improve the well-being of temporary contractual workers.
Num. 25 - Trafficking in Migrants
Temporary Resident Permits: A New Way to Protect Trafficking Victims?
Compiling and analysing information from the media, governments, inter-governmental and non-governmental organizations, Trafficking in Migrants aims at improving the exchange of information on migrant trafficking. Published quarterly by the International Organization for Migration (IOM),... Read More
IOM-MPI Issue in Brief No. 8 - Human Rights, Climate Change, Environmental Degradation: A New Paradigm
Climate change and environmental degradation are predicted to displace millions of people in the coming years, either directly or indirectly. This will lead to situations wherein the human rights of such populations could be threatened.
International Migration is a refereed quarterly review of the International Organization for Migration (IOM) on current migration issues as analysed by demographers, economists, and sociologists all over the world. The journal is edited at Georgetown University's Institute for the Study of... Read More
MRS No. 14 - Migration and Development: A Perspective from Asia
The study makes a contribution to the newly emerged debate on migration and development. The paper is divided into three sections: The first focuses on the financial flows associated with international migration. The second section is concerned with diasporas and how these can be mobilized to the... Read More
Migration, Environment and Climate Change: Policy Brief Series Issue 5 | Vol. 1 | November 2015
The Migration, Environment and Climate Change: Policy Brief Series aims to contribute to the global knowledge base on the relationship between migration and environmental change, such as climate change, and the formulation of related policy options.
IOM-MPI Issue in Brief No. 9 - The Global Forum on Migration and Development:
Perspectives from Asia and the Pacific
During the last seven years, many governments in the Asia-Pacific region have actively engaged in the Global Forum on Migration and Development (GFMD) as participants as well as leaders, driving its direction and continuity. The region's engagement has clearly had an effect, judging on the themes... Read More
Indicators of the impact of migration on human development and vice versa
In the framework of its activities, the ACP Observatory on Migration has prepared a list of indicators of the impact of migration on human development. The indicators also explore the impact of human development on migration flows. Drawing upon the experience gathered by other institutions, the ACP... Read More
MRS No. 46 - Migration and development within the South
New evidence from African, Caribbean and Pacific countries (ACP Observatory on Migration)
South–South migration is a traditional livelihood strategy for millions of people in the global South. Despite its importance, mobility between developing countries has only recently been targeted by researchers and policymakers.
Programmatic Activities on Migration, Environment and Climate Change
Migration, climate change and the environment present a complex set of cross-cutting issues that are of growing importance for all of IOM's activities. Since 2000, more than 750 projects have been funded and implemented worldwide in the context of IOM's response to environmental migration. These... Read More
IOM-MPI Issue in Brief No. 13
Irregular Maritime Migration in the Bay of Bengal: The Challenges of Protection, Management and Cooperation
As a vast region with myriad islands, peninsulas and ancient sea routes, maritime migration is part of Asia's tradition. But it has become increasingly complex as refugees and irregular migrants move around the region by sea, challenging governments in the Asia-Pacific region to control their... Read More
IOM-MPI Issue in Brief No. 10 - Integrating migration into the Post-2015 United Nations Development Agenda
By September 2015, the Member States of the United Nations will have negotiated a set of sustainable development goals (SDGs) and subsidiary targets and indicators. These goals will frame a new international development agenda to replace the Millennium Development Goals (MDGs), which expire at the... Read More
Um fenómeno mundial de sinais invisíveis: O tráfico de seres humanos na África Subsariana, Caraíbas e Pacífico
Trafficking in persons constitutes a grave crime against the individual. The absence of comprehensive data presents a major issue, including in African, Caribbean and Pacific (ACP) countries. Many cases go unreported as victims are too afraid to testify, cannot escape exploitation, are expelled... Read More
Un phénomène mondial aux signes invisibles: La traite des êtres humains en Afrique subsaharienne, dans les Caraïbes et dans le Pacifique
Global phenomenon, invisible cases: Human trafficking in sub-Saharan Africa, the Caribbean and the Pacific
Les donnees derriere l'image : Migrations irrégulières dans les pays ACP et le Sud global
Despite the common perception of irregular migration as a challenge affecting primarily developed countries, irregular flows also constitute an important aspect of the South-South migration context and present a series of specificities often overlooked.
The evidence behind the picture: Irregular migration in ACP countries and the global South
De l'évidence à la mise en oeuvre Faciliter la migration de travail pour le développement: Opportunités et défis des migrations de travail sud-sud
Human mobility is an age-old phenomenon that has become an important issue in political and development debates. However, the focus is biased towards South-North movements of migrants, while South-South migration stocks are about as numerous. This document was prepared by the ACP Observatory as the... Read More
From evidence to action: Facilitating South-South labour migration for development
Human mobility is an age-old phenomenon that has become an important issue in political and development debates. However, the focus is biased towards South-North movements of migrants, while South-South migration stocks are about as numerous. This document was prepared by the ACP Observatory as... Read More
South-South labour Mobility in the Pacific: An assessment
Labour migration within the Pacific region has not been studied in depth despite the existing arrangements promoting the temporal movement of workers. Evidence suggests that there is a shortage of skilled and semi-skilled labour force in the region in particular professional areas, which has led to... Read More
South-South Labour Migration in Papua New Guinea: Which workers are filling the gap?
How is Papua New Guinea integrating human mobility into its national and regional plans? Which are the institutional factors, international migration networks and cultural/historical similarities of South-South labour migration between Fiji, Solomon Islands and PNG?
Migração extraregional Sul-Sul: Um resumo das tendências emergentes
International migration from the South towards other regions is often simplified as South-North (or low-income to high-income) movements (De Haas, 2007; Minvielle, 2010). Reality is indeed much more complex and new and atypical extraregional migration corridors between Southern regions rapidly... Read More
Migration extrarégionale Sud-Sud: Aperçu des tendances Émergentes
South-South extraregional migration: An overview of emerging trends
Notes on migration and development in the global South: Emerging issues and responses
The ACP Observatory on Migration has compiled in this thematic report thirteen background notes looking at innovative aspects of South–South migration. Based upon research carried out during three years, these documents analyse emerging aspects of migration in ACP countries. Four major approaches... Read More
Migration de retour Sud-Sud: Défis et opportunités
Among the different stages of the migration process, return is the one which is least well understood. The motives guiding return cannot be easily categorized and are highly context dependent (Bastia, 2011). Scholars and policymakers have focused on understanding and analysing decisions for... Read More
Migração de Retorno Sul-Sul: Desafios e Oportunidades
›› Siguiente página
Last » Última página
Boletines y Resúmenes (20)
Derecho Internacional sobre Migración (IML) (1)
Estudios e Informes (47)
Folletos y hojas Informativas (5)
Informe sobre las Migraciones en el Mundo (20)
Manuales, Herramientas, Directrices (1)
Práctica de Política Migratoria (4)
Revista International Migration (10)
Serie de estudios de la OIM sobre la migración (MRS) (2)
Clima y medio ambiente (13)
Cooperación internacional (2)
Migración por motivos climáticos/ambientales (6)
Reubicación (1)
Derechos de los migrantes (21)
Protección (14)
Derecho internacional de los refugiados (2)
Derecho internacional humanitario (0)
Derecho internacional sobre migración (3)
Legislación nacional en materia de migración (0)
Principio de no devolución (0)
Principio de no discriminación (0)
Diásporas (10)
Desplazamientos (13)
Feminización de la migración (3)
Hombres y niños (5)
Mujeres y niñas (9)
Personas LGBTI (0)
Violencia de género (0)
Gobernanza de la migración (17)
Apatridia (0)
Biometría (0)
Documentos (de nacimiento, identidad, viaje, etc.) (0)
Gestión de datos (0)
Identidad social e identidad propia (3)
Inclusión social (12)
Investigación, datos y análisis (77)
Investigación (71)
Migración laboral (26)
Movilidad laboral (incluida la migración circular y estacional) (16)
Trabajadores migrantes (10)
Políticas sanitarias (1)
Reglamento Sanitario Internacional (0)
Salud física y mental (2)
Sistemas de salud pública (0)
Niños y jóvenes (12)
Menores no acompañados (2)
Menores que quedan atrás (4)
Migración de jóvenes (0)
Migración de menores (4)
Migración por motivos familiares / reunificación familiar (3)
Políticas migratorias (22)
Tráfico y trata de personas (16)
Trata de personas (11)
África Central (70)
América del Norte (6)
Caribe (58)
Asia Meridional (109)
Asia Oriental (107)
Asia Sudoriental (108)
Oceanía (118)
Australia y Nueva Zelandia (110)
Melanesia (114)
Micronesia (105)
Polinesia (106)
País / Territorio
(-) Papua New Guinea (122)
(-) United Kingdom (13)
Afganistán (47)
Antigua y Barbuda (88)
Azerbaiyán (37)
Bahrein (44)
Belarús (130)
Bélgica (162)
Bosnia y Herzegovina (137)
Camerún (154)
Chequia (166)
Chipre (48)
Comoras (151)
Croacia (166)
Dinamarca (152)
Egipto (222)
Emiratos Árabes Unidos (45)
Eslovenia (164)
Estados Unidos de América (110)
Etiopía (176)
Filipinas (144)
Grecia (174)
Guyana Francesa (29)
Hungría (169)
Iran (Répública Islámica del) (44)
Isla de Man (105)
Islandia (111)
Islas del Canal (107)
Islas Feroe (107)
Islas Malvinas (25)
Islas Marianas del Norte (7)
Islas Marshall (115)
Islas Salomón (115)
Islas Wallis y Futuna (7)
Jordania (52)
Kazajstán (36)
Kirguistán (25)
Lao People's Democratic Republic (122)
Letonia (147)
Líbano (71)
Libia (228)
Lituania (152)
Luxemburgo (148)
Macedonia del Norte (132)
Malasia (128)
Maldivas (114)
Marruecos (202)
Mauricio (162)
Micronesia (Estados Federados de) (111)
Noruega (115)
Nueva Zelandia (119)
Omán (40)
Pakistán (130)
Panamá (37)
Reino Unido de Gran Bretaña e Irlanda del Norte (147)
República Árabe Siria (69)
República Democrática del Congo (151)
República Dominicana (103)
República Unida de Tanzanía (161)
Republic of Moldova (149)
Rumania (170)
San Martín (parte neerlandesa) (84)
San Pedro y Miquelón (8)
Singapur (119)
Sudán (180)
Sudan del Sur (161)
Suecia (157)
Suiza (138)
Tailandia (56)
Tayikistán (40)
Trinidad y Tabago (91)
Túnez (187)
Turkmenistán (18)
Ucrania (138)
Idioma de la publicación


text:
HomeAviation Safety / Air CrashesRussian An-30 spyplane crashes in Czech Republic during Open Skies mission
Russian An-30 spyplane crashes in Czech Republic during Open Skies mission
May 24, 2012 Aviation Safety / Air Crashes, Military Aviation
On May 23, at 11.50 LT, a Russian Air Force An-30B (registration 04 black) took fire after skidding off the runway on landing at the Czech air force base in Caslav, 20 miles east of Prague.
Of the 23 people on board (14 Russians and 9 Czechs), five Russians and one Czech national have suffered injuries, mostly burns. The plane and Russian officials were in the Czech Republic on a regular monitoring mission.
Indeed, the aircraft was involved in a mission in the skies of the Czech Republic under the Open Skies Treaty. Signed in 1992, at the initiative of President Bush, the Treaty established a regime of unarmed observation flights over the territories of its 34 member states to promote transparency of military forces, installations and activities.
During such flights, that feature the typical OSY (Oscar Sierra Yankee) radio callsign, Russian/US and local officials on board the plane monitor the implementation of agreements on the use of technical equipment for the observation.
Aircraft involved in such monitoring missions (An-30, Tu-154, C-130J etc.), carrying special cameras and sensors, may be provided by either the observing or observed nation (at the latter's choice).
Image credit: AP Photo/CTK, Josef Vostarek
AN-30
Open Skies Treaty
Russian Air Force
GoPro Video: Queen's Diamond Jubilee flypast as seen from inside a 27-plane formation!
[Infographic] U.S. new raids, drone attacks target review process
Norwegian F-16s took some stunning pictures of Russian Su-34 fighter bombers flying off Norway
November 11, 2014 Russia, Troubled Areas
At the end of October Royal Norwegian Air Force F-16s intercepted Russian Air Force Su-34 Fullback long-range strike fighters off the northeastern coast of Norway. On Oct. 29, the Royal Norwegian Air Force had an […]
Even the Portuguese Air Force has intercepted and photographed Russian bombers wandering across Europe
November 2, 2014 Military Aviation, Russia, Troubled Areas
The two Russian Bears that skirted European airspaces on Friday were also intercepted by the F-16s of the Portuguese Air Force. On Oct. 31, two F-16 Fighting Falcon jets of the FAP (Portuguese Air Force) […]
Video: Russian Su-30SM fighters escort Tu-160 bombers launching cruise missiles from the Mediterranean Sea
November 20, 2015 Military Aviation, Russia, Syria, Troubled Areas, War on ISIS
Fantastic footage of the Russian Su-30SMs escorting the Tu-160s over the Mediterranean Sea. Between Nov. 19 and 20, two Russian Tu-160 Blackjack bombers launched from northwest Russia for a 13,000km journey around Europe, to launch […]
Sebastijan Videc says:
Correct designation would be An-30
Heinz says:
I would call it observation plane as it is a legal process under Open Sky rules …
Thank goodness you said that… the word SPY has no business in the description of this International Treaty Mission. The tragedy is the loss of the aircraft, Thank God, and not a loss of life. Speedy recovery to our fellow aviators.

redpajama_set_name: RedPajamaCommonCrawl


Target Marketing Solutions' team of experienced PHP web designers can create an Open Source Content Management (CMS) system website, in any creative design to match your requirements. The most popular CMS systems are WordPress, Joomla, and Drupal and TMS can assist your company in the design of either of the three systems. We're WordPress design specialists with WordPress, the most popular of the three. There are thousands of plug-ins and themes available with each CMS to transform your site into almost anything that you can imagine. These CMS systems are highly complex, scalable, and user-friendly with the core software built by hundreds of programmers. A CMS helps content managers worldwide to create, maintain, and update websites quickly and efficiently. 60 million+ companies and individuals have trusted WordPress, in particular, to power their website. The experience of working with a diverse client base and latest technologies has enabled Target Marketing to adopt best practices and proven methodologies in these CMS Systems. We pride ourselves in delivering highest level of customer service by employing collaborative project management systems and communication channels.
Process orders online - 24/7.
Have your Whole Product Catalog Online - thousands of pages working for your company.
Customize your e-commerce shopping cart system.
Update and change product info. easily with your ecommerce website.
Process payments at the time of sale.
Immediate transfer of payments to your bank.
Receive the complete Internet Marketing Strategy necessary for e-commerce success from Target Marketing Solutions.
Secure logins for customers so they can check their order status.
Get on Google and get results. Get in front of people searching for products you sell, whether they're shopping at home or on the go. Only pay when shoppers click through to your website or view your local inventory.
Spark shoppers' interest with special offers, reviews and ratings - and a whole lot more. Ask Target Marketing how.
We can meet with you at your convenience, face-to-face, for a no obligation e-commerce website discussion in Michigan (Metro Detroit, Lansing, MI, Grand Rapids, MI, Kalamazoo, MI, Bay City/Saginaw, MI, Ann Arbor, MI), Ohio, Indiana, Illinois, and Ontario and will consider meetings in areas beyond these. Call 1-888-239-0332.


Four of Luck's six touchdown passes have come with Indy losing the fourth quarter.You're talking about a who missed half the .Jones, spoke to reporters while Manziel was still undrafted.The 36-year-old had just played his 217th career game, including his 15th the postseason.But Stephenson grotesquely rolled his left ankle just three minutes into his first shift and needed help walking http://www.PersonalizedJerseyStore.com the floor.
There is a huge theater scene Guadalajara, he told me excitedly.All he could do was give us positive notes.The final straw came last at Washington a 47 loss that was the most lopsided of the Payton era.Either way, Coburn's five points on the aren't likely to turn any heads, his return should largely go unnoticed the fantasy community.
While Grichuk might bring the most power to the team, he isn't always consistent.Never missed a field goal from 39 yards and during his three years at State going 46-of-46.Once tagged, any player has until July 15 to work towards a -term deal.The Wolves missed two open 3-pointers that would have tied the game the final four minutes, but hit his from deep and got a steal and a layup to drop Wiggins to 0 against the Cavs.Above all, just feels his run support could have been better .
To get three out of four these past couple is big.Have you been lucky?He added another 513 yards on 71 rushes with four additional touchdowns.He not begin the as the starter, but if he impresses training camp-and stays healthy-it be difficult for the Broncos to keep him on the bench.
The Lions defeated the Bears 37 overtime.Finished http://www.nbajerseystobuy.com season with career-high averages both smallbore with a 563 and air rifle with a 574.Middle school,'' Rodon said.To repost what you clearly never read: That this isn't about anyone's legacy or how good http://www.AuthenticJerseysCity.com career was, or how good overall player they were, or how good their HHOF case was, - it has always been about offense, and that perceptions about all of the above about Turgeon have unfairly tainted what people think of his offense.
No racism, sexism or any sort of -ism that is degrading to another person.three seasons, has totaled 123 catches, 1 receiving yards and nine receiving touchdowns, plus 97 rushing attempts, 809 rushing yards and seven rushing touchdowns.http://www.MeJerseysChina.com the past 23 years, has been heavily involved efforts to http://www.cheapchinajerseys.us.com the recommendations from that task force report and build awareness.It's hard to judge a Rockies outfielder on their defense because of how expansive Coors Field's outfield is.The defensive three seconds; it's basically about being spots to help teammates and being the right positions.
I've been here three years, going into fourth year.EFS believes a good haircut should make you feel beautiful, be easy to care for and contemporary style.He was a gangly 6-foot-3 and 205 pounds, and his legs made it appear he was loping and never running as hard as he really was.
I've seen improvement from terms of understanding what he's capable of, said.had 13 points and 11 rebounds for the Ducks, who outrebounded the Devils 40.The latest rumors have the running back looking at a possible return to the field Week 2.


Eight 'intrapreneurial' skills to develop within employees.
You might think innovation is a business buzzword, but change is happening whether you're ready or not. And it is better to be prepared than left behind, says Michelle Somes-Booher, MBA director for the Wisconsin Small Business Development Center at UW-Madison.
Intrapreneurs take risks and solve problems inside a company in the same way an entrepreneur would in the marketplace.
Pivot and make changes in your business model.
Use creative problem-solving to spur constant improvement.
Lead with confidence, influence people, and build a team.
"Every person in your organization can be a change agent," says Somes-Booher.


text:
Q: Zip Multiple file Than unlink the file     <?php

$direc = base64_decode($_GET['path']);

    $zip = new ZipArchive();

    if ($zip->open($archive_file_name, ZIPARCHIVE::CREATE) !== TRUE) {
        exit("cannot open <$archive_file_name>\n");
    }
    //add each files of $file_name array to archive
    foreach ($file_names as $files) {
        $zip->addFile($file_path . $files, $files);
    }
    $zip->close();

    header('Content-Type: application/octet-stream');
    header("Content-Disposition: attachment; filename=" . $archive_file_name);
    header('Cache-control: private, must-revalidate');
    header('Content-Transfer-Encoding: binary');
    readfile("$archive_file_name");
    exit;
}

if (isset($_POST['file'])) {
    $file_names = $_POST['file'];
    $archive_file_name = 'zipped.zip';
    $file_path = $direc;
    echo $file_path;

//Run Function above
    zipFilesAndDownload($file_names, $archive_file_name, $file_path);

    if (file_exists($archive_file_name)) {
        unlink($archive_file_name);
    }

?>

I find code above and try it, The zip file created but statement unlink($zipname); doesn't work
I don't have any problem about permission
Is that file strill write-protected?
How to solve that problem?
Thanks Friends

A: Your function above should call return, not exit. Exit terminates execution of the script, so nothing after that will be called. It's probably not even getting to the file_exists part.

redpajama_set_name: RedPajamaStackExchange


JOSHUA ANDREW SMITH worked in companies MAINSTREAM GRAPHICS LIMITED, FOAMING BRILLIANT LIMITED	as DIRECTOR.
JOSHUA ANDREW SMITH was from 2012.07.06 to 2014.11.25 at MAINSTREAM GRAPHICS LIMITED employed as Director.
JOSHUA ANDREW SMITH was from 2012.07.09 to 2013.09.24 at FOAMING BRILLIANT LIMITED employed as Director.
JOSHUA ANDREW SMITH Score for JOSHUA ANDREW SMITH is 4.5 stars.


The king needs a new queen, and Esther has been chosen!
But she's about to find out that being queen is going to take more courage than she ever imagined!
The award-winning artists at Big Idea bring to life one of the Bible's greatest stories -- and the most spectacular VeggieTales adventure ever! When a small-town girl wakes up with the weight of the world on her shoulders and the fate of her people in her hands, can she find the courage to do what's right?
Filled with the drama, humor, and great music that families everywhere have come to expect from Big Idea, Esther ... The Girl Who Became Queen teaches kids that "you never need to be afraid to do what's right!"
Public Performance Rights: Big Idea Productions, Inc.
Produced By: Big Idea Productions, Inc.
The king needs a new queen, and Esther has been chosen! But she's about to find out that being queen is going to take more courage than she ever imagined!


anyitomizayi.me Page 130 - lavender table lamp. baby high chair safety straps. ty pennington patio furniture reviews. lavender table lamp uk. lavender table lamp shade. lavender crystal table lamp.
Tags: lavender crystal table lamp. lavender table lamp uk. lavender table lamp shade.
Tags: heavens bliss baby portable high chair safety harness. baby high chair safety harness.
Tags: ty pennington outdoor furniture reviews.
Tags: kitchen nightmares updates. kitchen sink faucets. kitchen table with bench. kitchen table with storage. kitchenaid mixer attachments. kitchen nightmares fake. kitchen nightmares.
Tags: decorating tips and tricks. decorating tips for bathroom. decorating cupcakes with candy. decorating ideas for dining room. decorating living room on a budget. decorating den plano. decorating games for adults free.
Tags: decorating tips for bedroom. decorating on a budget australia. decorating small spaces. decorating den franchise. decorating cupcakes. decorating cupcakes with mini marshmallows.
Tags: furniture warehouse near me. furniture outlet stores. furniture of america reviews. furniture stores. furniture stores in houston. furniture stores in maryland. furniture stores near mesa az.
Tags: stainless steel undermount kitchen sinks uk. stainless steel sinks uk. leisure stainless steel sinks uk. best stainless steel sink cleaner uk. best stainless steel kitchen sinks reviews uk. best stainless steel undermount sink uk. best quality stainless steel kitchen sinks uk.
Tags: furniture outlet houston. furniture mart. furniture mart sioux falls. furniture stores near me that finance. furniture outlet near me. furniture mart usa sioux falls. furniture row locations.
Tags: no credit check kitchen cabinets. no credit check financing kitchen cabinets.


In shallow dish, stir Bisquick mix, bread crumbs, lemon peel, dill weed and salt until blended. In another shallow dish, beat egg. Dip fish into egg, then coat with Bisquick mixture.
In large nonstick skillet, heat oil over medium-low heat. Add fish; cook 8 to 10 minutes, turning once, until fish flakes easily with fork and is brown on both sides.


Lybrate is hiring for Software Engineer, Java who has the ability to develop scalable, complex software systems with minimal errors.
Create Automated Unit Tests using Flexible/Open Source Frameworks.
Participate in design reviews and provide input to the design recommendations.
Provide high-quality technology solutions that address business needs.
Design software and produce scalable and resilient technical designs.
Involve in Development and Support.
1-3 years of programming experience in Java with a good understanding of OOPS.
Ability to develop scalable, complex software systems with minimal errors.
Self-motivated with excellent analytical and problem-solving skills.
Ability to execute projects from planning through completion under the pressure of a fast-paced environment.
Experience in frameworks/technologies (Spring, Maven, Hibernate, Apache Tomcat, MongoDB, SOLR, RabbitMQ, Redis) is preferred.


In Art, Year 5 have been looking at the art of Andy Goldsworthy. With materials found in the natural environment, Goldsworthy creates simple, yet beautiful sculptures that surprise, delight and intrigue. After researching and making observational drawings of natural materials that they had collected, Year 5 went to forest school to replicate sculptures in Goldsworthy's style. They learned that they can use any materials to create artwork and improved their teamwork skills.
View the Photos of Year 5 Boys Art Project in Forest School and we hope you enjoy them-they certainly had fun making them in a team!


A 24 Hour Door Repair is located at the address 4230 Faronia Rd in Memphis, Tennessee 38116. They can be contacted via phone at (901) 398-7824 for pricing, hours and directions.
For maps and directions to A 24 Hour Door Repair view the map to the right. For reviews of A 24 Hour Door Repair see below.


Former RAPP chief innovation officer Josh Team has joined Keller Williams, with plans to overhaul eEdge.
The franchisor is partnering with Placester to provide "core plumbing" for tech changes needed.
By the end of 2014, Keller Williams will be beta testing what the company is calling the "next evolution" of its eEdge software platform. Big words from the franchisor. What exactly do they mean, though? Well, KW has hired the former chief innovation officer for Rapt, one of the most notable direct marketing companies on the planet, Josh Team.


text:
Air France Starts New Daily Service in Cincinnati
New Daily Non-Stop Route Begins May 9
NEW YORK, May 9 /PRNewswire/ — Beginning today, Air France is reinforcing its presence in Cincinnati with new, seasonal non-stop service to Paris-Charles de Gaulle airport. Part of a 10 percent increase in U.S. capacity this year, Air France is also adding a third daily flight in Washington, D.C. today, as well as inaugurating service from Detroit on June 13.
Supplementing a code-share flight with SkyTeam partner Delta Air Lines, Air France flight 383 departs at 4:25 p.m., arriving in Paris-Charles de Gaulle the following day at 6:25 a.m., offering connecting service to destinations throughout the Air France worldwide network including Europe, Africa and the Middle East. The return flight from Paris, Air France flight 382, departs at 10:20 a.m. and arrives in Cincinnati at 1:25 p.m. The equipment being used on this route is an Airbus 340-300 configured with 270 seats: 34 in l'Espace Affaires (business class) and 236 in Tempo (economy).
"We are pleased to offer this new service to our passengers in Cincinnati and throughout the tri-state region," said Marie-Joseph Male, Air France Vice President and General Manager, U.S.A. "Our increased presence in Cincinnati is an integral part of our ongoing commitment to providing passengers with greater benefits and choices for travel to Europe and beyond."
About Air France
Recently named "Airline of the Year for 2005″ by Air Transport World, the Air France-KLM group operates 2,000 daily flights out of Paris and Amsterdam to 225 destinations worldwide. In the U.S., Air France currently flies from 12 U.S. gateways and provides service from 125 U.S. cities through code-share agreements with SkyTeam partners, Delta and Continental. A 13th gateway, Detroit, will begin on June 13, 2005. For more information and for immediate access to the best Air France fares and to purchase tickets online, log on to http://www.airfrance.com/us.
Air France Announces Summer 2005 Flight Schedule With New U.S. Gateways and FrequenciesNew Service to Detroit; More Frequencies in Cincinnati and Washington, D.C. NEW YORK, March 17 /PRNewswire/ — The new Air France summer 2005 flight schedule has been significantly expanded. Worldwide capacity, measured in ASK (Available Seat Kilometers), will increase by 4.6% across the network and...
Cincinnati, Be Happy! Delta Starts Non-stop Flights to Montego Bay June 4ATLANTA, June 2 /PRNewswire-FirstCall/ — Beginning June 4, sunny Jamaica will be a short trip away from "The Queen City" with the launch Delta's first- ever non-stop service between Cincinnati and Montego Bay. The scheduled roundtrip flights on Saturdays and Sundays bring to 11 the...
Air France Announces Anniversary Fares From $299 Round Trip to Paris Plus $5.05 in France or $50.05 in EuropeNEW YORK, May 4 /PRNewswire/ — To celebrate the first anniversary of its listing on the New York Stock Exchange on May 5th (5/05), Air France announces an exciting promotion with extraordinary value for passengers — and paying immediate dividends on investment in an Air...
Air France Launches Additional Flight From Washington, D.C.Third Daily Frequency From Dulles to Paris-Charles De Gaulle Begins May 9 NEW YORK, May 10 /PRNewswire/ — Due to growing demand in Washington, D.C, Maryland and Virginia, Air France adds a third daily frequency from Washington-Dulles to Paris-Charles de Gaulle on May 9. Air...
Air France Extends Its Network in the USAAnnounces Code-Share Agreement with Continental Airlines PARIS, Feb. 21 /PRNewswire/ — Air France and Continental Airlines signed a code-share agreement when Continental joined the SkyTeam Alliance in September 2004. Effective from 26 February, 2005, this agreement will enable Air France customers travelling on Air France...
Air France Opens New U.S. Gateway in Detroit- Daily Non-Stop Flights To Paris Begin June 13 – NEW YORK, June 13 /PRNewswire/ — Air France announces the opening of its 13th U.S. gateway, Detroit, with a new, daily non-stop flight to Paris beginning today. "Detroit was a logical next step in our...
Delta Brings Tropical Breezes Closer to Customers in Cincinnati, Salt Lake CityAirline adds flights to Cancun, announces new service between Cincinnati and Montego Bay ATLANTA, March 17 /PRNewswire-FirstCall/ — Delta Air Lines (NYSE:DAL) customers planning vacations in sunny, south-of-the-border locations will enjoy more frequent nonstop flight options from the airline's Cincinnati and Salt Lake City hubs...


text:
Q: Traffic flow modelling - How to identify fans/shocks?
A highway contains a uniform distribution of cars moving at maximum flux in the $x$-direction, which is unbounded
  in $x$. Measurements show that the car velocity $v$ obeys the relation: $v = 1 − ρ$, where ρ is the number
  of cars per unit length. An on-ramp is built into the highway in the region $0 ≤ x < 1$. Town planners want to
  understand whether they should limit the rate per unit length of cars, $α$, entering the highway via this on-ramp,
  to avoid traffic jams on the highway. The on-ramp is closed for all time $t < 0$, and opens for $t ≥ 0$.
Identify the presence of all key features of the problem, including any fans/shocks.

Hi, can someone please explain to me how to do such a question? I'm struggling to understand this conceptually, the process of identifying fans and shocks, what exactly I'm supposed to be looking for. Any help would be appreciated, thanks in advance.

A: The macroscopic traffic-flow model by Lighthill-Witham-Richards (LWR) is an hydrodynamic model for traffic flow on a single infinite road. It consists in a scalar hyperbolic conservation law, which represents the conservation of cars (continuity equation):
$$
\frac{\partial}{\partial t}\rho + \frac{\partial}{\partial x}Q (\rho) = 0 \, ,
$$
where the flux $Q(\rho) = \rho\, v(\rho)$ depends only on the density of cars $\rho$. The simplest expression for the car velocity $v(\rho)$, introduced by Greenshields, reads
$$
v(\rho) = v_\max \left(1 - \frac{\rho}{\rho_\max}\right) .
$$
Therefore, the present case corresponds to $v_\max = 1$ m/s and $\rho_\max=1$ car/m. The flux function $Q (\rho) = \rho \left(1- \rho\right)$ is maximum at $\rho = 1/2$ car/m, which is assumed to be the uniform density of cars at negative times. The characteristic curves such that $\rho(x,t)=\rho(x(t),t)$ satisfy
$$
\frac{d\rho}{dt} = \frac{\partial\rho}{\partial t} + \underbrace{\frac{dx}{dt}}_{Q'(\rho)} \frac{\partial\rho}{\partial x} = \alpha \boldsymbol{1}_{0\leq x(t) < 1,\, t\geq 0} \, ,
$$
where $\alpha$ is the rate per unit length of cars entering the highway via an on-ramp. Several cases are considered:

*

*For times $t<0$, $\rho=1/2$ and $dx/dt = 1 - 2\rho = 0$. The space-time diagram is made of vertical lines, on which the car density is constant.

*When the ramp is turned on, i.e. $t\geq 0$, one has $d\rho/dt = \alpha$, i.e. $\rho = \alpha t + 1/2$ over the ramp. The characteristics satisfy $dx/dt = 1 - 2 \rho = -2\alpha t$. Therefore, over the on-ramp, the space-time diagram is made of non-crossing decreasing functions, on which the car density is not constant. Qualitatively, these curves will interact with the vertical lines in the following way:

*

*a left-going shock wave is created on the left of the ramp: the upstream cars stop suddenly;

*a left-going rarefaction wave (fan) is created on the right of the ramp: the inserted cars accelerate gradually, until they reach the maximum-flux velocity.

A more quantitative solution is possible. At this point, one can decide to solve the conservation law with source term
$$
\frac{\partial}{\partial t}\rho + \frac{\partial}{\partial x}Q (\rho) = \alpha \boldsymbol{1}_{0\leq x < 1,\, t\geq 0}
$$
numerically, or to have a look at this post.


Graphics design needs creativity in order to be effective. It uses visual communication to solve problems and convey ideas through fonts, images, colors, and form. There are many ways to express ideas and hence in the field, there are now areas of specialization that designers focus on.
This is probably the most important thing for any business. Without an identity, you are no one. Designers are taught to study the market well and also check all the competitors before they come up with design ideas. The identity has to have the distinction and also evoke trust in the market. The tone and essence of your business are communicated through your brand identity so it has to reflect the true personality of your trade and also organization. The use of images, shapes, and colors allows a designer to visually communicate the business message easily. Goods designers develop the style guides for use across various media. Some have ample experience and develop elements that are appropriate across all visual media. They possess excellent conceptual and creative talent and research the organizations, current trends, and competitors.
Users interact with a device or an application through an interface. They click on buttons, check the menus and so forth. These are all designed by a graphic designer who ensures that the interface is easy to use and that users will return back to the website or app. For this reason, it has to be very engaging. Desktop apps, mobile apps, WordPress theme designs, web apps and games all have a user interface. User interface designers work with user interface developers who write the code for it.
The target market is sometimes very huge, and a company needs effective visual communications to win a market share. For new companies, it costs a lot to compete with their rivals. So is the case with market leaders. They invest a hefty amount of money in marketing and advertising campaigns. The graphic designers have to come up with novel ideas and effectual designs that can tap into the decision-making processes of the prospects. They have to keep in mind the wants, needs, awareness, and satisfaction associated with a given product, service or brand to make engaging designs. This helps bring the prospects closer to the brand. Today the designers have to create novel works for both the print media and the internet. Since more people are shopping online they have to create digital assets for their clients. For marketing and advertising, infographics, postcards, flyers, magazine and newspaper ads, posters, banners and billboards, print and digital brochures, websites, blogs etc are designed.
Packaging designers create artwork for boxes, bags, bottles, cans, and containers. Design for the packaging has to be very exceptional as a lot of sales depend on it. Companies hire the best designers to do the job right. Designers come up with new concepts and then build a mockup first. They have to be well familiar with the print processes and be an expert at industrial design. They also have to focus on competitors and the changing tastes of the consumers.
Publications tell your business stories through mass distribution. They used to be a print medium and now with the advent of the internet, they are digital as well. These include books, newspapers, magazines, and catalogs. Graphic designers design the layout of publications and select the type of fonts to use. They create artwork which includes photos, illustrations, and graphics.
This includes anything with a motion such as animation, audio, typography, imagery, video and special effects used on the web, TV, and film. With enhanced storage space and improved download speeds of the internet, videos have gained more popularity. Every website now uses videos to convey their trade stories. Video content is currently ruling the internet as more users prefer to watch videos instead of reading the text. Graphic designers create title sequences and credits, websites, apps, video games, banners and gifs, advertisements, animated logos, trailers, presentations, promotions, and tutorials. Designers use a storyboard and then use animation software to create their works.
Graphic designers connect people to places and improve their overall experience. They make a given space more outstanding and help with navigation. Without their works, we can be lost in large buildings and campuses. They help save our time and keep us safe in unfamiliar places. They also help make our trips more interesting. The signage we see in the malls and medical buildings are made by graphic designers. They also make wall murals, city signage, interiors of retail shops and design the spaces for events and conferences. For a more engaging experience business are using interactive displays. People prefer to use the digital displays to find where they are at and to find more about the establishment they are visiting.
Graphic art and illustrations can be seen on t-shirts every day. The prints on the fabrics that we wear and the prints on all home textiles are created by graphic designers. Book covers, picture books, and comic books are the works of graphic arts and illustration designers.
These days, all businesses have some graphics design needs or the other. Outsourcing the work to an experienced and talented agency is always more beneficial. They hire talented designers who have formal education in graphic design and know all about the various trades.
Author Bio: Gary Brandon is a digital marketing professional and currently, he is working as a graphic designer for ENET Technologies. He currently resides in Houston, Texas and enjoys writing informative blog posts on SEO, Social media, Content marketing and anything related to digital marketing.


Cotton had 5 catches for 140 yards and 1 TD. He averaged 28 yards per reception and had a 51-yard touchdown catch in Pima's 69-27 win vs. Phoenix College.
Latu had 17 total tackles (six solo, 11 assisted) with three sacks for six yards to go along with four TFL for 17 yards in Snow's 21-0 win at Eastern Arizona College.
Panazzolo had six punts for 272 yards averaging 45 yards per punt. He had three punts downed inside the 10-yardline; two of them downed at the 1-yardline in Snow's 21-0 win at Eastern Arizona College.


text:
Education in Niue is free and compulsory for 8 years. Niue has one primary school, and in 1995, the gross and net primary enrollment rates were both 100 percent. The government has collaborated with UNESCO to develop an Education for All plan to improve learning achievements and provide better educational opportunities for children with special needs.

References

fr:Niue#Éducation

redpajama_set_name: RedPajamaWikipedia


text:
virtual void onRspAuthenticate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspAuthenticate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspUserLogin(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspUserLogin")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspUserLogout(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspUserLogout")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspUserPasswordUpdate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspUserPasswordUpdate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspTradingAccountPasswordUpdate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspTradingAccountPasswordUpdate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspOrderInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspOrderInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspParkedOrderInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspParkedOrderInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspParkedOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspParkedOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQueryMaxOrderVolume(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQueryMaxOrderVolume")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspSettlementInfoConfirm(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspSettlementInfoConfirm")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspRemoveParkedOrder(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspRemoveParkedOrder")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspRemoveParkedOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspRemoveParkedOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspExecOrderInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspExecOrderInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspExecOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspExecOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspForQuoteInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspForQuoteInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQuoteInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQuoteInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQuoteAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQuoteAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspBatchOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspBatchOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspCombActionInsert(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspCombActionInsert")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryOrder(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryOrder")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTrade(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTrade")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInvestorPosition(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInvestorPosition")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTradingAccount(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTradingAccount")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInvestor(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInvestor")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTradingCode(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTradingCode")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInstrumentMarginRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInstrumentMarginRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInstrumentCommissionRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInstrumentCommissionRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryExchange(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryExchange")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryProduct(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryProduct")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInstrument(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInstrument")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryDepthMarketData(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryDepthMarketData")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQrySettlementInfo(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQrySettlementInfo")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTransferBank(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTransferBank")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInvestorPositionDetail(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInvestorPositionDetail")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryNotice(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryNotice")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQrySettlementInfoConfirm(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQrySettlementInfoConfirm")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInvestorPositionCombineDetail(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInvestorPositionCombineDetail")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryCFMMCTradingAccountKey(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryCFMMCTradingAccountKey")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryEWarrantOffset(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryEWarrantOffset")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryInvestorProductGroupMargin(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryInvestorProductGroupMargin")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryExchangeMarginRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryExchangeMarginRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryExchangeMarginRateAdjust(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryExchangeMarginRateAdjust")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryExchangeRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryExchangeRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQrySecAgentACIDMap(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQrySecAgentACIDMap")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryProductExchRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryProductExchRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryProductGroup(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryProductGroup")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryOptionInstrTradeCost(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryOptionInstrTradeCost")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryOptionInstrCommRate(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryOptionInstrCommRate")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryExecOrder(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryExecOrder")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryForQuote(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryForQuote")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryQuote(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryQuote")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryCombInstrumentGuard(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryCombInstrumentGuard")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryCombAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryCombAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTransferSerial(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTransferSerial")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryAccountregister(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryAccountregister")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspError(dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspError")(error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnOrder(dict data)
{
	try
	{
		this->get_override("onRtnOrder")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnTrade(dict data)
{
	try
	{
		this->get_override("onRtnTrade")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnOrderInsert(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnOrderInsert")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnOrderAction(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnOrderAction")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnInstrumentStatus(dict data)
{
	try
	{
		this->get_override("onRtnInstrumentStatus")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnTradingNotice(dict data)
{
	try
	{
		this->get_override("onRtnTradingNotice")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnErrorConditionalOrder(dict data)
{
	try
	{
		this->get_override("onRtnErrorConditionalOrder")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnExecOrder(dict data)
{
	try
	{
		this->get_override("onRtnExecOrder")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnExecOrderInsert(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnExecOrderInsert")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnExecOrderAction(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnExecOrderAction")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnForQuoteInsert(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnForQuoteInsert")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnQuote(dict data)
{
	try
	{
		this->get_override("onRtnQuote")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnQuoteInsert(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnQuoteInsert")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnQuoteAction(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnQuoteAction")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnForQuoteRsp(dict data)
{
	try
	{
		this->get_override("onRtnForQuoteRsp")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnCFMMCTradingAccountToken(dict data)
{
	try
	{
		this->get_override("onRtnCFMMCTradingAccountToken")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnBatchOrderAction(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnBatchOrderAction")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnCombAction(dict data)
{
	try
	{
		this->get_override("onRtnCombAction")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnCombActionInsert(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnCombActionInsert")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryContractBank(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryContractBank")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryParkedOrder(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryParkedOrder")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryParkedOrderAction(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryParkedOrderAction")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryTradingNotice(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryTradingNotice")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryBrokerTradingParams(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryBrokerTradingParams")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQryBrokerTradingAlgos(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQryBrokerTradingAlgos")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQueryCFMMCTradingAccountToken(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQueryCFMMCTradingAccountToken")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnFromBankToFutureByBank(dict data)
{
	try
	{
		this->get_override("onRtnFromBankToFutureByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnFromFutureToBankByBank(dict data)
{
	try
	{
		this->get_override("onRtnFromFutureToBankByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromBankToFutureByBank(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromBankToFutureByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromFutureToBankByBank(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromFutureToBankByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnFromBankToFutureByFuture(dict data)
{
	try
	{
		this->get_override("onRtnFromBankToFutureByFuture")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnFromFutureToBankByFuture(dict data)
{
	try
	{
		this->get_override("onRtnFromFutureToBankByFuture")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromBankToFutureByFutureManual(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromBankToFutureByFutureManual")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromFutureToBankByFutureManual(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromFutureToBankByFutureManual")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnQueryBankBalanceByFuture(dict data)
{
	try
	{
		this->get_override("onRtnQueryBankBalanceByFuture")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnBankToFutureByFuture(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnBankToFutureByFuture")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnFutureToBankByFuture(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnFutureToBankByFuture")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnRepealBankToFutureByFutureManual(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnRepealBankToFutureByFutureManual")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnRepealFutureToBankByFutureManual(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnRepealFutureToBankByFutureManual")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onErrRtnQueryBankBalanceByFuture(dict data, dict error)
{
	try
	{
		this->get_override("onErrRtnQueryBankBalanceByFuture")(data, error);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromBankToFutureByFuture(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromBankToFutureByFuture")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnRepealFromFutureToBankByFuture(dict data)
{
	try
	{
		this->get_override("onRtnRepealFromFutureToBankByFuture")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspFromBankToFutureByFuture(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspFromBankToFutureByFuture")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspFromFutureToBankByFuture(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspFromFutureToBankByFuture")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRspQueryBankAccountMoneyByFuture(dict data, dict error, int id, bool last)
{
	try
	{
		this->get_override("onRspQueryBankAccountMoneyByFuture")(data, error, id, last);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnOpenAccountByBank(dict data)
{
	try
	{
		this->get_override("onRtnOpenAccountByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnCancelAccountByBank(dict data)
{
	try
	{
		this->get_override("onRtnCancelAccountByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

virtual void onRtnChangeAccountByBank(dict data)
{
	try
	{
		this->get_override("onRtnChangeAccountByBank")(data);
	}
	catch (error_already_set const &)
	{
		PyErr_Print();
	}
};

redpajama_set_name: RedPajamaGithub


Abstract : Until now, most cryptography implementations on parallel architectures have focused on adapting the software to SIMD architectures initially meant for media applications. In this paper, we review some of the most significant contributions in this area. We then propose a vector architecture to efficiently implement long precision modular multiplications. Having such a data level parallel hardware provides a circuit whose decode and schedule units are at least of the same complexity as those of a scalar processor. The excess transistors are mainly found in the data path. Moreover, the vector approach gives a very modular architecture where resources can be easily redefined. We built a functional simulator onto which we performed a quantitative analysis to study how the resizing of those resources affects the performance of the modular multiplication operation. Hence we not only propose a vector architecture for our Public Key cryptographic operations but also show how we can analyze the impact of design choices on performance. The proposed architecture is also flexible in the sense that the software running on it would offer room for the implementation of counter-measures against side-channel or fault attacks.


text:
Q: Portable nested functions in C Is it possible to write portable C code using nested functions/blocks?
I understand that gcc only supports nested functions as an non-standard extension, and clang only supports blocks - but is there a way to write code that will compile on both using standard C with MACROS?
If it is not possible - what is the best work around?  As an example, how would one implement a portable version of the following sort that takes a parameter? Trivial example in GCC:
int main(int argc, char*[] argv)
{
  char reverse = 0;

  int cmp_func(const void *a, const void *b)
  {
    const int* aa = (const int)a;
    const int* bb = (const int)b;
    return (reverse) ? aa - bb : bb - aa;
  }

  int list[8] = {1,2,3,4,5,20,100,200};
  qsort(list, 8, sizeof(int), &cmp_func);
}

A similar example could be put together using Blocks in Clang. Ideally the solution should be thread-safe (so avoid global variables).
Edit: For clarity, lets assume "standard" means C99.  The above is a trivial example.  What I'm after is a C99 approach to a sort that requires some parameters.  Here it just uses a char as a boolean, but I'm after a solution that would take multiple integers etc. It looks like this might not be possible without global variables.
Edit 2: I realised that passing a void pointer along with a function pointer enables you to do everything that can be done with nested functions.  Thanks to @Quuxplusone for suggesting qsort_r and qsort_s. I've tried to put together a portable wrapper on qsort_r and qsort_s.  It takes a comparator function and a void pointer to store state in, thus removing the dependency on nested functions for intricate sorting algorithms -- so you can compile with both GCC and Clang.
typedef struct
{
  void *arg;
  int (*compar)(const void *a1, const void *a2, void *aarg);
} SortStruct;

int cmp_switch(void *s, const void *aa, const void *bb)
{
  SortStruct *ss = (SortStruct*)s;
  return (ss->compar)(aa, bb, ss->arg);
}

void sort_r(void *base, size_t nel, size_t width,
            int (*compar)(const void *a1, const void *a2, void *aarg), void *arg)
{
  #if (defined _GNU_SOURCE || defined __GNU__ || defined __linux__)

    qsort_r(base, nel, width, compar, arg);

  #elif (defined __APPLE__ || defined __MACH__ || defined __DARWIN__ || \
         defined __FREEBSD__ || defined __BSD__ || \
         defined OpenBSD3_1 || defined OpenBSD3_9)

    SortStruct tmp = {arg, compar};
    qsort_r(base, nel, width, &tmp, &cmp_switch);

  #elif (defined _WIN32 || defined _WIN64 || defined __WINDOWS__)

    SortStruct tmp = {arg, compar};
    qsort_s(*base, nel, width, &cmp_switch, &tmp);

  #else
    #error Cannot detect operating system
  #endif
}

Note: I haven't tested this on many platforms, so please let me know if you see a bug / this doesn't work on your machine.
As an example of usage, I've implemented the same sort as in the chosen answer:
int sort_r_cmp(const void *aa, const void *bb, void *arg)
{
  const int *a = aa, *b = bb, *p = arg;
  int cmp = *a - *b;
  int inv_start = p[0], inv_end = p[1];
  char norm = (*a < inv_start || *a > inv_end || *b < inv_start || *b > inv_end);

  return norm ? cmp : -cmp;
}

int arr[18] = {1, 5, 28, 4, 3, 2, 10, 20, 18, 25, 21, 29, 34, 35, 14, 100, 27, 19};
int p[] = {20, 30};
sort_r(arr, 18, sizeof(int), sort_r_cmp, p);

A: There is no portable way to write nested functions in C simply because the C standard does not allow nested functions.
Macros won't help you much here because they are evaluated by the preprocessor and the compiler will still see the code which nests functions and flag an error.

A: Just for fun (and to answer the original question), yes it is entirely possible to write nested functions in standard-compliant C99 using the macro system to "untangle" the nested version of your code. Here's one possible implementation: https://github.com/Leushenko/C99-Lambda
With it, you can write abominations like this:
typedef int(* fptr)(int);
func(fptr, someFunc, (void) {
    return fn(int, (int a), {
        fptr f = fn(int, (int b), { return b * 6; });
        return a * f(a + 1);
    });
})

Let's be very clear about something though: this is the absolute worst way to write this sort of code in C. If you ever find yourself in a position where you actually need to use a macro library to write code like this, quit your job as a programmer and become a farmer. Use this in production and your colleagues will probably murder you in your sleep.
Also, hilariously enough, even though it's technically standard-compliant, the only compilers with a preprocessor that can handle the sheer weight of that many macros are GCC and Clang anyway.

A: Following the suggestion by @Kirilenko here, I've come up with a solution using global variables and a mutex to pass parameters to a sort comparator function.  This approach is thread-safe, can do everything achieved with nested functions and should be portable between compilers.
This example sorts a list of integers, but inverts the sort for a given region.
// define lock for sort parameters
pthread_mutex_t lock;

// Parameters used in sort funciton - invert region (inclusive)
int invert_start, invert_end;

// Comparitor that uses global variables (invert_start, invert_end) as paramaters
int cmp_func(const void *a, const void *b)
{
  const int aa = *(const int*)a;
  const int bb = *(const int*)b;

  if(aa < invert_start || aa > invert_end ||
     bb < invert_start || bb > invert_end)
  {
    return aa - bb;
  }
  else
  {
    return bb - aa;
  }
}

void sort_things(int* arr, int arr_len, int inv_start, int inv_end)
{
  // Mutex lock
  pthread_mutex_lock(&lock);

  // Set params
  invert_start = inv_start;
  invert_end = inv_end;

  // do sort
  qsort(arr, arr_len, sizeof(*arr), &cmp_func);

  // Mutex free
  pthread_mutex_unlock(&lock);
}

Example results:
input: 1 5 28 4 3 2 10 20 18 25 21 29 34 35 14 100 27 19
invert_start = 20, invert_end = 30
output: 1 2 3 4 5 10 14 18 19 29 28 27 25 21 20 34 35 100

A: Nested functions aren't in the C standard, but it is a gcc extension (when the flag -fnested-functions is actived). Also, you can use a static function (cmp_func) and a extra-parameter (reverse) to do the same thing.

A: Why go to the trouble of nested functions and globals at all? The 100% portable (even to K&R) solution is simply to use two different functions, one to sort in regular order, the other in reverse, and then call it as
qsort(list, 8, sizeof(int), reverse ? cmp_func_reverse : cmp_func);

Note: no need to take the address of a function with &.


On Friday, March 7, 2014, after a week of enjoying Dr. Seuss stories and being introduced to a variety of his character creations, Denair Elementary School students ended the week with an exciting Read Across America culminating event.
Denair Elementary School has a Cross Age Buddy Program. This is where two classrooms at different grade levels pair up to provide learning experiences that promote Common Core Standards and literacy for both grade levels.
On that day, the entire school gathered in the gym to read with their buddies. The students read several stories, and a good time was had by all! Students kept track of the number of books they read during the allotted time and made a pictograph of the results. Since each group knew only their own number, they used the pictograph and their math skills to determine the number of books read by the entire student body. Denair Elementary students read 498 books that day!
Posted in News and tagged Denair Elementary School, Dr. Seuss, Read Across America.


One of many remarkable things about the Romanian New Wave, that ongoing cycle of grueling dramas and bone-dry comedies, is the larger picture it paints. The movies talk to each other, putting Romania's past and present in conversation; to understand, for example, why the frivolous political theater of The Autobiography Of Nicolae Ceausescu is so infuriating, it helps to either be up on the country's history or to have seen one of the numerous films depicting the hardships that Ceausescu, authoritarian leader of Romania for two decades, inflicted upon his people. Context isn't necessary, thankfully, to get wrapped up in the knotty moral dilemma of Graduation, the latest slow burn from writer-director Cristian Mungiu, whose Cannes-winning 4 Months, 3 Weeks, And 2 Days brought the movement to international prominence. But knowing the country (or its cinema) does help make sense of the tough choices facing its main character. His ends may not justify his means, but they do explain them.
Model student Eliza (Maria Drăguş) is finishing out her final semester of high school in a crime-afflicted, construction-clogged mountain town of Transylvania. Eliza's earned a provisional scholarship to study psychology in London—an achievement that fills her physician father, Dr. Romeo Aldea (Adrian Titieni, from Child's Pose and The Death Of Mr. Lazarescu), with as much relief as pride. But on the day before her standardized exams, on which her acceptance to the university hinges, something horrible happens: Dropped off by her dad in the vicinity of the school, Eliza is assaulted by a sexual predator. Although she's able to fend him off, the trauma of the incident rattles her deeply, and she bombs one section of the following day's exam, jeopardizing her bright academic future. Wracked with guilt and panic, Romeo goes into damage-control mode; suddenly this seemingly honest man begins to consider some less than honest solutions to his daughter's problem.
Graduation, in other words, is all about the fragility of personal principles, and how easy it is for one breach of ethics to snowball into a full-blown crisis, especially when it's something as strong as parental devotion putting one's values to the test. The film unfolds with an unsparing plausibility, placing its protagonist on a slippery slope to compromise. Nudged in the right/wrong direction by a shady police inspector (Vlad Ivanov, who played the coldly exploitative abortionist in 4 Months), Romeo greases the system—first, by agreeing to bump an ailing official (Petre Ciubotaru) up the organ transplant waiting list, in implicit exchange for a little leniency in tallying his daughter's test scores. But that questionable decision has a domino effect, and suddenly several other parties, including Eliza herself, are implicated in the conspiracy. Outside factors complicate the situation further. For one, there's the longtime affair Romeo has been having with school teacher Sandra (Mălina Manovici). It also comes to light that Eliza is considering not leaving for London at all, mostly because she doesn't want to split up with her dipshit boyfriend (Rares Andrici). Is there any nobility in this string of backdoor deals if they're being made to assure someone else's life plan?
Working in the methodical mode that's become his signature, Mungiu keeps his camera locked on Romeo, trailing this mild-mannered professional around the rubble-strewn town, like his disembodied conscience. Aside from maybe the similarly celebrated Dardenne brothers, who mines more drama from protracted shots of shoulders and napes? We don't see the attack (surely the plot's most sensational element), because Romeo wasn't there to witness it. And the only music we hear is what comes piping out of a car stereo or wafting off a stage; a non-diegetic score would only interfere with the audience's moral arithmetic. There's a strong stylistic integrity to this study of integrity corrupted. What it lacks is the nerve-fraying immediacy of Mungiu's earlier work. Both 4 Months, 3 Weeks, And 2 Days and the almost equally magnificent Beyond The Hills wrapped their series of unfortunate events in tension worthy of a suspense thriller. Graduation is more calculating, its appeal more strictly intellectual—maybe because it adopts the perspective not of Eliza, weathering a private emotional crucible, but of the parent dispassionately rationalizing every boundary crossed on her behalf.
In the end, it's the hard questions that linger, disquietingly unanswered. Is Romeo's stumble into gray areas and beyond forgivable because he's acting out of paternal protectiveness? Or is he merely projecting his own hopes and dreams, his hatred of their homeland, upon Eliza? Most parents want a better life for their kids, so it's hard to blame this harried father for doing everything in his power to try to arrange one for his only child. At the same time, getting Eliza involved—tempting her to break her own moral code—may incur a cost much greater than a missed collegiate opportunity. Furthermore, in his desperate attempts to free her from the corrupting influence of the country, the good doctor becomes just another corrupting influence. They say the road to hell is paved in good intentions. But what about the road out of Romania? Graduation makes the case that, for the parents who grew up there, damnation may be a price worth paying to send their offspring somewhere better.


text:
Body of Proof er en amerikansk medicinsk drama tv-serie, der blev sendt på ABC fra 29 marts 2011 til 28 maj 2013 i USA, og med Dana Delany i hovedrollen som retsmediciner Dr. Megan Hunt.

Serien sendes på TLC i Danmark

Rolleliste

 Dana Delany som Megan Hunt
 Jeri Ryan som Kate Murphy
 Geoffrey Arend som Ethan Gross
 Windell Middlebrooks som Curtis Brumfield
 Mary Mouser som Lacey Fleming
 Mark Valley som Tommy Sullivan
 Elyes Gabel som Adam Lucas
 John Carroll Lynch som Bud Morris
 Sonja Sohn som Samantha Baker
 Nicholas Bishop som Peter Dunlop

Referencer

Eksterne henvisninger

Amerikanske tv-serier fra 2010'erne
Tv-programmer fra American Broadcasting Company
Dramaserier fra USA
Medicinske-tv-serier fra USA


Windfall of cash: Student Loan or Rainy Day Fund?
US Govt employee - how to best use the TSP 401k plan?
Where do you keep your liquid money?
Help Me Choose a Job and a City. Please Mustachians, don't let me screw this up!
Pay off car loan or invest?
bike commuters with a "formalish" dress code - what do you wear when you ride?
Is this a good commuter/hybrid bike and a good deal?
My Unmustachian Purchase - To sell before it's even running?
Case Study: Where to Stash our Cash?
What to do with an extra $800/month?
Should I sell my RAV4?
turn in lease on brand new car?
Quit the Gym!! Now what??
Do you always do what is financially better at the moment?
Metal roof or standard shingles?
Investing a Big Chunk During a Boom?
can't access $ until 65. include in savings/retirement calculation?
Mustachian tips for Puerto Rican vacation?
How should we divide up our extra money?
Chickening out on the 401(k). Do I need a facepunch?
Should we buy different vehicles or not?
Prepaid, iphone and mms = disappointed wife.
Graduating with an English Degree. Now what?
if you had to start your career over at 35, what would you do?
How fast can you run a 5k?
Telling a friend NOT to get engaged to spendthrift..
Do you pay for a financial planner or accountant?
Cheapest rental car per day?
Anyone know much about ZACT (phone company)?
Trying to start our 'staches, but can't see the forest for the trees. Help!


K-2 Interactives fall under 12 categories of language arts, art and music, geography, math, and health. Mr. Rogers Build A Neighborhood lets students choose among four themes: house, construction site, farm, and castle and create an image by dragging elements from a menu to a background. Sid the Science Kid's Say What? asks students to match animals with the sounds they make. They can choose between English and Spanish.
3-6 Interactives are under 8 subject areas. In Illuminations' Primary Krypto, students combine five number cards using the four arithmetic operations to match a target number. Primary Krypto uses numbers 1–10 only. Operations can be used more than once and there may be more than one solution. Funbrain's What's The Point? asks students to identify the correct ordered pair on a graph or to place a point a graph when given an ordered pair. There are three levels of difficulty.
7-12 Interactives covers 8 subject areas. Sheppard Software's Vocabulary Context Quiz-SAT List offers four possible answers for students to choose from. A correct answer shows the word in another sentence and provides a pronunciation guide. An incorrect answer will supply a definition. Some answers ma y provoke argument, but then so do the SATs. The NY Times Learning Blog's Weekly News Quiz asks ten current events questions and provides immediate feedback and links to more information.


EN Size - 3Max Door Width/Weight – 950mm/105KgCam Action MechanismAdjustable Sweep SpeedAdjustable L..
ARRONE overhead door closing device:Power size 2 to 4 adjustable by spring tensionFunction: Closing,..
This concealed door closer with a cam and roller mechanism makes it perfect for compliance with Appr..
The Rutland ITS 11205 EN 2-5 variable power, concealed slide arm door closer with cam and roller mec..
The Label Neptis for Automatic Swing Doors weighing up to 250kg.Available in different models and ca..
Powermatic® is one of the world's most advanced controlled, concealed door closers. It delivers outs..
Powermatic® Free Swing delivers all of the performance and practical benefits that have made Powerma..
The Rutland Responder 24 Electromagnetic Door Closer has been designed with universal handing and ea..
A restrictor stay with a concealed rail in the frame is an ideal option for holding an external door..
Cam action door closers are renowned for their high efficiency and ease of opening – proof of the el..
The Rutland TS 11205 EN 2-5 overhead slide arm door closer with cam and roller mechanism makes it an..
The Rutland TS.9000 range features highly engineered rack and pinion mechanisms, which control doors..
The TS.5204 range of door closer is engineered from exceptional components and offers variable power..
The TS.9205 door closer is known for high efficiency, dual zone, quality, reliability and ease of op..


text:
'use strict';

var AVAILABLE_SUB_COMMANDS = [
  'rm',
  'add',
  'ls',
  'use'
];
exports.AVAILABLE_SUB_COMMANDS = AVAILABLE_SUB_COMMANDS;

exports.options = {
  'sub-command': {
    enumerable: false,
    type: String,
    info: 'the sub command of {{name}} profile.',
    setter: function(sub) {
      var done = this.async();

      if (!sub) {
        var remain = this.get('_');
        sub = remain.shift();
      }

      if (!sub) {
        return done('You must specifiy the sub-command.\n\n' + displayUsage());
      }

      // alias
      if (sub === 'delete' || sub === 'del' || sub === 'remove') {
        sub = 'rm';
      }

      if (sub === 'list') {
        sub = 'ls';
      }

      if (!~AVAILABLE_SUB_COMMANDS.indexOf(sub)) {
        return done('Invalid sub command.\n\n' + displayUsage() );
      }

      done(null, sub);
    }
  },

  name: {
    enumerable: false,
    type: String,
    info: 'the profile name or names if necessary.',
    setter: function(value) {
      if (!value) {
        var remain = this.get('_');
        value = remain.shift();
      }

      return value;
    }
  },

  'remove-data': {
    type: Boolean,
    info: 'if true, {{name}} profile del <name> will also remove all data of it.',
    setter: function(remove) {
      // User doesn't set 'remove-data' explicitly.
      if (!remove && !~process.argv.indexOf('--no-remove-data')) {
        remove = undefined;
      }
      return remove;
    }
  }
};

exports.info = 'Manage {{cortex}} profiles. \n' + '    Profiles are set of frequent configurations which you can switch between.';

exports.usage = [
  'cortex profile <sub-command> <name>',
  // '{{name}} cortex --sub-command <sub-command> --value <value>',
  '',
  'Where <sub-command> is one of:',
  '  add <name>  : add a new profile',
  '  use <name>  : switch to profile <name> if exists',
  '  rm <name>   : delete a profile if exists',
  '  ls/list     : list all profile names'
];

function displayUsage() {
  return '{{bold Usage:}}\n' + exports.usage.join('\n');
}


text:
The EU Is Investigating Facebook's Phone Number Leak. Zuck's Company Facing Billions In Potential Fines.
By J. Warner • Apr. 14, 2021 • Business & Tech • 374 Views
If there is a sad emoji with money flying away, Facebook may find it appropriate.
Mark Zuckerberg's company is being investigated for a violation of privacy compliance because of that leak – more of a flood – that was found to have revealed personal data from 533 million people.
The European Union's leading privacy regulator, Ireland's Data Protection Commission, is looking into whether Facebook broke the law in its handling of that leak.
If the social media behemoth is found to be in violation of EU rules, it could face billions in fines — possibly 4% of its $86 billion global revenue.
How likely is that to happen?
A DPC said those rules "may have been, and/or are being, infringed in relation to Facebook Users' personal data."
Earlier this month, Business Insider broke the story of personal data dumped, and available for free, in a hacking forum. Among the key pieces in the breach were phone numbers that users didn't make public on Facebook profiles.
A Facebook spokesperson said in a statement to Insider: "We are cooperating fully with the IDPC in its enquiry, which relates to features that make it easier for people to find and connect with friends on our services. These features are common to many apps and we look forward to explaining them and the protections we have put in place."
Facebook users can't be certain whether their information is included. The company does not plan to notify the hundreds of millions affected because users can't really fix the problem — their data, if included, already was published online.
But this investigation will look into Facebook's legal obligation to notify users and European regulators.
The DPC said questioning has begun and, according to a Business Insider story, that Facebook has "furnished a number of responses."


Dental implants are a modern and innovative treatment that can replace one or more missing teeth. At the practice of LeJeune Family Dentistry, we place the implant restoration (crown, bridge, or denture) over the titanium dental implant that has been surgically placed into the jaw by an oral surgeon or periodontist. To learn more about restorations for dental implants in Hampton, Virginia, and to schedule an appointment with our dentist, contact our dental office today.


AHS Choir Trip to DC / Baltimore – HUGE SUCCESS!
This past week/weekend, Mrs. Embley accompanied the AHS Choir and Half and Half to Baltimore and Washington, D.C. where they were scheduled to perform. Mrs. Embley said the kids were fantastic in every sense of the word. Below is part of her summary of the trip.
We had a wonderful trip. The students sang beautifully in Maryland where they received a huge trophy, earning a gold medal for Half and Half and a silver medal for the choir. They also sang on the steps of the Jefferson Memorial. When they sang God Bless America, everyone just stopped. It was an emotional moment.
The three days were packed with adventures, singing and fun. After lunch in the Baltimore Inner Harbor, we went to sing at The Cathedral of St. Matthew, home for the Maryland State Boychoir. This was a beautiful church built in the 1800's. The students performed and were adjudicated by the Director of the Boychoir, Stephen Holmes.
Friday we were up and out early and on our way to DC. We had a tour guide and the students got to see: The White House, The Capital, Lincoln Memorial, Korean Memorial, World War II Memorial, Vietnam Memorial. We had lunch at Union Station and then went to sing at the Jefferson Memorial.
It was a pleasure being with your children. They were polite, well behaved, on time, appreciative and so much fun to be with. You have all done a wonderful job raising them!
I want to thank Megan (Wolff) for all she did to make this trip such a success and to thank Nicole Machin and Emmalynn Raynor for their help in chaperoning.
Along with Mrs. Embley's pride, we are immensely proud of our AHS students.
I was in awe of the AHS students who presented their PLTW projects. Students had to design and build something that helped people (who typically weren't able to) pick things up. With a budget of about $2.50, this was truly a challenge. As mentioned in a previous post, AHS kids took 5th place out of about 15 schools in the State. Below is a video of their device performing one of the more challenging actions…picking up a penny.
I am constantly reminded how amazing it is to work in such a wonderful school district. Here was a snapshot of my day!
I was able to sit in on Ms. Raynor's Economic's class at AHS this morning. Loved hearing "the Great Walmart Debate" from our students. Terrific points were made and valid arguments shared. Very impressive.
Did you hear that our PLTW (Project Lead the Way) team placed 5th in NJ? They took part in the "Helping Hands" Design Challenge at Rowan University!
In NES, Mr. Rowley spoke to Mrs. Nielsen's Kindergarten class to share some more skills that focused on empathy and being aware of other's feelings. Helping kids to see the power of there actions and a continued message from Rachel's Challenge.
On Wednesday, I visited Ms. Usignol's 3rd grade Biography Cafe. Kids were fantastic and really knew their information beyond basic questions. Parents and guest loved it. Well done!
Community Presentation – School Performance Reports – TONIGHT!
We are excited and pleased to share with you our State Performance Report for all three of our schools. Please join us for a very informative evening – TONIGHT – Thursday, April 3rd @ 7:00 p.m. in the Allentown High School auditorium. .