text:
// Copyright 2021 The Terasology Foundation
// SPDX-License-Identifier: Apache-2.0
package org.terasology.engine.persistence.serializers;

import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonNull;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.google.gson.JsonSyntaxException;
import com.google.protobuf.ByteString;
import com.google.protobuf.Descriptors;
import gnu.trove.list.TByteList;
import gnu.trove.list.array.TByteArrayList;
import org.terasology.protobuf.EntityData;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.lang.reflect.Type;
import java.util.Locale;
import java.util.Map;

/**
 * Converts between the EntityData types and JSON.
 *

 * This means that serialization between JSON and Entities/Prefabs is a two step process, with EntityData as an
 * intermediate step - it was done this way because it is much simpler to write gson handlers for the small number of
 * EntityData types than to dynamically build handlers for every component type (and have gson properly handle missing
 * types). This can be revisited in the future.
 *
 */
// TODO: More javadoc
public final class EntityDataJSONFormat {

    private EntityDataJSONFormat() {
    }

    public static void write(EntityData.GlobalStore world, BufferedWriter writer) {
        newGson().toJson(world, writer);
    }

    public static void write(EntityData.Prefab prefab, BufferedWriter writer) {
        newGson().toJson(prefab, writer);
    }

    public static String write(EntityData.Entity entity) {
        return newGson().toJson(entity);
    }

    public static EntityData.GlobalStore readWorld(BufferedReader reader) throws IOException {
        try {
            return newGson().fromJson(reader, EntityData.GlobalStore.class);
        } catch (JsonSyntaxException e) {
            throw new IOException("Failed to load world", e);
        }
    }

    public static EntityData.Prefab readPrefab(BufferedReader reader) throws IOException {
        try {
            return newGson().fromJson(reader, EntityData.Prefab.class);
        } catch (JsonSyntaxException e) {
            throw new IOException("Failed to load prefab", e);
        }
    }

    private static Gson newGson() {
        return new GsonBuilder()
                .setPrettyPrinting()
                .registerTypeAdapter(EntityData.GlobalStore.class, new WorldHandler())
                .registerTypeAdapter(EntityData.Entity.class, new EntityHandler())
                .registerTypeAdapter(EntityData.Prefab.class, new PrefabHandler())
                .registerTypeAdapter(EntityData.Component.class, new ComponentHandler())
                .registerTypeAdapter(EntityData.Component.Builder.class, new ComponentBuilderHandler())
                .registerTypeAdapter(EntityData.Value.class, new ValueHandler())
                .serializeSpecialFloatingPointValues()
                .create();
    }

    private static class WorldHandler implements JsonSerializer<EntityData.GlobalStore>, JsonDeserializer<EntityData.GlobalStore> {

        @Override
        public JsonElement serialize(EntityData.GlobalStore src, Type typeOfSrc, JsonSerializationContext context) {
            JsonObject result = new JsonObject();
            for (Map.Entry<Descriptors.FieldDescriptor, Object> field : src.getAllFields().entrySet()) {
                result.add(field.getKey().getName(), context.serialize(field.getValue()));
            }
            return result;
        }

        @Override
        public EntityData.GlobalStore deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            EntityData.GlobalStore.Builder world = EntityData.GlobalStore.newBuilder();
            if (json.isJsonObject()) {
                JsonObject jsonObject = json.getAsJsonObject();
                JsonArray prefabArray = jsonObject.getAsJsonArray("prefab");
                if (prefabArray != null) {
                    for (JsonElement prefabElem : prefabArray) {
                        world.addPrefab((EntityData.Prefab) context.deserialize(prefabElem, EntityData.Prefab.class));
                    }
                }
                JsonArray entityArray = jsonObject.getAsJsonArray("entity");
                if (entityArray != null) {
                    for (JsonElement entityElem : entityArray) {
                        world.addEntity((EntityData.Entity) context.deserialize(entityElem, EntityData.Entity.class));
                    }
                }
                JsonPrimitive nextId = jsonObject.getAsJsonPrimitive("next_entity_id");
                if (nextId != null) {
                    world.setNextEntityId(nextId.getAsInt());
                }

            }
            return world.build();
        }
    }

    private static class ComponentHandler implements JsonSerializer<EntityData.Component> {

        @Override
        public JsonElement serialize(EntityData.Component src, Type typeOfSrc, JsonSerializationContext context) {
            JsonObject result = new JsonObject();
            for (EntityData.NameValue field : src.getFieldList()) {
                result.add(field.getName(), context.serialize(field.getValue()));
            }
            return result;
        }

    }

    private static class ComponentBuilderHandler implements JsonDeserializer<EntityData.Component.Builder> {
        @Override
        public EntityData.Component.Builder deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            EntityData.Component.Builder component = EntityData.Component.newBuilder();
            JsonObject jsonObject = json.getAsJsonObject();
            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                EntityData.NameValue.Builder nameValue = EntityData.NameValue.newBuilder();
                nameValue.setName(entry.getKey());
                EntityData.Value value = context.deserialize(entry.getValue(), EntityData.Value.class);
                nameValue.setValue(value);
                component.addField(nameValue);
            }
            return component;
        }
    }

    private static class EntityHandler implements JsonSerializer<EntityData.Entity>, JsonDeserializer<EntityData.Entity> {

        @Override
        public JsonElement serialize(EntityData.Entity src, Type typeOfSrc, JsonSerializationContext context) {
            JsonObject result = new JsonObject();
            if (src.hasId()) {
                result.addProperty("id", src.getId());
            }
            if (src.hasParentPrefab() && !src.getParentPrefab().isEmpty()) {
                result.addProperty("parentPrefab", src.getParentPrefab());
            }
            if (src.hasAlwaysRelevant()) {
                result.addProperty("alwaysRelevant", src.getAlwaysRelevant());
            }
            if (src.hasOwner()) {
                result.addProperty("owner", src.getOwner());
            }
            for (EntityData.Component component : src.getComponentList()) {
                result.add(component.getType(), context.serialize(component));
            }

            if (src.getRemovedComponentCount() > 0) {
                JsonArray removedComponentArray = new JsonArray();
                for (String removedComponent : src.getRemovedComponentList()) {
                    removedComponentArray.add(new JsonPrimitive(removedComponent));
                }
                result.add("removedComponent", removedComponentArray);
            }
            return result;
        }

        @Override
        public EntityData.Entity deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            EntityData.Entity.Builder entity = EntityData.Entity.newBuilder();
            JsonObject jsonObject = json.getAsJsonObject();

            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                String name = entry.getKey().toLowerCase(Locale.ENGLISH);
                switch (name) {
                    case "parentprefab":
                        if (entry.getValue().isJsonPrimitive()) {
                            entity.setParentPrefab(entry.getValue().getAsString());
                        }
                        break;
                    case "id":
                        if (entry.getValue().isJsonPrimitive()) {
                            entity.setId(entry.getValue().getAsInt());
                        }
                        break;
                    case "removedcomponent":
                        if (entry.getValue().isJsonArray()) {
                            for (JsonElement element : entry.getValue().getAsJsonArray()) {
                                entity.addRemovedComponent(element.getAsString());
                            }
                        }
                        break;
                    case "owner":
                        if (entry.getValue().isJsonPrimitive()) {
                            entity.setOwner(entry.getValue().getAsInt());
                        }
                        break;
                    case "alwaysrelevant":
                        entity.setAlwaysRelevant(entry.getValue().getAsBoolean());
                        break;
                    default:
                        EntityData.Component.Builder component = context.deserialize(entry.getValue(), EntityData.Component.Builder.class);
                        component.setType(entry.getKey());
                        entity.addComponent(component);
                }
            }
            return entity.build();
        }
    }

    private static class PrefabHandler implements JsonSerializer<EntityData.Prefab>, JsonDeserializer<EntityData.Prefab> {

        @Override
        public JsonElement serialize(EntityData.Prefab src, Type typeOfSrc, JsonSerializationContext context) {
            JsonObject result = new JsonObject();
            if (src.hasName()) {
                result.addProperty("name", src.getName());
            }
            if (src.hasParentName()) {
                result.addProperty("parent", src.getParentName());
            }
            if (src.hasPersisted()) {
                result.addProperty("persisted", src.getPersisted());
            }
            if (src.hasAlwaysRelevant()) {
                result.addProperty("alwaysRelevant", src.getAlwaysRelevant());
            }
            if (src.getRemovedComponentCount() > 0) {
                result.add("removedComponents", context.serialize(src.getRemovedComponentList()));
            }
            for (EntityData.Component component : src.getComponentList()) {
                result.add(component.getType(), context.serialize(component));
            }
            return result;
        }

        @Override
        public EntityData.Prefab deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            EntityData.Prefab.Builder prefab = EntityData.Prefab.newBuilder();
            JsonObject jsonObject = json.getAsJsonObject();

            for (Map.Entry<String, JsonElement> entry : jsonObject.entrySet()) {
                String name = entry.getKey().toLowerCase(Locale.ENGLISH);
                switch (name) {
                    case "name":
                        if (entry.getValue().isJsonPrimitive()) {
                            prefab.setName(entry.getValue().getAsString());
                        }
                        break;
                    case "parent":
                        if (entry.getValue().isJsonPrimitive()) {
                            prefab.setParentName(entry.getValue().getAsString());
                        }
                        break;
                    case "removedcomponents":
                        if (entry.getValue().isJsonPrimitive()) {
                            prefab.addRemovedComponent(entry.getValue().getAsString());
                        } else if (entry.getValue().isJsonArray()) {
                            for (JsonElement element : entry.getValue().getAsJsonArray()) {
                                prefab.addRemovedComponent(element.getAsString());
                            }
                        }
                        break;
                    case "persisted":
                        prefab.setPersisted(entry.getValue().getAsBoolean());
                        break;
                    case "alwaysrelevant":
                        prefab.setAlwaysRelevant(entry.getValue().getAsBoolean());
                        break;
                    default:
                        if (entry.getValue().isJsonObject()) {
                            EntityData.Component.Builder component = context.deserialize(entry.getValue(), EntityData.Component.Builder.class);
                            component.setType(entry.getKey());
                            prefab.addComponent(component);
                        }
                }
            }
            return prefab.build();
        }
    }

    private static class ValueHandler implements JsonSerializer<EntityData.Value>, JsonDeserializer<EntityData.Value> {

        @Override
        public JsonElement serialize(EntityData.Value src, Type typeOfSrc, JsonSerializationContext context) {
            if (src.getBooleanCount() > 1) {
                return context.serialize(src.getBooleanList());
            } else if (src.getBooleanCount() == 1) {
                return context.serialize(src.getBoolean(0));
            } else if (src.getDoubleCount() > 1) {
                return context.serialize(src.getDoubleList());
            } else if (src.getDoubleCount() == 1) {
                return context.serialize(src.getDouble(0));
            } else if (src.getFloatCount() > 1) {
                return context.serialize(src.getFloatList());
            } else if (src.getFloatCount() == 1) {
                return context.serialize(src.getFloat(0));
            } else if (src.getIntegerCount() > 1) {
                return context.serialize(src.getIntegerList());
            } else if (src.getIntegerCount() == 1) {
                return context.serialize(src.getInteger(0));
            } else if (src.getLongCount() > 1) {
                return context.serialize(src.getLongList());
            } else if (src.getLongCount() == 1) {
                return context.serialize(src.getLong(0));
            } else if (src.getStringCount() > 1) {
                return context.serialize(src.getStringList());
            } else if (src.getStringCount() == 1) {
                return context.serialize(src.getString(0));
            } else if (src.getValueCount() > 0) {
                return context.serialize(src.getValueList());
            } else if (src.hasBytes()) {
                return context.serialize(src.getBytes().toByteArray());
            } else if (src.getNameValueCount() > 0) {
                JsonObject obj = new JsonObject();
                for (EntityData.NameValue nameValue : src.getNameValueList()) {
                    obj.add(nameValue.getName(), context.serialize(nameValue.getValue()));
                }
                return obj;
            }
            return JsonNull.INSTANCE;
        }

        @Override
        public EntityData.Value deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
                throws JsonParseException {
            EntityData.Value.Builder value = EntityData.Value.newBuilder();
            if (json.isJsonPrimitive()) {
                extractPrimitive(value, json);
            } else if (json.isJsonObject()) {
                extractMap(json, context, value);
            } else if (json.isJsonArray()) {
                JsonArray jsonArray = json.getAsJsonArray();
                TByteList byteList = new TByteArrayList();
                for (JsonElement element : jsonArray) {
                    if (element.isJsonArray()) {
                        value.addValue((EntityData.Value) context.deserialize(element, EntityData.Value.class));
                    } else if (element.isJsonObject()) {
                        value.addValue((EntityData.Value) context.deserialize(element, EntityData.Value.class));
                    } else if (element.isJsonPrimitive()) {
                        extractPrimitive(value, element);
                        if (element.getAsJsonPrimitive().isNumber()) {
                            try {
                                byteList.add(element.getAsByte());
                            } catch (NumberFormatException nfe) {
                                byteList.add((byte) 0);
                            }
                        }
                    }
                }

                if (byteList.size() > 0) {
                    value.setBytes(ByteString.copyFrom(byteList.toArray()));
                }
            }
            return value.build();
        }

        private void extractMap(JsonElement json, JsonDeserializationContext context, EntityData.Value.Builder value) {
            JsonObject nameValueObject = json.getAsJsonObject();
            for (Map.Entry<String, JsonElement> nameValue : nameValueObject.entrySet()) {
                EntityData.Value innerValue = context.deserialize(nameValue.getValue(), EntityData.Value.class);
                value.addNameValue(EntityData.NameValue.newBuilder().setName(nameValue.getKey()).setValue(innerValue));
            }
        }

        private void extractPrimitive(EntityData.Value.Builder value, JsonElement element) {
            JsonPrimitive primitive = element.getAsJsonPrimitive();
            if (primitive.isNumber()) {
                value.addDouble(primitive.getAsDouble());
                value.addFloat(primitive.getAsFloat());
                try {
                    value.addInteger(primitive.getAsInt());
                    value.addLong(primitive.getAsLong());
                } catch (NumberFormatException e) {
                    value.addInteger(0);
                    value.addLong(0);
                }
            }
            if (primitive.isBoolean()) {
                value.addBoolean(primitive.getAsBoolean());
            }
            if (primitive.isString()) {
                value.addString(primitive.getAsString());
            }
        }
    }

}


