text:
All you need is development?
Development Studies discipline, Faculty of Social Sciences, University of Helsinki
Event: Financing for Sustainable Development in Africa
Time: Fri 1st November 2019 at 9 a.m. – 11.00 a.m. (coffee will be served before the event)
Venue: Think Corner (Stage), University of Helsinki (Yliopistonkatu 4, Helsinki)
Organisers: Finnish Society for Development Research, FINGO, Development Studies (University of Helsinki), UniPID, and the Finnish Development Policy Committee
Streamed online: https://www.helsinki.fi/fi/unitube/video/21249
Africa's prominence as the main development partner of Finland and the European Union is becoming ever more evident. Within the past five months, both the Government of Finland and the new President of the European Commission, Ursula von der Leyen, have announced that they will start drafting respective new Africa strategies. With the importance of Africa and financing for sustainable development on the rise, we want to ask: Is there a shared vision between the EU, Finland and Africa on development financing? Where is the geographic and sectoral added value of Finland's and EU's development financing in Africa? How can we ensure that the financing strengthens democratic principles and respects human rights? Where private sector financing can and should be leveraged? What is the role of civil society organizations in this puzzle? How to effectively bridge development research and the new policy initiatives?
The event invites academics, policy and decision makers and civil society representatives to debate how the future relations between Africa and Finland and the EU should evolve.
09:00 Welcoming words
09:05 Africa on the rise in Finnish Foreign Policy
Johanna Sumuvuori, State Secretary to the Minister for Foreign Affairs
09:20 The EU-Africa Puzzle: Reflections from the Africa Platform
Paul Okumu, Head of the Secretariat, Africa Platform
09:45 Financing for Sustainable Development and Partnerships in Africa – Panel discussion
Saara-Sofia Sirén, Member of Parliament and Vice-Chair of the Development Policy Committee
Gutu Wayessa, University lecturer, Development Studies, University of Helsinki
Leena Vastapuu, Visiting researcher, Tampere Peace Research Institute
Jannika Ranta, Senior Adviser, Confederation of Finnish Industries
Katja Ahlfors, Director, Unit for Development Policy, Ministry for Foreign Affairs of Finland
with comments from Johanna Sumuvuori and Paul Okumu
The panel discussion is moderated by journalist Reetta Räty. The seminar will be held in English.
You can find the speakers' bionotes from the FB-event details (https://www.facebook.com/events/385209179049967/)
Registrations by 29th October: https://elomake.helsinki.fi/lomakkeet/100565/lomake.html
Environmental Emergency: Demanding for Urgent, Radical Transformations
"Here at the University, we take part in multidisciplinary research relating to the environment and the multiple crises currently happening within it, and we want to use our platform and expertise as researchers to take and demand for urgent action.
We are living in a time of environmental emergency created by human actions. It is clear that out ways of life, especially here in the Global North, are not aligned with the carrying capacity of our common home planet, the Earth. Solving the environmental crises should be today's political priority. What is at stake is life itself, both human and non-human. As important as individual choices can be, the changes that are needed are far bigger in scale, and must be enacted through the political system. We need structural, wide-ranging transformations in order to tackle the climate crisis in a socially just way, and we need them now."
With these words, Development Studies PhD candidate Sanna Komi opened a silent vigil for the environmental emergency on Friday. The event was arranged by Development Studies in cooperation with Helsinki Institute of Sustainability Science HELSUS, The University of Helsinki Collegium for Advanced Studies (HCAS), The Student Union's Environmental Committee and the Elokapina initiative as a part of the Global Climate Strike week. After the opening speech, a silent moment of 11 minutes was held to mark the 11 years that we have according to last year's Intergovernmental Planetary Climate Committee's (IPCC) report to tackle climate change before it's impacts become irreversible and truly catastrophic. The silent moment was followed by the sound of a bell as a call for action, and short speeches from representatives of the different organisers as well as University of Helsinki students.
Professor of World Politics Teivo Teivainen reading University of Helsinki rector's letter of support for the event (pictures courtesy of Saana Hokkanen)
This action is accompanied by an open letter to the Prime Minister of Finland and the Mayor of Helsinki, in which we demand for radical and urgent policy initiatives to tackle this emergency.
You can sign the letter here: http://chng.it/dYWyrmnD
Associate professor of Development Studies Markus Kröger urging for sanctions on Brazilian goods due to the ongoing burning of the Amazon and other Brazilian rainforests. (pictures courtesy of Saana Hokkanen)
We would like to thank everyone who came to show their support, and encourage everyone to take action during this climate strike week, which will culminate in climate marches in different Finnish cities on Friday 27.9.
Throughout the week, Elokapina is arranging focused demonstrations and workshops:
Monday 23.9.: The Red List Reading, where the entire list of 2700 endangered species in Finland is read 4 times during the day: https://www.facebook.com/events/2695678497110594
Monday 23.9.: Nonviolent direct action training: https://www.facebook.com/events/2409273232675241
Tuesday 24.9.: Climate anxiety workshop with Panu Pihkala: https://www.facebook.com/events/1564048937063293
Friday 27.9.: Climate Strike March
Helsinki: https://www.facebook.com/events/929882457363184/
Tampere: https://www.facebook.com/events/974490042916201/
Turku: https://www.facebook.com/events/2233521740091425/
Posted on 8.8.2019 8.8.2019
Event: Brown Bag Lunch Seminar with Katy Machoa
Plurinacionalidad: Mujeres Amazónicas de Pastaza y Nankints – Plurinationality: Amazonian Women from Pastaza and Nankints
(the presentation will be in Spanish; written translation in English)
Date: Thursday, August 15th
Venue: Unioninkatu 35, 3rd floor, room 344
ABSTRACT: A través de la experiencia organizativa en el que irrumpen las mujeres amazónicas de Pastaza y Nankints en un escenario adverso en donde el estado moderno/colonia/capitalista se encuentra legitimado expongo tanto las estrategias resistencia como las de dominación que son ejercidos sobre estos procesos organizativos para el debilitamiento del autogobierno y autonomía territorial. En este escenario políticamente desfavorable para la lucha social, las mujeres amazónicas con su pedagogía trazan el camino de la defensa territorial. En este contexto, sostengo que la plurinacionalidad tiene un doble carácter. Por un lado en la Constitución en el que aparece lejana, inalcanzable, inclusive como sin vida, y por el otro es dinámica y vital cuando es tomada, interpretada, codificada, apropiada y reapropiada por las experiencias de la defensa del territorio.
Through the organizational experience in which Amazonian women from Pastaza and Nankints break into an adverse scenario where the modern / colonial / capitalist state is legitimized, I expose resistance and domination strategies that are exercised in organizational processes for self-government and territorial autonomy. In a politically unfavorable scenario of social struggle, Amazonian women use their pedagogy toi trace the path of territorial defense.
In this context, I argue that plurinacionality has a double character. On the one hand, in the Constitution it appears distant, unattainable, and lifeless, and on the other it is dynamic and vital when it is interpreted, codified, specifically and re-appropriated by the experiences of the territorial defense.
BIOGRAPHIA:
Katy Machoa, de la nacionalidad kichwa amazónica de Shamato, como ex-dirigente de la Mujer de la CONAIE (2014-2017), lideró la defensa de los derechos humanos y colectivos a través de la campaña Resistir es mi derecho, por la defensa del territorio a nivel nacional e internacional. Dentro de sus esfuerzos se incluye la defensa del sistema intercultural bilingüe SEIB y el libre acceso a la educación superior para la juventud de los pueblos y nacionalidades del Ecuador. Katy ha terminado su Maestría en estudios Latinoamericanos en la UASB y actualmente colabora en el proyecto de investigación de la Academia de Finlandia Goal 4+: Including Eco-cultural Pluralism in Quality Education in Ecuadorian Amazonia (2018-2022).
Katy Machoa is part of the Kichwa Community of Shamato. As a former leader of the Women of the CONAIE (2014-2017), she led the defense of human and collective rights through the campaign Resistir es mi derecho [Resist is my right], participating in the struggle of indigenous women for the defense of the territory nationally and internationally. She is active for the defense of the intercultural bilingual education system and the free access to higher education for the youth of the peoples and nationalities of Ecuador. Katy holds a Master's Degree in Latin American Studies at the Universidad Andina Simón Bolívar, Quito, and currently works in the research project of the Academy of Finland Goal 4+: Including Eco-cultural Pluralism in Quality Education in Ecuadorian Amazonia (2018-2022).
Posted on 25.5.2019
Event: Mining and Indigenous Peoples in the Arctic – Panel Discussion
Date: Tuesday, May 28th
Venue: Think Lounge (upstairs in the Think Corner, Yliopistonkatu 4, 00100 Helsinki
The collision between mining and indigenous lifeways is heating up in the Nordic region. Permits are currently pending to expand mineral extraction in Sápmi, the Artic region spanning four national governments (Finland, Norway, Russia and Sweden), which is home to indigenous Sami peoples. Mining has already increased in the Barents region of Sápmi, and likely to soon be in issue also in Finland. How this collision is managed over the next decades may well be decisive for the future of indigenous lifeways in the Artic.
Meanwhile, similar collisions, with similar stakes, are raging also elsewhere in the Arctic (and across the globe). The localized responses of indigenous peoples around the world to the pressures of mining are widely diverse, and take place in hugely complex configurations. This public event will bring together and engage representatives from various stakeholder groups and sectors, including the mining industry, indigenous peoples, government, and civil society organizations – with experiences and examples shared also from other regions in the Arctic (Canada, Sweden, Norway, Greenland). What can we in Finland learn from experiences elsewhere in the Arctic, so as not to repeat the same mistakes? How does Finland's mining law meet these and other challenges? What would be the impact of the Comprehensive Economic and Trade Agreement (CETA) (between the EU and Canada) on Europe's only indigenous people, based on experiences elsewhere? Who has the final rights and power to veto or approve a mining claim on Sámi territory?
With this panel discussion, we hope to evoke the complexity and messiness of real-world processes, whilst finding conflict-free ways forward. The aim of the event is to give space to reflection on the experiences and accomplishments of evolving political strategies from a comparative perspective.
17.00-17.05 – Welcome and Opening Words – Jeremy Gould, Professor Emeritus in Anthropology, University of Helsinki
17.05-17.15 – What does research have to say about the legal rights, processes and impacts of new mining ventures on indigenous territory? A brief overview summarizing findings and discourse in the scientific literature – Mark Nuttall,
Professor and Henry Marshall Tory Chair of Anthropology, University of Alberta, Canada
17.15-18.00 – PANEL DISCUSSION
Moderator: Aili Pyhälä, Adjunct Professor, Lecturer in Development Studies, University of Helsinki
Mark Nuttall – Professor of Anthropology, University of Alberta, Canada
Anne Nuorgam – University of Lapland; Member of Saami Parliament (Finland)
Terho Liikamaa – Director of TUKES Mining Centre
Heta Heiskanen – PhD, Tampere University, ALL-YOUTH STN project
Päivi A. Karvinen –Finnish Ministry of the Environment
18-00-19.00 – Q&A – from the floor
Event: Brown Bag Lunch Seminar with Charles Gore
Brown Bag Seminar on Reading and Writing UNCTAD's Least Developed Countries Report
Unioninkatu 35, 3rd floor, room 344
ABSTRACT: Global reports written in international organizations, such as UNCTAD, UNIDO, UNDESA and ILO, offer a useful and often neglected source of information, research and policy analysis on developing countries and the international system.
Based on my experience as lead author and director of UNCTAD's Least Developed Countries Report from 2000 to 2012, this seminar will provide an inside look at how these reports are written and also how to read them.
Some of the key findings in the sequence of LDC Reports from 2000 to 2010 will be used as examples. These covered issues such as: capital flows to LDCs; poverty trends in LDCs; PRSPs; the relationship between trade and poverty; the HIPC initiative; STI and knowledge for development; aid effectiveness and the problem of ownership; development governance; progress towards MDGs; and the effectiveness of international support measures for least developed countries.
BIOGRAPHY: Charles Gore is a Visiting Scholar in Development Studies in the University of Helsinki from January to June 2019. He is an Honorary Professor in Economics at the University of Glasgow, a Research Associate in Global Studies at the University of Sussex, a Non-Resident Senior Research Fellow at UNU-WIDER and a Fellow of the Academy of Social Sciences (UK). Between 1999 and 2008, he was team leader and principal author of UNCTAD's Least Developed Countries Report, and from 2008 until 2012 he was Special Coordinator for Cross-Sectoral Issues, directing research on Africa and on least developed countries in UNCTAD.
Originally trained in economic geography, he has a Bachelor's and a Master's degree from the University of Cambridge and a Ph.D., based on two years fieldwork in Ghana, from Pennsylvania State University. He was a Lecturer in Development Studies at the University of Wales from 1976 to 1991, and during that time he wrote Regions in Question (Methuen 1984, re-issued 2011 in Routledge Revivals), and worked as a consultant for UNCTAD on why landlockedness is a development problem and what to do about it. In the 1990s he worked more closely with UN agencies in Geneva, writing chapters for UNCTAD's Trade and Development Report (1994, 1997, 1998), and managing two multi-country research projects – one (in UNCTAD) on lessons of East Asian development for Africa, and another (in the International Institute for Labour Studies, ILO) on the global applicability of the concept of social exclusion.
His academic publications examine the nature of the explanations, normative judgements and discursive narratives which underpin international development practice. Topics addressed include: how geographic space is linked to development in explanations of regional development; methodological nationalism and the misunderstanding of East Asian development; the nature of the Washington Consensus; Amartya Sen's concepts of entitlement and capability; and the romantic violence of the MDGs. He is currently working on a history of how the idea of poverty went global in the 1970s, which is part of a broader examination of the concept of global goals.
Event: Brown Bag Lunch Seminar with Tristan Partridge and Nidia Catherine Gonzalez Pineros
Double Brown Bag Seminars on indigenous communities and conservation in Ecuador and Colombia on Wed 22 May at 11:00 until 13:00, Unioninkatu room 344
Tristan Partridge (UAB-ICTA): Indigenous community conservation in highland Ecuador: mobilizing the commons and 'Buen Vivir'
Nidia Catherine Gonzalez Pineros (Bologna and Santo Tomas): Dialogues between knowledge systems (indigenous territoriality / western territoriality) in rainforest beyond capitalism.
Tristan Partridge
In highland Ecuador, efforts to protect landscapes and sustain livelihoods have been strengthened by renewed political organizing. This includes action at the local level (recovering shared resources and managing the commons) and nationally (engaging with constitutional rights to 'Buen Vivir' or 'Harmonious Living'). Based on ethnographic fieldwork with the indigenous community of San Isidro, this paper explores how commons resources have been repurposed to meet contemporary community needs and to facilitate cooperation with neighbouring communities. These actions further facilitated successful protest movements against the local expansion of agro-industrial plantations and in defense of Buen Vivir – with repercussions for how we think about links between the commons, conservation, and political mobilization.
Tristan Partridge is a Postdoctoral Research Fellow at the ICTA Institute of Environmental Science and Technology (Universitat Autònoma de Barcelona) working on environmental justice and indigenous political action. He received a Ph.D. in Social Anthropology from the University of Edinburgh and has conducted fieldwork in Ecuador, the UK, India, and the US. Through projects on land and water rights, energy, and community organizing, his research examines the use and extraction of natural resources and the uneven distribution of related socio-ecological impacts. He is an affiliated Research Fellow at the University of California, Santa Barbara.
url: https://ictaweb.uab.cat/personal_detail.php?id=4074
twitter: @TristanPartridg
Nidia Catherine Gonzalez Pineros
This presentation focuses on the knowledge of indigenous territoriality in rainforest and its importance for the provision of global goods such as biodiversity, public health and food security. In developing countries national forestry policies and private investment still pursue the maximisation of timber and mineral resources productivity, rather than investing in carbon neutral goods or in cultural ecological heritage. This presentation shows how shifting cultivation in agroforestry represents an empirical use of connectedness, showing how it can lead toward a collaborative perspective of values on human-nature relationship to solve contemporary problems related to forestry management. These practices are common enough to be called principles, evidence of these systems is common in Asia, Africa and South America. The circulation of knowledge across multiple levels of governance require new methodologies and new modes of governing resources.
Nidia Catherine Gonzalez Pineros is a research fellow in innovation on governance and climate change at the School of Political and Social Sciences, University of Bologna, Italy & Universidad Santo Tomas, Colombia. Her work focuses on global environmental politics, local governance and REDD+, the role of innovation and institutional change in developing countries in the current post-2015 negotiating process, with a regional specialism in Latin America. She holds a PhD from the Johannes Gutenberg of Mainz, Germany (2005) in Philosophy and Political Science, and a BA from National University of Colombia(2000) in Political Science. She joined University of Bologna in 2014 with 8 years' experience of academic and policy research in South America and Europe. She is fluent in Italian, German and Spanish, and publish her work in these languages. Her research interest lies in understanding how local and global environmental governance can bridge to solve trans-national environmental problems, and how strategic resources in developing countries can be used to explore alternative mechanisms of regulation including intergenerational rights and new environmental policy instruments. Much of her recent work also explores how socio-technological innovation and institutional transformations produce and reproduce power relations, boundaries / synergies in the global South with implications for "new earth system governance". She is interested in the empirical dimensions of these dynamics, especially inter scalar innovation processes.
Upcoming Event: The Arts for Justice: Indigenous Coalition Building and Artistic Activism
The Arts for Justice,
Indigenous Coalition Building and Artistic Activism
April 15that 9:15–17:00
University of Helsinki, lecture room 5 (Fabianinkatu 33)
Seminar organized by Indigenous Studies and Environmental Humanities/ University of Helsinki and University of Arts Helsinki
This seminar discusses the contemporary engagements with artistic forms of evidencing, communicating, and resisting, such as visual arts, performance, theatre, writing, film, video, eco-media and social media that address environmental and social justice and Indigenous rights. How are various constituencies showcasing Indigenous ways of knowing and being, as well as calling for actions and approaches that challenge dominant practices, such as extractivism, pipelines, land grabbing, and other threats to Indigenous values and homelands? How might artistic activism contribute to building coalitions across nations and differences? What techniques are used to reach audiences and what possible changes can result? What can be evidenced by the arts? The participants are both artists and researchers, sharing their works and ideas, and then we encourage the participants to take part in the conversation in which we will learn from each other.
Preliminary schedule:
9:15 Opening words by the organisers
9:30–10:30 Keynote by Marja Helander (Sámi visual and video artist)
10:30–10:45 Coffee
10:45–12:15 Panel discussion 1 (facilitator Lea Kantonen):
Sasha Huber (artist and University of Arts Helsinki), Eeva-Kristiina Harlin (University of Oulu), Pirjo K. Virtanen (University of Helsinki), Cheryl J. Fish (City University of New York)
12:15–13:30 Lunch
13:30–14:15 Keynote by May-Brit Öhman (University of Uppsala):
14:30–16:00 Panel discussion 2 (facilitator Cheryl J. Fish):
Stina Roos (Sámi artist), Klisala Harrison (University of Helsinki), Lea Kantonen (University of Arts Helsinki), Hanna Guttorm (University of Helsinki)
16:00–16:45 Student works' presentation
16:45–17:00 End circle
17:00 Wine reception & Poster Exhibition by the students in the course Biocultural approaches to the environment and conservation (IND-512)
Please Register by April 5: https://elomake.helsinki.fi/lomakkeet/97035/lomake.html
Organisers: Pirjo Kristiina Virtanen, Hanna Guttorm–University of Helsinki; Lea Kantonen–University of Arts Helsinki; Cheryl J. Fish-City University of New York
How poverty went global. Development Studies Seminar Tue 5 February.
Visiting scholar Charles Gore
"How Poverty Went Global: Development, Basic Needs, Human Rights and Social Justice in the 1970s"
Tuesday 5th February
10.15-11.45Unioninkatu 35, 3rd floor, room 344ABSTRACT: This presentation, based on on-going work, seeks to reconstruct how the idea of poverty became a global concept in the 1970s. This occurred as modernization theory was challenged and various alternative visions of world order were put forward in a context of deepening global interdependence. The frame shift in the conceptualization of poverty, which was articulated through the notion of basic human needs, preceded – and became intertwined with – the take-off of international human rights practice in 1977. This was a fork in the road which has led to the world we live in today. Reconstructing the history of how poverty went global then enables the imagination and design of alternative just world futures now.BIOGRAPHY: Charles Gore is a Visiting Scholar in Development Studies in the University of Helsinki from January to June 2019. He is an Honorary Professor in Economics at the University of Glasgow, a Research Associate in Global Studies at the University of Sussex, a Non-Resident Senior Research Fellow at UNU-WIDER and a Fellow of the Academy of Social Sciences (UK). Between 1999 and 2008, he was team leader and principal author of UNCTAD's Least Developed Countries Report, and from 2008 until 2012 he was Special Coordinator for Cross-Sectoral Issues, directing research on Africa and on least developed countries in UNCTAD.
Development Days 27.2-1.3.2019 – Call for abstracts
Development Days 2019: Repositioning global development: changing actors, geographies and ontologies
27.2-1.3.2019, House of Science and Letters (Tieteidentalo), Helsinki, Finland Organizer: Finnish Society for Development Research
Among some of the most pressing global problems today are: i) the widening social inequalities within and between countries; ii) environmental pollution, ecological crises and conflicts over land and other resources; iii) migration, and the rise of extremism and populism; and iv) technological change contributing to increased risks to personal security and safety. While these issues are of complex origins, they are linked to globalization and the dominant global development model, in which corporate and individualistic interests stand above social and environmental ones, and logics, values and interests of Western countries stand above those of other countries. The magnitude of the crises linked to these global problems have led some academics, and some politicians to rethink their political and economic strategies and agendas. At the same time, recent years have witnessed simultaneous trends of weakening of established global economic and political leadership on the one hand, and the emergence of new economic powers on the other. This has led to the ascent of new actors in the global development arena, most notably China, India and Brazil. They and many others are rapidly emerging from what the conventional economic model had labelled as 'disadvantaged' parts of the world, and are increasingly playing a key role in development processes worldwide.
The crossroads at which humanity stands today requires a shift in development logics and
paradigm. In this conference, we will discuss alternative development strategies and the role of emerging actors in development across multiple scales. Contributions from various
disciplines, including human geography, environmental politics, development studies,
sociology and institutional economics are called upon to discuss themes and questions, such as: 1. To what extent do global power shifts entail possibilities for more democratic—or conversely, more authoritarian—global governance? 2. What are the potentials of development and cooperation programmes in which problems and solutions emerge from geographical, societal, and gender-based margins? 3. Can we expect more socially and environmentally just, equality-laden and economically viable futures in the context of shifting geographies of Development?
The conference will serve as a platform to share research findings and experiences, as well as to develop new ideas and strategies for shifting development narratives and agendas, for re-connecting actors from different scales, and critically examining and redefining the meanings and logics of development. We welcome development scholars from a plurality of disciplines and critical theories, as well as practitioners from a broad range of professional backgrounds to explore ways to engage in progressive debates of building bridges between actors, scales, movements and societies at multiple levels and beyond global-local binaries.
Call for abstracts for Development Days 2019 Conference is now open!
We invite you to join us in Helsinki, for Development Days 2019 Conference Repositioning global development: changing actors, geographies and ontologies, to take place on 27.2-1.3.2019. Join and contribute to a critical academic and practitioner exchange on new trends, promises, pitfalls and alternatives in development-related research.
You can submit your abstracts directly to one of the proposed working groups, by contacting their chairs. The abstracts of 300-350 words should be submitted by 31 December 2018, directly to chairs of the working group/s of your choice. In case of doubts concerning the selection of working group/s, please submit your abstract to the chair of the organising committee, Sabaheta Ramcilovik-Suominen (sabaheta.ramcilovik- suominen(at)uef.fi) and she will try to assign it to the fitting working group or event.
The working groups address a range of themes including decoloniality, transformations in social movements, social organisations, research and education, to name a few. In addition to working groups, the conference includes Master and Doctoral workshops, as well as a civil society event; offering a variety of opportunities for you to engage and present your research, to learn about other research in the field, and to strengthen your network.
We are very pleased to announce our keynote speakers for the Development Days 2019 conference: Giles Mohan, Ashish Kothari and Rosalba Icaza Garza.
Conference Schedule:
31.10. 2018: Deadline for session proposals
15.11. 2018: Call for paper/presentation abstracts
31.12.2018: Deadline for paper/presentation abstract submissions
15.01.2019. Notifications of accepted papers /presentation abstracts (by WG Chairs)
1.1.-20.2.2019: Registration for the conference open
27.2. 2019: Pre-Conference Workshops for Master's and PhD students
28.2-1.3.2019. Development Days Conference.
Guest lecture on 11.12.2018
Marcos Pedlowski gives a guest lecture on 11.12.2018:
Tue 11.12.2018: The Brazilian Amazon and the prospects of explosive deforestation after the 2018 presidential elections
The Brazilian Amazon is considered as one of the largest containers of global biodiversity. However, since the early 1960s the region is facing an increased process of perturbation through a combination of outright deforestation for agriculture expansion and different forms of degradation by loggers and miners. After a decade of relatively low rates of deforestation, the Brazilian Amazon is facing an increase in rates of deforestation and forest degradation, mostly because of the expansion of soybeans and sugarcane plantations, cattle raising, mining, logging, and the construction of large hydroelectric plants. The recent election of Mr. Jair Bolsonaro, a vocal opponent of conservation efforts and to the Paris Climate Agreement, will probably increase the pressure on the Brazilian Amazon and the indigenous people living there. Mr. Bolsonaro has already announced that he will dramatically downsize the Ministry of the Environment and place the environmental protection agencies at the Ministry of Agriculture. This move, if confirmed, will increase the prospects of an exponential increase in deforestation in the Brazilian Amazon. This outcome would certainly contribute to weaken the efforts to diminish the pace of climate change.
Time and place: 14:00 – 16:00, Metsätalo, lecture hall 2 (B212), Unioninkatu 40
Dr. Marcos Pedlowski holds a BS in Geography from Universidade Federal do Rio de Janeiro (1986), and MSC in Geography from Universidade Federal do Rio de Janeiro (1990) and a PhD degree in Environmental Design And Planning from Virginia Tech (1997). Since 1998 he has been an associate professor at the Centro de Ciências do Homem in the Universidade Estadual do Norte Fluminense in Brazil. Dr. Pedlowski's interests involve a wide array of topics linked to geographical studies and his research projects focus on the following subjects: land reform, land cover and land use changes; policies of environmental conservation, and urban studies. More information: https://scholar.google.com/citations?user=YXdaAuYAAAAJ&hl=pt-BR and https://www.researchgate.net/profile/Marcos_Pedlowski. Dr. Pedlowski is a visiting research in Development Studies in the Faculty of Social Sciences at the University of Helsinki in December 2018.
Award Announcement
Description of Development Studies
Doctoral defences
Views from the field: Pachamama is crying – Climate Change in the Peruvian highlands
Editorial: Global Climate Emergency: after COP24, climate science, urgency, and the threat to humanity
Press Release: Fighting for biodiversity loss in Madagascar requires greater collaboration between researchers and managers – Kehitysmaatutkimus – Development Studies @ University of Helsinki on Eija Ranta – Suomi, ilmastonmuutos ja globaali eriarvoisuus | Eija Ranta – Finland, climate change, and global inequality


