text:
Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study
Daria N. Podlekareva, Anne Marie W Efsen, Anna Schultze, Frank A. Post, Alena M. Skrahina, Alexander Panteleev, Hansjakob Furrer, Robert F. Miller, Marcelo H. Losso, Javier Toibaro, Jose M. Miro, Anna Vassilenko, Enrico Girardi, Mathias Bruyand, Niels Obel, Jens D. Lundgren, Amanda Mocroft, Ole Kirk
Background: Management of tuberculosis in patients with HIV in eastern Europe is complicated by the high prevalence of multidrug-resistant tuberculosis, low rates of drug susceptibility testing, and poor access to antiretroviral therapy (ART). We report 1 year mortality estimates from a multiregional (eastern Europe, western Europe, and Latin America) prospective cohort study: the TB:HIV study. Methods: Consecutive HIV-positive patients aged 16 years or older with a diagnosis of tuberculosis between Jan 1, 2011, and Dec 31, 2013, were enrolled from 62 HIV and tuberculosis clinics in 19 countries in eastern Europe, western Europe, and Latin America. The primary endpoint was death within 12 months after starting tuberculosis treatment; all deaths were classified according to whether or not they were tuberculosis related. Follow-up was either until death, the final visit, or 12 months after baseline, whichever occurred first. Risk factors for all-cause and tuberculosis-related deaths were assessed using Kaplan-Meier estimates and Cox models. Findings: Of 1406 patients (834 in eastern Europe, 317 in western Europe, and 255 in Latin America), 264 (19%) died within 12 months. 188 (71%) of these deaths were tuberculosis related. The probability of all-cause death was 29% (95% CI 26-32) in eastern Europe, 4% (3-7) in western Europe, and 11% (8-16) in Latin America (p
Dive into the research topics of 'Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study'. Together they form a unique fingerprint.
Latin America Medicine & Life Sciences 100%
Eastern Europe Medicine & Life Sciences 79%
Cohort Studies Medicine & Life Sciences 57%
Multidrug-Resistant Tuberculosis Medicine & Life Sciences 14%
Kaplan-Meier Estimate Medicine & Life Sciences 12%
Podlekareva, D. N., Efsen, A. M. W., Schultze, A., Post, F. A., Skrahina, A. M., Panteleev, A., Furrer, H., Miller, R. F., Losso, M. H., Toibaro, J., Miro, J. M., Vassilenko, A., Girardi, E., Bruyand, M., Obel, N., Lundgren, J. D., Mocroft, A., & Kirk, O. (2016). Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study. The Lancet HIV, 3(3), e120-e131. https://doi.org/10.1016/S2352-3018(15)00252-0
Tuberculosis-related mortality in people living with HIV in Europe and Latin America : An international cohort study. / Podlekareva, Daria N.; Efsen, Anne Marie W; Schultze, Anna; Post, Frank A.; Skrahina, Alena M.; Panteleev, Alexander; Furrer, Hansjakob; Miller, Robert F.; Losso, Marcelo H.; Toibaro, Javier; Miro, Jose M.; Vassilenko, Anna; Girardi, Enrico; Bruyand, Mathias; Obel, Niels; Lundgren, Jens D.; Mocroft, Amanda; Kirk, Ole.
In: The Lancet HIV, Vol. 3, No. 3, 01.03.2016, p. e120-e131.
Podlekareva, DN, Efsen, AMW, Schultze, A, Post, FA, Skrahina, AM, Panteleev, A, Furrer, H, Miller, RF, Losso, MH, Toibaro, J, Miro, JM, Vassilenko, A, Girardi, E, Bruyand, M, Obel, N, Lundgren, JD, Mocroft, A & Kirk, O 2016, 'Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study', The Lancet HIV, vol. 3, no. 3, pp. e120-e131. https://doi.org/10.1016/S2352-3018(15)00252-0
Podlekareva DN, Efsen AMW, Schultze A, Post FA, Skrahina AM, Panteleev A et al. Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study. The Lancet HIV. 2016 Mar 1;3(3):e120-e131. https://doi.org/10.1016/S2352-3018(15)00252-0
Podlekareva, Daria N. ; Efsen, Anne Marie W ; Schultze, Anna ; Post, Frank A. ; Skrahina, Alena M. ; Panteleev, Alexander ; Furrer, Hansjakob ; Miller, Robert F. ; Losso, Marcelo H. ; Toibaro, Javier ; Miro, Jose M. ; Vassilenko, Anna ; Girardi, Enrico ; Bruyand, Mathias ; Obel, Niels ; Lundgren, Jens D. ; Mocroft, Amanda ; Kirk, Ole. / Tuberculosis-related mortality in people living with HIV in Europe and Latin America : An international cohort study. In: The Lancet HIV. 2016 ; Vol. 3, No. 3. pp. e120-e131.
@article{79daf5504447476f94e99708c9c9f8aa,
title = "Tuberculosis-related mortality in people living with HIV in Europe and Latin America: An international cohort study",
abstract = "Background: Management of tuberculosis in patients with HIV in eastern Europe is complicated by the high prevalence of multidrug-resistant tuberculosis, low rates of drug susceptibility testing, and poor access to antiretroviral therapy (ART). We report 1 year mortality estimates from a multiregional (eastern Europe, western Europe, and Latin America) prospective cohort study: the TB:HIV study. Methods: Consecutive HIV-positive patients aged 16 years or older with a diagnosis of tuberculosis between Jan 1, 2011, and Dec 31, 2013, were enrolled from 62 HIV and tuberculosis clinics in 19 countries in eastern Europe, western Europe, and Latin America. The primary endpoint was death within 12 months after starting tuberculosis treatment; all deaths were classified according to whether or not they were tuberculosis related. Follow-up was either until death, the final visit, or 12 months after baseline, whichever occurred first. Risk factors for all-cause and tuberculosis-related deaths were assessed using Kaplan-Meier estimates and Cox models. Findings: Of 1406 patients (834 in eastern Europe, 317 in western Europe, and 255 in Latin America), 264 (19%) died within 12 months. 188 (71%) of these deaths were tuberculosis related. The probability of all-cause death was 29% (95% CI 26-32) in eastern Europe, 4% (3-7) in western Europe, and 11% (8-16) in Latin America (p",
author = "Podlekareva, {Daria N.} and Efsen, {Anne Marie W} and Anna Schultze and Post, {Frank A.} and Skrahina, {Alena M.} and Alexander Panteleev and Hansjakob Furrer and Miller, {Robert F.} and Losso, {Marcelo H.} and Javier Toibaro and Miro, {Jose M.} and Anna Vassilenko and Enrico Girardi and Mathias Bruyand and Niels Obel and Lundgren, {Jens D.} and Amanda Mocroft and Ole Kirk",
journal = "The Lancet HIV",
T1 - Tuberculosis-related mortality in people living with HIV in Europe and Latin America
T2 - An international cohort study
AU - Podlekareva, Daria N.
AU - Efsen, Anne Marie W
AU - Schultze, Anna
AU - Post, Frank A.
AU - Skrahina, Alena M.
AU - Panteleev, Alexander
AU - Furrer, Hansjakob
AU - Miller, Robert F.
AU - Losso, Marcelo H.
AU - Toibaro, Javier
AU - Miro, Jose M.
AU - Vassilenko, Anna
AU - Girardi, Enrico
AU - Bruyand, Mathias
AU - Obel, Niels
AU - Lundgren, Jens D.
AU - Mocroft, Amanda
AU - Kirk, Ole
N2 - Background: Management of tuberculosis in patients with HIV in eastern Europe is complicated by the high prevalence of multidrug-resistant tuberculosis, low rates of drug susceptibility testing, and poor access to antiretroviral therapy (ART). We report 1 year mortality estimates from a multiregional (eastern Europe, western Europe, and Latin America) prospective cohort study: the TB:HIV study. Methods: Consecutive HIV-positive patients aged 16 years or older with a diagnosis of tuberculosis between Jan 1, 2011, and Dec 31, 2013, were enrolled from 62 HIV and tuberculosis clinics in 19 countries in eastern Europe, western Europe, and Latin America. The primary endpoint was death within 12 months after starting tuberculosis treatment; all deaths were classified according to whether or not they were tuberculosis related. Follow-up was either until death, the final visit, or 12 months after baseline, whichever occurred first. Risk factors for all-cause and tuberculosis-related deaths were assessed using Kaplan-Meier estimates and Cox models. Findings: Of 1406 patients (834 in eastern Europe, 317 in western Europe, and 255 in Latin America), 264 (19%) died within 12 months. 188 (71%) of these deaths were tuberculosis related. The probability of all-cause death was 29% (95% CI 26-32) in eastern Europe, 4% (3-7) in western Europe, and 11% (8-16) in Latin America (p
AB - Background: Management of tuberculosis in patients with HIV in eastern Europe is complicated by the high prevalence of multidrug-resistant tuberculosis, low rates of drug susceptibility testing, and poor access to antiretroviral therapy (ART). We report 1 year mortality estimates from a multiregional (eastern Europe, western Europe, and Latin America) prospective cohort study: the TB:HIV study. Methods: Consecutive HIV-positive patients aged 16 years or older with a diagnosis of tuberculosis between Jan 1, 2011, and Dec 31, 2013, were enrolled from 62 HIV and tuberculosis clinics in 19 countries in eastern Europe, western Europe, and Latin America. The primary endpoint was death within 12 months after starting tuberculosis treatment; all deaths were classified according to whether or not they were tuberculosis related. Follow-up was either until death, the final visit, or 12 months after baseline, whichever occurred first. Risk factors for all-cause and tuberculosis-related deaths were assessed using Kaplan-Meier estimates and Cox models. Findings: Of 1406 patients (834 in eastern Europe, 317 in western Europe, and 255 in Latin America), 264 (19%) died within 12 months. 188 (71%) of these deaths were tuberculosis related. The probability of all-cause death was 29% (95% CI 26-32) in eastern Europe, 4% (3-7) in western Europe, and 11% (8-16) in Latin America (p
JO - The Lancet HIV
JF - The Lancet HIV


text:
Jonathan Pollard released after 30 years in prison....
Thread: Jonathan Pollard released after 30 years in prison....
okosh
Tassi Australia
Was part of a plea agreement....Yet he still got 30 years....
Jonathan Pollard released after 30 years in prison
After spending 30 years in a U.S. federal prison, American-Israeli spy Jonathan Pollard was freed on parole Friday, one day ahead of schedule to allow him to observe Shabbat.
"The people of Israel welcome the release of Jonathan Pollard," Israeli Prime Minister Benjamin Netanyahu said in a statement. "As someone who has raised the issue for many years with American presidents, I have dreamt of this day. After three long and hard decades, Jonathan is finally reunited with his family. I wish Jonathan a quiet and joyous Shabbat."
Pollard was the only person in U.S. history sentenced to life in prison over spying for an American ally (Israel). Advocates in the Jewish community as well as experts in the U.S. intelligence community had long called for his release both due to the severity of his sentence and on the humanitarian grounds of his failing health.
The National Council of Young Israel (NCYI) said Friday that it is "extraordinarily grateful that Jonathan Pollard is now out of prison and reunited with his family."
"We were grateful that in his statement several months ago when he was notified he was being released, Jonathan Pollard specifically thanked the National Council of Young Israel, Rabbi Pesach Lerner, and NCYI President Farley Weiss, for our work over many years to get to this day. The National Council of Young Israel wishes Jonathan Pollard much success, happiness, and good health as he re-enters society after a long and difficult 30 years in prison," NCYI said. Lerner, Young Israel's former executive vice president, frequently visited Pollard in prison over the course of his decades of incarceration.
"Jonathan, to the detriment of his health, has served the longest sentence of any individual convicted of a similar offense in the United States. After witnessing firsthand the effects of his long incarceration during a visit to the Butner Federal Correction Complex in North Carolina two years ago, I am truly grateful for his release," said Rabbi Julie Schonfeld, executive vice president of the Conservative movement's Rabbinical Assembly.
Israel Hayom reported Thursday that Netanyahu has asked President Barack Obama to let Pollard move to Israel after his release. Netanyahu made the personal request during his recent meeting with Obama at the White House last week in Washington, DC.
Yet under his parole terms, Pollard, 61, will not be allowed to leave the U.S. for the next five years. Seeking to have that restriction lifted, Netanyahu reportedly promised Obama that Israel would make "guarantees" regarding Pollard's post-release behavior and that a special Israeli team would be established to enforce any terms set by the Americans.
As things stand, Pollard will need to report regularly to a parole officer. It has been reported that Pollard will live in New York City and that he has secured a job there. It remains unclear whether Pollard will receive any financial aid or other form of assistance from the Israeli government following his release.
Israel's President Reuven Rivlin commented: "Blessed is He who frees the imprisoned. We all offer blessings at the release of Jonathan Pollard after many long and difficult years of imprisonment. Throughout the years, we have felt Jonathan's pain, and felt responsible and obliged to bring about his release.
"We congratulate Jonathan and his family today on their reunification, and pray they will have many years of happiness, health, and harmony."
Jonathan Pollard and his wife Esther in the first photograph following his release from prison.....
ʎɐqǝ uo pɹɐoqʎǝʞ ɐ ʎnq ı ǝɯıʇ ʇsɐן ǝɥʇ sı sıɥʇ

redpajama_set_name: RedPajamaCommonCrawl


While enjoying a sunny day on the beach at a sandy bay in Gairloch, on holiday in the Highlands of Scotland, we stumbled upon some cockles completely by accident.
Cerastoderma edule - the Common Cockle is a small bivalve mollusc that lives shallowly buried in sand, mud or gravel throughout most of Northern Europe - certainly all around the UK.
They feed by extending tube-like siphons to the surface of the sand and filtering suspended particles of food (such as plankton) from the water in which they live - for this reason, they are prone to accumulating toxins and pollutants - so they should only be gathered from clean, unpolluted waters, away from outfalls and densely populated areas.
The shell is radially ridged - and I believe the darker circular bands on the shells may be annual growth marks - perhaps representing a period of slow shell deposition in winter. They have a muscular foot which they can extend from the shell to move themselves around in the substrate, or to dig themselves back in if they are uncovered by waves.
The location was a beautiful, clean, unspoilt sandy beach at Gairloch, Wester Ross.
This is what it looks like, on a busy day.
I wasn't looking for cockles at all - I was picking some mussels off the rocks (the larger ones I'd eaten a day or two before had mussel pearls in them - I wanted to see if the smaller ones were better for the table).
My son, David, was rummaging about in the sand - as boys do - and suddenly exclaimed "Hey Dad! Look at this!"
In his hand, he was holding a quite large and obviously live and healthy cockle.
He dug again and straight away, came up with a couple more. I stopped what I was doing and joined him - just combing through the sand at the water's edge as the tide came in.
In the space of ten minutes, we had gathered several kilos of the shellfish - including some quite large ones.
Staying in a holiday cottage right on the shore of a sea loch was perfect here - when we returned home, I filled a bucket with clear seawater and put the cockles in it to rest - they opened up and started siphoning - expelling some grit and sand in the process.
I left them in there overnight, then changed the water in the morning and left them in the shade until lunchtime.
I drained the cockles and rinsed them under the tap.
These were gathered from a really clean beach, so unlike the cockles back at home, should not require unreasonably extended cooking (a good thing too, as it renders them worthless for the table).
I cooked an onion with some paprika and herbs in a big stockpot, then turned up the heat and added the cockles and a splash of dry cider.
In a few minutes, they were done - the shells popped open and some of the cockle meats inside came loose and fell out.
They're certainly not going to win any beauty contests, but what they lack in appeal to the eye, they more than make up for in flavour and tenderness - I ate them with a few little splashes of vinegar and some pepper - they were fat, succulent and tender - sweet and delicious - with a flavour to rival the mussels I ate along with them.
This article is one of a series on wild foodstuffs foraged on holiday in the Wester Ross area of the Scottish Highlands in 2010 - click the 'Highland' tag in the side column to see others in the series.


October 25, 2018 - Santen UK Limited (St Albans, UK) today launches Verkazia® eye drops emulsion* for the treatment of severe vernal keratoconjunctivitis (VKC) in children from 4 years of age and adolescents.1 Verkazia provides a much-needed effective ongoing treatment for this distressing and chronically debilitating condition, which is recognised as a rare disease and to date has had no long-term treatment option.
VKC is a chronic allergic eye condition, most common in children and adolescents, causing severe inflammation of the surface of the eye. The symptoms of VKC – intense itching, painful eyes and light sensitivity2,3 – can place a huge burden on those affected. The symptoms can prevent children from participating in everyday activities which can impact their development and quality of life.4 Without adequate treatment, severe VKC, which represents around one-third of cases5, can cause corneal ulcers and even vision loss.
The recommended dose of Verkazia will be one drop to be administered four times a day to each affected eye, dosing morning, lunch time, afternoon and before bedtime, 15 minutes after any other eye drops.1 The drops will be provided in boxes of 120 unit dose vials.
Santen, Data on File REF-1606.
As a specialised company dedicated to the ophthalmic field, Santen carries out research, development, marketing, and sales of pharmaceuticals, over-the-counter products and devices. Santen has long been the market leader in Japan for prescription ophthalmic pharmaceuticals and is now a leader in the sector in the EMEA (Europe, Middle East and Africa) region. With scientific knowledge and organisational capabilities nurtured over nearly 130 years, Santen provides products and services to contribute to the well-being of patients, their loved ones and consequently to society in more than 60 countries. For more information, please visit Santen websites www.santen.com (Japan headquarters) and www.santen.eu (EMEA).
The European Commission granted approval for Verkazia in July 2018 as an orphan medicinal product for VKC, which has a rare disease status in Europe. The European Medicine Agency's (EMA) orphan designation programme is intended to encourage the development of medicines that may provide benefit to patients suffering from rare, lifethreatening or chronically debilitating conditions.


text:
title: django.utils.text slugify Example Code
category: page
slug: django-utils-text-slugify-examples
sortorder: 500011493
toc: False
sidebartitle: django.utils.text slugify
meta: Python example code for the slugify callable from the django.utils.text module of the Django project.

slugify is a callable within the django.utils.text module of the Django project.

## Example 1 from django-cms
[django-cms](https://github.com/divio/django-cms)
([project website](https://www.django-cms.org/en/)) is a Python-based
content management system (CMS) [library](https://pypi.org/project/django-cms/)
for use with Django web apps that is open sourced under the
[BSD 3-Clause "New"](https://github.com/divio/django-cms/blob/develop/LICENSE)
license.

[**django-cms / cms / forms / wizards.py**](https://github.com/divio/django-cms/blob/develop/cms/forms/wizards.py)

```python
# wizards.py

from __future__ import unicode_literals

from django import forms
from django.core.exceptions import ValidationError
from django.db import transaction
~~from django.utils.text import slugify
from django.utils.translation import (
    ugettext,
    ugettext_lazy as _,
)

from cms.admin.forms import AddPageForm
from cms.plugin_pool import plugin_pool
from cms.utils import get_current_site, permissions
from cms.utils.page import get_available_slug
from cms.utils.page_permissions import (
    user_can_add_page,
    user_can_add_subpage,
)
from cms.utils.conf import get_cms_setting
from cms.utils.urlutils import static_with_version

try:
    from djangocms_text_ckeditor.widgets import TextEditorWidget
    text_widget = TextEditorWidget
except ImportError:
    text_widget = forms.Textarea

class SlugWidget(forms.widgets.TextInput):

## ... source file abbreviated to get to slugify examples ...

        super(CreateCMSPageForm, self).__init__(*args, **kwargs)
        self.fields['title'].help_text = _(u"Provide a title for the new page.")
        self.fields['slug'].required = False
        self.fields['slug'].widget = SlugWidget()
        self.fields['slug'].help_text = _(u"Leave empty for automatic slug, or override as required.")

    @staticmethod
    def get_placeholder(page, slot=None):
        placeholders = page.get_placeholders()

        if slot:
            placeholders = placeholders.filter(slot=slot)

        for ph in placeholders:
            if not ph.is_static and ph.is_editable:
                return ph

        return None

    def clean(self):
        data = self.cleaned_data

        if self._errors:
            return data

~~        slug = data.get('slug') or slugify(data['title'])

        parent_node = data.get('parent_node')

        if parent_node:
            base = parent_node.item.get_path(self._language)
            path = u'%s/%s' % (base, slug) if base else slug
        else:
            base = ''
            path = slug

        data['slug'] = get_available_slug(self._site, path, self._language, suffix=None)
        data['path'] = '%s/%s' % (base, data['slug']) if base else data['slug']

        if not data['slug']:
            raise forms.ValidationError("Please provide a valid slug.")
        return data

    def clean_parent_node(self):
        if self.page and self.sub_page_form:
            parent_page = self.page
        elif self.page and self.page.parent_page:
            parent_page = self.page.parent_page
        else:
            parent_page = None

## ... source file continues with no further slugify examples...

```

## Example 2 from django-jet
[django-jet](https://github.com/geex-arts/django-jet)
([project documentation](https://jet.readthedocs.io/en/latest/),
[PyPI project page](https://pypi.org/project/django-jet/) and
[more information](http://jet.geex-arts.com/))
is a fancy [Django](/django.html) Admin panel replacement.

The django-jet project is open source under the
[GNU Affero General Public License v3.0](https://github.com/geex-arts/django-jet/blob/dev/LICENSE).

[**django-jet / jet / utils.py**](https://github.com/geex-arts/django-jet/blob/dev/jet/./utils.py)

```python
# utils.py
from jet.models import PinnedApplication

try:
    from django.apps.registry import apps
except ImportError:
    try:
        from django.apps import apps # Fix Django 1.7 import issue
    except ImportError:
        pass
from django.core.serializers.json import DjangoJSONEncoder
from django.http import HttpResponse
try:
    from django.core.urlresolvers import reverse, resolve, NoReverseMatch
except ImportError: # Django 1.11
    from django.urls import reverse, resolve, NoReverseMatch

from django.contrib.admin import AdminSite
from django.utils.encoding import smart_text
from django.utils.text import capfirst
from django.contrib import messages
from django.utils.encoding import force_text
from django.utils.functional import Promise
from django.contrib.admin.options import IncorrectLookupParameters
from django.contrib import admin
from django.utils.translation import ugettext_lazy as _
~~from django.utils.text import slugify

try:
    from collections import OrderedDict
except ImportError:
    from ordereddict import OrderedDict  # Python 2.6

class JsonResponse(HttpResponse):

    def __init__(self, data, encoder=DjangoJSONEncoder, safe=True, **kwargs):
        if safe and not isinstance(data, dict):
            raise TypeError('In order to allow non-dict objects to be '
                'serialized set the safe parameter to False')
        kwargs.setdefault('content_type', 'application/json')
        data = json.dumps(data, cls=encoder)
        super(JsonResponse, self).__init__(content=data, **kwargs)

def get_app_list(context, order=True):
    admin_site = get_admin_site(context)
    request = context['request']

    app_dict = {}
    for model, model_admin in admin_site._registry.items():

## ... source file abbreviated to get to slugify examples ...

                    ))

                    if name in models:
                        item = models[name].copy()

            if 'label' in data:
                item['label'] = data['label']

            if 'url' in data:
                item['url'] = get_menu_item_url(data['url'], original_app_list)

            if 'url_blank' in data:
                item['url_blank'] = data['url_blank']

            if 'permissions' in data:
                item['has_perms'] = item.get('has_perms', True) and context['user'].has_perms(data['permissions'])

            return item

        def get_menu_item_app(data):
            app_label = data.get('app_label')

            if not app_label:
                if 'label' not in data:
                    raise Exception('Custom menu items should at least have \'label\' or \'app_label\' key')
~~                app_label = 'custom_%s' % slugify(data['label'], allow_unicode=True)

            if app_label in original_app_list:
                item = original_app_list[app_label].copy()
            else:
                item = {'app_label': app_label, 'has_perms': True}

            if 'label' in data:
                item['label'] = data['label']

            if 'items' in data:
                item['items'] = list(map(lambda x: get_menu_item_app_model(app_label, x), data['items']))

            if 'url' in data:
                item['url'] = get_menu_item_url(data['url'], original_app_list)

            if 'url_blank' in data:
                item['url_blank'] = data['url_blank']

            if 'permissions' in data:
                item['has_perms'] = item.get('has_perms', True) and context['user'].has_perms(data['permissions'])

            item['pinned'] = item['app_label'] in pinned_apps

            return item

## ... source file continues with no further slugify examples...

```

## Example 3 from django-sql-explorer
[django-sql-explorer](https://github.com/groveco/django-sql-explorer)
([PyPI page](https://pypi.org/project/django-sql-explorer/0.2/)),
also referred to as "SQL Explorer",
is a code library for the [Django](/django.html) Admin that allows
approved, authenticated users to view and execute direct database SQL
queries. The tool keeps track of executed queries so users can share them
with each other, as well as export results to downloadable formats.
django-sql-explorer is provided as open source under the
[MIT license](https://github.com/groveco/django-sql-explorer/blob/master/LICENSE).

[**django-sql-explorer / explorer / exporters.py**](https://github.com/groveco/django-sql-explorer/blob/master/explorer/./exporters.py)

```python
# exporters.py
from django.db import DatabaseError
from django.core.serializers.json import DjangoJSONEncoder
import json
import uuid
import string
import sys
from datetime import datetime
PY3 = sys.version_info[0] == 3
if PY3:
    import csv
else:
    import unicodecsv as csv

from django.utils.module_loading import import_string
~~from django.utils.text import slugify
from explorer import app_settings
from six import StringIO, BytesIO

def get_exporter_class(format):
    class_str = dict(getattr(app_settings, 'EXPLORER_DATA_EXPORTERS'))[format]
    return import_string(class_str)

class BaseExporter(object):

    name = ''
    content_type = ''
    file_extension = ''

    def __init__(self, query):
        self.query = query

    def get_output(self, **kwargs):
        value = self.get_file_output(**kwargs).getvalue()
        if PY3:
            return value
        else:
            return str(value)

## ... source file abbreviated to get to slugify examples ...

        row = 0
        col = 0
        header_style = wb.add_format({'bold': True})
        for header in res.header_strings:
            ws.write(row, col, header, header_style)
            col += 1

        row = 1
        col = 0
        for data_row in res.data:
            for data in data_row:
                if isinstance(data, datetime) or isinstance(data, uuid.UUID):
                    data = str(data)
                if isinstance(data, dict) or isinstance(data, list):
                    data = json.dumps(data)
                ws.write(row, col, data)
                col += 1
            row += 1
            col = 0

        wb.close()
        return output

    def _format_title(self):
~~        title = slugify(self.query.title)
        return title[:31]

## ... source file continues with no further slugify examples...

```

## Example 4 from django-taggit
[django-taggit](https://github.com/jazzband/django-taggit/)
([PyPI page](https://pypi.org/project/django-taggit/)) provides a way
to create, store, manage and use tags in a [Django](/django.html) project.
The code for django-taggit is
[open source](https://github.com/jazzband/django-taggit/blob/master/LICENSE)
and maintained by the collaborative developer community group
[Jazzband](https://jazzband.co/).

[**django-taggit / taggit / models.py**](https://github.com/jazzband/django-taggit/blob/master/taggit/./models.py)

```python
# models.py
from django.contrib.contenttypes.fields import GenericForeignKey
from django.contrib.contenttypes.models import ContentType
from django.db import IntegrityError, models, router, transaction
~~from django.utils.text import slugify
from django.utils.translation import gettext, gettext_lazy as _

try:
    from unidecode import unidecode
except ImportError:

    def unidecode(tag):
        return tag

class TagBase(models.Model):
    name = models.CharField(verbose_name=_("name"), unique=True, max_length=100)
    slug = models.SlugField(verbose_name=_("slug"), unique=True, max_length=100)

    def __str__(self):
        return self.name

    def __gt__(self, other):
        return self.name.lower() > other.name.lower()

    def __lt__(self, other):
        return self.name.lower() < other.name.lower()

    class Meta:

## ... source file abbreviated to get to slugify examples ...

            using = kwargs.get("using") or router.db_for_write(
                type(self), instance=self
            )
            kwargs["using"] = using
            try:
                with transaction.atomic(using=using):
                    res = super().save(*args, **kwargs)
                return res
            except IntegrityError:
                pass
            slugs = set(
                type(self)
                ._default_manager.filter(slug__startswith=self.slug)
                .values_list("slug", flat=True)
            )
            i = 1
            while True:
                slug = self.slugify(self.name, i)
                if slug not in slugs:
                    self.slug = slug
                    return super().save(*args, **kwargs)
                i += 1
        else:
            return super().save(*args, **kwargs)

~~    def slugify(self, tag, i=None):
~~        slug = slugify(unidecode(tag))
        if i is not None:
            slug += "_%d" % i
        return slug

class Tag(TagBase):
    class Meta:
        verbose_name = _("tag")
        verbose_name_plural = _("tags")
        app_label = "taggit"

class ItemBase(models.Model):
    def __str__(self):
        return gettext("%(object)s tagged with %(tag)s") % {
            "object": self.content_object,
            "tag": self.tag,
        }

    class Meta:
        abstract = True

    @classmethod
    def tag_model(cls):

## ... source file continues with no further slugify examples...

```

## Example 5 from wagtail
[wagtail](https://github.com/wagtail/wagtail)
([project website](https://wagtail.io/)) is a fantastic
[Django](/django.html)-based CMS with code that is open source
under the
[BSD 3-Clause "New" or "Revised" License](https://github.com/wagtail/wagtail/blob/master/LICENSE).

[**wagtail / wagtail / core / models.py**](https://github.com/wagtail/wagtail/blob/master/wagtail/core/models.py)

```python
# models.py
import json
import logging
from collections import defaultdict
from io import StringIO
from urllib.parse import urlparse

from django.conf import settings
from django.contrib.auth.models import Group, Permission
from django.contrib.contenttypes.models import ContentType
from django.core import checks
from django.core.cache import cache
from django.core.exceptions import ValidationError
from django.core.handlers.base import BaseHandler
from django.core.handlers.wsgi import WSGIRequest
from django.db import models, transaction
from django.db.models import Case, Q, Value, When
from django.db.models.functions import Concat, Lower, Substr
from django.http import Http404
from django.http.request import split_domain_port
from django.template.response import TemplateResponse
from django.urls import NoReverseMatch, reverse
from django.utils import timezone
from django.utils.cache import patch_cache_control
from django.utils.functional import cached_property
~~from django.utils.text import capfirst, slugify
from django.utils.translation import gettext_lazy as _
from modelcluster.models import (
    ClusterableModel, get_all_child_m2m_relations, get_all_child_relations)
from treebeard.mp_tree import MP_Node

from wagtail.core.query import PageQuerySet, TreeQuerySet
from wagtail.core.signals import page_published, page_unpublished, post_page_move, pre_page_move
from wagtail.core.sites import get_site_for_hostname
from wagtail.core.url_routing import RouteResult
from wagtail.core.utils import WAGTAIL_APPEND_SLASH, camelcase_to_underscore, resolve_model_string
from wagtail.search import index

logger = logging.getLogger('wagtail.core')

PAGE_TEMPLATE_VAR = 'page'

class SiteManager(models.Manager):
    def get_queryset(self):
        return super(SiteManager, self).get_queryset().order_by(Lower("hostname"))

    def get_by_natural_key(self, hostname, port):
        return self.get(hostname=hostname, port=port)

## ... source file abbreviated to get to slugify examples ...

    def _slug_is_available(slug, parent_page, page=None):
        if parent_page is None:
            return True

        siblings = parent_page.get_children()
        if page:
            siblings = siblings.not_page(page)

        return not siblings.filter(slug=slug).exists()

    def _get_autogenerated_slug(self, base_slug):
        candidate_slug = base_slug
        suffix = 1
        parent_page = self.get_parent()

        while not Page._slug_is_available(candidate_slug, parent_page, self):
            suffix += 1
            candidate_slug = "%s-%d" % (base_slug, suffix)

        return candidate_slug

    def full_clean(self, *args, **kwargs):

        if not self.slug:
            allow_unicode = getattr(settings, 'WAGTAIL_ALLOW_UNICODE_SLUGS', True)
~~            base_slug = slugify(self.title, allow_unicode=allow_unicode)

            if base_slug:
                self.slug = self._get_autogenerated_slug(base_slug)

        if not self.draft_title:
            self.draft_title = self.title

        super().full_clean(*args, **kwargs)

    def clean(self):
        super().clean()
        if not Page._slug_is_available(self.slug, self.get_parent(), self):
            raise ValidationError({'slug': _("This slug is already in use")})

    @transaction.atomic
    def save(self, clean=True, **kwargs):
        if clean:
            self.full_clean()

        update_descendant_url_paths = False
        is_new = self.id is None

        if is_new:
            self.set_url_path(self.get_parent())

## ... source file continues with no further slugify examples...

```

redpajama_set_name: RedPajamaGithub


On this post, we are going to share with you Intex Cloud Matte SPD 7731 official Flash file we test this ROM on many phones it,s work well for any flashing tool or flashing device so download and if you like that post please share it.
Before flash, you,r phone tack full backup all of you,r data after flashing all of you,r will be lose or if you have any flashing box then backup phone,s flash file in case if the phone did not boot then you can write that file.If your phone did not work will or hanging on logo then you can write that ROM on your phone after write that firmware your phone will work well.
How to flash Intex Cloud Matte with SPD Flash Tool (Research Download)?
That firmware update is only for only for Intex Cloud Matte don't try to install that firmware on other models of Intex Android devices that can destroy your phone first try to make full reset your phone will start normally after resting if your phone did not work will then make full flash then your phone will work well.


text:
upcoming metal releases
New Metal Releases: 8/7/2022-8/13/2022
Did you miss any of these killer releases last week? We'll be back with this week's releases soon, but here's all the new metal that's been released between August 7th, 2022 and August 13th, 2022 -- spin (or skip) new music from Arch Enemy, The Halo Effect, Boris, and more.
New Metal Releases: 7/17/2022-8/6/2022
Another mega-volume of new metal (we hope to return to weekly shortly!). Here's all the new metal that's been released between July 17th, 2022 and August 6th, 2022 -- spin (or skip) new music from Toxik, Imperial Triumphant, Soulfly, and more.
New Metal Releases: 6/26/2022-7/16/2022
Whoops, we fell behind! Here's all the new metal that's been released between June 26th, 2022 and July 16th, 2022 -- spin (or skip) new music from Wormrot, Municipal Waste, Inhuman Condition, and more.
All the new metal that's released between June 19th, 2022 and June 25th, 2022 -- spin (or skip) new music from Alestorm, Knoll, Paganizer, and more.
All the new metal that's released between June 12th, 2022 and June 18th, 2022 -- spin (or skip) new music from White Ward, Esoctrilihum, Inexorum, and more.
(Previously) Upcoming Metal Releases: 6/5/2022-6/11/2022
Slightly delayed! All the new metal that's released between June 5th, 2022 and June 11th, 2022 -- spin (or skip) new music from Kreator, Tomb Mold, Deathwhite, and more.
Upcoming Metal Releases: 5/29/2022-6/4/2022
All the new metal that's released between May 29th, 2022 and June 4th, 2022 -- spin (or skip) new music from GWAR, Terminal Nation, Artificial Brain, and more.
Upcoming Metal Releases: 5/22/2022-5/28/2022
All the new metal releasing between May 22nd, 2022 and May 28th, 2022 -- spin (or skip) new music from Mournful Congregation, Holocausto Canibal, Thrall, and more.
Excuse our brief interruption - here's some releases from the last two weeks that urgently demand your ears, including Misery Index, Blut aus Nord, Primitive Man, and more. Expect this week's releases in a few days.
Upcoming Metal Releases: 5/1/2022-5/7/2022
All the new metal releasing between May 1st, 2022 and May 7th, 2022 -- spin (or skip) new music from Ufomammut, Cosmic Putrefaction, Haunter, and more.


Putt your way to fame! Experience the landmarks of Los Angeles as you take the 18 steps to becoming a Hollywood star. Your wisecracking agent guides you in, around and through palm trees, parties and paparazzi. Fun for all ages is par for the course. Next to Hollywood Wax Museum & Castle of Chaos.
3110 W. 76 Country Blvd.


"Can't you just photoshop it and replace the elephant with a giraffe?" Yes! We have heard such things, have you? Photoshop is a magic tool and designers use it widely everyday. It is a powerful tool and is used to make wonders of art. We have got to you an exclusive list of add-ons to make this tool and super tool. This list will help you speed up the tasks, boost productivity and ensemble code and photoshop both at its best.
1. HTML BLOCK: INTEGRATES CODE WITH PHOTOSHOP!
So you think coding and photoshop don't work together? Think again, you are just gonna be revealed to the most difficult to believe tool, yes, code and photoshop can be done together using this tool. HTML Block uses WebKit engine to load HTML or CSS in a special block in Photoshop. Download this astonishing tool here: http://bg-d.net/htmlblock/ .
Page Layers is an amazing tool to design in the browser itself! You can directly edit any screenshot element/layer -wise, with every element named as a separate layer.
You can download it here : http://www.pagelayers.com/ ; it costs $39.99 only and is definitely worth it!
Give an ear web designers and front-end developers, Size marks help you convert rectangular marquee to measurement marks. Landscape → Horizontal measurement marks ; Portrait → Vertical measurement marks ; Square → vertical marks. You can use it with Photoshop CC 2014 & 2015 both.
A built-in super helper of photoshop, the magic wand, like its name has a magical use! Usually, the magic wand tool is used to create a selection of pixels which are similar in color to the point where you clicked. The magic wand can be used to create slices, centre aligns layers/groups and with the use of histogram panel, it can also be used to learn the number of pixels in a selection! These uses of this tool are rarely known and used.
Tell us your favorite photoshop tools/ plugins in the comments!


text:
Thirty years ago, on December 26, 1991, the U.S.S.R. officially came to an end when the Supreme Soviet, the country's upper legislative body, recognized the independence of its 15 constituent republics and voted for the state's dissolution. Soviet President Mikhail Gorbachev had resigned the day before on television. But the questions that stalked Soviet citizens in those final days of the U.S.S.R. -- issues related to territorial rights, rule of law, corruption, clean elections, government transparency, free media, and more -- have not faded away in the years since.
To share how the Soviet past still affects the present, Current Time English has assembled the best of its related content out of the site's archives.
The USSR Quiz: 15 Questions For 15 Republics
Vox Pops
What Do You Think Of When You Hear The Words 'Soviet Union'?
Data Dossier
Take A Guess! How Have The Lives Of Russians Changed Over The Last 30 Years?
Tbilisi's 1991-1992 War: A Ruthless Conflict That Had To Be Fought, Veterans Agree
Lithuania Goes After Ukrainian Who Drove Tank In 1991 Soviet Crackdown
'So Much Grief': Opening Ukraine's Soviet-Era KGB Archives
Azerbaijan's 'Black January': 'Tanks Were Crushing And Shooting At Everyone'
Mighty Memories: Memorial's Fight To Remember Stalin's Victims In The Urals
Back In The GDR: How 1989 Impacted Vladimir Putin
The Protests That Brought The Soviet Union To Its Knees
The View From Moscow
Gorbachev's Ex-Spokesperson: 1989 Uprisings Accelerated USSR Collapse
Soviet Foreign Policy
In Moscow And Berlin, Remembering The Berlin Wall
Why Russian Media Mourn East Germany
Ukraine: Fueling Its Future Defense From Soviet ICBMs
Georgia Remembers 1989's 'Bloody Sunday'
Stalled De-Stalinization: Many Russians Still Celebrate Ruthless Leaders
Explainer:
How The Big Mac Came To Moscow 30 Years Ago
Investigation:
'Shoot It Down!': The Tragic Tale Of Two American Balloonists Over Belarus
Ukraine's Constitutional Court Upholds Law Equating Communism To Nazism
The Baltic Way At 30: Remembering The 'World's First Flash Mob'
Latvians Divided Over Release Of KGB Files
Under The Radar: How A Secret Soviet Base Was Stripped Bare
Digging Up The Past: A Stalin-Era Mass Grave Found In Kazakhstan


text:
Dr. Pramod Pandurang Sawant  (born 24 April 1973) is an Indian politician and Ayurveda Medical Practitioner, who is serving as the 11th and current Chief Minister of Goa since 2019. He represents the Sanquelim constituency in the Goa Legislative Assembly from the Bharatiya Janata Party.Before serving as Chief Minister,he was the speaker in the Goa Legislative Assembly.He Became Chief Minister when the incumbent Chief Minister Manohar Parrikar dies.

Early life and education
Sawant was born on 24 April 1973 to Pandurang and Padmini Sawant. He obtained a Bachelor of Ayurveda, Medicine and Surgery degree from the Ganga Education Society's Ayurvedic Medical College in Kolhapur and a postgraduate degree of Master of Social Work from the Tilak Maharashtra University at Pune.

Political career
Sawant started his electoral career when he contested the 2008 Pale Constituency  by-election on Bharatiya Janta Party ticket and lost to Pratap Prabhakar Gauns of Indian National Congress. He contested the 2012 assembly election from Sanquelim constituency. He won the constituency by 14,255 (66.02%) votes defeating Pratap Prabhakar Gauns of the Indian National Congress. He also served as the spokesperson of the Goa unit of the Bharatiya Janata Party for a brief period of time. Later in 2017 he was re-elected to the Goa Legislative Assembly from the same constituency defeating Dharmesh Saglani of the Indian National Congress with 10,058 (43.04%) votes. On 22 March 2017, he was elected as the Speaker of the Goa Legislative Assembly.

Chief Minister of Goa
After the demise of Manohar Parrikar, the seat of the Chief Minister of Goa fell vacant. Pramod Sawant was elected by the Legislative Assembly afterwards and later he was sworn in as the 13th Chief Minister of Goa on 19 March 2019.

Personal life
Sawant is a Maratha by caste. He is married to Sulakshana, who is a teacher of chemistry at the Shri Shantadurga Higher Secondary School in Bicholim. She is also a leader of the Bharatiya Janata Party and currently the President of the Goa unit of the BJP Mahila Morcha.

See also
 Pramod Sawant ministry

References

People from North Goa district
Bharatiya Janata Party politicians from Goa
Goa MLAs 2022–2027
Living people
Goa MLAs 2017–2022
1973 births
Chief Ministers of Goa
Chief ministers from Bharatiya Janata Party
Goa MLAs 2012–2017

redpajama_set_name: RedPajamaWikipedia


It's your senior year, you've made it at last. The highschool is yours to rule and this year everything will be perfect. Everything, including your senior pictures. Yes, gone are the days of those tiny, generic yearbook pictures. Those are for the underclassmen. You are a senior now and only the best will do. Our goal is to give you just what you deserve, the best. We understand how important your senior yearbook photo is. That is why we compiled a list of the finest senior portrait photographers in the country including Pooler, Georgia. You WILL stand above all of the rest, not only because you are a senior, but because your senior pictures will be one of the best. Our photographers in Pooler, Georgia strive to capture what a lot of others can't see - the real you. We will not settle for the cookie cutter photos that some other Pooler, Georgia photographers take. We know that years from now you will open your senior yearbook and remember what was. Then you will not see a gawky teenager. You will see someone with style, someone with class, someone trendy. For when it came to choosing a senior portrait photographer in Pooler, Georgia you went with the very best.
Terrence Bibb Photography creates a senior portrait experience like no other.
ALL of our Senior Portrait Collections include our basics, your session, makeup application, FACEBOOK photos, and a print credit to get you started on your order. Plus, we give you the freedom to choose exactly what you need.
We offer a top notch model experience. You are guaranteed to look your best and camera ready. Our sessions are fun, laid back, and all about YOU. We offer premium products to keep your family happy for years to come.
Please contact us through the contact page to request more information, or to ask questions.


This is the question everyone has faced within their dating lives'.
It's again the time of the most romantic day of the year which is widely accepted and well quite publicly celebrated amongst couples.
Gifting is fun but, finding a unique present for your beloved is actually quite a task.This Valentines you don't have to resort to boring and conventional gifts.
"You have bewitched me body and soul, and I love, I love, I love you. And wish from this day forth never to be parted from you.
Wonder how life would have been had there not been songs. Our sole companion, our partner in gloom, our guide during crisis and our source of motivation. Songs indeed have such auspicious place in our heart.


text:
Early Modern (159)
Industrial Revolution (78)
Augustan (37)
French Revolution (1)
Prose (31)
Prose Fiction (31)
Whig (20)
Tory (18)
From Tory to Whig (16)
Jacobite Sympathies (11)
Jacobin Sympathies (8)
Jacobite (7)
Opposition (Later Pro-Pelhamite) (6)
Wilkesite Opposition (5)
Anti-Jacobin (3)
From Radical to Anti-Jacobin (3)
Anglican (25)
Anglican with Enthusiastic or Evangelical Tendencies (18)
Dissenter or Nonconformist (9)
Latitudinarian (6)
Evangelical (5)
Anglican (High Church) (1)
Roman Catholic (1)
Your search for Metaphor Category: "Architecture" AND Nationality of Author: "English" AND Literary Period: "Age of Sensibility" , "Eighteenth Century" , "Long Eighteenth Century" returned 159 results(s) in 0.013 seconds
page 8 of 16 per page: 1025100
"Bred to think as well as speak by rote, they furnish their minds, as they furnish their houses or cloath their bodies, with the fancies of other men, and according to the mode of the age and country."
"Thy answer is in more than words express'd, / I read it through the window in thy breast"
— Wesley, John and Charles
"Do not variegate the Structure of your Walls with Eubaean and Spartan Stone: but adorn both the Minds of the Citizens, and of those who govern them, by the Grecian Education."
— Carter, Elizabeth (1717-1806)
"The minds of the Schoolmen were almost as much cloistered as their bodies; they had but little learning, and few books."
— Young, Edward (bap. 1683, d. 1765)
"Even this Piece of Wisdom did not find its Way into his Mind by Reflexion (that Passage for its Entrance had long been too closely barricadoed), but came in at his Eyes, and engaged his constant Counsellors, his Inclinations, on the Side of a fair Object he had accidentally beheld, at the House ...
— Fielding, Sarah (1710-1768)
Imitators of Nature are "Searchers into the inmost Labyrinths of the human Mind"
Date: 1759, performed 1776
The soul may be "Snatch'd by the power of music from her cell / Of fleshly thraldom" and feel "herself upborn / On plumes of ecstasy"
— Mason, William (1725-1797)
"[A]nd her Mind, at that time, might be likened to a Theatre, on which the Tragedy of a glittering Cross, and a Pair of Diamond Ear-rings, was acting, with much more Propriety than the envious Critic called Othello The Tragedy of the Handkerchief."
"So Thoughts, when become too common, should lose their Currency; and we should send new metal to the Mint, that is, new meaning to the Press."
"Such demonstration have we, that the theatre is not yet opened, in which solid happiness can be found by man; because none are more than comparatively good; and folly has a corner in the heart of the wise."
« Previous 1 2 3 4 5 6 7 8 9 10 11 12 … 15 16 Next »


Beautifully hand embroidered cover on small address and phone book.
Bethlehem Arab Women's Union: Most of our beautiful runners and mats are made by 100 women working at home, bringing the work to be washed and finished at BAWU. Lack of tourism has resulted in a severe drop in sales and marketing is severely limited as travel permits to Jerusalem are rarely given. BAWU maintains a Folklore Museum. "When you give work to people you give them life and courage and produce peace."The Separation Wall built around the city cuts off 70% of Bethlehem's land.


text:
Putting Data Science into Power BI
By Helen Wall
Syntax Highlight Theme:
Brown Paper Codepen Embed Color Brewer Dracula Dark Darkula Default Dracula Far Foundation Github Github Gist GoogleCode Grayscale Idea IR Black Kava Docs Kava Docs Dark Kimbie.Dark Kimbie.Light Magula Mono Blue Monokai Monokai Sublime Obsidian Paraiso Dark Paraiso Light Rails Casts Rainbow Solarized Dark Solarized Light Sunburst Twilight VS VS2015 XCode ZenBurn
Microsoft's Power BI works as the ultimate power tool for data analytics. It lets you connect to many different data source types (even within the same model) and then transform the connections into useful data tables. You can then use this data to create DAX calculations, and build visuals to communicate model trends, outcomes, and key numbers. The main languages of Power BI are M (in Power Query) and DAX.
Data science is an area in the data analytics space focusing on models like those that make predictions. Artificial intelligence is an area of data science that lets you use cognitive science to recognize and act on patterns within the data points that you have. Machine learning models are a subgroup of AI that involve using feedback loops to further improve the model. You can combine and use these data science models to create visuals and make forecasts and better decisions in the future. The three main languages of data science are SQL, R, and Python.
Given the power of Power BI and data science, how can you combine these two facets of data modeling together? The data for this article focuses on economic and weather trends in the greater Houston, Texas area. One data table contains employment numbers from the U.S. Bureau of Labor Statistics (BLS Data Viewer at https://beta.bls.gov/dataViewer/view/timeseries/LAUCN482010000000004 and BLS Data Viewer at https://beta.bls.gov/dataViewer/view/timeseries/LAUCN482010000000005). The other data table contains the daily high temperatures at the city's Hobby Airport over the last two years from the NOAA Climate Data Online (CDO) data portal (https://www.ncdc.noaa.gov/cdo-web/).
Ways to Leverage Algorithms in Power BI
One way you can explore a combined framework with BI and data science is through the capabilities of Power BI. To see the opportunities for these algorithms, let's divide the AI and machine learning functionalities within Power BI into three categories.
Those that Power BI automatically runs
Pre-built models you can connect to within Power BI
Models you can build yourself using R, Python, or even DAX
Power BI makes these algorithms available to you in the Power Query Editor once you load the data into Power BI Desktop through the modeling and visualization options. Figure 1 shows the combined capabilities available within a single query for all three categories listed above.
Figure 1: Levels of coding in Power Query
Power BI Guesses
In Figure 1, you can see that Power Query automatically chooses the data type for each column in the existing query so far. You can change the data types yourself if it doesn't already do this, or if the automatically selected data types don't match with the data types you want to use. Power Query uses the first 1000 rows of data that appear in the table preview to make an educated guess for the actual data types. Similarly, it can also guess whether you want to promote the first row of the data table into the header position or, given enough information, it can also guess an entire series of query steps that you can see in the Applied Steps on the right.
Once you load the data into Power BI, you can explore several visuals where you pick the visual, but it nudges you toward the next step. For example, in the Model view, you might see the tables automatically joined together based on how Power BI thinks the dimension and fact tables connect. You should also check to make sure that it joins the tables on the fields you want them to join on.
When you configure visuals, the decomposition tree and key influencers visuals use AI to predict the next step that you or the end user should take in analyzing the data in the visual. You can also leverage the smart narrative visual for the insights that Power BI automatically provides as to why trends or metrics might occur.
Connect to a Model
Power BI also lets you connect to built-in algorithms directly in the Power Query Editor as part of the transformation process with the AI Insights options like Text Analytics, Vision, and Azure Machine Learning, like the options you see in the options for the Add Column ribbon in Figure 1. In the Power Query Editor, for example, you can connect to models from Azure Cognitive Services and Azure Machine Learning models built outside Power BI and Power Query. Examples of available Azure Cognitive Services models include Image Recognition and Text Analytics. Within Text Analytics, you can choose from algorithms like language detection, key phrase extraction, and score sentiment (which tells you the positive or negative tone of a text input).
The fuzzy matching algorithm uses natural language processing (NLP) to match together similar strings of text. If you're using Power BI dataflows in the Power BI service (either Pro or Premium accounts), you can connect to the cluster values algorithm to transform the existing data table by either adding a column or grouping the existing values in the grouped column together. Both functionalities use a very similar fuzzy matching algorithm to what you see in the merging functionality, except it only returns results on a single data table instead of combining two tables together. Fuzzy matching uses NLP to match together similar strings of text. You can configure the parameters for the matching within the fuzzy matching options for all three iterations of this algorithm.
Another example of an NLP model within a Power BI visual is the Q&A visual, which lets you ask questions and get responses about the data. With the visualization options, you can also connect to the built-in machine learning algorithms directly to find clusters or anomalies in existing data points. You can also use linear regression to find trend lines and forecasting to project the data trends into the immediate future. With any of these pre-built models, you'll want to either know or have an idea of the fields you want to use in the model. Even though you don't have to build them yourself, it's still important to know what fields you can pass into the model as parameters to get the outcome you're looking for (and the requirements to make the models work properly).
Constructing Your Own Visuals
Finally, you can build your own visuals to represent the outcomes of these algorithms. One way you can do this is using custom visuals from the Power BI AppSource store. Many of these visuals use R behind the scenes to construct the visual, but you don't need to write any R code yourself. Examples of models supported by custom visuals using R include ARIMA, TBATS, clustering, and outliers. Power BI installs packages. Make sure you're using the right versions of the library packages.
In addition to importing custom visuals that run R behind the scenes in Power BI, you can also write R scripts directly in the R and the Python visuals, as well as running scripts for both languages in the Power Query Editor. For the sake of simplicity in this article, I'm going to use R as the sample code, but you can absolutely use Python too. One of the challenges I encounter is that although the Power BI service supports almost one thousand R packages, it only supports a few Python libraries. To use these languages directly in Power BI, you need to do the following:
Install R or Python on your own computer.
Enable R and/or Python scripts to run in Power BI (and while you're at it, enable Python scripts because I'll discuss this later).
Build machine learning models through building scatter plot and line chart visuals as starting points for understanding the high-level behavior of the data. Understanding algorithms can seem intimidating but you can divide what you're looking for into three different goal categories.
Outliers or anomalies
When you're looking at data points, you want to see if there's a direction that they orientate in. For example, if you look at the time series trends for employment and unemployment data by month on the left side of Figure 2, you can see that since the beginning of 2020, the overall employment numbers increased in the Houston area, while the overall unemployment numbers decrease over the same period. You can add these dashed lines directly to several types of visuals, including the line charts you see representing the time-series trends for both these metrics. To add these lines, turn them on directly through the analytics options in the Visualizations pane. The lines you see represent the outcomes of linear regression modeling using ordinary least squares (OLS). If you calculated this yourself, whether that's through downloading the data to Excel, running an R or Python script on it, or even calculating it directly using DAX, you'll get the same slope and intercept that you see on these charts (see Figure 2).
Figure 2: Trend lines
You can also see how linear regression looks on a scatter plot instead of a time series chart in the visual on the right of Figure 2. This models two variables against each other. You can see that as employment increases in Harris County, Texas, the numbers for unemployment also go down. Power BI lets you add the trend line in the same way you could for the line chart visual on the scatter plot. Again, it uses OLS for linear regression to calculate the intercept and slope of this trend line.
Let's say you want to forecast the outcomes of time-series data into the future. You can do this through the forecasting option available at the bottom of the same analytics pane as the trend line options that you see in Figure 3. Note though, that the forecasting option only works on visuals like line charts with a time-series field on the x-axis, like dates. Within the formatting options, you can also change the length of the forecast, and whether to ignore some historical data points, and, most importantly, you can also choose to include seasonality. Notice that the forecast option adds both a line and a gray shaded area around it representing the confidence interval.
Figure 3: Forecasting
Another way you can apply machine learning algorithms to data points is by grouping them together. Examples of clustering algorithms include names you might already know like KMeans and hierarchical clustering. If you have an existing scatter plot, let Power BI find the clusters for you using the built-in clustering algorithm. This adds a new clusters field to existing fields that contain the outcomes of the clustering model in the table that you choose to add them to. Within the clustering options, you can let Power BI automatically determine the number of clusters. You can also change them manually. In the scatter plot on the left in Figure 4, you can see that the built-in clustering algorithm you add to the visual creates four clusters for the data. You can also find clusters for more than two fields if you use a table visual instead of a scatter plot.
Figure 4: Clustering with built-in options and clustering custom visual
On the right of Figure 4, you can see what the clustering algorithm gives you if you import the clustering custom visual from the Power BI AppSource store. This means that you can add the ellipsis around the data points in the clusters that the visual determines. This gives an example of an algorithm where the R script runs behind the scenes, but you don't have to write the R code yourself for it to appear. You can see that they also display in the green tooltip in the highlighted visual.
Another way you can find clusters to group data points together is using the hierarchical clustering algorithm. At this point, you don't have a visual or algorithm you can plug the data into to create the visual you see on the right in Figure 5, but instead, you can construct it using R code.
Figure 5: Hierarchical clustering with R script
First calculate the distances between data points on the left of Figure 5 using the dist function on the data.frame dataset variable with the text labels removed. You then group each set together in pairs using the hclust R function. In order for these visuals to properly display, use the standard R visual in Power BI. Before you create these visuals directly in Power BI Desktop, make sure you install R (or Python) and then enable it directly in Power BI.
# The following code to create a dataframe and
# remove duplicated rows is always executed and
# acts as a preamble for your script:
# dataset <- data.frame(Label, Employment, Unemployment)
# dataset <- unique(dataset)
# Paste or type your script code here:
rownames(dataset) <- dataset$Label
#determine row labels in final visual
distance <- dist(dataset[, c('Employment', 'Unemployment')] , diag = TRUE)
#2D distance between data points
hc <- hclust(distance)
#model hierarchical clustering
plot(hc)
#create cluster dendrogram plot
You might also find it helpful to test out your code first on an IDE like RStudio, which makes it easier to troubleshoot issues. Although Power BI is an amazing tool, it's also a bit limited in terms of ways to test out code before implementing it.
Finally, in data points, you want to determine whether points are part of the rest of the data points or not, which you can do through algorithms like outlier and anomaly detection. In Figure 6, you can see the clustering with the outlier detection custom visual compared to the built-in clustering algorithm. You can see the outliers denoted by small gray Xs in the visual on the right that fall outside the two clusters marked in teal and red.
Figure 6: Clustering with outlier custom visual
Grouping data together in clustering and determining the points outside these clusters as outliers represents one way to find outliers, but there are other ways to do it. You can also determine outliers using the outlier detection custom visual you see in Figure 7. This visual lets you separate the outliers from the rest of the points (the main group) using a z-score calculation to determine their sigma thresholds. The farther out points represent the outliers in red and the rest of the points aren't part of the outlier group. Like the clustering with outliers visual, the outlier detection visual also runs R code behind the scenes without you having to write any of it.
Figure 7: Outlier detection custom visual
Besides outliers, anomalies are data points that also don't fit into the expected pattern of behavior for data points. On a high level, outliers represent deviations from where you are, and anomalies represent deviations from where you should be. You can see the outcome of running the built-in algorithm to find anomalies in the top line chart of Figure 8, which you access through the analytics pane of the selected visual. For Power BI to automatically find the anomalies for you, put a time-series field on the x-axis or it will gray out the algorithm in the analytics pane so you can't access them.
Figure 8: Anomaly detection
Notice that you can change the input parameters for finding the anomalies by changing the sensitivity of the algorithm. A higher sensitivity number makes the identified anomalies more sensitive to swings, which means that you'll see the algorithm identify more data points as anomalies. If you'd like to format the anomalies themselves, you can change their shape and color (from gray to orange like you see in this example).
In the lower visual in Figure 8, you can see the outcomes of running an anomaly detection algorithm directly with an R script. You can see it reflected in the outcome of a standard stacked column chart visual where you use conditional formatting so that orange can mark the anomalies while the rest of the dates display as a blue color. The algorithm itself can run as a standard R visual, but you can also use the R script integration options in the Power Query Editor to add a column for the anomaly detection model in Figure 1.
With the applied step for running an R script in the list of these steps on the right, the code below shows what this R code looks like. Once you import the fpc library, you then set the seed so you can run the anomaly detection algorithm with the dbscan function. Then assign the outcome results cluster column as a new column in the existing dataset variable and assign the entire dataset to a new results variable in Power Query.
# 'dataset' holds the input data for this
#  script
library(fpc)   #loading package
set.seed(220)  #setting seed
results <- dbscan(dataset$High,eps=2,MinPts=1)
dataset$Anomaly <- results$cluster
#add cluster to dataset data.frame
outcome <- dataset
Why would you choose one approach for clustering or anomaly detection over another (for example, built-in algorithms versus writing your own R code)? There isn't a single right answer for this. You might want different levels of control over the outcomes, or you might want to see a certain level of efficiency or speed that one approach provides. Like with everything else in data science, there isn't one right approach for the way to do something, but rather a selection of options to choose from.
Additional algorithms to explore include logistic regression, principal components analysis (PCA), classification, and much more. I go into these topics in much greater depth in several of my LinkedIn Learning courses: https://www.linkedin.com/learning/instructors/helen-wall.
Let Power BI Do as Much of the Work as Possible
Although it seems tempting to try to gain full control over the models by writing scripts in R or Python for example, you should aim to let Power BI do a lot of the heavy lifting for you. An example of this includes using built-in Power Query functions to connect to and transform the data. This means that Power BI might automatically perform a step for you (that you should then check) or you can even connect to an algorithm like one for text analytics, image recognition, or even clustering. Once you load the data into Power BI, you can also follow a very similar approach.
Although this might seem to project the overall objectives of algorithms like those found in machine learning, on a high level, you're looking to find trends, grouping, and outliers and anomalies in data points. These don't necessarily exist as standalone things that you're looking for in data either. For example, you can find trends and groups in data, and then the points that allow you to easily find the points that are outliers or anomalies.
Need FREE Project Advice? CODE Can Help!
No strings, free advice on a new or existing software development projects. CODE Consulting experts have experience in cloud, Web, desktop, mobile, microservices, containers, and DevOps projects. Schedule your free hour of CODE call with our expert consultants today. For more information, visit www.codemag.com/consulting or email us at info@codemag.com.
This article was filed under:
This article was published in:
Have additional technical questions?
Get help from the experts at CODE Magazine - sign up for our free hour of consulting!
Contact CODE Consulting at techhelp@codemag.com.


ICMA-RC is excited to announce upcoming enhancements to its suite of tools for public sector retirement plan sponsors and their consultants. ICMA-RC's Plan Health Monitor will be available in the coming months to help assess overall plan health by providing informative, aggregated metrics and the ability to identify opportunities for improvement.
"ICMA-RC is strongly committed to offering products and services that will benefit our public sector clients and enhance their retirement plan outcomes," said ICMA-RC President and CEO, Bob Schultze. "With the launch of account aggregation earlier this year, and with the upcoming launch of the Plan Health Monitor, we are enriching the tools ICMA-RC offers to participants, plan sponsors and consultants to evaluate retirement plan assets."
The Plan Health Monitor offers plan sponsors and their consultants several benefits, including a high-level snapshot of plans, which allows them to evaluate overall plan health through metrics such as retirement readiness and plan participation rate. Additionally, plan sponsors and consultants will have the ability to track results by creating targeted education campaigns.
"Forward looking technology driven solutions like the Plan Health Monitor are a prime example of the continually evolving value ICMA-RC provides to plan sponsors and consultants," said Karla Gill, ICMA-RC Senior Vice President, Chief Information and Innovation Officer. "We are rolling out these types of solutions to enhance informed decision making and positively impact retirement outcomes."


NOTE: COMM 1307.43400 ONLINE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Dann, loridann@dcccd.edu.
NOTE: COMM 1307.43430 ONLINE FLEX COURSE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Dann, loridann@dcccd.edu.
REQUIRED FOR JOURNALISM MAJORS. CORE TIER 2 - Self and Society PREREQUISITE: TSI Requirement met for reading and writing. No classes on 3/13, 3/15.
REQUIRED FOR JOURNALISM MAJORS. CORE TIER 2 - Self and Society PREREQUISITE: TSI Requirement met for reading and writing. No classes on 3/14, 3/16.
PREREQUISITE: Computer experience. Lecture time includes 1 hour of MANDATORY lab time. Basic digital photography; Intro to Photoshop, lighting and printing. Fun hands-on assignments. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/13, 3/15.
PREREQUISITE: Computer experience. Lecture time includes 1 hour of MANDATORY lab time. Basic digital photography; Intro to Photoshop, lighting and printing. Fun hands-on assignments. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/143, 3/16.
PREREQUISITE: Computer experience. Lecture time includes 1 hour of MANDATORY lab time. Basic digital photography; Intro to Photoshop, lighting and printing. Fun hands-on assignments. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/13.
PREREQUISITE: Computer experience. Lecture time includes 1 hour of MANDATORY lab time. Basic digital photography; Intro to Photoshop, lighting and printing. Fun hands-on assignments. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/14.
Topic: Intro to Photography: Fundamental photography principles explored through class discussions, lectures, presentations, and visual assignments. Introduction to digital editing software/ Digital camera required/ Reqd: 2 additional weekly lab hrs/ Note: Cross-listed with ARTS-2356-83001.
Topic: Intro to Photography: Fundamental photography principles explored through class discussions, lectures, presentations, and visual assignments. Introduction to digital editing software/ Digital camera required/ Reqd: 2 additional weekly lab hrs/ Note: Cross-listed with ARTS-2356-83002.
Delivery: Online Flex Term meets 2/6-5/11; meet on campus as needed/ Topic: Intro to Photography: Fundamental photography principles are explored through class discussions, lectures, presentations, and visual assignments. Students are introduced to digital editing software/ Reqd: log on to ecampus.dcccd.edu/ Note: cross-listed with ARTS-2356-83428, ARTS-2357-83428 & COMM-1317-83428.
Topic: Intro to Photography. Fundamental photography principles explored through class discussions, lectures, presentations, and visual assignments. Introduction to digital editing software/ Digital camera required/ Red: 2 additional weekly lab hrs/ Note: Cross-listed with ARTS-2356-83501.
PREREQUISITE: COMM-1316/ARTS-2356 AND permission from instructor. Contact kjenkins@dcccd.edu or bgoldstein@dcccd.edu for registration instructions. Lecture time includes 1 hour of MANDATORY lab time. Advanced problems and practices of photography for newspapers, and/or fine art purposes/commercial output. Includes instruction in camera and equipment operation and maintenance, film and plate developing, digital and print media. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/14.
Topic: Explore a deeper level of Color Photography through an introduction to studio lighting, refined archival printing, & creative visual image-making. Digital camera required/ Reqd: 2 additional weekly lab hrs/ PreReq: ARTS-2356 or COMM-1316/ Note: Cross listed with ARTS-2357-83001.
Delivery: Online Flex Term meets 2/6-5/11; meet on campus as needed/ Topic: Explore a deeper level of Color Photography through an intro to studio lighting, refined archival printing & creative visual image-making. Digital camera required/ PreReq: ARTS-2356 or COMM-1316/ Reqd: Log on to ecampus.dcccd.edu/ Note: cross-listed with ARTS-2356-83428, COMM-1316-83428 & ARTS-2357-83428.
Lecture time includes 1 hour of MANDATORY lab time. Instruction in camera functions, types of lenses, choosing film and filters, printing and enlarging, film exposure, developing, darkroom procedures, print finishing, and spotting. Text required. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Cameras available for loan. No class on 3/14, 3/16.
NOTE: COMM 1335.43400 ONLINE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Blankenship, sarablankenship@dcccd.edu.
NOTE: COMM 2302.43400 ONLINE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Dann, loridann@dcccd.edu.
PREREQUISITE: TSI Requirement met for reading and writing AND COMM 1307. For students who work on the "News Register" newspaper, along with on-campus study. Required lab hours determined by students' schedules. No class on 3/14, 3/16.
PREREQUISITE: TSI Requirement met for reading and writing AND COMM 2311. For students who work on the "News Register" newspaper, along with on-campus study. Required lab hours determined by students' schedules. No class on 3/14, 3/16.
BY INVITATION ONLY PREREQUISITE: COMM 1317/ARTS 2357 and instructor permission. Contact kjenkins@dcccd.edu or bgoldstein@dcccd.edu for registration instructions. Lecture time includes 1 hour of MANDATORY lab time. Teaches the basics of commercial photography, lighting and concepts for products, emphasis on studio strobes and natural lighting. ADDITIONAL MANDATORY LAB HOURS: time options explained in 1st class. Lab open Monday-Thursday, 10:00AM-9:00PM. Studio equipment available for checkout. No class on 3/16.
NOTE: COMM 2327.43400 ONLINE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Winter, swinter@dcccd.edu.
NOTE: COMM 2330.43400 ONLINE. ORIENTATION online http://ecampus.dcccd.edu. Contact Prof. Winter, swinter@dcccd.edu.
PREREQUISITE: TSI Requirement met for reading and writing. REQUIREMENTS: Computer accessibility. Extensive eCampus component requires ability to login and use eCampus proficiently. BLENDED CLASS: Class will meet face-to-face on campus on specified dates for script presentations, lectures and miscellaneous assignments. Tests, quizzes, assignments, presentations and miscellaneous lectures will be administered through eCampus. ALL WORK MUST BE SUBMITTED THROUGH eCAMPUS. MANDATORY sign-in by 1/31. MANDATORY ATTENDANCE: (subject to change at instructor's discretion) with changes announced on eCampus 24 hours in advance. FACE-TO-FACE ON-CAMPUS (for lecture/midterm workshop):1/17, 1/24, 2/14, 2/21, 2/28, 3/21, 3/28, 4/11, 5/2. ONLINE THROUGH eCAMPUS: 1/31, 2/7, 3/7, 4/4, 4/25. FINAL: 5/9.


Staff arrived on July 12 for training, campers arrived on July 13.
127 campers attended camp within three weeks of camp, the first being for younger girls.
Conservation was the main focus of boys week. NYS Conservation Department taught the classes.
Though there were usually three weeks of camp, this year there were only two with 129 campers.
Only two weeks of camp, but 149 campers - largest attendance in five years.
Ward MacMillen is the new 4-H Agent and Camp Director. Two weeks of camp brought 170 campers and counselors.
Scoharie County 4-Hers came to Shankitunk, because they had no camp of their own. 220 Campers within three weeks.
$14 for a week of camp. There were three weeks, with parents night every Friday from 7:30-10. Campers went home on Saturday at 1:30.
The fee is now $15 per week.
A new dining hall, units 1 and 2, and staff house were brought from SUNY Delhi to camp. Electricity, Newspaper, and Outdoor Cooking are added as classes.
CIT, Hunter Safety, and Entomology are offered. A filter is put into the pool. Wednesday night BBQ, a tradition that is still carried on today begins this year.
Three weeks of camp, each costing $17.
Fee is raised to $19 per week.
The 4-H office was closed from 10 to noon so the staff could work at camp.
Fee is raised to $20 per week.
Delaware County purchases the camp from Tom Dent. A slide for the pool and a new shower building are the additions at camp. 310 campers who, for the first time were not only 4-Hers, but all residents of Delaware County.
Brian Miteer is the new 4-H Agent and Camp Director.
Tom Kaufman was summer assistant, Vicki Gavett was Camp Director.
Photography was taught for the first time using a Polaroid Black and White camera.
Government surplus mobile home becomes the infirmary at camp.
Jim Rice is 4-H Agent and Camp Director.
First year of coed camp. The pool was shortened to fix a leak. A new kitchen with a walk in cooler was installed. This kitchen and dining hall was located where the science center is. It was used as a science center after the current dining hall was built and before the new science center was built. Bob Stark was the Program Director. Horse was offered as a class for the first time.
Horseback riding was held at SUNY Delhi. Tie dying shirts was a popular activity. 441 Campers within 4 weeks.
Camp's 50th anniversary! A new recreation hall was built by the Walton National Guard and dedicated to John Lennox. This rec hall is still used today. Fee is raised to $40 per week.


Air pollution modelling serves to relate air quality to emissions in a quantitative sense, and provides a better basis for describing areas of exceedance in the entire zone. It also provides additional essential information for the management of the air quality in the zone, as required under the FWD. All three methods or tools provide information with inherent uncertainty. By uncertainty we mean a quantitative measure of the most likely possible deviation of the value from the true value. See the text box below which defines some relevant concepts in this context. Measurements — apart from sampling and analysis errors - may introduce major uncertainties if stations are not representative, meaning that air quality in the surroundings differs substantially from air quality at the station, or that concentrations vary appreciably in time while the measurements have only limited time coverage. Emission inventories can be incomplete or may be based on inaccurate or inappropriate emission factors or activity figures.
atmospheric, emission, models, air, pollution emissions, e, g, source categories.


text:
Federal Investigation
CPS Facing Federal Investigation, Calls For Bankruptcy
Apr 16, 2015 | Nick Blumberg
Gov. Bruce Rauner said this week that bankruptcy may be the best option for the Chicago Public Schools system to get its fiscal house in order. One day later, it was revealed that the federal government is investigating CPS. News reports say the investigation involves a no-bid contract for principal training awarded to a company that once employed CPS CEO Barbara Byrd-Bennett. We'll discuss the challenges facing CPS with a panel of experts.
CPS Under Federal Investigation
Apr 15, 2015 | Paris Schutz
Chicago Public Schools is under federal investigation, school board officials confirm. We have the latest details.
Anti-Violence Investigation Continues
Hearing Begins Despite 90-Day Delay Request
Jul 16, 2014 | WTTW News
A panel of lawmakers goes forward today with a hearing on Gov. Pat Quinn's controversial $54.5 million Neighborhood Recovery Initiative, despite the Feds telling them not to. Paris Schutz has the details.
Sexual Assaults on Campus
May 5, 2014 | WTTW News
The federal government released a list of 55 colleges and universities, including University of Chicago and Knox College in Illinois, that are under investigation for their handling of sexual violence and harassment complaints. We talk with a panel of experts about the issues surrounding sexual assault on campus. View a graph of on campus sex offenses for Illinois public universities.
Political Analysis of Jackson Jr.'s Resignation
Nov 21, 2012 | WTTW News
Congressman Jesse Jackson Jr. resigns after nearly five months on medical leave. We look at the life, legacy and future of the now former congressman.


text:
Hurricane Irma and flight warnings (QBT)
The now named 'hurricane Irma' was once a storm, building from from the Cape Verde islands off the northwestern coast of Africa. Gaining momentum and power to a category 4 (Saffir-Simpson hurricane wind scale) storm, just four days ago in the Caribbean near Puerto Rico.
It has strengthened to a Category 5 storm over the Atlantic Ocean, with maximum winds blowing at an astounding 185 mph (295 km/h) as it heads towards the southeastern portion of the United States of America (Florida).
Qantas Business Travel (QBT) has alerted the ASMOF Office that there will be major disruptions to air, ground and sea travel expected to commence from today for any travellers flying to, from or through Florida.
The company has issued the following advice to Members:
"Those travelling to, from or through Florida from 7 September onwards may face extensive delays, flight cancellations and other major disruptions to ground and sea travel"
"If you are travelling to, from or through Florida from 7 September onwards, please check your flight status by calling your dedicated 1300 number. Due to the erratic nature of the hurricane, it is advised that travellers reschedule flights as weather conditions pose a safety risk. If you are in the vicinity, please follow the directions of local emergency teams."
You will find the appropriate 1300 number amongst your travel itenery details.


text:
DVDFab UHD Cinavia Removal, Get 30-day Full Function FREE NOW!
Permanently remove the Cinavia watermark from infected 4K UHD Blu-ray audio tracks so that the backups never mute during playback.
30-Day Money Back Garrantee
DVDFab Software
Wait! Free Download to Have a Try before Leaving
DVDFab Downloader
Download movies, episodes, or music from 1000+ sites including Netflix, Amazon, Hulu & YouTube
Home > Resources > 4K Media > How to Remove Cinavia from UHD Blu-rays?
Summary: Find your 4K UHD Blu-ray contains Cinavia but still want to make a copy of it? Here we will introduce you the best UHD Cinavia Removal that can remove Cinavia from UHD Blu-rays completely.
• Remove Cinavia watermarks in audio tracks free
• Keep decrypted audio tracks intact in quality
• Make 4K UHD Blu-ray discs easily backed up
• User-friendly and easy-to-use
We're all familiar with visual watermarks but not many people are aware of the fact that audio watermarks can also be added to various forms of digital content. The reason why these watermarks are less known is because they are designed to be inaudible to the listener under normal circumstances. The watermarks are meant as a form of digital rights management (DRM) that prevents people from making copies of discs that contain this type of protection.
The most common DRM of this kind goes by the name of Cinavia and can be found embedded on most UHD Blu-ray discs, especially those containing movies. Likewise, media players compatible with this format are also required to come equipped with software that can detect Cinavia protected discs and prevents users from playing said discs if the protection has been tampered with. Theoretically, this is a foolproof system and it shouldn't be possible to remove Cinavia from UHD Blu-ray discs. However, the reality is that a solution to this problem does exist and it allows anyone to make copies of these discs while also removing the protection in the process.
DVDFab Offers the Perfect Solution for Removing Cinavia from UHD Blu-ray Discs
The solution in question is DVDFab's UHD Cinavia Removal tool and today we're going to teach you how to use it. But before we start looking at the specific steps it's important to note that it is entirely safe to remove Cinavia from UHD discs using this software. The original disc itself will actually not be affected at all and will continue to work as intended after using the removal tool. What the Cinavia removal does is allow you to create backup copies of UHD Blu-ray discs (work with DVDFab UHD Copy or UHD Ripper) that do not contain the protection but also work perfectly well on Cinavia enabled players, just like the originals.
The advantage of having a tool like this at your disposal is that you don't ever have to worry about scratched or lost discs ever again. Simply use the software to remove Cinavia from any UHD Blu-ray disc and then make a few copies that you can either keep as ISO files or digital formats or burn onto new discs. You don't need to worry about any loss of quality either because the copies will be virtually identical to the original. In order to successfully remove Cinavia from the disc, the tool converts the original audio to a different format that's very similar in terms of quality. Depending on which module you use, the audio will be converted to either lossless DTS-HD Master or AC3/AAC.
How to Remove Cinavia from UHD Discs with DVDFab 10
1. Your first order of business is downloading and installing DVDFab 10. The UHD Cinavia Removal tool is currently only available in the 64-bit version of the software, so make sure you're downloading the correct version. Next, head over to the software's Copy module and choose between the Main Movie and Full Disc modes. Finally, load the UHD Blu-ray disc you want to copy. Simply use the Add button to point the tool in the direction of the disc if it doesn't automatically load it up.
2. If you're using the Main Movie mode go to the audio menu to pick the track that contains the Cinavia protection. The number of tracks might vary depending on the disc, particularly if the movie is available in multiple languages. Protected tracks are marked with the Cinavia symbol to make them easier to identify.
As a side note, this option is similar to the one used by DVDFab UHD Ripper so you may already be familiar with it if you've used that module in the past. If not, simply follow the normal ripping process and make sure that the Cinavia protected track is selected before you start ripping the disc.
3. When using the Full Disc Mode, the option to remove Cinavia appears under the Advanced Settings menu.
4. Now back to the Copy module. Before you start the conversion process you may want to make changes to certain aspects of the disc. For example, you might want to change the name of the output, its destination folder or its size. Once you're happy with the changes you've made, simply press the Start button to remove Cinavia from the UHD disc and wait until the process is completed. The tool is very fast but this process could still take a bit of time depending on your hardware configuration and the size of the disc.
Like most other types of DRM, Cinavia was designed to prevent people from illegally making copies of digital media. But while that goal is definitely a noble one, these types of protection systems tend to hurt honest customers more than anything else. Discs inevitably degrade over time and when that happens they become pretty much worthless to the people who purchased them. That's why it's a good idea to use a professional tool that can remove Cinavia from your UHD Blu-ray discs so that you can make backup copies of them just in the case the original discs no longer work at some point. There aren't many tools that allow you to do this but DVDFab's UHD Cinavia Removal software is more than capable of getting the job done without any issues.
Remove Cinavia watermarks from 4K UHD Blu-ray discs
DVDFab UHD Cinavia Removal gets rid of Cinavia watermarks from audio tracks in most 4K UHD Blu-ray discs and keeps video/audio playing normally with the best quality. With the help of this free software, you can decrypt any Cinavia protection and save your videos from being muted.
Other Tools You May Need
DVDFab Player 6 Ultra
Menu playback on 4K Ultra HD Blu-rays
Remove Cinavia from the audio tracks of DVDs
Remove Cinavia from the audio tracks of Blu-rays
MOV to GIF: The Best Alternative of MOV to GIF Photoshop
Batch Convert FLV to MP3 on Windows and Mac
Top Ten Best GIF Makers to Convert PNG to GIF [You Can Do It Free]
MP3 to OGG | How to Convert MP3 to OGG Free & Fast
WebM to GIF | Convert WebM to GIF Fast with Ease
Cinavia


If you haven't made up your mind about which vessel to buy but would like to try one out or if you simply don't own one but would like to go paddling with your friends, we are always ready to rent you our products. We are also ready to give you advice on suitable rivers, gear and what to do and expect on your trip. Moreover, we organize trips for the less experienced paddlers so feel free to join us - you will have fun, make friends and gain some experience not to mention confidence.
Please read rental service terms and conditions and price list thoroughly before making a quote. Then simply choose the item, period of time you would like to rent it for, fill in rental contract, and send your quote.
One-day rental charges: canoe/cataraft 300 CZK, raft 600 CZK.
1) Deposit for the rental period. If you cancel your reservation more than 14 days prior to your rental date, the penalty is 10% of rental charge. If you cancel your reservation 14 days or less prior to your rental date, there shall be no refund of the deposit.
2) Security deposit for the item(s). In the event of damage or non-compliance with the terms and conditions of the contract, the security deposit is not returned.
3) Market price of the product.
*Items rented with the boat/upon agreement only.


Since 1970 Lallemand Wine Department has been studying the selection and production of high quality active dry yeasts for alcoholic fermentation (over 150 different strains).
Since the mid-'80s, this enterprise has been producing lyophilized bacteria at high concentration for the induction of malolactic fermentation. Fermentation nutrients, specific yeast derivatives, enzymes and chitosan complete the range of products for oenological uses.
A R&D team in Tolouse (France) is implementing an experimentation about fermented drinks. The scientific work is done within the team, as well as in collaboration with Research bodies all over the word.
In the production plant and in the Biotechnology Research Institute (BRI) in Montreal (Canada) our researchers are studying new strains and are researching on the optimization of the production processes of the selected cultures. Lallemand headquarters are scattered in all the main wine producing Countries, constantly in contact with the Research bodies and the production world of each single place.
Lallemand team is always near winemakers for technical advice, updating meetings, and tests on the field.
The distribution is implemented in collaboration with a wide spread net of specialized partners.
Lallemand has responsible behaviors both from the ethical-social and from the environmental point of view.
A sustainable development is defined as: "Development that meets the needs of the present without compromising the ability of future generations to meet their own needs." This concept is a must of Lallemand philosophy.
In the largest plant of this enterprise, in Grenaa, Denmark, the continuous investments on the best available technologies aims at a continuous improvement as far as energy efficiency and respect for the environment are concerned (Greena goes Green project).
The production plant is in fact conceived as a "close system", in which all wastes are optimized for becoming a resource that can be re-inserted into the process. For example, the steam used is generated by the combustion of the wastes of the agricultural division and by recycling the biogases produced by the fermentation processes. Moreover, the condensation water generated during the evaporation process is re-used for cleaning up the plants.
The energy consumption of the different processes is constantly monitored for evaluating possible improvements, also according to the available most recent technological developments. The conveyance of entering raw materials and exiting products is done by means of transport with the best possible energetic efficiency, in order to reduce CO2 emissions as much as possible.
Lallemand is also engaged, in partnership with the producers association Cofalec, in the quantification of Carbon Footprint and wine yeasts.
The project Lallemand has presented to Tergeo aims at assessing and quantifying the energy saving deriving from a "sustainable" management of the microorganisms in the cellar, that is a management careful about minimizing the mass thermoregulation, when it isn't necessary.
The first of the two objectives proposed aims at assessing the power impact of the yeasts-bacteria co-inoculation. This technique, that Lallemand has been proposing for years for its positive effects on wine sensorial profile and quality, gives the possibility of avoiding a prolonged heating of the wine tanks in autumn, thanks to a quick malolactic fermentation. The second item proposed deals with the management of the temperature in the alcoholic fermentations of white wines. Thanks to a correct choice of the yeast strain with the addition of oxide nutrients, a following refrigeration can be avoided and the best aromatic potential can be reached. In this way there's a power saving and Lallemand wants to quantify it through this project.