text:
Culture & Nature in Ecuador: Quito, Otavalo, Amazon, Chimborazo, & Cotopaxi - 14 Days
The landscapes of Ecuador's mainland are as varied as the people who live there, and you'll get to experience both nature and culture on this 14-day itinerary. Meet the locals who call these regions home and learn about their history, way of life and relationship to Ecuador's landscapes. From the Otavaleños and Afro-Ecuadorians in the north and the Quichua and Shuar in the rainforest to the Kichwa in the central Andes, you'll dive deep into everyday life and explore Ecuador's nature.
Learn about local cultures, like the Shuar and Quichua
Hike along volcanic lagoon
Spot rare and unique wildlife in the Amazon rainforest
Bargain for crafts at traditional Andean markets
Explore Quito's UNESCO World Heritage Old Town
Day 1 Arrival to Quito Quito
Day 2 Quito Historic Center, Middle of the World Tour, & Transfer to Otavalo Quito
Day 3 Cuicocha Lagoon Hike & Otavalo Market Otavalo
Day 4 Mountain Train to Salinas & Afro-Ecuadorian History Otavalo
Day 5 Otavalo Market & Drive to Hakuna Matata Rainforest Lodge Archidona
Day 6 Rainforest Hike & Pacari Chocolate Tour Archidona
Day 7 Rainforest Adventure: Parrots, Quichua Food, & Almuerzo Archidona
Day 8 Animal Rescue Center & Rainforest Drive Macas
Day 9 Shuar Waterfall Hike & Atillo Lagoon Guamote
Day 10 Guamote Market, Andean Kichwa Community, & Train Ride Riobamba
Day 11 Chimborazo Volcano Hike Latacunga
Day 12 Zumbahua Market & Quilotoa Lagoon Hike Zumbahua
Day 13 Hacienda La Cienega & Cotopaxi National Park Hike Quito
Day 14 Depart from Quito
Day 1: Arrival to Quito
View of Quito and the Cotopaxi Volcano
Welcome to Quito, the capital of Ecuador! Arrive at the Mariscal Sucre International Airport (UIO), where your driver will meet you to transfer to your accommodation in the city center, a one-hour trip. Along the way, you'll get a short introduction into Quito´s history and a quick briefing on the next day's activities.
The entire city of Quito is a UNESCO World Heritage Site, standing at an altitude of 9,350ft (2,850m). It welcomes visitors with its picturesque plazas situated between mountain peaks. The city has an abundance of market stands, shamanistic healers, and fourth-generation hat makers, as well as a vibrant and sophisticated culinary and nightlife scene.
Day 2: Quito Historic Center, Middle of the World Tour, & Transfer to Otavalo
Quito: Governmental Palace
The human occupation of Quito dates back thousands of years. Prior to the arrival of Spanish conquistadores, the main cultures in the area were the Quitus, as well as the Inca, whose empire spread across vast stretches of South America. The city was colonized by the Spanish and recognized as a city in the mid-16th century. In 1978, together with Kraków in Poland, the entire city became the first UNESCO World Heritage Site.
After breakfast at the hotel, visit the old town and meander down romantic narrow streets to see the colonial Churches of San Fransisco, La Compañia, and other historical landmarks.
In the afternoon, visit the Equator Monument, which highlights the exact location of the equatorial line according to the Franco-Spanish mission that determined its approximate location. It's also the location of the Ethnographical Museum that showcases the indigenous culture and ethnography of Ecuador.
In the evening, transfer to the city of Otavalo to the north.
Day 3: Cuicocha Lagoon Hike & Otavalo Market
Cuicocha Lagoon
In the morning, stretch your legs with a hike around the crater lagoon of Cuicocha. On the trail, your guide will explain to you the high altitude flora and fauna and the history of the once active volcano. Alternatively, enjoy a short walk and take some photos, or ride in a boat around the two islands.
In the afternoon, return to Otavalo. The city is the home of the well-known indigenous market where artisans come to sell colorful textiles and other traditional goods. Snack on fruits and other snacks while you browse the stalls for paintings, carvings, handpainted bowls, and much more.
Enjoy some street food (try the salted mango or fritada con mote—fried pork with cooked corn, then continue to the nearby town of Cotacachi for some free time and more shopping (the town is famous for its leather products).
Day 4: Mountain Train to Salinas & Afro-Ecuadorian History
Afro-Ecuadorian community learning center
Explore culture and nature on a full-day train ride through the Andes today. Start in Otavalo, then continue to Salinas, where you'll learn about the culture and history of Afro-Ecuadorians. Along the way, the train will make plenty of stops at community learning centers.
You'll leave with a deeper understanding of the history, music, food, art, and scenery of the northern Andes.
Return to Otavalo for the night.
Day 5: Otavalo Market & Drive to Hakuna Matata Rainforest Lodge
Artisan market of Otavalo
Start the day with an early-morning walk through the streets of Otavalo to see the market and buy breakfast at Plaza de Poncho.
Later, head over a nearby pass (crossing over 13,330 ft/ 4,050 m) to reach a valley, where thermal springs feed one of the country's most idyllic spas.
In the afternoon you'll reach Hakuna Matata, a cozy rainforest lodge in the middle of private, protected rainforest. Stop here to spend the night, and relax into the nighttime sounds of the jungle.
Plan your trip to Ecuador
Day 6: Rainforest Hike & Pacari Chocolate Tour
Learn how to make chocolate from bean to bar
Start the day with a hike through the protected rainforest which surrounds the lodge. Your guide, a certified naturalist, will point out various plants and animals as you hike: from medicinal plants to camouflaged frogs hidden in the dense foliage.
Your hike destination is the small village of Santa Rita, where a delicious lunch awaits you. In the afternoon, the experts from Pacari Chocolate Company will show you how to make delicious chocolate from the local cocoa beans.
Return to the lodge and spend the rest of the day relaxing.
Day 7: Rainforest Adventure: Parrots, Quichua Food, & Almuerzo
Preparing Yucca
Early in the morning, meet your guide and head to the small river of Arajuno, then canoe to a local clay lick where hundreds of parrots and parakeets come to eat minerals from the earth above the water.
Continue in the canoe to the indigenous Quichua community of Santa Barbara where you'll get the opportunity to taste a variety of different local dishes. After snacking on the community buffet, drive to the small jungle town of Misahualli for a typical Almuerzo (lunch).
In the afternoon, go for a walk through the village and the surroundings, then return to your lodge for the night.
Day 8: Animal Rescue Center & Rainforest Drive
After enjoying breakfast to the sounds of the rainforest in the morning, drive to Puyo to visit an Animal Rescue Center. Here, you'll learn about how injured and orphaned animals are rehabilitated and spend some time with the rescue center up close. You'll even get to meet some of the center's monkeys face to face.
After your visit, continue deeper into the rainforest, to the small jungle town of Macas. Spend the afternoon relaxing here in a peaceful and comfortable rainforest Hosteria.
Day 9: Shuar Waterfall Hike & Atillo Lagoon
Waterfall ceremony in Shuar territory
Today's short morning drive takes you into Shuar territory, where you'll go for a hike through the rainforest to reach a sacred waterfall. Here, you'll participate in the waterfall ceremony of the Shuar.
Afterward, refresh with a dip in the water and try the local Shuar food. Later, continue to the Atillo Lakes, crossing the Andean Highlands to Guamote.
Day 10: Guamote Market, Andean Kichwa Community, & Train Ride
Guamote's weekly market
In the early morning, visit the traditional Andean market of Guamote. Later, you'll explore the surrounding area and visit one of the nearby small villages to learn about the culture of the local Kichwa population. In the afternoon, travel to Riobamba, which sits in the shadow of the Chimborazo, Carihuayrazo, El Altar, and Tungurahua mountains. The city is considered to be the most important agricultural center of the Ecuadorian Andes.
In the afternoon, there's an option to take a train ride through the nearby mountains. Make your way to the small train station of Alausi, where you'll board the famous train. The tracks run through the nearby Devil's Nose, an incredibly steep and twisting section that rises 330 ft (100 m) to Sibambe in the valley. After a short stay, return to Alausi and drive back to Riobamba for the night.
Day 11: Chimborazo Volcano Hike
Today's trip takes you from Riobamba to the heights of the mighty Chimborazo Volcano. On the way, stop at one of the several Kichwa communities that sit in the volcano's shadow at over 9,800 ft (3,000 m). From here, drive up to the Hermanos Carrel mountain hut, which sits at 15,700 ft (4,800 m).
The adventurous can hike from here to the Whymper Hut, located even higher up at 16,400 ft (5,000 ft). By late afternoon, you'll reach the small town of Latacunga, where you'll stop for the night.
Day 12: Zumbahua Market & Quilotoa Lagoon Hike
Quilotoa Lagoon
In the morning, a short drive takes you to the village of La Victoria, which is famous for traditional ceramics. Continue to the Zumbahua market to browse for gifts, then head to the Quilotoa Crater Lagoon, a lake located inside of the crater of the Quilotoa Volcano.
Find a family-run cafe for lunch, then choose between hiking around the crater rim or kayaking on the lake for a quiet afternoon.
Day 13: Hacienda La Cienega & Cotopaxi National Park Hike
Hacienda La Cienega
Start the day with a drive to the 400-year-old Hacienda La Cienega, where you'll enjoy fresh coffee in a stunning landscape. Afterward, visit the nearby flower farm to see how local roses are grown, then head to Cotopaxi National Park.
Enjoy an easy afternoon hike around Limpiopungo Lagoon, learn about the flora and fauna of the Andes mountains and, with good weather, take in the views of Cotopaxi.
Head to the Tambopaxi Mountain Hut for lunch in the shadow of the Sincholagua and Cotopaxi mountains, before returning to Quito.
Day 14: Depart from Quito
Cathedral La Basílica
Today you are free to explore Quito on your own and shop for souvenirs before your flight home. At the designated time, meet your driver at the hotel for the transfer to the airport.
Map of Culture & Nature in Ecuador: Quito, Otavalo, Amazon, Chimborazo, & Cotopaxi - 14 Days
Written by Linda Schulz, updated Feb 18, 2021
Ecuador 2-Week Tours & Itineraries
The Real Ecuador: Quito, Otavalo, Amazon & Galapagos - 14...
Experience the cultural heritage and natural beauty of Ecuador over the...
Best of Ecuador: Quito, Amazon, Cotopaxi, & Galapagos - ...
Experience the best of Ecuador while getting to know its three main...
Multi Country South America Adventure: Ecuador & Peru - 1...
Experience the best of Ecuador's mainland and Peru's highlights on this...
Trekking in Ecuador's Highlands: Cotopaxi, Chimborazo, & ...
Spend two weeks exploring mountainous landscapes in a country that's...
Culture & Nature in Ecuador: Quito, Otavalo, Amazon, Chim...
The landscapes of Ecuador's mainland are as varied as the people who...
Best of Archidona
Ecuador Glamping Adventure: Cities, Jungles & Highlands -...
Immerse yourself in Ecuador's natural splendors on this 9-day glamping...
Highlights of Ecuador & the Galápagos: Quito, Baños, Arch...
Explore the Ecuadorian mainland and see the spectacular wildlife of the...
Best of Quito
The Perfect Day in Quito
Even if you have just 24 hours, your time in the Ecuadorian capital will...
9 Best Boutique Hotels in Quito
There is something for everybody in Quito, and a hotel for every taste...
Quito & the Galapagos Islands - 8 Days
An 8-day adventure in Ecuador, starting and ending in Quito. During this...
Ecuador Highlights: Quito & the Galapagos - 6 Days
See the highlights of Quito and the Galapagos Islands on this short...
Ecuador History, Culture & Nature: Quito & Surroundings -...
This short but extensive itinerary brings you into the very heart of the...
Best of Otavalo
Highlands of Ecuador - 5 Days
This short itinerary is perfect for travelers who want a mix of...
Ecuador's Natural Wonders & Historic Haciendas - 8 Days
Staying in a hacienda has become a must for any trip to the Ecuadorian...
Outdoor Adventure & Culture from Quito to Guayaquil - 9 ...
Discover Ecuador's breathtaking landscapes and colorful cultural...
Best of the Ecuadorian Highlands - 7 Days
Traverse the very best of the Ecuadorian highlands on this 7-day...
Culture, Nature & Adventure: Quito, Mindo & Cotopaxi - 6 ...
Offering a mix of culture, nature, and adventure, this six-day journey...
Ecuador Tours & Itineraries
Ecuador: Amazon, Andes, and the Coast - 16 Days
Explore the best of Ecuador in this 16-day tour through the Amazon,...
Ecuador Highlands & Amazon - 7 Days
This action-packed seven-day tour of Ecuador is perfect for travelers...
Make the Most of Your Time in Ecuador
How Many Days to Spend In Ecuador
Ecuador is a country that packs enormous diversity into a small area, so...
5 Days in Ecuador - 5 Unique Itinerary Ideas
Have just five days in Ecuador? No problem: it's one of the smallest...
1 Week in Ecuador - 5 Unique Itinerary Ideas
Spend a week in Ecuador exploring the country's diversity, from...
10 Days in Ecuador - 5 Unique Itineraries
Locals are fond of saying that Ecuador is four countries in one: coast,...
2 Weeks in Ecuador - 5 Unique Itinerary Ideas
Two weeks in Ecuador gives plenty of time to enjoy all three of the...
Ecuador Travel Essentials
Best Time of Year to Visit Ecuador
On the northwestern side of South America, straddling the equator,...
Best Things to Do in Ecuador
Ecuador boasts a remarkable range of landscapes, cultures, and...
Going Off-The-Beaten-Path in Ecuador
Even with the tourism boom in Ecuador, there are still plenty of...
Options for Touring Ecuador
By South American standards, Ecuador is a fairly small country. Most...
Ecuador Travel Advice
Ecuador in January: Travel Tips, Weather, and More
It might be cool and wet when you arrive in Quito this month, but in...
Ecuador in February: Travel Tips, Weather, and More
Carnaval season brings its share of partiers in to places across Ecuador...
Ecuador in March: Travel Tips, Weather, and More
Easter-related events enliven Ecuador this month, especially welcome in...
Ecuador in April: Travel Tips, Weather, and More
It's the end of high season on the coast, but low season in the...
Ecuador in May: Travel Tips, Weather, and More
It's all change in Ecuador this month, as the coast becomes grayer and...
Ecuador Travel Agents
Kimkim has selected the best Ecuador travel agents so you'll have a...
Most Viewed Ecuador Content
Top Wildlife Lodges in the Ecuadorian Amazon
Eco-lodges in the Ecuadorian rainforest offer excellent bird watching...
Nature & National Parks in Ecuador - 11 Days
Spend 11 days exploring the biodiverse landscapes of Ecuador, from the...
Highlights of the Ecuadorian Highlands - 11 Days
Experience the wonder of volcanic landscapes and centuries-old...
Highlights of Southern Ecuador - 11 Days
Get off the beaten path on this 11-day adventure around southern...
Diverse Ecuador: Andes, Amazon & Galápagos - 11 Days
Experience unique wildlife and cultural heritage on this 11-day tour of...
Getting Around Ecuador
How to Get from Quito to Guayaquil
Traveling between Quito, Ecuador's capital, and its biggest city,...
How to Get from Quito to Cotopaxi National Park
From Quito, the volcano-crested national park of Parque Nacional...
How to Get from Quito to Cuyabeno Wildlife Reserve
The Reserva Producción Faunística Cuyabeno, more commonly known...
How to Get from Quito to the Galapagos Islands
The natural paradise that is the Galapagos Islands is not just a...
Diana H.
"When I set out to plan a 2-week family trip to Ecuador, I was a overwhelmed with the many awesome destinations, activities and adventures to chose from as we..." read more
Traveled to Ecuador as a family in December, 2022
Derral R.
"Our guide Ven was phenomenal and very attentive to all our needs. We also were very impressed with the vegetarian meals that the cook provided. We loved t..." read more
Traveled to Ecuador as a couple in January, 2023
Beth B.
"What a fabulous trip!!! Erika was wonderful to work with and designed the perfect trip for us. Everything went as planned. The customer service and respons..." read more
Vidya M.
"The booking experience was very seamless and all details has been thought about and planned. Lucia was very responsive and quickly answered our questions. ..." read more
"We had a wonderful experience in Ecuador with Kimkim. Our guide Sebastian was simply wonderful: warm, helpful, and knowledgable. Our driver, Guillermo was ex..." read more
"This company is the real deal. I was skeptical to use a travel agent to book a trip but I am so glad I did. I found Kim Kim on a Facebook page and decided ..." read more
"Our Guayaquil guide, Corina and our driver, were amazing in their historical knowledge of the city and country, flexibility in the moment based on our intere..." read more
"Where to start and what to say is not easy because words can't necessarily do justice to how amazing of a trip was planned for us and the excellent treatment..." read more
Traveled to Ecuador as a couple in December, 2022
Kelly B.
"We had such a great experience with KimKim! The local guide and driver they connected us with were amazing. We felt like family at the end of the trip! In th..." read more
Traveled to Ecuador as a family in June, 2022
Kayla H.
"Our trip to Ecuador for our honey moon was incredible. We were incredibly impressed with every detail from the transport, the food, the scenery and our guide..." read more
Traveled to Ecuador as a couple in November, 2022
Create your custom-made trip to Ecuador

redpajama_set_name: RedPajamaCommonCrawl


Exxon Mobil pipeline problems are back in the news and this time it's in Arkansas.
From InsideClimate News: A pipeline that ruptured and leaked at least 80,000 gallons of oil into central Arkansas on Friday was transporting a heavy form of crude from the Canadian tar sands region, ExxonMobil told InsideClimate News.
Local police said the line gushed oil for 45 minutes before being stopped, according to media reports.
In an interview with InsideClimate News, Faulkner County Judge Allen Dodson said emergency crews prevented the oil from entering waterways. The judge issued an emergency declaration following the spill and is involved in coordinating clean-up efforts among federal, state and local agencies and Exxon.
Read the story here: Exxon Confirms Ruptured Pipeline in Ark.
These U.S. pipeline ruptures are getting more media attention now because of the controversial Keystone XL pipeline project that would carry Canadian tar sands oil to the Gulf of Mexico. But the Keystone project aside, the reality is that pipeline leaks and ruptures are, unfortunately, everyday occurrences. In January AP reported that "pipeline spills caused by flooding and riverbed erosion dumped 2.4 million gallons of crude oil and other hazardous liquids into U.S. waterways over the past two decades." Pipeline ruptures in rivers are particularly dangerous, but pipeline ruptures happen on land, too, where they can also cause extensive damage.
Following up on the paper's pipeline safety reporting of 2011, Times reporter Dan Frosch wrote in December 2012: A forthcoming federal report on pipeline safety has found that members of the general public are more likely to identify oil and gas spills than the pipeline companies' own leak detection systems.
The report found that pipeline control rooms, which help monitor whether a line is functioning properly, identified leaks in hazardous liquid and gas transmission lines only 17 percent and 16 percent of the time. Control rooms identified leaks in gas distribution pipelines, like those that go into homes or businesses, less than 1 percent of the time, according to the report.
The study was commissioned by the Pipeline and Hazardous Materials Safety Administration….
The study found that air patrols and ground crews used by pipeline companies, as well as contractors, were more likely to identify problems on a line than detection systems. And private citizens and emergency responders were typically the most likely to find evidence of a pipeline accident, it concluded.
This is just a snapshot of the pipeline safety problems in the United States, but when a federal government report indicates that members of the general public are more likely to identify oil and gas spills than the pipeline companies' own leak detection systems, that's cause for alarm around the world.
As I've written before, much of the Chad-Cameroon pipeline passes through remote territory where spills could easily go unnoticed for some time. And in these remote areas everyone isn't running around with cell phones with cameras. Nor are there many TV crews with helicopters. I've talked to people in Cameroon and Chad who have noticed and reported oil leaks, to no avail. I've talked to people who have monitored ongoing oil leaks from rusting pipelines in Equatorial Guinea and Angola, to no avail. And, of course, there's Nigeria, an ongoing social and environmental disaster on an epic scale — but who cares?
I wish that when reporting about pipeline risks and ruptures in the United States, reporters would simply indicate that this is a global issue. The stakes are high everywhere and in countries lacking clean-up capacity all incidents can be disastrous.
This entry was posted on Sunday, March 31st, 2013 at 4:29 pm.


If you cannot function in your life without your driver's license, you may be eligible for a driver's license from a Circuit Court. Only an experienced attorney will know how to give you the best chance of winning your hardship appeal and getting your driving privileges restored.
What is a hardship license from Circuit Court?
If you've been pulled over by an officer due to an alleged drinking and driving event and you refused to submit to an officer's requested breathalyzer test at the police station, you most likely ended up with a one-year suspension and 6 points on your license. If your license is suspended because of an implied consent violation, the only way you will be able to drive legally is on a hardship license from circuit court. A hardship license lets you legally drive for work and school and other limited purposes.
Here is why your license was suspended. If you've requested and received a driver's license, you have basically told the State of Michigan that you consent to obeying a police officer when they ask you for a chemical breath, blood, or urine sample. Of course, this doesn't mean that a sample can be requested for disobeying a traffic stop. The request must be reasonable and in connection with a type of driving offense where you are suspected to be driving impaired due to alcohol consumption. If you refuse, for whatever reason, your license will be suspended because you violated the implied consent law in the State of Michigan.
You have only 14 days to request an Implied Consent Hearing with the Michigan Assessment and Appeal Division (DAAD). Don't think for one minute that a quick hearing will restore your license and get you back on the road. It doesn't even come close to working that way. The hearing is complicated and the police officer has every advantage at the Secretary of State hearing.
Although you can go from suspended license right to Circuit Court on an appeal, it may not be in your best interest to skip the Implied Consent Hearing with the DAAD. If your DAAD appeal is unsuccessful, then your last resort is a hardship appeal. The appeal is generally for a first offense and it is not something that can be done multiple times. If you lose, you are done which is why you should seek the assistance of a very experienced attorney.
If you failed to request an Implied Consent Hearing in time or you lose the hearing, your only chance for getting your driver's license restored right away is with a hardship appeal to circuit court.
A first implied consent suspension is one of the categories of suspensions that may be appealed to Circuit Court for a hardship license. The appeal must be filed in the county where the arrest and refusal occurred. Further, there are forms to be completed, parties to be notified, and a filing fee to be paid, just to name a few of the requirements. There are time guidelines that must be followed and there is no leniency regarding this. Additional steps must be taken and an experienced lawyer will know what must be done to win.
Before the hearing, all of the paperwork must be in order. Items for the judge to review may include a substance abuse evaluation, proof of therapy or support group participation, letters from witnesses, and so much more. Once there is the opportunity to go before the judge, a fervent advocate for you is crucial. Your practiced and skilled attorney must convince the judge that driving without a license is a true hardship for you and you have no other reasonable alternatives. A persuasive attorney will ask the judge to contemplate your inability to go to work to provide for family or difficulty with going to school. Everyone's situation is different. The State of Michigan is not known for public transit and most earners and students must have vehicles. A good criminal defense attorney will fight for you and make sure your circumstances are heard.
A hardship appeal to the Circuit Court is not a simple process and most appeals handled without experienced lawyers are not successful. The legal team at LEWIS & DICKSTEIN, P.L.L.C. knows how to navigate the court system effectively and have won countless hardship appeals. Call us today at (248) 263-6800 for a Free Consultation or complete a Request for Assistance Form and we will promptly contact you.


Mines and shells continue exploding near the Donetsk airport, although the intensity of explosions is abating.
"Fighting is underway within a radius of 1.5 kilometers from the airport, encompassing the Donetsk-Horlivka highway and the nearby territories," the militia's headquarters told Interfax.
Plumes of black smoke can be seen above the airport and a residential area in the vicinity of the airport. The sounds of shelling and gunfire can be heard, an Interfax correspondent reported.
According to preliminary reports, several civilians were wounded when a shell blew up at a public transport stop.
The defense ministry of the self-proclaimed Donetsk People's Republic informed Interfax about intensified fighting near the Donetsk airport earlier on Sunday.
"One may get the impression that those who are defending themselves are using all kinds of weapons available to them. We are receiving reports about ruined residential buildings," the defense ministry said.
A spokesman for the Ukrainian National Security and Defense Council, Volodymyr Polevoy, said earlier on Sunday that shelling had been reported in some districts in southeastern Ukraine over the past 24 hours, including near the Donetsk airport.
"The enemy attacks have been rebuffed without losses among Ukrainian servicemen," Polevoy said.


198 TERRACE is a $33,000 property on a 5.00 acre lot located in Live Oak, FL.
Nice lot in Spring Landing just right for the weekend retreat or your new home. This property is close to the Suwannee River and Royal Springs and convenient to Live Oak, Mayo and Lake City.
I am interested in 198 TERRACE, Live Oak, FL 32060.


text:
Q: Why some callback functions takes time to complete while some can return value immediately after run As I know that

'Any function that is passed as an argument is called a callback
  function'

, and also that if the callback function takes some time to complete, the statements followed by this callback function will run. Here is example about using callback in array.filter() from MDN:
var words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];