5 Ways Of Wellbeing through Music Education!
Here's the UK Government Office For Science sponsored global 'Foresight' research project – with nef the New Economics Foundation – The 5 Ways to Wellbeing. I've changed it to the 5 Ways Of Wellbeing – 'cos that's an acronym making WOW! And added WOW! ME! to make it the 5 Ways Of Wellbeing through Music Education. Discover below the research, talks and stories that show us how to WOW! Me! through the 5 Ways. Be ready to laugh, cry, smile, learn and find out how VITAL music education (not just listening) is to WOW! ME! and YOU! and YOU! and YOU! and YOU! and YOU! and YOU! and YOU! and YOU!
Before you get going…take the WOW! ME! Workout!
Where are you on the WOW! ME! Scale of Wellbeing? Try just one part – KEEP LEARNING – It's not a 'test' it's a way to help you find where you are; and more important where you want to be. If you think you CAN'T learn music – you are right – because you won't try. If you think you CAN – you are even more right- BECAUSE YOU WANT TO and…..because there are SO many ways today (including our Emoji-Go! System) to help everyone, of every age and every ability.
Barack Obama talks how to WOW! ME!
CONNECT -with others: your family, your friends, your community……..and YOURSELF!!! What better way than to share the pleasures of learning, playing, singing and sharing through social media what you are doing with MUSIC? Is there a better way? Not if you read everything below and find out what, why and how music is THE most important element in our lives for enhancing our wellbeing and happiness AND our education, emotional and physical ability all at once!
Let's start with CONNECT with YOURSELF and others with the greatest thing that music does – impacts on our emotions. From listening to the music that enhances the movies experience from the joy and fear in Star Wars to love and loss in Sleeping in Seattle.
Music is a powerful communication tool–it causes us to laugh, cry, think and question. What better word to use than CONNECT to give the result of communication its truest result. Bassist and five-time Grammy winner, Victor Wooten, asks us to approach music the same way we learn verbal language–by embracing mistakes and playing as often as possible.
Victor Wooten is an innovator, composer, arranger, producer, vocalist, and multi-instrumentalist. He has been called the greatest bass player in the world. He is a skilled naturalist and teacher, a published author, a magician, husband and father of four, and a five-time Grammy award winner.


text:
Grant Shapps: How to track this general election in real-time using Twitter
Reviving our high streets must mean working with the market
Triumphator Johnson – our final Cabinet League Table of 2019
Our survey. Gove is Minister of the Year.
Cabinet League Table: Johnson takes the gold – with Javid in second place
The Lewis Carroll Queen's Speech
Grant Shapps is the most followed Conservative MP on Twitter, having tweeted most days since March 2008 @grantshapps
On March 28th 1992 the then Prime Minister John Major hit the campaign trail in Luton.
Walking through a pedestrianised shopping centre he was jostled by a hostile left-wing crowd. Progress was slow until he spotted a soapbox and he decided to clamber on board. Grabbing a megaphone he retorted:
"No mob ever taking to the streets is going to stop us coming out and talking to the ordinary decent people of this country."
That was a moment I particularly remember thanks to a completely new innovation in British TV. Three years earlier Sky had launched its News channel and this was the first general election to be covered around the clock. From then on the 24-hour news channels have been on hand to instantly capture moments of impromptu voter interaction; like the time when John Prescott throw a punch on an abusive voter in 2001.
Wind forward to the 2005 election and the speed of election coverage had taken yet another leap forward.
Blogs were all the rage and with commentary no longer restricted to the newspapers, every twist and turn in the 2005 campaign was reported online. Finding out what the commentariat thought of the campaign was no longer a question of waiting for the morning papers to report on an event from the day before. Now blogs became hourly accounts of the day's key election events.
And in this 2010 general election, technology has once again powered ahead. For better or worse, this is Britain's first ever twitter election.
Now the coverage is quite literally second by second. A misused phrase in an interview on some remote local radio station will be instantly tweeted (and then re-tweeted) to thousands of others including mainstream media journalists who are increasingly relying on this source of first hand election coverage.
The smallest trip or stumble twittered or worse still tweetpic'd (a photograph or video on twitter) and a leading politician's polite hello in a coffee bar whilst waiting for a train, will more than likely be instantly twittered all over the internet and beyond.
No British election campaign has ever been so open, so transparent or so public. One twitter feed even invites members of the public to email tweet@eyespy.mp to create crowd sourced gossip about their actual or wannabe representatives.
But is everyone benefiting from this real-time online revolution?
Definitely not. For one thing, plenty of people have no idea how to make twitter actually work for them.
"I really don't care what someone just had for their lunch," is a common complaint from those who have casually signed up for twitter and then left in despair at the sheer volume of what they regard as pointless tweets made each day.
So how can you use twitter to gain highly relevant and up to the minute campaign news?
These are the simple steps I've found have worked for me:
Sign up to twitter at twitter.com
Follow relevant people or organisations, aligned with your interests.
In order to build your own following on twitter – useful if you plan to post tweets – you'll usually want to follow back those who have followed you. It's only polite, yet at the same time it will also cause twitter feed mayhem.At this point you'll quickly discover that the trouble is that you've no way of knowing whether the people you end up following back are the ones most likely to tweet about what they've just had for lunch. That's because although their passing interest may have been you or politics, they might actually spend most of their own online time discussing other stuff, like which movie they've just watched. Pretty soon your own twitter home page will be filled with anything but up to the minute news on the general election.
The trick is to take advantage of a relatively new twitter feature called "Lists". A list enables you to view filtered twitter feeds only from those individuals that you've added to your own "list". It's completely separate from who you happen to follow or your followers and so it is an uncluttered real-time news feed exclusively centred around the subjects you're most interested in.
Now if you've gone ahead and 'Listed' the 50 twitter feeds that I've provided below then you'll be receiving a real-time news feed covering a slightly centre-right view of this general election campaign. You can tweak my "list" to suit your own personalised election news needs. And whilst you're at it, you can set up other lists to satisfy your personal passion for fly fishing or anything else.
Soon you'll discover all manner of fast moving election news with updates minute by minute. Plenty of it will be gossip and some even groundless, but I can tell you that nearly every big political story in the past year has appeared on twitter first.
When Hewitt and Hoon challenged Brown's leadership, I'd read about it during PMQs nearly an hour before Nick Robinson actually 'broke' the story on the BBC.
So if you want your election news in real-time and much faster than the news channels or even the blogs, then your own personal twitter 'list' is the answer.
As promised, here is my "list":
Grant Shapps MP
Eddie Hughes: Our values must drive CCHQ. That means moving it to a town or small city – not a big one.
Rebecca Ryan: Help us to get Big Ben bonging for Brexit
Edward Parson: Keep the International Development Department. But scrap the 0.7 per cent aid target.
Festus Akinbusoye: The scandal of rising assaults on police officers. And what must be done to help reduce them.
Robert Alden: CCHQ should be relocated to Birmingham
Tom Tugendhat: Huawei's human rights record needs scrutiny before 5G contracts are signed
Nicholas Boys Smith: The housing mission that Scruton and I pursued is inspired by a quest for beauty
Julian Brazier: Volunteers can help protect us from terror
9 comments for: Grant Shapps: How to track this general election in real-time using Twitter