const result = words.filter(word => word.length > 6);
console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]

My question is why I can get console.log(result) output immediately, and instead of 'undefined' or something?
Does it mean the callback used inside the Array.prototype.filter() can compete very fast. Only those callbacks which take some time like download things, reading files, talking to database, etc. (readFile('example.text) may have undefined result value, shown in this example?

A:
Array#filter method is not asynchronous in nature, it means "callback" function does not wait for any kind of IO or Network calls.

In Filter method, provided function(callback) is to test whether values pass the given criteria or not.
If you go through the docs, it says -
callback - "Function is a predicate, to test each element of the array. Return true to keep the element, false otherwise"

redpajama_set_name: RedPajamaStackExchange


text:
A Spate of Deaths in India's Oldest Tiger Reserve Causes Concern
Ten tigers have now been found dead or dying in the Indian state of Uttarakhand since the beginning of 2017, and conservationists fear many more deaths could be on the horizon.
Rachel Fritts
(Photo: Sam Panthaky/Getty Images)
On May 1st, forestry officials in the Indian state of Uttarakhand discovered a tiger cub, abandoned and injured. They attempted to rescue the animal, but had arrived too late—it succumbed to dehydration the next day. Another young tiger, rescued in the region on the same day, died of starvation the following week.
Ten tigers have now been found dead or dying in Uttarakhand since the beginning of 2017, and conservationists fear many more deaths could be on the horizon. The Uttarakhand government has recently proposed turning a small, partially paved road into a full-fledged national highway that would run straight through the heart of the state's Corbett Tiger Reserve.
India's Flagship Tiger Park
Located in the northeast of India, at the foot of the Himalayas, Corbett Tiger Reserve spans over 1,300 square kilometers of dense forest and lush grassland fed by the sprawling Ramganga River reservoir. Corbett and the surrounding region are home to over 300 Bengal tigers, as well as a plethora of other wildlife including Asian elephants, leopards, sloth bears, spotted deer, and a dizzying array of birdlife.
Not only is Corbett the oldest national park in India, it was also the flagship park of the Indian government's Project Tiger in the 1970s, launched to encourage sustainable management of the country's tiger population. In many ways, Corbett is held up as the gold standard for what a tiger reserve should be, and, indeed, its tiger population has been expanding in recent years.
The reserve has "some of the world's most productive tiger habitat," said Dr. John Goodrich, senior tiger program director for Panthera, the global wild cat conservation organization.
"However," Goodrich cautioned, "it is likely not large enough to withstand reduction, degradation, or fragmentation of habitat."
This year's spate of deaths and their causes indicate that threats to habitats could already be occurring. In addition to dehydration and starvation, veterinarians have cited territorial infighting by tigers and alleged poisoning as likely causes of death.
"Abnormal levels of infighting for territory, leading to early and increased mortality" and "increased conflict with human populations" are warning signs that a tiger population is lacking adequate space and resources, said Dr. Ashley Brooks, habitats and human wildlife conflict lead for WWF Tigers Alive.
The proposed highway would only exacerbate these issues, according to experts, and bring even more potential threats to Corbett's important tiger population.
More Tigers Need More Space
In 2010, the world's 13 tiger countries committed to doubling the global tiger population, increasing numbers from around 3,200 to over 6,000 by 2022. As of 2016, that commitment might be seeing some tentative success. According to a World Wildlife Fund report, the number of wild tigers has increased to 3,800 individuals. Yet some conservationists have called into question this figure based on what they contend is dubious data. Moreover, such numbers don't tell the full story: Tiger populations are still dropping in many parts of their range and numerous subspecies are on the knife's edge of extinction.
The WWF recommends that, to accommodate tigers' needs, governments should manage tiger landscapes as a mosaic of different habitats linking smaller tiger populations, and incorporating mitigating "buffer zones." Smaller, highly protected areas thus act as "source" populations while the surrounding areas absorb "sink" populations that spread out through the corridors.
These connective corridors are a critical part of the equation. Tigers currently roam just 7 percent of their historic range, and there is little research on how tigers might adapt to a more cramped living environment, according to Wildlife Institute of India's Dr. Bivash Pandav. Tigers' territories are naturally very large—their ranges can encompass up to 1,000 square kilometers. When a high-density tiger population cannot access corridors to spread out, it could begin to suffer from poor genetic variation and increased conflict with humans and other tigers.
"The first thing to know about wild tigers is that these are large predators that need protected and connected areas to roam, a healthy prey population to hunt, and access to water," explained Brooks from the WWF.
As of the last population estimate by India's Project Tiger in 2014, Corbett contains the highest density of tigers on the planet. It has thus far acted as a crucial source population for what is known as the Terai Arc landscape, but, according to the WWF, it might now be suffering the ill effects of poor landscape connectivity. And roads have been known to turn otherwise robust source habitats into sinks.
The proposed national highway route through Corbett would cut straight through the park, fragmenting rather than expanding the range of an already overcrowded tiger population. A report released last year by the WWF called linear infrastructure such as roads, "one of the greatest future threats to tigers."
Additionally, one of the only studies conducted solely on the impact of road construction on tigers concluded, unambiguously that "in habitats managed for tigers, construction of new roads should be prohibited wherever possible." Fragmentation from roads could trap the high number of tigers in Corbett into a space too small to support them, leading to starvation, infighting, and human-tiger conflict.
"Corbett is increasingly getting hemmed in by ever-expanding highways and roads, mining of sand, boulders, and gravel and tourism infrastructure," said Prerna Singh Bindra, a wildlife conservationist and former member of India's National Board for Wildlife. "Protecting the integrity of this landscape is a must for the survival of tigers in the long term."
Experts, environmentalists, and concerned citizens have been pushing back against the national highway plans. A Change.org petition begun by activist Ashish Garg has accumulated over 25,000 signatures.
The Uttarakhand government's announcement that the road was to be made into a highway "was simply outrageous," Garg told Mongabay in an email. "More so when there are alternatives available to construct new roads or widen existing highways which will also reduce the traveling time by the same duration."
But the government contends that the highway—which will cut down the travel time between the cities of Kotdwar and Ramnagar by two hours—can be constructed in a way that does not harm the park's wildlife.
"The government is trying to find a solution to the Kandi road project issue by which the safety of wildlife is ensured while keeping the convenience of people in mind," said the Uttarakhand Forest Minister in a statement in The Hindu.
However, wildlife experts like Avinash Basker, head of the Wildlife Protection Society of India's legal programme, do not think this is possible. "Once the road is in use there will be wildlife deaths due to collisions, vehicular pollution and disturbance, easy access to outsiders, and the road will act as a barrier for the movement of wildlife."
This is not the first time the specter of a highway has hung over the reserve: Road construction through the park was halted in 2001 after an elephant poaching incident drew concerns about creating an even easier access point for poachers. Conservationists say such concerns remain just as valid today. Panthera's Goodrich cited poaching as a "critical threat" to the tigers in the Terai Arc landscape.
In 2013, after considering these arguments against roadways, a committee from the Ministry of Environment and Forests formally recommended a ban on all new roads and the expansion of existing roads through protected areas in India. While not legally binding, this guideline was meant to dissuade any such future road construction and strengthen any case made against it.
"Simply put," said Bindra, who was part of the committee at the time, "roads spell the end of wilderness."
The Way Forward?
The Supreme Court has pushed back against the Uttarakhand government's plans slightly, ruling against the use of public transport on the section of the road through the park and requesting plans for an alternative alignment. However, construction plans appear to be pushing ahead.
Currently, the proposed mitigating solution is building flyover sections of highway that would allow wildlife to pass underneath the road. Raised highways can prove expensive, however, and those proposed in theory are often not translated into practice. If the reserve is to continue to be a shining example of tiger conservation, even properly managed mitigating measures will never be as effective as simply avoiding fragmentation of the landscape in the first place.
"Mitigation measures by definition do not prevent damage, they only mitigate it," said Basker of WPSI. "The way to avoid damage to local wildlife is to avoid building a road through the tiger reserve."
This story originally appeared at the website of global conservation news service Mongabay.com. Get updates on their stories delivered to your inbox, or follow @Mongabay on Facebook, Instagram, or Twitter.
IndiaTigersEndangered SpeciesEnvironmentPacific Standard PartnersCorbett Tiger Reserve
Starry, Starry Skies
California desert town takes back the night, wins rare "Dark Sky" award
What Is the Future of Paid Parental Leave in America?
The U.S. has a rough track record with how it treats new parents, but there are reasons to believe that this could soon be a thing of the past.
These Maps Show What Graham-Cassidy Would Mean for Your State
A new report concludes that the Graham-Cassidy proposal would reduce federal funding to states by $215 billion by 2026.
The Fault in Our Star Names
The International Astronomical Union has established a committee to finalize a list of official star names. Some companies offer unofficial naming rights for purchase. But the voices of certain communities are often left behind.
How Much Can Dietary Changes and Food Production Practices Help Mitigate Climate Change?
Food policy experts weigh in on the possibilities of individual diet choices and sustainable production methods.
Unseen America
Las Manos Jóvenes Que Nos Alimentan
Se calcula que 524,000 niños trabajan inimaginables largas horas en los agotadores campos agrícolas de Estados Unidos, y todo es perfectamente legal.


Rebecca L. Austin received her Ph.D. in Anthropology from the University of Georgia. She received her M.A. in applied anthropology from Northern Arizona University and her B.A. in anthropology from Fort Lewis College. She recently taught for six years at Florida Gulf Coast University where she helped develop curricula for a new anthropology major and an interdisciplinary M.A. in environmental studies. Her long-term doctoral research, funded by a Fulbright grant, focused on environmental movements and community-based coastal resource management among fishing communities on Palawan Island, Philippines. She has a number of years of experience as an applied anthropologist with tribal governments in the southwestern U.S. and as a consultant in the private sector, including work with traditional cultural properties on the Navajo Nation, social impact assessment, and the social impacts of the Exxon Valdez oil spill.
Dr. Austin's current interests are in traditional irrigation systems in the southwest (acequias), public perceptions of lawns and landscapes, human rights for environmental activists, and integrating anthropology with human ecology for teaching and applied projects. She holds a joint appointment with the Environmental Studies Program and the Anthropology Department at Fort Lewis College, and teaches a range of courses, including: Ecological Anthropology, Applied Anthropology, Coastal Anthropology, History of Anthropological thought, Introduction to Environmental Studies, Environmental Colloquium, and Social Dimensions of Environmental Movements.


Of all of the Outlander villains, Stephen Bonnet is among the most dastardly, and mostly because he's a slippery fellow. He pops in and out of Diana Gabaldon's fiction, owning the scenes he is in through a totally wild worldview and a smarmy but often-charming persona. He's also a man who takes what he wants, and while we don't see Stephen Bonnet doing anything overly horrifying in the first look at Outlander Season 4, we do get the first glimpses of Ed Speleers as the major fictional character.
Not too shabby at first glance, am I right? Ed Speleers looks almost unrecognizable as the pirate and ruthless smuggler. The former Downton Abbey actor used to wear a suit and have a shorn and carefully arranged hairdo for the Julian Fellowes series; his look is a far cry from that here. Instead, he has long hair, a tricorn hat and a noticeable scar running down one side of his face. When Claire and Jaime first meet him, he should be in a bit of a predicament, escaping the hanging noose. That is, if the Starz series doesn't change up his storyline for the show.


The MP2490 is a monolithic step-down switch mode converter with a programmable output current limit.
The MP2490 is a monolithic step-down switch mode converter with a programmable output current limit. It achieves 1.5A continuous output current over a wide input supply range with excellent load and line regulation. The maximum output current can be programmed by sensing current through the inductor DC resistance (DCR) or an accurate sense resistor. Fault condition protection includes cyclebycycle current limiting and thermal shutdown. The MP2490 requires a minimum number of readily available standard external components. The MP2490 is available in QFN10 (3mm x 3mm) and 8-pin SOIC packages.


text:
Entertainment Related, Health Related, Miscellaneous, News Related, Online Games, Pokemon Go, Social Networking, The Conversation, Video Games Related, Youth Related
How #PokemonGo Turned Couch Potatoes Into Fitness Fanatics Without Them Even Realising It
A person will engage in exercise if they choose to do so (autonomy), feel they are gaining valuable skills or achieving a goal (competence), or enjoying social interactions (relatedness). And that's where Pokemon Go comes in: it motivates users because it provides a pure form of these core needs. You can choose when to go Pokemon hunting and which Pokemon to hunt. By catching and training Pokemon you gain levels and status, and walking up to 10km can hatch rare Pokemon eggs that you have found. Additionally, you can hunt in packs or with one or two close allies, or share augmented reality snaps over social media.
Gotta catch 'em all. Stoyan Yotov / Shutterstock.com
By John A Parkinson, Bangor University
Pokemon Go is taking the world by storm. Within days of its US release, its number of daily active users caught up with longstanding apps Twitter, Snapchat and Google Maps, and it became the biggest mobile game in US history. Since then, the game has been launched worldwide, creating a user base which spends more time playing Pokemon Go than the average Facebook user spends on site.
The app is supposedly generating upwards of $10m a day in revenue from the sale of PokeCoins, and is so engaging that people have walked into lakes and fallen off cliffs while playing.
Pokemon appear anywhere there is a mobile data signal. Author provided
This latest version of the Pokemon game has also been hailed for increasing physical activity in a group of individuals that have traditionally been seen as couch potatoes. Since 1980, worldwide obesity has doubled. Likewise, people are spending more time sitting down. Pokemon Go is undoubtedly a great tool for boosting physical and mental health, and could probably claim to be the most successful health app on the market without even trying to be. But why is it so motivating for some, and how can we harness this power to change other behaviours?
Each of us possesses an intention-action gap (IAG). This is the discrepancy between our ideal self – what our values and intentions are – and our real self, that is what our actions actually are, what we actually achieve. The bigger the gap, the worse it is for us: if our intention is to spend 30 minutes a day being active and yet only do this maybe once a week, then we will be frustrated with ourselves and have poorer health outcomes.
The IAG concept has been studied extensively in the context of saving the planet. We might all say we want to behave responsibly and reduce climate change, but how many of us actually do things that are consistent with this, such as recycling, buying sustainable produce or reducing air miles? The theory applies equally to health behaviours too. So how do we close this gap?
The world is becoming bipolar between those that embrace exercise and those that do not. While obesity accelerates, so does the popularity of triathlons and many other sports. For some, exercising is intrinsically motivating and we need not worry about them, but the rest need a different approach.
We know from the history of behaviour change that people don't like being told what to do. So for those who are not motivated to exercise we need to find an alternative way. Self-determination theory argues that we will work energetically to satisfy three core psychological needs: autonomy, competence and relatedness.
Still behind a screen but gamers are getting out and about thanks to Pokemon Go. Wachiwit / Shutterstock.com
The game harnesses our vulnerability to a phenomenon known as stimulus-bound behaviour. Because the world is so complex and we have limited processing power, our brains automatise much of our behaviour, developing habits. These operate by identifying stimuli in the environment that we have specific automatic responses to, like braking at a red light. This stimulus control is incredibly powerful in controlling behaviour. In Pokemon Go it is harnessed by tracking specific Pokemon, PokeStops, and PokeGyms. Essentially we relinquish control over goals and actions to these stimuli, but while they can support bad habits – encouraging some to smoke, or buy that sugary coffee they don't really need – they can also help us achieve our chosen goals.
Being the very best
There are few health apps that also happen to be fun for those who are not intrinsically motivated to exercise. Pokemon Go's global release is a success story that we cannot ignore going forward: its impact on getting players up and moving is probably one of the greatest technological advances of the last few years.
Going forward, we need investment in research to help understand complex behaviour change and how we can use it to get the world's population to be more active. Alongside this, it is clear that we need to invest in augmented reality, and explore how it can be used in mobile games. Pokemon was already an outright success before the app was released but there are many other brands and digital universes that could harness a similar approach to their future releases. Imagine competing in a 100 metre Olympic-style event against Nintendo characters augmented in real life, or hunting out rupees and other treasures to use in The Legend of Zelda's Hyrule.
By using gamified augmented reality, we can close the intention-action gap at an individual level and promote sustainable healthy behaviour – without anyone even realising it.
About Today's Contributor
John A Parkinson, Professor in Behavioural Neuroscience, Bangor University
Entertainment Related|Health Related|Miscellaneous|News Related|Online Games|Pokemon Go|Social Networking|The Conversation|Video Games Related|Youth Related|


Jc Computer Consultants is located at the address 345 S Glen Ave in Morton, Illinois 61550. They can be contacted via phone at (309) 266-6756 for pricing, hours and directions.
For maps and directions to Jc Computer Consultants view the map to the right. For reviews of Jc Computer Consultants see below.


text:
Home » NWCUA, CU advocates advance policy agendas in state legislatures
CU System
NWCUA, CU advocates advance policy agendas in state legislatures
The Northwest Credit Union Association (NWCUA) continued a years-long tradition in 2021, collaborating with its members to advance priority legislation in Idaho, Oregon, and Washington.
While protecting credit unions' tax structures and preventing new, burdensome, regulatory barriers, the Northwest "Advocacy Army" also saw the passage of a series of significant bills beneficial to the region's 175 credit unions and 8.1 million consumer members.
Three legislative proposals directly related to credit union operations passed in Idaho. They include:
HB 49 -- Emergency Perfection of Vehicle Titles. NWCUA worked with legislative leaders and the Idaho Transportation Department (ITD) to provide an emergency protocol to protect financial institutions from losing their legal lien rights on secured assets during a titling backlog brought on by the pandemic.
SB 1102 – Electronic Titling and Registration for Vehicles. This bill allows third party vendors to apply for a technology license at the Idaho Transportation Department, to electronically process vehicle titles and registration through a secure platform tied to the ITD Titling and Registration System.
SB 1131 – Garnishment Alignment and Clarification. This bill aligns Idaho's garnishment "look back" period with the look back period established in federal garnishment statute.
Two priority bills which passed in Oregon include:
HB3079 – Updating the Credit Union Act. This legislation removes barriers for credit union investments in CUSOs, modernizes the language on emergency mergers, and maintains state-chartered credit unions' abilities to obtain parity with federal credit unions.
HB3080 – Scan Identification Bill. Effective January 1, 2022, this law will allow credit unions to scan a driver's license or state issued ID card to process loan or deposit account applications, after obtaining a member's permission to do so.
Credit unions and municipal governments saw key public funds legislation pass in the Washington State Legislature this session.
SB 5016 – Municipal Access to Local Financial Services. Passing with broad, bi-partisan support, this new law gives municipal governments the ability to deposit unlimited public funds in credit unions, providing them with more competitive and safe investment options. The law previously excluded unlimited public funds deposits in the state's five largest counties.
While the legislature adjourned before a bill to update the Washington Credit Union Act could receive a full Senate vote, the measure is already officially in the queue for the 2022 session.
NWCUA works closely with member credit unions in determining short-and long-term advocacy priorities. Every two years a State Issues Work Group (SWIG) is convened in Idaho, Oregon, and Washington to think broadly about opportunities to modernize the state's credit union act, discuss challenges and pain points, and consider ideal legislative and regulatory flexibilities that would enhance services to members. Participants include branch and operations level professionals, legal counsel, compliance experts, CFOs, and CEOs.
In addition, NWCUA hosts a Governmental Affairs Committee in each of its states, all of which meet several times a year. In 2021, nearly 100 members were actively engaged in the GAC process.
"NWCUA, the State Issues Work Groups, and the Governmental Affairs Committees are committed to protect and evolve the best operating environment possible," said Jennifer Wagner, NWCUAs Executive Vice President and Chief Advocacy Officer. "This work is always done with the members' best interests in mind, so consumers can choose, and do choose not-for-profit, cooperative credit unions as their trusted financial partners."
In addition to the committee and work group process, NWCUA collaborates with a robust and engaged group of hundreds of credit union advocates who work in virtually all career levels. These advocates regularly attend training and participate in calls to action that help advance credit union policies.
Throughout the legislative session, more than 400 advocates attended virtual Credit Union Day at the Capitol events in all three Northwest states and took part in more than 200 meetings with lawmakers.
"The work of each and every advocate is key to protecting credit unions from unnecessary regulatory burdens, and in passing legislation that helps credit unions serve their members," Wagner said.


text:
RACQ
Peaceful Prosperity
Hiroshima has overcome a tragic past to become a must-see destination in Japan.
Hiroshima's legacy of peace may initially seem at odds with the city's tragic past – obliterated during World War II by the atomic bomb's terrifying, destructive power. You needn't worry about arriving to a radioactive wasteland though. Modern Hiroshima is a thriving metropolis, very much alive and well and home to more than a million people. Visitors are quick to agree that this destination is unlike any other and a true highlight of many traveller's time in Japan.
Hiroshima's destruction and enduring legacy is impossible to ignore. When the atomic bomb was dropped in 1945, obliterating the city, very few buildings in the two-kilometre blast zone survived. The former economic and political centre of Hiroshima has been transformed into the sprawling Peace Memorial Park, with one of the few structures left standing being the A-Bomb Dome. This UNESCO World Heritage site serves as a sombre reminder of what happened on that day.
Some of the 220,000 people who died in the initial blast and subsequent radiation exposure are remembered in the Peace Memorial Museum. This emotion-charged museum serves as a reminder that peace should not be taken for granted, and is a must-see during any visit to Hiroshima.
For a few moments of reflection after the museum, visit the Children's Peace Monument, which honours Sadako Sasaki and the thousands of child victims of the atomic bomb. Sadako died of leukaemia caused by radiation from the bomb when she was twelve years old. Inspired by a Japanese legend, she hoped that by folding 1000 paper cranes her wish to live would be granted. Today, people from all over the world send thousands of colourful paper cranes to this vibrant monument, adding their message of peace and solidarity.
Landscaped Japanese gardens and a deep moat surround another casualty of the bomb – Hiroshima Castle. Partially rebuilt using traditional construction methods and materials, Hiroshima Castle has a small museum exhibiting the history of Japanese castles, but the view of the city from the top floor is the real drawcard.
You should not leave Hiroshima before trying one of the city's most-famous specialties: Okonomiyaki. "Okonomi" translates roughly to "as you like" which gives some indication of the huge variety of ingredients that make up the popular meal. Similar to a savoury pancake, Hiroshima-style Okonomiyaki can be made with cabbage, octopus, shrimp, pork, vegetables and yakisoba noodles.
Towards the end of the Hondori Street pedestrian mall is Okonomiyaki Village (Okonomimura). Restaurants in the area are tiny, seating just a handful of people at once. Chefs cook their own special version of the dish in front of hungry patrons, before sliding the delicious meals over, piping hot and ready to eat straight from the grill.
After exploring the surrounding laneways, be sure to visit to one of the many specialty craft beer bars. Kure Brewery ("kaigun-san no bakushu" which translates to "The Navy's Brewery") has won awards for its craft beers since 1995. The attached restaurant serves ice-cold glasses of beer brewed on-site, as well as delicious, Japanese, bite-sized izakaya food – Japan's answer to pub food.
Love your meal? Let the waiters know by saying "oishii" which means "delicious".
Prefer Japan's traditional sake (rice wine) to beer? Then you're in luck. Thirty minutes' train ride from Hiroshima is Saijo Sake Town. As one of the most important sake-producing areas in Japan (Kyoto and Kobe being the others), this is a must-see for lovers of the Japanese alcohol. Eight major sake breweries, offering tastings and cellar door sales, are within a short walk of each other.
Escaping from the crowds of Hiroshima's city life is easy, with the enchanting Miyajima Island only a brisk ferry ride away. As your boat comes into dock, be sure to see the famous red torii gate, which appears to be floating in the sea. This beautiful structure is believed to be the boundary between the spirit world and human world and is painted a bright vermilion red to ward off evil spirits.
Miyajima is a small island, best seen by renting a bike. After exploring the coastal paths, pedal uphill towards the ropeway gondola. The picturesque cable car journey to the peak of Mt Misen and Shishiiwa Observatory will reward you with one of the best views of Japan on a clear day. On the way back to the ferry, be sure to say hello to the herds of wild deer that happily let you pat them. Just watch out that they don't nibble anything precious from your bag.
Whether it's seeing a baseball game (one of the most popular sports in Japan) or sampling world-famous sake and food, Hiroshima is bursting with creativity, unexpected surprises and welcoming locals. You just might fall in love with the city of peace.
Japan travel holidays
With a 112-year history, RACQ has plenty of stories to tell. This is just one of them.
More Posts Like This One
Norfolk Island must-dos
Lakeside heaven in all seasons
On the road to Mandalay
Subscribe to our enewsletters
Queensland's best pie stops
How to reverse a caravan
Find your nearest dump point
A love for reading
Hobart to Launceston - the hard way
SUV saving RACQ organisation fuel motorbike LifeFlight Home wellbeing Ekka family-friendly events Pet holidays Car Queensland fitness Beaches money road trip 4WD


text:
The failure of Operant Conditioning
by lkaim | Feb 25, 2010 | Dangerous Dogs, Dog Trainers, Dog Training, Dog Training Tools, Dogs | 7 comments
Yesterday marks the death of the 5th Killer Whale trainer and the 6th death of a human by a captive killer whale.
Comparatively, as there are only roughly 42 Orcas in captivity; the risk of injury or death to a human is far greater with far more risk of fatality than the number of dog related injuries or fatalities verses the number of dogs in human homes.
Both numbers represent tragedy for the victims, however, one number is in direct correlation to the flawed model of 'training' that occurs with agonizing regularity in the dog training community.
After being captured off the coast of Iceland in 1983, Tilikum was "housed in small tanks from the beginning" according to a Discovery News report.
There was an opportunity to repatriate Tilikum back in 1992 after his first kill of handler Keltie Byrne in Canada. Instead he was sold to SeaWorld as a breeding animal where he was implicated in the death of a homeless man in 1999.
It is speculated that "his captivity, frequent breeding and the fact that Tilikum was caught in the wild could all have contributed to Wednesday's fatality".
More rending of garments and angst over this is better left to a less fuzzled mind than my own right now, but be assured that we will be reviewing this subject at a later time.
Viatecio	on February 26, 2010 at 7:17 pm
Psst…date fix! Tillikum is one old geezer if he was really caught that long ago 😛
I've never had an encounter with anyone who insisted that whale training or [any other animal] training transferred perfectly to dogs, but I still maintain that what is on the end of my leash is a DOG.
stone soup diaries	on February 26, 2010 at 7:39 pm
I questioned the date he was acquired also until I uncovered several items that confirmed his capture in 1983.
I was curious about his age and further brief research revealed that it is not uncommon for Orcas to live well into their 50's and 60's. There is speculation that in the wild they actually live longer, with some documentation indicating as old as 90, give or take.
What I found interesting, if not a bit unsettling is that they live shorter lives in captivity than in the wild.
I suspect being ripped from a home as vast as the ocean and being stuck in the equivalent of a coffee cup would make me lose a little heart.
As for dog trainers; there are many, some of whom enjoy a pretty high degree of name recognition, who use marine mammal training as the epitome of the argument they use to bludgeon people with in their "humane, no pain training" argument.
Of course you can't correct a whale. But you can rip him from the ocean, his pod of contemporaries, isolate him from companionship from amongst his own kind and make his meals contingent on his performance of cutesy tricks.
It's a little like calling the kettle black.
I meant the 1883 reference.
Oops! Damn spell check!
Done, Thanks!
Viatecio	on February 26, 2010 at 11:04 pm
I live to annoy people by nitpicking about little things like that. 🙂
As for putting a whale in a tank, if the drooping dorsal fin is not a sign that something is wrong, I don't know how much plainer it has to be. The boys completely lose their grand sail, while even the girls get a little floppy.
I notice that is almost never seen in the wild.
Co-inky-dink?
Annoy away!
You are right, it is usually the result of injury in the wild, but is pretty commonly seen in captivity.
Nothing about this is natural, nothing about this is "humane".
Free all the Willies.


Most properties can be found online. The Internet is a great resource for buyers and of course you can drive through neighborhoods you like or look through the paper and home magazines. BUT there are many properties that are NOT advertised and/or DO NOT have signs. Many foreclosures in our market do not have signs. I have no idea why, but they don't! And believe it or not, some sellers request for signs not to be placed in their yard and some neighborhoods do not allow signs. Also, not all agents advertise the best properties in newspapers or magazines because they sell so quickly or they choose not to use those methods.
The MLS updates at midnight which means it can lag real time updates in hot neighborhoods and even worse, hot markets. A professional real estate agent is networked with other realtors to find out what is coming on the market before it gets there. Additionally, an agent dedicated to working on your will check the HOT SHEET for you during the day to see if there is anything coming on the market to get you the edge on property information so you can hear about it before it goes out at midnight on MLS. That's why it is important to know that your agent is a full time agent that can work on your behalf. You want an experienced agent that is networked and keeping tabs on what's coming up and going on in the areas you are interested in so you don't miss any HOT properties.
Contact Michele Reneau, Realtor®, North Charleston, SC Relocation Expert, CRS, GRI, ABR. Licensed Realtor® in South Carolina at 843-572-0518 to list your property for sale or to purchase real estate in Charleston, Goose Creek, Summerville, North Charleston, Hanahan, Mount Pleasant and the surrounding areas in Charleston County, Berkeley County or Dorchester County, South Carolina. The Charleston Relocation Expert specializes in military relocation, first time homebuyers and creating marketing exposure to sell your home in the Charleston SC Real Estate market. I can also be contacted by email at mreneau@carolinaone.com. To view all Charleston Metro area Homes for Sale Click Here and then click on Search for Homes. With over 25 years of Lowcountry Living, I know the Charleston Metro area.
Michele, good advice! And remember that many agents are fabulous photographers, and with the help of their photo editing programs, they can make any house look good!
In our area, I find that some buyers want to find their own home so they can negotiate the commission down without a representative. Although the commission on a listing is between the listing broker and the seller, the buyer knows that they can in most instances favorably get a concession. When I come across this in my business I appeal to the buyers that they are limiting their viewing and exposure opportunities. Are they buying just for investment to get a better deal or are they looking to find a place to call home. Also working with a buyer rep may or assure that they are negotiating properly on price and not just thinking they are getting a deal. I have been able to convert the deal hunters to my clients. Looking for a property on their own usually is limiting and yes, a myth. Good series you are authoring!
Hey great post. Thanks for the advice.
Michelle very good blog. While I dont think most of us are in hot markets. I will say bank owned homes are not really advertised and those do move off the shelves quickly.
Great series and post! While finding a home on their own is possible it is like you said.....With a buyer's agent working for them they have a much better chance of being notified of the home much quicker AND they have the advantage of someone on THEIR SIDE!
Michelle, I was not aware of the actings of the MLS. I know buyers shouldn't "do it all on their own," but this expands my reasons why. Good info.
Connie-The problem with this is the listing agents allowing their commission to be negotiated. We work just as hard if you procure the buyer on your listing or another listing and should be compensated accordingly. My sellers understand this. If the listing is a hot buy, some other buyer using an agent will be the first to know about it anyway and make an offer. I've heard of sellers that don't want to accept a lower price because it hurts their ego even if their net is the same (with or without an agent. Strange I know, but it has happened.
Brian-It's our job to educate buyers. Help spread the word. Thanks for stopping by.
Heather-I'm not in a hot market either, but hot properties still come on occasionally. I had a listing sell in less then 4 days last 2 weeks ago. I've been getting calls since for backup showings.
Leesa-As a buyer, I would think they would want all the options possible too.
Larry-There's so much to it that buyers do not realize.
Very well put. When I get a call from an ad that is in one of the local real estate magazines, I explain to the caller that those ads have to be placed about 3 weeks ahead of publishing time. If the house was a great buy in a HOT area, it's gone by the time the magazine is printed.
A buyer may get lucky finding their perfect home but it is what happens after that event that makes a good Realtor a valuable component to a transaction. You can't beat having a great buyers agent in your corner.
That is a great point you make! Having the assistance of an agent in your home search will not only help you find the best home for you for the best price but she will also be able to negotiate for you to either get the killer price you are looking for or try and get some closing costs paid for.
I certainly think that working with an experienced and proven agent can make all the difference between a good deal and a great deal!
Michele~ This is a nice post...and a great series! It still amazes me that Buyers think they have to pay me for my services...and some choose not to have an agent because of this mis-information.
As far as finding things on their own...I agree. Working with a full-time agent who is networking all the time can be a true benefit to a buyer. As you mentioned, we often know of properties that are soon-to-be listed but aren't yet in the MLS.
Keep educating girl...it can only help the consumer!
I love it when a Client does this and then asks to see that property....and I have to break it to them that it is under agreement already........just allow me to send you the properties or subscribe to my site and get the most up to date information.
Pam-That happens often with my magazine calls on HOT properties.
Bill-Very true! There are so many details buyers cannot possibly know each one of them. That's why we are there...to handle the details.
Nicole-There are so many things to negotiate. Once I negotiated the seller to buy the buyer's lease out. They said YES!
LaShawn-Misinformation is poison in this process. There's a lot of inaccurate info out there.
Dan-Some buyers take a lot more educating before they get it.
Michele, I enjoyed read your blog. You provided some valuable reasons why it's necessary for potential homebuyers to obtain representation from a real estate agent when they're shopping for a new home. Besides, buying a home is usually the most important investment we'll make in our lifetime and it doesn't make sense not to obtain representation froman experienced real estate salesperson.


text:
Graphic by Adalyn Buchard
The UVU Theatre Department put on a wonderful musical rendition of the children's story by Roald Dahl, "James and the Giant Peach." It follows an orphaned boy, James, who goes to live with his two awful aunts and subsequently flees their tyrannical reign on a giant, magical peach with several human-sized talking bugs. Throughout the hardships they face on their shared adventure, they come to create their own unique family together.
Outstanding performances were given by everyone involved. They brought the personalities of their characters to life in unique and creative ways, displaying that despite how different they are from one another, they can still manage to come together and build a home. One instance in particular in which this could be seen was when James and his companions helped the character, Earthworm, overcome his fear. It was a hilarious and triumphant moment that had everyone in the crowd near tears with laughter. The two aunts also stood out as the antagonists in the comedically detestable way in which they treated James.
Without a doubt, the most remarkable part of the show was the music which was a fun and energetic experience that blended the dark and terrifying aspects of childhood with optimism and hope. From the song "Right Before Your Eyes," which sets up the deadly stakes and irreverent mood to "Middle of the Moment," which is the thematic backbone of the story and was given a powerful performance by UVU's own Cade Hixson, who played James.
The set and costume design created a mesmerizing and immersive atmosphere. It had a cutout of the titular peach artfully inlaid with flowers which acted as the center of the production, but there were further elements with clouds above and the city skyline in the background which gave it a sense of depth and variety. The lighting was deep and vibrant which heightened the mood whether it be positive or negative, giving it a dreamlike quality. In a clever display, they used lights that surrounded the peach to simulate when the magic potion caused it to grow. And the colorful costumes invoked a romantic feeling of the '60s — the time in which the original book was written and took place.
This was an amazing show put on by a talented crew. Despite being a children's story, its themes resonate throughout all ages. It speaks to the loneliness and desperation to find one's place in the world that all human beings seek. This strange and quirky story is a beloved classic for a reason. The UVU Theatre Department masterfully portrayed this message in a way that was entertaining and memorable.
Previous Criminal Justice Week addresses local issues
Next UVU Swifties Unite
The heart behind Bachatafest
3 months ago Barbara Ferreira


text:
NYC Parks Issues Request for Proposals for Café at Cadman Plaza
Cadman Plaza. Photo: dumbonyc, CC BY-SA 2.0, via Wikimedia Commons
NYC Parks has released a Request for Proposals ("RFP") for the operation, maintenance, and development of a new café at Cadman Plaza Park in Downtown Brooklyn. Cadman Plaza serves as a focal point for the entire Brooklyn Heights community and is an ideal location for a new café. The park is frequented by families, joggers, and dog-walkers, as well as commuters and local employees. The RFP offers a unique opportunity for a prospective proposer to transform an existing building into a brand-new café.
"Cadman Plaza Park is a beautiful open space with so much potential for a café, which would serve all of Downtown Brooklyn," said NYC Parks Commissioner Sue Donoghue. "We encourage interested operators to consider Cadman Plaza Park as a great new location to provide food services to a hungry community!"
Parks is seeking a concessionaire for a fifteen-year term. The proposed site of this café, along Cadman Plaza West and Tillary Street, was built in the 1950s and used as a Parks maintenance building. It is a one-story building approximately 450 square feet in size.
Cadman Plaza Park's significant foot traffic is due in part to the adjacent US District Court for the Eastern District of New York and other nearby government offices such as the NYC Office of Emergency Management, Brooklyn Borough Hall, and Kings County Supreme Court. Cadman Plaza Park is also highly accessible by public transportation: the A, C, F, R, 2, 3, 4, and 5 subway lines and the B25, B26, B38, B41, B52, and B103 bus lines all have stops close to the park.
All proposals for this RFP must be submitted no later than Wednesday, February 15, 2023, at 3:00 p.m. Parks will hold a recommended remote proposer meeting on Monday, January 9, 2023, at 12:00 p.m. All interested parties considering responding to this RFP are encouraged to attend this recommended remote proposer meeting. (Log-in details can be found in the RFP). Subject to availability and by appointment only, Parks may set up a meeting at the proposed concession site, which is located at Cadman Plaza West and Tillary Street.
The RFP is available for download through Wednesday, February 15, 2023, on Parks' website. To download the RFP, visit www.nyc.gov/parks/businessopportunities and, after logging in, click on the "download" link that appears adjacent to the RFP's description.
For more information, prospective proposers may contact Kevin Badon, Project Manager, at (212) 360-3483 or at kevin.badon@parks.nyc.gov.
In: Food & Drinks
Previous Post: Keys Soulcare Reveals its Latest Skin-Nourishing and Soul-Nurturing Skincare Innovation with Clinically Proven Multi-Benefit Peptide Serum
Next Post: Ballet Hispánico School of Dance Announces Winter Adult Class Series Beginning January 17, 2023 REGISTRATION NOW OPEN


With the implementation of ICD-10-CM looming in just over 6 months, with no delay in sight, your agency should continue preparing. Educate your physicians and clinicians on the need for updated, more precise documentation, educate the coders and billers in your agency on ICD-10 code set.
Although there are many more codes in ICD-10 than currently used in ICD-9-CM, it's easy to see where these changes have occurred and the reason for those changes is for greater specificity and detail.
34,250 (50%) of all ICD-10-CM codes are related to the musculoskeletal system.
17,045 (25%) of all ICD-10-CM codes are related to fractures.
10,582 (62%) of fracture codes distinguish right from left.
25,000 (36%) of all ICD-10-CM codes distinguish right from left.
How are ICD-9-CM and ICD-10-CM different?
What are the benefits to ICD-10-CM?
What policies and procedures will need revision?
– How will you address decreased productivity during the transition?
What templates will need revision?
QIRT is here to assist you with your ICD-10-Cm needs.


text:
What is the most appropriate radiologic scoring method for ankylosing spondylitis? A comparison of the available methods based on the Outcome Measures in Rheumatology Clinical Trials filter
Arthritis Rheum. 2004 Aug;50(8):2622-32. doi: 10.1002/art.20446.
Astrid J B Wanders 1 , Robert B M Landewé, Anneke Spoorenberg, Maxime Dougados, Sjef van der Linden, Herman Mielants, Hille van der Tempel, Désirée M F M van der Heijde
1 University Hospital Maastricht, Maastricht, The Netherlands. astridwanders@hotmail.com
DOI: 10.1002/art.20446
Objective: To select the most appropriate radiologic scoring method for the evaluation of radiographic progression in ankylosing spondylitis (AS) in clinical trials.
Methods: The validity of the currently available methods, the Bath Ankylosing Spondylitis Radiology Index (BASRI), the Stoke Ankylosing Spondylitis Spine Score (SASSS), and the modified SASSS (M-SASSS), was tested according to the aspects of the Outcome Measures in Rheumatology Clinical Trials filter: truth, discrimination (reliability and sensitivity to change), and feasibility, using radiographs of 133 patients at 4 different time points (baseline, 1 year, 2 years, and 4 years). One observer scored these sets in chronological order. To assess interobserver reliability, a second observer scored radiographs of 20 patients at the 4 different time points.
Results: After 4 years, 9% and 8% of patients showed changes >0 in the sacroiliac (SI) joints and hips, respectively. Independent of the method chosen, approximately 40% of patients showed changes in both the lumbar and cervical spine. Therefore, it was concluded that, for the assessment of progression, SI joints and hips are of minor importance. The intraclass correlation coefficient (ICC) varied from 0.87 to 0.98 and ICCs for intraobserver scores varied from 0.96 to 0.99. Concerning progression scores, only the ICC for the M-SASSS measured after 2 years remained acceptable (0.82). The intraobserver scores for progression after 2 years of followup were an ICC of 0.93 for the BASRI, an ICC of 0.79 for the SASSS, and an ICC of 0.95 for the M-SASSS. Concerning sensitivity to change, it was found that the M-SASSS classified the highest percentage of patients with a change >0.
Conclusion: The M-SASSS is the most appropriate method by which to score the radiographic progression in AS patients in clinical trials.
Observer Variation
Spondylitis, Ankylosing / diagnostic imaging*
Technology, Radiologic / methods*