redpajama_set_name: RedPajamaCommonCrawl


Downloading YouTube videos for offline use can be a pain, so why not make it an automated Process? Miro is a free program that can do it for you.
Do you watch YouTube videos on the go? Despite 4G being available in a growing number of places, data caps, battery life, and spotty coverage make it unreliable – and 3G just doesn't cut it in terms of speed. That makes the best option for mobile YouTube viewing to download the videos for offline viewing. Miro is a free Open Source cross-platform application that makes the job easy and automated. There's a few hiccups to watch for during installation though.
First download Miro for Windows, Linux or OS X if you don't have it already.
Also during install Miro will ask to handle file associations for a number of different file types. While it does have the ability to play video and music, I don't recommend using Miro for anything other than downloading streams. So on this screen uncheck all of the file types, except Miro files.
And one last annoyance. When Miro is fully installed, the first time you launch, it asks to install Adobe Flash directly on your computer. This is NOT needed (especially if you use Google Chrome), so click No when prompted.
To automatically download current and new videos from a YouTube channel, it takes about three seconds of configuration in Miro. From the menu at the top choose Sidebar >> Add Podcast.
For other channels just change the username portion to match up with the desired YouTube username.
Videos will show up in the Podcast list and can be set to download automatically.
Miro has three settings for automatically downloading videos from feeds that you've added.
This option can be changed by clicking the button at the bottom of the feed window.
Videos downloaded will by default be in MP4 format, so they're ready to throw on you iPhone, iPad or virtually any other device to watch later. While downloading the video, the video file size, download speed and estimated time of completion is displayed.
Downloaded videos are stored in the C:\Users\yourusername\Videos\Miro folder by default. The easiest way to get to this folder is to choose "Show File in File Explorer" option from Miro on the right side of a video that you've downloaded.
This doesn't work, and hasn't for years.
The only way to make this work now would be by adding in a program called YouCast that turns youtube into podcasts on your local computer.


If I were not to have the utmost faith in InMotion hosting, I would not be forking out hundreds of dollars each year in hosting fees. I believe that two key elements make them one of the top hosts I've encountered to date; Exceptional server performance (>99.95% uptime, TTFB <450ms) and fantastic customer service.
With over 15 years in the web hosting business, InMotion Hosting is one of the most recognized names around. I first started up with them when I was offered a review account (at the time called the 'Launch" plan) in 2009.
I loved them so much that I stayed on – as a paying customer.
Today I make use of their VPS plan and I'm sure I've dug around in almost every facet of their resources at some time or other through the years.
Let me share some of what I've learn about them with you, so that you can make an informed decision on the pros and cons of hosting with them.
Do I recommend InMotion Hosting?
Who should host at InMotion Hosting?
Among the web hosting service providers I have encountered so far InMotion Hosting servers are some of the top performing ones in the budget category. Their uptime is mostly well above the industry standard of 99.95%.
More importantly, I have tested performance from multiple locations, all of which are able to boast Time to First Byte (TTFB) of below 450ms.
BitCatcha's proprietary algorithm pings my test site from 8 different locations, giving it an overall score of A+. The norm is usually a B+ which is three grades below that.
WebpageTest.org rates my test site TTFB at 415ms which is very good.
InMotion Hosting uptime for the past 30 days (January 2019) – 100%.
InMotion Hosting uptime for the past 30 days (September / October 2018) – 100%.
InMotion Hosting uptime for the past 30 days (July / August 2018) – 100%.
No outage recorded at InMotion Hosting in June / July 2018.
Well known for its customer service, InMotion Hosting Inc. has been BBB Accredited since 2003 and has an A+ with BBB Busines Review. It's frequently highly rated by hosting review sites and therefore, also has high expectations to live up to, especially in after-sales service.
When I conducted an undercover test of customer support channels back in August 2017, their live chat came up as one of the best in the field. First response time was in less than 60 seconds and my queries were quickly addressed.
I again repeated a test on their support system in 2018 to update this review and I'm glad that it has not degraded at all.
Another field test when I was doing this review – my live chat request was answered instantly.
Obviously, I'm not alone in my love for InMotion – others think they're great as well, especially in terms of customer support.
Positive feedback on InMotion's support (screen shot from verified source Website Hosting Rating).
We like InMotion Hosting. Excellent support and they sell domains. If you're not tech savvy it may be easier to use one place.
No matter which hosting plan you're taking up with InMotion Hosting , they offer all new customers free site migration.
InMotion Hosting can help you migrate our websites, so why do all the heavy lifting? Click click to request.
Click here to request (affiliate links).
To request for InMotion's site migration service, login to AMP dashboard > Account Operations > Website Transfer Request.
As is usual, InMotion Hosting carries a complete range of shared plan types to address multiple scenarios. From the most basic starter sites to heavy e-commerce users, there's something for everyone.
Time-saver for businesses: Get InMotion (during checkout) to you design and build a one-page website in 2 days for $99.
QuickStarter is a one-page website created by InMotion Hosting design experts with your business vision in mind.
Email hosting on InMotion Hosting is easy and painless to manage.
You can manage all email related tasks from either your Account Management Panel (AMP) or cPanel.
Setup your emails at InMotion Hosting AMP or login to cPanel dashboard > Email ACcount > Setup Mail Client.
Depending on your own needs, you can choose where you'd prefer your account to be hosted. Choices are; West or East Coast of United States. This choice must be made at the order phase of your signup process.
* Note: Shown in the .GIF image are old prices. InMotion Hosting has increased their price to $3.99/mo in June 2018.
InMotion Hosting server configuration during order.
Note that InMotion Hosting does not set a hard limit on inodes count.
While most others (at similar price range) limit 100,000 – 250,000 inodes per account.
Screenshot from InMotion community support.
There's obviously a difference between free and paid SSL, but for most of us, the free version is fine. To activate your free SSL (VPS or dedicated hosting users), look for the option in your WHM.
Unfortunately, InMotion Hosting doesn't support auto installation of Let's Encrypt SSL certificates (unlike SiteGround or A2 Hosting). You are given root access and you must install it on your own. You can find the detail instructions in this tutorial.
To activate your free SSL option, login to your Account Management Portal (AMP).
Click "On/Off" to enable your free SSL. Yes, it's really that simple.
When running a website, one thing you always must keep in mind is room for expansion. You might be getting 50 hits a day today, but in a year or two that might easily exceed 1,000 or so daily, perhaps even more.
Thankfully, InMotion Hosting has a very wide range of plans that you can incrementally upgrade to as you grow. There is also the option of switching to VPS or dedicated hosting plans if you feel the shared plans are still too restrictive for you.
Different hosting plans at InMotion Hosting (updated price).
Feeling confused? Which InMotion Hosting plans to go with?
Decide if you'd prefer Shared, VPS or Dedicated Server hosting.
For those who need server root access or special requirements such as custom software, you might like to consider VPS hosting for start.
For everyone else, it's likely that one of the shared plans will do fine for you (it's usual to buy in at the lowest tier first).
InMotion has three different tiers of Business Class Hosting – Launch, Power, and Pro.
While similar in nature, each higher tier offers more features, such as more addon domains, parked domains or something else. The most important thing to note is how many websites each plan supports – if you only need to run a single site, just go with Launch, the lowest package.
Remember, these packages can be upgraded at any time, all you'll need to do is top up the price difference.
Some web hosts might try to get away with no money-back guarantees or limit you to a ridiculous 3-day or 14-day period. InMotion Hosting offers one of the longest trial periods in the business – an eye-raising 90 days!
Anytime within those 90 days, if you feel unsatisfied with what you've bought into, you can request an account cancellation along with a full refund.
All 6 month and longer term hosting plans for our Business, VPS and Reseller Hosting packages are covered by our unmatched 90-day money back guarantee. All Dedicated Severs and all monthly billed VPS and Reseller Hosting packages are eligible for a full refund for 30 days.
InMotion's shared hosting is usually priced at $6.99/8.99/15.99 per month for their Launch, Power, and Pro Plan respectively.
If you order via our special promo link, you'll save up to 50%, paying only $3.99/5.99/13.99 per month on your first bill.
Although InMotion is one of the few who have gotten a full five-star review from me, I still have to acknowledge that nothing is perfect.
Let me share with you some of the not so encouraging points about them.
When you're just signing on with InMotion Hosting , that what I call the honeymoon period. You pay cut-rate fees and both you and the host are happy. Unfortunately, that only lasts the length of your first contract. When it comes time to renew, you'll be facing full-fee rates.
This means that for a 24-month renewal period, you must pay $7.99/9.99/15.99 per month depending on plan.
The even sadder news is that this isn't all about InMotion Hosting and is in fact an industry norm. The practice has gotten many complaints over the years.
If this is something that you REALLY object to, go to a host that doesn't practice this instead, such as Interserver.
To prevent fraud, InMotion doesn't practice instant account activation. That means that you'll need to be verified via phone before they will activate your account – a slight inconvenience for those living outside of the US, like me.
I'm in Malaysia, which is on the opposite side of the globe from the US. Given time gaps and poor call quality sometimes, it can be a real mess.
* Note: U/L = Unlimited. All shared hosting prices based on orders with our special promotion and three-year subscription.
Their three VPS hosting plan names sound like something out of star wars: 1000HA-S, 2000HA-s, and 3000HA-s.
* Note: All VPS hosting prices based on one-year subscription.
We've covered a lot of ground on InMotion Hosting so far, but for those of you still unimpressed, fear not – there are other options. Personally, I would also recommend A2 Hosting and SiteGround.
Both are big dogs in web hosting as well that offer comprehensive plans at competitive prices.
For a comparison, take a look at Tim's article SiteGround vs BlueHost vs InMotion Hosting.
Established in 2004, SiteGround has offices in Bulgaria, Italy, Spain, United Kingdom, and the US.
Both InMotion Hosting and SiteGround have solid reputations based on their great server performance and customer support. InMotion Hosting is cheaper and comes with a 90-day money back guarantee. SiteGround however, has better features including a built-in cache, NGINX, etc. The latter also has a better spread of server locations, i.e. US, Europe, and Asia.
Also read – My detail SiteGround review and test results here.
The company A2 Hosting has been around since 2001. When it first hit the scene, it was known as Iniquinet. It was then renamed as A2 Hosting in 2003 as a tribute to the founder's home town – Ann Arbor, Michigan.
The company has data centers in three locations, with the primary data center in Michigan and additional servers in Amsterdam and Singapore, Asia.
Also read – My detail A2 Hosting review and test results here.
Another popular web hosting company is BlueHost. They're often compared to InMotion Hosting although our research has suggested that InMotion Hosting is better in term of server performance and live chat support. BlueHost is, however, around 15% cheaper than InMotion Hosting over the long term.
Also read – My detail BlueHost review and test results here.
Verdict: InMotion Hosting – Yes or No?
If you are looking for a web hosting service provider that has a good reputation and offers solid performance and support– InMotion Hosting is the one for you. Also remember that they have the facilities to let you scale up your plans anytime you want, so futureproof as well.
InMotion's Shared Hosting, originally priced at $6.99/8.99/15.99/mo for Launch, Power, and Pro Plan.
If you order via our special promo link, you'll save up to 50% (prices go down to $3.99/5.99/13.99/mo) on your first bill.
Server Usage Limitation Account may be suspended due to over-usage of CPU or initiator of DDoS attack.


- Wide-angle captures it all with 30% more area. (100 degree wide angel + 10X macro lens). - Our wide angle lens captures group selfies, epic landscapes, and tight interior shots with minimal distortion. - Designed with the same premium optics as our wide lens, the macro lens captures details unseen to the naked eye. - Compatible on all devices for any phone and case. - Works with iPhone generation, most Android devices.


As people search for gentle methods to discipline and train their dogs, using clickers is becoming more prominent. Your pet will become familiar with a calm and disciplined behavior that's desirable inside a safe, humane way. Operant conditioning may be the repeating a behavior whenever a reward is offered. This is actually the premise behind clicker training. How do you use it? You may need a clicker. This is just a handheld plastic box. Metallic strip is attached. Pressing the strip leads to a sharp click.
Request your pet to carry out a command, for example sit, stay, come, etc. When he is doing, click immediately and provide your pet a goody. You're pairing the clicker with a treat. Because the click is connected using the treat, he'll become more likely to perform the great behavior. Eventually, you are able to phase out the treat, and that he will react to the clicking sound. After intensive raining, you will not require the clicker either.


SRC's Historic Charts feature key investment & economic data going back 100+ years.
Home » SRC's Historic Charts feature key investment & economic data going back 100+ years.
Charts updated through July 1, 2016. Download your FREE 11″ x 17″ PDFs.


text:
FDNY rescues Ryan Seacrest from stuck elevator in Times Square
(Photo/Ryan Seacrest)
NEW YORK -- New York's Bravest rescued TV host Ryan Seacrest from a stuck elevator leading to the New Year's Eve ball in Times Square Friday morning.
Seacrest, who hosts "Dick Clark's New Year's Rockin' Eve" was on his way to reveal the ball on ABC's Good Morning America when the elevator stopped, trapping him and some producers from GMA.
He posted this video on social media when it first happened at 7:39 a.m.:
we're trying to get up to the ball in Times Square w/ @GMA... #RockinEve @nyre pic.twitter.com/mvyvX1yeFp
— Ryan Seacrest (@RyanSeacrest) December 30, 2016
Nine minutes later, they were still stuck. The producers were making calls, and trying to figure out what to do:
update 2 from inside the elevator w/ @GMA #RockinEve @nyre pic.twitter.com/ClzCePaA6Q
At 8:15 - more than 35 minutes later, the FDNY came to their rescue:
safely out of the elevator! thx to the #FDNY #RockinEve @GMA @NYRE pic.twitter.com/gGiFJXua6w
Seacrest thanked the firefighters and wished them a happy new year.
And then he made his appearance at the top with Jenny McCarthy:
made it to the top to test the ball w/ @JennyMcCarthy #RockinEve @NYRE pic.twitter.com/Nwjfodlko9
New Year's Eve details released
Details about street closures, public transportation impact and and security measures for New York City's Times Square New Year's Eve celebration have been released.
Unprecedented security planned for New Year's Eve in Times Square
There haven't been any threats against New York City ahead of the New Year's Eve celebration in Times Square, but security will be in full force, police said Thursday.
new yorknew year's evefdnyelevatorryan seacrest
Viral New Year's Eve video leads to Gary man's arrest, 28 weapons recovered in search
See how Cheryl Scott, Terrell Brown learned Countdown Chicago dance
Fashion Friday: BTS, JLo open 2020 in style
Woman, 61, killed by celebratory gunfire on New Year's, deputies say


Elizabeth Moss has been involved with The Calliope Project since 2009. She has performed a number of technical and theatrical roles with the troupe, from lighting design to acting to directing. She often juggles these roles simultaneously, such as in Calliope's 2012 production of The Importance of Being Earnest, in which she both designed the lighting scheme and played Gwendolyn Fairfax. Elizabeth is currently a Senior at Boston University studying Biochemistry. She plans to attend medical school in the fall of 2013.


Synopsis: From bestselling and award-winning author Kathryn Lasky comes an explosive adventure following the teen girl fighter pilots who took on Hitler's army . . . and won.
Synopsis: Changing places doesn't always help you see things differently.
Cassie throws the first punch in a brawl at Winchester Abbey Girl's School. Her subsequent suspension is a glitch in Cassie's master plan; Finish School/Get Job/Leave Home (and never come back). As punishment her mother banishes her to Ludlow Park, their creepy ancestral home. In the dark of a stormy night Cassie finds herself transported to 1714, the beginning of the Georgian period.With the help of a lady's maid and an obnoxious gentleman, Mr Charles Stafford, Cassie must unravel the mysterious illness afflicting Lord Miller. If Lord Miller kicks the bucket the house goes to Reginald Huxley, the brainless cousin from London.
Synopsis: What happens when a margrave realizes he's fallen in love with a servant?
Synopsis: In Leaving Everything Most Loved by New York Times bestselling author Jacqueline Winspear, Maisie Dobbs investigates the murder of Indian immigrants in London.
Synopsis: "A female investigator every bit as brainy and battle-hardened as Lisbeth Salander."
Synopsis: In the New York Times bestselling series, Maisie Dobbs must unravel a case of wartime love and death—an investigation that leads her to a long-hidden affair between a young cartographer and a mysterious nurse.
August 1914. Michael Clifton is mapping the land he has just purchased in California's beautiful Santa Ynez Valley, certain that oil lies beneath its surface. But as the young cartographer prepares to return home to Boston, war is declared in Europe. Michael—the youngest son of an expatriate Englishman—puts duty first and sails for his father's native country to serve in the British army. Three years later, he is listed among those missing in action.
Synopsis: From the New York Times and internationally bestselling author of The Distant Hours, The Forgotten Garden, and The House at Riverton, a spellbinding new novel filled with mystery, thievery, murder, and enduring love.
Synopsis: In the final installment of Sally Christie's "tantalizing" (New York Daily News)Mistresses of Versailles trilogy, Jeanne Becu, a woman of astounding beauty but humble birth, works her way from the grimy back streets of Paris to the palace of Versailles, where the aging King Louis XV has become a jaded and bitter old philanderer. Jeanne bursts into his life and, as the Comtesse du Barry, quickly becomes his official mistress.
Synopsis: Evangeline is gifted with a heavenly voice, but she is trapped in a sinister betrothal until she embarks on a daring escape and meets brave Westley le Wyse. Can he help her discover the freedom to sing again?


text:
#include "webrtc/modules/audio_processing/gain_control_for_experimental_agc.h"

#include "webrtc/base/checks.h"
#include "webrtc/base/criticalsection.h"
#include "webrtc/modules/audio_processing/include/audio_processing.h"
#include "webrtc/modules/audio_processing/logging/apm_data_dumper.h"

namespace webrtc {

int GainControlForExperimentalAgc::instance_counter_ = 0;

GainControlForExperimentalAgc::GainControlForExperimentalAgc(
    GainControl* gain_control,
    rtc::CriticalSection* crit_capture)
    : data_dumper_(new ApmDataDumper(instance_counter_)),
      real_gain_control_(gain_control),
      volume_(0),
      crit_capture_(crit_capture) {
  instance_counter_++;
}

GainControlForExperimentalAgc::~GainControlForExperimentalAgc() = default;

int GainControlForExperimentalAgc::Enable(bool enable) {
  return real_gain_control_->Enable(enable);
}

bool GainControlForExperimentalAgc::is_enabled() const {
  return real_gain_control_->is_enabled();
}

int GainControlForExperimentalAgc::set_stream_analog_level(int level) {
  rtc::CritScope cs_capture(crit_capture_);
  data_dumper_->DumpRaw("experimental_gain_control_set_stream_analog_level", 1,
                        &level);
  volume_ = level;
  return AudioProcessing::kNoError;
}

int GainControlForExperimentalAgc::stream_analog_level() {
  rtc::CritScope cs_capture(crit_capture_);
  data_dumper_->DumpRaw("experimental_gain_control_stream_analog_level", 1,
                        &volume_);
  return volume_;
}

int GainControlForExperimentalAgc::set_mode(Mode mode) {
  return AudioProcessing::kNoError;
}

GainControl::Mode GainControlForExperimentalAgc::mode() const {
  return GainControl::kAdaptiveAnalog;
}

int GainControlForExperimentalAgc::set_target_level_dbfs(int level) {
  return AudioProcessing::kNoError;
}

int GainControlForExperimentalAgc::target_level_dbfs() const {
  return real_gain_control_->target_level_dbfs();
}

int GainControlForExperimentalAgc::set_compression_gain_db(int gain) {
  return AudioProcessing::kNoError;
}

int GainControlForExperimentalAgc::compression_gain_db() const {
  return real_gain_control_->compression_gain_db();
}

int GainControlForExperimentalAgc::enable_limiter(bool enable) {
  return AudioProcessing::kNoError;
}

bool GainControlForExperimentalAgc::is_limiter_enabled() const {
  return real_gain_control_->is_limiter_enabled();
}

int GainControlForExperimentalAgc::set_analog_level_limits(int minimum,
                                                           int maximum) {
  return AudioProcessing::kNoError;
}

int GainControlForExperimentalAgc::analog_level_minimum() const {
  return real_gain_control_->analog_level_minimum();
}

int GainControlForExperimentalAgc::analog_level_maximum() const {
  return real_gain_control_->analog_level_maximum();
}

bool GainControlForExperimentalAgc::stream_is_saturated() const {
  return real_gain_control_->stream_is_saturated();
}

void GainControlForExperimentalAgc::SetMicVolume(int volume) {
  rtc::CritScope cs_capture(crit_capture_);
  volume_ = volume;
}

int GainControlForExperimentalAgc::GetMicVolume() {
  rtc::CritScope cs_capture(crit_capture_);
  return volume_;
}

void GainControlForExperimentalAgc::Initialize() {
  data_dumper_->InitiateNewSetOfRecordings();
}

}  // namespace webrtc

redpajama_set_name: RedPajamaGithub


In the insurance and healthcare industries, organizations are under constant threat from competitors looking to disrupt the market with new technologies and user experiences. Companies must innovate to retain their competitive advantage, but must manage this innovation while maintaining stability with established legacy systems that are at the core of their business.
Parasoft provides the software testing solutions you need to innovate while contending with the complex legacy of your business, testing industry-specific formats (such as EDI X12) and services while adhering to industry-specific compliance regulations (GDPR, HIPPA, PII, PHI).
The industry is undergoing a digital transformation to migrate functions off legacy backend systems (i.e. mainframes, external 3rd-party systems, large databases) that are costly to run and hard to access, but innovation is still being roadblocked by system access. To unblock the organization, Parasoft's service virtualization technology provides users with access to legacy systems, enabling teams to rapidly get a simulated service up and running, regardless of the complexity.
Many industries rely heavily on EDI transactions to exchange business documents quickly and securely, but whether it's an 834 Enrollment message for healthcare or an ANSI X12 EDI Financial Document, teams struggle to test these systems due to the complexity of the format and communication with the system itself. Parasoft SOAtest's integrated EDI functionality supports all of the dialects, versions, and message types available, enabling you to quickly create test clients that are semantically correct and easy to drive with external data sources.
Compliance initiatives make using actual data from production infeasible and illegal, creating challenges between testers and test data management teams as they incur significant delays primarily attributed to "waiting for data." Parasoft helps testers solve this challenge with a safe and reliable method to capture, model, mask, and generate complex data. Testers and developers can access a self-service test data interface, create the data they need, and use it for their test cases and virtual services, reducing total wait time and allowing for more complete testing.
With new compliance requirements such as HIPAA, PII, PHI and GDPR, organizations are struggling to balance agility in software delivery while maintaining compliance with these regulations.
Automation is the key for ensuring cost-effective compliance. From static analysis to fully-automated test environments, Parasoft provides the automated software testing tools that you need to ensure enforcement of compliance as a part of your DevOps workflow, integrated with an analytics platform that streamlines the reviews and audits of software delivery.
EDI (Electronic Data Interchange) is widely used to communicate machine to machine in a formal format with partners, for sending and receiving documents such as 834 enrollments. Messages can be exchanged over the wire or as simulated file drops an reads. Parasoft SOAtest supports AL3, CARGO, EANCOM, EDIFACT, EDIGAS, HIPAA, HL7, IATA, NCPDP, TELCO, TRADACOMS, and X12 standards, simplifying the use of EDI (which is often difficult to read) by allowing you to utilize XML.
With SOAtest, you can model your EDI request payload as an XML document, and the client then automatically converts the XML to EDI before sending the message. If the server returns an EDI message, the client can convert the message to XML so it is easier to consume and manipulate.
Mainframe services are often tightly integrated with customer profile workflows and are required for testing the open systems. These mainframe services hold the critical data needed for complete end-to-end scenario testing. Parasoft SOAtest enables testing of these mainframe services directly from open systems using common communication protocols such as MQ, TCP, DB2 as well as providing payloads in Cobol (copybook) and Fixed Length formats.
Parasoft's simplified automation workflows and integrations enable teams looking to modernize into continuous integration and delivery (CI/CD). Parasoft enables teams to get immediate feedback with continuous validation of quality, at each stage of the development process, ensuring they can efficiently meet both time-to-market and quality requirements.
Parasoft's integrated solutions for C/C++ and Java development testing provide a unified approach to software testing. With IDE and CI/CD integrations, Parasoft users can integrate unit testing into the software delivery process in an automated way. In addition to standard unit and integration testing support, Parasoft's smart technologies increase efficiency by leveraging modern techniques and advanced analytics.
Parasoft users can bake security into their development process from the beginning by automatically checking code directly from the IDE to ensure that it's compliant with industry and government regulations such as CWE, CERT, or OWASP.
Because your customers navigate your services for major life events, it is vital to provide consistent and reliable access to these platforms, ensuring that your applications are defect free and intuitive. Parasoft SOAtest can validate your customer experience, from mobile to API to UI to performance to security, identifying critical defects before they reach production.
Parasoft SOAtest enables users to efficiently leverage existing API and web UI functional test scenarios for non-functional testing. With a few clicks, you can construct and run a performance test or security test based on it, enabling a true shift-left testing strategy by facilitating early stage non-functional testing as soon as the interface is available. You can then create rich multi-profile performance test scenarios to further scale your performance testing solution across multiple machines. Unlike any other vendor, Parasoft enables automated penetration testing part of the automated CI process.
Healthcare and insurance industries have the highest rates of integrations with 3rd-party services (i.e. Facets, TSYS, CVS, Salesforce, etc.), which can cause bottlenecks in your test ecosystem. Parasoft users can leverage test environment simulation to decouple from these 3rd party services and test unconstrained.
The only functional testing solution on the market with full support for EDI, SOAtest enables you to model your EDI request payload as an XML document, so it is easier to consume and manipulate.
SOAtest's comprehensive ecosystem reduces the cost associated with training your testers on the multiple tools you would require without Parasoft. With a one stop shop for testing mobile to mainframe, Parasoft gives you the confidence you need to engage any testing initiative and know the tool will support your requirements.
Healthcare and insurance industries handle an abundance of sensitive data (i.e. personal information, medical records, account information, patient profiles, etc.). Parasoft's unified testing ecosystem includes functional testing, load/performance testing, and security testing, powered by service virtualization to unblock dependencies and a self-service test data portal to get the data you need, when you need it.
Leverage a rich UI to configure, send, and validate messages during functional and load testing, to make it easier to test EDI (EDIFACT, HL7, HIPAA, X12) and other industry-specific message formats.
Parasoft tools teach our development team better coding habits. We are able to get our product to market approximately 6 months sooner with Parasoft solutions than we could have if we had gone back to the testing vendor.
Parasoft Virtualize Community Edition (CE) is the free service virtualization solution. If you are in need of a tool that – without any coding – simply allows you to create deploy-and-destroy virtual assets or set up a stable solution to virtualize parts of your environment, Virtualize CE is what you need!
Parasoft is the only company we found that could meet our demands for Message Transmission Optimization Mechanism (MTOM) and the latest Web testing security support. Parasoft SOAtest has an easy-to-use interface and a complete set of service testing tools which has allowed us to validate our services in a much shorter time frame than by manually executing tests.


text:
Klaidos žinutė
Pastebėtas neleistimas pasirinkimas. Prašome susisiekti su administratoriumi.×
Commission issues Communication on the modernisation of social protection systems
27 Kovas 1997
In a Communication published in March 1997, the European Commission calls for
the modernisation, adaptation and improvement of social protection systems in
the member states. It argues that these systems, most of which were
established decades ago, no longer conform with the changing economic and
social conditions of today's society. The Commission sees a particular need
for social protection systems, which currently account for 28% of total EU
GDP, to be adapted to:
Recent trends in health and safety at work
Health and safety at work has arisen as a very serious matter of social
concern over recent years and has become a focus of interest for both the
state and the social institutions concerned. The magnitude and complexity of
the problem and the need to find direct and effective solutions have induced
both employers and employees to examine the problem of occupational hazards
and conditions affecting the working environment in general. It is estimated
that in Greece the national economy is burdened by GRD 20 billion a year due
to accidents at work (excluding costs of medical care). The Social Insurance
Foundation (IKA) alone receives 25,000 reports of accidents at work a year.
The problem is even bigger if we add in the cost of occupational illnesses
which remain undiagnosed, since these are ignored by the official statistics.
Health and well-being at work, Social partners, Labour law, Darbo santykiai, Labour and social regulation, Darbo santykiai ir socialinis dialogas
NHO reports increase in membership
The number of member companies of the Confederation of Norwegian Business and
Industry (NHO) increased by around 2,000 during 1996. NHO aims for a further
growth in membership towards the year 2000.
Workers in performing arts take action over unemployment benefit plans
Workers in the performing arts have been protesting about threats to their
special unemployment benefit scheme arising from employers' positions in the
recent renewal of the agreement on the general UNEDIC scheme.
Dockers' unions opposed to dock work reform
The Government has published a working document, entitled "Maritime and ports
policy at the approach of the 21st Century", for public debate. In the
document it proposes a number of measures to deregulate dock work, and the
National Federation of Dockers' Unions has criticised the lack of prior
dialogue and is opposing the new proposals.
Miners' revolt ends in "corporatist" compromise
The cause of the industrial unrest was the announcement by the ruling
Conservative-Liberal coalition Government that it was planning to scale back
annual subsidies for the - basically west - German hard coal (Steinkohle)
industry dramatically. During the ensuing protests, Germany saw a human chain
of more than 90 kilometres straight through the Ruhr coal heartland, and
sympathy demonstrations from east German brown coal miners. Miners in the
Ruhr and the Saar areas went on strike. Tens of thousands of miners took to
the streets, occupied pits and town halls, and blocked roads as well as the
Bonn headquarters of Chancellor Helmut Kohl's ruling Christian Democratic
Party (CDU) and its coalition partner, the Free Democrat Party (FDP). In the
days before the compromise, the protests of the rank and file seemed to get
out of control of the miners' union, IG Bergbau und Energie (IGBE), and its
chair, Hans Berger. For the first time in German post-war history, furious
miners even entered the restricted area surrounding government buildings in
Bonn where no public meetings or marches may be held. As an "act of
solidarity with miners fighting for their existence" the Social Democratic
Party (SPD) temporarily boycotted a meeting in which opposition and coalition
politicians were discussing the reform of the German tax system. When the
miners laid siege to Bonn, Chancellor Kohl temporarily put off talks with the
union leaders to avoid having to negotiate under duress.
Collective bargaining, Restructuring
Companies "should justify directors' remuneration packages"
In recent years there has been increasing public concern over what is widely
viewed as the spiralling remuneration of company directors. At a time when
companies are keen to promote pay schemes based on performance, too often the
links between directors' pay and performance are viewed as non-existent. In a
report on director's remuneration publicised in March 1997, the IOD is keen
to set the record straight. It argues that, although it recognises that
directors' pay in the largest companies has been on average high, it has been
relatively modest for those directors who work for small to medium-sized
enterprises. In fact, the median pay increase for this group of directors in
1996 was 4%, the equivalent of the increase in average earnings for all
employees in that year.
First annual report on equal opportunities published
The European Commission adopted its first annual report on equal
opportunities between men and women in the European Union at its meeting on 5
March 1997. The report: outlines the embodiment of equality principles in
European Union policies; examines gender differences in the EU labour market;
looks at Community actions to improve the interaction between work and family
life; explores initiatives to aimed at achieving a greater involvement of
women in decision-making bodies; outlines initiatives aimed a enabling women
to exercise their rights; and provides an update on the recommendations of
the 1995 Beijing Conference. Commenting on the publication of the report,
commissioner for social affairs Padraig Flynn said that this was the first in
what will be a series of annual reports covering the Union's policies on
equal opportunities as a whole. Commissioner Flynn stated that the aim of the
report was to give visible expression to EU policies on equal opportunities
between men and women, to encourage debate on the progress achieved and
policies to develop, and to act as a reference point for the Commission,
member states and countries applying for membership of the Union.
Determining terms of employment: works council or union?
A current bill amending the 1971 Works Councils Act has focused attention on
the increasingly important role played by Dutch works councils in the
negotiation of terms of employment. However, although the function of the
trade unions is being somewhat eroded, even in the area of determining
primary terms of employment, the traditional division of roles between unions
and works councils has remained fundamentally intact.
Collective bargaining, Employee representation, Social partners, Labour law, Labour and social regulation
Reforms agreed to "Maribel" system of social security subsidies
Intervention from the European Commission has compelled the Belgian
Government to amend its procedures for reducing social security costs (the
Maribel system) and to extend them across-the-board to all sectors of the
economy.
Eurofound's European Quality of Life Survey (EQLS) examines both the objective circumstances of European citizens' lives and how they feel about those circumstances and their lives in general. This series consists of outputs from the EQLS 2003, the first edition of the survey.
Eurofound's European Quality of Life Survey (EQLS) examines both the objective circumstances of European citizens' lives and how they feel about those circumstances and their lives in general. This series consists of outputs from the EQLS 2007, the second edition of the survey. The survey was first carried out in 2003.
Eurofound's European Quality of Life Survey (EQLS) examines both the objective circumstances of European citizens' lives and how they feel about those circumstances and their lives in general. This series consists of outputs from the EQLS 2012, the third edition of the survey. The survey was first carried out in 2003.
Eurofound's European Working Conditions Survey (EWCS) paints a wide-ranging picture of Europe at work across countries, occupations, sectors and age groups. This series consists of findings from the EWCS 2005, the fourth edition of the survey. The survey was first carried out in 1990.
Eurofound's European Working Conditions Survey (EWCS) paints a wide-ranging picture of Europe at work across countries, occupations, sectors and age groups. This series consists of findings from the EWCS 2010, the fifth edition of the survey. The survey was first carried out in 1990.
Manufacturing employment outlook
This publication series explores scenarios for the future of manufacturing. The employment implications (number of jobs by sector, occupation, wage profile, and task content) under various possible scenarios are examined. The scenarios focus on various possible developments in global trade and energy policies and technological progress and run to 2030.


text:
// Copyright 2013-2022, University of Colorado Boulder

/**
 * A complex number with mutable and immutable methods.
 *
 * @author Jonathan Olson <jonathan.olson@colorado.edu>
 * @author Chris Malley (PixelZoom, Inc.)
 * @author Matt Pennington
 */

import dot from './dot.js';
import Utils from './Utils.js';

class Complex {
  /**
   * Creates a complex number, that has both a real and imaginary part.
   * @public
   *
   * @param {number} real - The real part. For a complex number $a+bi$, this should be $a$.
   * @param {number} imaginary - The imaginary part. For a complex number $a+bi$, this should be $b$.
   */
  constructor( real, imaginary ) {
    // @public {number} - The real part. For a complex number $a+bi$, this is $a$.
    this.real = real;

    // @public {number} - The imaginary part. For a complex number $a+bi$, this is $b$.
    this.imaginary = imaginary;
  }

  /**
   * Creates a copy of this complex, or if a complex is passed in, set that complex's values to ours.
   * @public
   *
   * This is the immutable form of the function set(), if a complex is provided. This will return a new complex, and
   * will not modify this complex.
   *
   * @param {Complex} [complex] - If not provided, creates a new Complex with filled in values. Otherwise, fills
   *                              in the values of the provided complex so that it equals this complex.
   * @returns {Complex}
   */
  copy( complex ) {
    if ( complex ) {
      return complex.set( this );
    }
    else {
      return new Complex( this.real, this.imaginary );
    }
  }

  /**
   * The phase / argument of the complex number.
   * @public
   *
   * @returns {number}
   */
  phase() {
    return Math.atan2( this.imaginary, this.real );
  }

  /**
   * The magnitude (Euclidean/L2 Norm) of this complex number, i.e. $\sqrt{a^2+b^2}$.
   * @public
   *
   * @returns {number}
   */
  getMagnitude() {
    return Math.sqrt( this.magnitudeSquared );
  }

  get magnitude() {
    return this.getMagnitude();
  }

  /**
   * The squared magnitude (square of the Euclidean/L2 Norm) of this complex, i.e. $a^2+b^2$.
   * @public
   *
   * @returns {number}
   */
  getMagnitudeSquared() {
    return this.real * this.real + this.imaginary * this.imaginary;
  }

  get magnitudeSquared() {
    return this.getMagnitudeSquared();
  }

  /**
   * Exact equality comparison between this Complex and another Complex.
   * @public
   *
   * @param {Complex} other
   * @returns {boolean} - Whether the two complex numbers have equal components
   */
  equals( other ) {
    return this.real === other.real && this.imaginary === other.imaginary;
  }

  /**
   * Approximate equality comparison between this Complex and another Complex.
   * @public
   *
   * @param {Complex} other
   * @param {number} epsilon
   * @returns {boolean} - Whether difference between the two complex numbers has no component with an absolute value
   *                      greater than epsilon.
   */
  equalsEpsilon( other, epsilon ) {
    if ( !epsilon ) {
      epsilon = 0;
    }
    return Math.max( Math.abs( this.real - other.real ), Math.abs( this.imaginary - other.imaginary ) ) <= epsilon;
  }

  /**
   * Addition of this Complex and another Complex, returning a copy.
   * @public
   *
   * This is the immutable form of the function add(). This will return a new Complex, and will not modify
   * this Complex.
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  plus( c ) {
    return new Complex( this.real + c.real, this.imaginary + c.imaginary );
  }

  /**
   * Subtraction of this Complex by another Complex c, returning a copy.
   * @public
   *
   * This is the immutable form of the function subtract(). This will return a new Complex, and will not modify
   * this Complex.
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  minus( c ) {
    return new Complex( this.real - c.real, this.imaginary - c.imaginary );
  }

  /**
   * Complex multiplication.
   * Immutable version of multiply
   * @public
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  times( c ) {
    return new Complex( this.real * c.real - this.imaginary * c.imaginary, this.real * c.imaginary + this.imaginary * c.real );
  }

  /**
   * Complex division.
   * Immutable version of divide
   * @public
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  dividedBy( c ) {
    const cMag = c.magnitudeSquared;
    return new Complex(
      ( this.real * c.real + this.imaginary * c.imaginary ) / cMag,
      ( this.imaginary * c.real - this.real * c.imaginary ) / cMag
    );
  }

  /**
   * Square root.
   * Immutable form of sqrt.
   * @public
   *
   * @returns {Complex}
   */
  sqrtOf() {
    const mag = this.magnitude;
    return new Complex( Math.sqrt( ( mag + this.real ) / 2 ),
      ( this.imaginary >= 0 ? 1 : -1 ) * Math.sqrt( ( mag - this.real ) / 2 ) );
  }

  /**
   * Returns the power of this complex number by a real number.
   * @public
   *
   * @param {number} realPower
   * @returns {Complex}
   */
  powerByReal( realPower ) {
    const magTimes = Math.pow( this.magnitude, realPower );
    const angle = realPower * this.phase();
    return new Complex(
      magTimes * Math.cos( angle ),
      magTimes * Math.sin( angle )
    );
  }

  /**
   * Sine.
   * Immutable form of sin.
   * @public
   *
   * @returns {Complex}
   */
  sinOf() {
    return new Complex(
      Math.sin( this.real ) * Utils.cosh( this.imaginary ),
      Math.cos( this.real ) * Utils.sinh( this.imaginary )
    );
  }

  /**
   * Cosine.
   * Immutable form of cos.
   * @public
   *
   * @returns {Complex}
   */
  cosOf() {
    return new Complex(
      Math.cos( this.real ) * Utils.cosh( this.imaginary ),
      -Math.sin( this.real ) * Utils.sinh( this.imaginary )
    );
  }

  /**
   * Returns the square of this complex number and does not modify it.
   * This is the immutable version of square.
   * @public
   *
   * @returns {Complex}
   */
  squared() {
    return this.times( this );
  }

  /**
   * Complex conjugate.
   * Immutable form of conjugate
   * @public
   *
   * @returns {Complex}
   */
  conjugated() {
    return new Complex( this.real, -this.imaginary );
  }

  /**
   * Takes e to the power of this complex number. $e^{a+bi}=e^a\cos b + i\sin b$.
   * This is the immutable form of exponentiate.
   * @public
   *
   * @returns {Complex}
   */
  exponentiated() {
    return Complex.createPolar( Math.exp( this.real ), this.imaginary );
  }

  /*** Mutable functions ***/

  /**
   * Sets all of the components of this complex, returning this
   * @public
   *
   * @param {number} real
   * @param {number} imaginary
   * @returns {Complex}
   */
  setRealImaginary( real, imaginary ) {
    this.real = real;
    this.imaginary = imaginary;
    return this;
  }

  /**
   * Sets the real component of this complex, returning this
   * @public
   *
   * @param {number} real
   * @returns {Complex}
   */
  setReal( real ) {
    this.real = real;
    return this;
  }

  /**
   * Sets the imaginary component of this complex, returning this
   * @public
   *
   * @param {number} imaginary
   * @returns {Complex}
   */
  setImaginary( imaginary ) {
    this.imaginary = imaginary;
    return this;
  }

  /**
   * Sets the components of this complex to be a copy of the parameter
   * @public
   *
   * This is the mutable form of the function copy(). This will mutate (change) this complex, in addition to returning
   * this complex itself.
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  set( c ) {
    return this.setRealImaginary( c.real, c.imaginary );
  }

  /**
   * Sets this Complex's value to be the a,b values matching the given magnitude and phase (in radians), changing
   * this Complex, and returning itself.
   * @public
   *
   * @param {number} magnitude
   * @param {number} phase - In radians
   * @returns {Complex}
   */
  setPolar( magnitude, phase ) {
    return this.setRealImaginary( magnitude * Math.cos( phase ), magnitude * Math.sin( phase ) );
  }

  /**
   * Addition of this Complex and another Complex, returning a copy.
   * @public
   *
   * This is the mutable form of the function plus(). This will modify and return this.
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  add( c ) {
    return this.setRealImaginary( this.real + c.real, this.imaginary + c.imaginary );
  }

  /**
   * Subtraction of another Complex from this Complex, returning a copy.
   * @public
   *
   * This is the mutable form of the function minus(). This will modify and return this.
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  subtract( c ) {
    return this.setRealImaginary( this.real - c.real, this.imaginary - c.imaginary );
  }

  /**
   * Mutable Complex multiplication.
   * @public
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  multiply( c ) {
    return this.setRealImaginary(
      this.real * c.real - this.imaginary * c.imaginary,
      this.real * c.imaginary + this.imaginary * c.real );
  }

  /**
   * Mutable Complex division. The immutable form is dividedBy.
   * @public
   *
   * @param {Complex} c
   * @returns {Complex}
   */
  divide( c ) {
    const cMag = c.magnitudeSquared;
    return this.setRealImaginary(
      ( this.real * c.real + this.imaginary * c.imaginary ) / cMag,
      ( this.imaginary * c.real - this.real * c.imaginary ) / cMag
    );
  }

  /**
   * Sets this Complex to e to the power of this complex number. $e^{a+bi}=e^a\cos b + i\sin b$.
   * This is the mutable version of exponentiated
   * @public
   *
   * @returns {Complex}
   */
  exponentiate() {
    return this.setPolar( Math.exp( this.real ), this.imaginary );
  }

  /**
   * Squares this complex number.
   * This is the mutable version of squared.
   * @public
   *
   * @returns {Complex}
   */
  square() {
    return this.multiply( this );
  }

  /**
   * Square root.
   * Mutable form of sqrtOf.
   * @public
   *
   * @returns {Complex}
   */
  sqrt() {
    const mag = this.magnitude;
    return this.setRealImaginary( Math.sqrt( ( mag + this.real ) / 2 ),
      ( this.imaginary >= 0 ? 1 : -1 ) * Math.sqrt( ( mag - this.real ) / 2 ) );
  }

  /**
   * Sine.
   * Mutable form of sinOf.
   * @public
   *
   * @returns {Complex}
   */
  sin() {
    return this.setRealImaginary(
      Math.sin( this.real ) * Utils.cosh( this.imaginary ),
      Math.cos( this.real ) * Utils.sinh( this.imaginary )
    );
  }

  /**
   * Cosine.
   * Mutable form of cosOf.
   * @public
   *
   * @returns {Complex}
   */
  cos() {
    return this.setRealImaginary(
      Math.cos( this.real ) * Utils.cosh( this.imaginary ),
      -Math.sin( this.real ) * Utils.sinh( this.imaginary )
    );
  }

  /**
   * Complex conjugate.
   * Mutable form of conjugated
   * @public
   *
   * @returns {Complex}
   */
  conjugate() {
    return this.setRealImaginary( this.real, -this.imaginary );
  }

  /**
   * Debugging string for the complex number (provides real and imaginary parts).
   * @public
   *
   * @returns {string}
   */
  toString() {
    return `Complex(${this.real}, ${this.imaginary})`;
  }

  /**
   * Constructs a complex number from just the real part (assuming the imaginary part is 0).
   * @public
   *
   * @param {number} real
   * @returns {Complex}
   */
  static real( real ) {
    return new Complex( real, 0 );
  }

  /**
   * Constructs a complex number from just the imaginary part (assuming the real part is 0).
   * @public
   *
   * @param {number} imaginary
   * @returns {Complex}
   */
  static imaginary( imaginary ) {
    return new Complex( 0, imaginary );
  }

  /**
   * Constructs a complex number from the polar form. For a magnitude $r$ and phase $\varphi$, this will be
   * $\cos\varphi+i r\sin\varphi$.
   * @public
   *
   * @param {number} magnitude
   * @param {number} phase
   * @returns {Complex}
   */
  static createPolar( magnitude, phase ) {
    return new Complex( magnitude * Math.cos( phase ), magnitude * Math.sin( phase ) );
  }
}

dot.register( 'Complex', Complex );

/**
 * Immutable constant $0$.
 * @public
 *
 * @constant {Complex} ZERO
 */
Complex.ZERO = new Complex( 0, 0 );

/**
 * Immutable constant $1$.
 * @public
 *
 * @constant {Complex} ONE
 */
Complex.ONE = new Complex( 1, 0 );

/**
 * Immutable constant $i$, the imaginary unit.
 * @public
 *
 * @constant {Complex} I
 */
Complex.I = Complex.imaginary( 1 );

export default Complex;


Revitalize and strengthen hair with shampoo from As We Change. Our premium shampoos come infused with ingredients like Argan oil, natural plant extracts and antioxidants to boost hair's luster and heal everyday damage. Our hair regrowth shampoos help encourage a healthy scalp environment for hair growth and stimulate blood flow to thinning hair.


Hello! Just a quick post to tell you all that we are not dead. Various factors are coming together behind the scenes, and hopefully it won't be too long until Superbonusland rises again in an even better form.
Meanwhile, on Boxing day last year the DS ran out of power so we weren't able to play Scribblenauts anymore… we couldn't find that elusive AC adaptor anywhere, so through sheer boredom we made a video instead. Enjoy!
You are currently browsing the Superbonusland blog archives for March, 2010.


Herrin, IL's friendly neighborhood vapor shop!
Many in the in the Herrin, Illinois area are becoming more drawn to a new trend called vaping. Cool Breeze Vapor is here to provide all the quality vaping products that those in this community need. Our business is family owned and operated and was started in 2015, so we could pass on our extensive knowledge of vapor devices. Whether you want to start vaping for enjoyment or to quit smoking, our staff can get you set up with the right equipment today.
There are multiple ways to purchase our items; we accept most major credit cards and all other forms of payment. We'll try to make your experience as smooth as possible, and our friendly staff provides discounts of 10% for first responders, military members, medical personnel, and senior citizens. First-time customers are also eligible for this discount. Our clients know they can get good information from us and can find even more details on our website. You can also call, and we'll be happy to answer all your questions.
If you're curious about trying any vapor products, but still aren't sure; visit our shop. We're more than happy to help get you set up with all the right equipment. Our staff can answer all questions and offer you a starter kit that has all the components you will need. We want to provide the personal services you expect and make sure all your needs are met. Talk to us about you, and we'll help you pick the perfect nicotine level.
However, we don't just have starter kits here. If you're an experienced vaper, visit us to find all the parts you need to customize your device just the way you like it. Find parts to make larger vapor clouds or achieve other effects. If you're looking for new flavors; visit our tasting station for delicious flavors from Reserved, Duality, and Doc Brown's. As well as e-juice, parts, and accessories; we have it all here.


text:
Q: How to get only one prototype bean in one method invocation? I have a ptototype bean autowired in a singleton bean. To get different bean of the prototype bean, I marked it with proxyMode. Then, the side effect is huge: I always get more than one instances.
Here is my sample code:
@Service
@Slf4j
@Scope(value = "prototype", proxyMode = ScopedProxyMode.TARGET_CLASS)
public class Duplicate {
public void serve() {
    log.error("{}", this);
}

public Duplicate get() {
    return this;
}
}

and
@Slf4j
@Service
public class Singleton {
@Autowired
private Duplicate d1;

public void serve(){
    Duplicate duplicate = d1.get();
    log.warn("d1 - 0 = {}", duplicate);
    log.warn("d1 - 1 = {}", duplicate);
    duplicate.serve();
}
}

and a UT case:
@Autowired
private Singleton singleton;
@Test
public void testOnScope(){
    singleton.serve();
}

The output is so weired to me:
Singleton - d1 - 0 = Duplicate@14f7e21a
Singleton - d1 - 1 = Duplicate@2bd9722
Duplicate - Duplicate@544cd64b

The memory addresses are totally different!
How should I modify my code to achieve the goal?

A: Do not use
ScopedProxyMode.TARGET_CLASS

use @Lookup instead.
I post a blog public, but it's in Chinese.
https://www.jianshu.com/p/eee4a785cadc

redpajama_set_name: RedPajamaStackExchange